const zhHans = {
  common: {
    login: '登录',
    logout: '退出登录',
    accountOptions: '账户选项',
    account: '账户',
    email: '邮箱',
    password: '密码',
    welcome: '欢迎回到 LangBot 👋',
    continueToLogin: '登录以继续',
    loginSuccess: '登录成功',
    loginFailed: '登录失败，请检查邮箱和密码是否正确',
    enterEmail: '输入邮箱地址',
    enterPassword: '输入密码',
    invalidEmail: '请输入有效的邮箱地址',
    emptyPassword: '请输入密码',
    language: '语言',
    helpDocs: '帮助文档',
    create: '创建',
    edit: '编辑',
    delete: '删除',
    add: '添加',
    select: '请选择',
    cancel: '取消',
    submit: '提交',
    error: '错误',
    success: '成功',
    save: '保存',
    saving: '保存中...',
    confirm: '确认',
    confirmDelete: '确认删除',
    deleteConfirmation: '你确定要删除这个吗？',
    selectOption: '选择一个选项',
    required: '必填',
    enable: '是否启用',
    name: '名称',
    description: '描述',
    close: '关闭',
    deleteSuccess: '删除成功',
    deleteError: '删除失败：',
    addRound: '添加回合',
    copy: '复制',
    copySuccess: '复制成功',
    test: '测试',
    forgotPassword: '忘记密码？',
    loading: '加载中...',
    theme: '主题',
    changePassword: '修改密码',
    currentPassword: '当前密码',
    newPassword: '新密码',
    confirmNewPassword: '确认新密码',
    enterCurrentPassword: '输入当前密码',
    enterNewPassword: '输入新密码',
    enterConfirmPassword: '确认新密码',
    currentPasswordRequired: '当前密码不能为空',
    newPasswordRequired: '新密码不能为空',
    confirmPasswordRequired: '确认密码不能为空',
    passwordsDoNotMatch: '两次输入的密码不一致',
    changePasswordSuccess: '密码修改成功',
    changePasswordFailed: '密码修改失败，请检查当前密码是否正确',
    apiIntegration: 'API 集成',
    apiKeys: 'API 密钥',
    manageApiIntegration: '管理 API 集成',
    manageApiKeys: '管理 API 密钥',
    createApiKey: '创建 API 密钥',
    apiKeyName: 'API 密钥名称',
    apiKeyDescription: 'API 密钥描述',
    apiKeyValue: 'API 密钥值',
    apiKeyCreated: 'API 密钥创建成功',
    apiKeyDeleted: 'API 密钥删除成功',
    apiKeyDeleteConfirm: '确定要删除此 API 密钥吗？',
    apiKeyNameRequired: 'API 密钥名称不能为空',
    copyApiKey: '复制 API 密钥',
    apiKeyCopied: 'API 密钥已复制到剪贴板',
    noApiKeys: '暂无 API 密钥',
    apiKeyHint: 'API 密钥允许外部系统访问 LangBot 的 Service API',
    webhooks: 'Webhooks',
    createWebhook: '创建 Webhook',
    webhookName: 'Webhook 名称',
    webhookUrl: 'Webhook URL',
    webhookDescription: 'Webhook 描述',
    webhookEnabled: '是否启用',
    webhookCreated: 'Webhook 创建成功',
    webhookDeleted: 'Webhook 删除成功',
    webhookDeleteConfirm: '确定要删除此 Webhook 吗？',
    webhookNameRequired: 'Webhook 名称不能为空',
    webhookUrlRequired: 'Webhook URL 不能为空',
    noWebhooks: '暂无 Webhook',
    webhookHint: 'Webhook 允许 LangBot 将个人消息和群消息事件推送到外部系统',
    actions: '操作',
    apiKeyCreatedMessage: '请复制此 API 密钥。',
  },
  notFound: {
    title: '页面不存在',
    description:
      '您要查找的页面似乎不存在。请检查您输入的 URL 是否正确，或者返回首页。',
    back: '上一级',
    home: '返回主页',
    help: '查看帮助文档',
  },
  models: {
    title: '模型配置',
    description: '配置和管理可在流水线中使用的模型',
    createModel: '创建模型',
    editModel: '编辑模型',
    getModelListError: '获取模型列表失败：',
    modelName: '模型名称',
    modelProvider: '模型提供商',
    modelBaseURL: '基础 URL',
    modelAbilities: '模型能力',
    saveSuccess: '保存成功',
    saveError: '保存失败：',
    createSuccess: '创建成功',
    createError: '创建失败：',
    deleteSuccess: '删除成功',
    deleteError: '删除失败：',
    deleteConfirmation: '你确定要删除这个模型吗？',
    modelNameRequired: '模型名称不能为空',
    modelProviderRequired: '模型供应商不能为空',
    requestURLRequired: '请求URL不能为空',
    apiKeyRequired: 'API Key不能为空',
    keyNameRequired: '键名不能为空',
    mustBeValidNumber: '必须是有效的数字',
    mustBeTrueOrFalse: '必须是 true 或 false',
    requestURL: '请求URL',
    apiKey: 'API Key',
    abilities: '能力',
    selectModelAbilities: '选择模型能力',
    visionAbility: '视觉能力',
    functionCallAbility: '函数调用',
    extraParameters: '额外参数',
    addParameter: '添加参数',
    keyName: '键名',
    type: '类型',
    value: '值',
    string: '字符串',
    number: '数字',
    boolean: '布尔值',
    selectModelProvider: '选择模型供应商',
    modelProviderDescription: '请填写供应商向您提供的模型名称',
    modelManufacturer: '模型厂商',
    aggregationPlatform: '中转平台',
    selfDeployed: '自部署',
    selectModel: '请选择模型',
    testSuccess: '测试成功',
    testError: '测试失败，请检查模型配置',
    llmModels: '对话模型',
  },
  bots: {
    title: '机器人',
    description: '创建和管理机器人，这是 LangBot 与各个平台连接的入口',
    createBot: '创建机器人',
    editBot: '编辑机器人',
    getBotListError: '获取机器人列表失败：',
    botName: '机器人名称',
    botDescription: '机器人描述',
    botNameRequired: '机器人名称不能为空',
    botDescriptionRequired: '机器人描述不能为空',
    adapterRequired: '适配器不能为空',
    defaultDescription: '一个机器人',
    getBotConfigError: '获取机器人配置失败：',
    saveSuccess: '保存成功',
    saveError: '保存失败：',
    createSuccess: '创建成功 请启用或修改绑定流水线',
    createError: '创建失败：',
    deleteSuccess: '删除成功',
    deleteError: '删除失败：',
    deleteConfirmation: '你确定要删除这个机器人吗？',
    platformAdapter: '平台/适配器选择',
    selectAdapter: '选择适配器',
    adapterConfig: '适配器配置',
    bindPipeline: '绑定流水线',
    selectPipeline: '选择流水线',
    selectBot: '请选择机器人',
    botLogTitle: '机器人日志',
    enableAutoRefresh: '开启自动刷新',
    session: '会话',
    yesterday: '昨天',
    earlier: '更久之前',
    dateFormat: '{{month}}月{{day}}日',
    setBotEnableError: '设置机器人启用状态失败',
    log: '日志',
    configuration: '配置',
    logs: '日志',
  },
  plugins: {
    title: '插件扩展',
    description: '安装和配置用于扩展功能的插件，请在流水线配置中选用',
    createPlugin: '创建插件',
    editPlugin: '编辑插件',
    installed: '已安装',
    marketplace: '插件市场',
    arrange: '编排',
    install: '安装',
    installPlugin: '安装插件',
    onlySupportGithub: '目前仅支持从 GitHub 安装',
    enterGithubLink: '请输入插件的Github链接',
    installing: '正在安装插件...',
    installSuccess: '插件安装成功',
    installFailed: '插件安装失败：',
    searchPlugin: '搜索插件',
    sortBy: '排序方式',
    mostStars: '最多星标',
    recentlyAdded: '最近新增',
    recentlyUpdated: '最近更新',
    noMatchingPlugins: '没有找到匹配的插件',
    loading: '加载中...',
    getPluginListError: '获取插件列表失败:',
    pluginConfig: '插件配置',
    noPluginInstalled: '暂未安装任何插件',
    pluginSort: '插件排序',
    pluginSortDescription:
      '插件顺序会影响同一事件内的处理顺序，请拖动插件卡片排序',
    pluginSortSuccess: '插件排序成功',
    pluginSortError: '插件排序失败：',
    pluginNoConfig: '插件没有配置项。',
    systemDisabled: '插件系统未启用',
    systemDisabledDesc: '尚未启用插件系统，请根据文档修改配置',
    connectionError: '插件系统连接异常',
    connectionErrorDesc: '请检查插件系统配置或联系管理员',
    errorDetails: '错误详情',
    loadingStatus: '正在检查插件系统状态...',
    failedToGetStatus: '获取插件系统状态失败',
    pluginSystemNotReady: '插件系统未就绪，无法执行此操作',
    deleting: '删除中...',
    deletePlugin: '删除插件',
    cancel: '取消',
    saveConfig: '保存配置',
    saving: '保存中...',
    confirmDeletePlugin: '你确定要删除插件（{{author}}/{{name}}）吗？',
    deleteDataCheckbox: '同时删除插件配置和持久化存储',
    confirmDelete: '确认删除',
    deleteError: '删除失败：',
    close: '关闭',
    deleteConfirm: '删除确认',
    deleteSuccess: '删除成功',
    modifyFailed: '修改失败：',
    componentName: {
      Tool: '工具',
      EventListener: '事件监听器',
      Command: '命令',
    },
    uploadLocal: '本地上传',
    debugging: '调试中',
    uploadLocalPlugin: '上传本地插件',
    dragToUpload: '拖拽文件到此处上传',
    unsupportedFileType: '不支持的文件类型，仅支持 .lbpkg 和 .zip 文件',
    uploadingPlugin: '正在上传插件...',
    uploadSuccess: '上传成功',
    uploadFailed: '上传失败',
    selectFileToUpload: '选择要上传的插件文件',
    askConfirm: '确定要安装插件 "{{name}}" ({{version}}) 吗？',
    fromGithub: '来自 GitHub',
    fromLocal: '本地安装',
    fromMarketplace: '来自市场',
    componentsList: '组件: ',
    noComponents: '无组件',
    delete: '删除插件',
    update: '更新插件',
    updateConfirm: '更新确认',
    confirmUpdatePlugin: '你确定要更新插件（{{author}}/{{name}}）吗？',
    confirmUpdate: '确认更新',
    updating: '更新中...',
    updateSuccess: '插件更新成功',
    updateError: '更新失败：',
    saveConfigSuccessNormal: '保存配置成功',
    saveConfigSuccessDebugPlugin: '保存配置成功，请手动重启插件',
    saveConfigError: '保存配置失败：',
    fileUpload: {
      tooLarge: '文件大小超过 10MB 限制',
      success: '文件上传成功',
      failed: '文件上传失败',
      uploading: '上传中...',
      chooseFile: '选择文件',
      addFile: '添加文件',
    },
    installFromGithub: '来自 GitHub',
    enterRepoUrl: '请输入 GitHub 仓库地址',
    repoUrlPlaceholder: '例如: https://github.com/owner/repo',
    fetchingReleases: '正在获取 Release 列表...',
    selectRelease: '选择 Release',
    noReleasesFound: '未找到 Release',
    fetchReleasesError: '获取 Release 列表失败：',
    selectAsset: '选择要安装的文件',
    noAssetsFound: '该 Release 没有可用的 .lbpkg 文件',
    fetchAssetsError: '获取文件列表失败：',
    backToReleases: '返回 Release 列表',
    backToRepoUrl: '返回仓库地址',
    backToAssets: '返回文件选择',
    releaseTag: 'Tag: {{tag}}',
    releaseName: '名称: {{name}}',
    publishedAt: '发布于: {{date}}',
    prerelease: '预发布',
    assetSize: '大小: {{size}}',
    confirmInstall: '确认安装',
    installFromGithubDesc: '从 GitHub Release 安装插件',
  },
  market: {
    searchPlaceholder: '搜索插件...',
    searchResults: '搜索到 {{count}} 个插件',
    totalPlugins: '共 {{count}} 个插件',
    noPlugins: '暂无插件',
    noResults: '未找到相关插件',
    loadingMore: '加载更多...',
    loading: '加载中...',
    allLoaded: '已显示全部插件',
    install: '安装',
    installConfirm: '确定要安装插件 "{{name}}" ({{version}}) 吗？',
    downloadComplete: '插件 "{{name}}" 下载完成',
    installFailed: '安装失败，请稍后重试',
    loadFailed: '获取插件列表失败，请稍后重试',
    noDescription: '暂无描述',
    notFound: '插件信息未找到',
    sortBy: '排序方式',
    sort: {
      recentlyAdded: '最近新增',
      recentlyUpdated: '最近更新',
      mostDownloads: '最多下载',
      leastDownloads: '最少下载',
    },
    downloads: '次下载',
    download: '下载',
    repository: '代码仓库',
    downloadFailed: '下载失败',
    noReadme: '该插件没有提供 README 文档',
    description: '描述',
    tags: '标签',
    submissionTitle: '您有插件提交正在审核中： {{name}}',
    submissionApproved: '您的插件提交已通过审核： {{name}}',
    submissionRejected: '您的插件提交已被拒绝： {{name}}',
    clickToRevoke: '撤回',
    revokeSuccess: '撤回成功',
    revokeFailed: '撤回失败',
    submissionDetails: '插件提交详情',
    markAsRead: '已读',
    markAsReadSuccess: '已标记为已读',
    markAsReadFailed: '标记为已读失败',
  },
  mcp: {
    title: 'MCP',
    createServer: '添加 MCP 服务器',
    editServer: '修改 MCP 服务器',
    deleteServer: '删除 MCP 服务器',
    confirmDeleteServer: '你确定要删除此 MCP 服务器吗？',
    confirmDeleteTitle: '删除 MCP 服务器',
    getServerListError: '获取 MCP 服务器列表失败：',
    serverName: '服务器名称',
    serverMode: '连接模式',
    stdio: 'Stdio模式',
    sse: 'SSE模式',
    noServerInstalled: '暂未配置任何 MCP 服务器',
    serverNameRequired: '服务器名称不能为空',
    commandRequired: '命令不能为空',
    urlRequired: 'URL 不能为空',
    timeoutMustBePositive: '超时时间必须是正数',
    command: '命令',
    args: '参数',
    env: '环境变量',
    url: 'URL地址',
    headers: '请求头',
    timeout: '超时时间',
    addArgument: '添加参数',
    addEnvVar: '添加环境变量',
    addHeader: '添加请求头',
    keyName: '键名',
    value: '值',
    testing: '测试中...',
    connecting: '连接中...',
    testSuccess: '测试成功',
    testFailed: '测试失败：',
    testError: '刷新出错',
    refreshSuccess: '刷新成功',
    refreshFailed: '刷新失败：',
    connectionSuccess: '连接成功',
    connectionFailed: '连接失败，请检查URL',
    connectionFailedStatus: '连接失败',
    toolsFound: '个工具',
    unknownError: '未知错误',
    noToolsFound: '未找到任何工具',
    parseResultFailed: '解析测试结果失败',
    noResultReturned: '测试未返回结果',
    getTaskFailed: '获取任务状态失败',
    noTaskId: '未获取到任务ID',
    deleteSuccess: '删除成功',
    deleteFailed: '删除失败：',
    deleteError: '删除失败：',
    saveSuccess: '保存成功',
    saveError: '保存失败：',
    createSuccess: '创建成功',
    createFailed: '创建失败：',
    createError: '创建失败：',
    loadFailed: '加载失败',
    modifyFailed: '修改失败：',
    toolCount: '工具：{{count}}',
    statusConnected: '已打开',
    statusDisconnected: '未打开',
    statusError: '连接错误',
    statusDisabled: '已禁用',
    loading: '加载中...',
    starCount: '星标：{{count}}',
    install: '安装',
    installFromGithub: '从Github安装MCP服务器',
    add: '添加',
    name: '名称',
    nameRequired: '名称不能为空',
    sseTimeout: 'SSE超时时间',
    sseTimeoutDescription: '用于建立SSE连接的超时时间',
    extraParametersDescription: '额外参数，用于配置MCP服务器的特定行为',
    timeoutMustBeNumber: '超时时间必须是数字',
    timeoutNonNegative: '超时时间不能为负数',
    sseTimeoutMustBeNumber: 'SSE超时时间必须是数字',
    sseTimeoutNonNegative: 'SSE超时时间不能为负数',
    updateSuccess: '更新成功',
    updateFailed: '更新失败：',
  },
  pipelines: {
    title: '流水线',
    description: '流水线定义了对消息事件的处理流程，用于绑定到机器人',
    createPipeline: '创建流水线',
    editPipeline: '编辑流水线',
    chat: '对话',
    configuration: '配置',
    debugChat: '对话调试',
    getPipelineListError: '获取流水线列表失败：',
    daysAgo: '天前',
    today: '今天',
    updateTime: '更新于',
    defaultBadge: '默认',
    sortBy: '排序方式',
    newestCreated: '最新创建',
    earliestCreated: '最早创建',
    recentlyEdited: '最近编辑',
    earliestEdited: '最早编辑',
    basicInfo: '基础信息',
    aiCapabilities: 'AI 能力',
    triggerConditions: '触发条件',
    safetyControls: '安全控制',
    outputProcessing: '输出处理',
    nameRequired: '名称不能为空',
    descriptionRequired: '描述不能为空',
    createSuccess: '创建成功 请编辑流水线详细参数',
    createError: '创建失败：',
    saveSuccess: '保存成功',
    saveError: '保存失败：',
    copySuffix: ' Copy',
    deleteConfirmation:
      '你确定要删除这个流水线吗？已绑定此流水线的机器人将无法使用。',
    defaultPipelineCannotDelete: '默认流水线不可删除',
    deleteSuccess: '删除成功',
    deleteError: '删除失败：',
    extensions: {
      title: '扩展集成',
      loadError: '加载插件列表失败',
      saveSuccess: '保存成功',
      saveError: '保存失败',
      noPluginsAvailable: '暂无可用插件',
      disabled: '已禁用',
      noPluginsSelected: '未选择任何插件',
      addPlugin: '添加插件',
      selectPlugins: '选择插件',
      pluginsTitle: '插件',
      mcpServersTitle: 'MCP 服务器',
      noMCPServersSelected: '未选择任何 MCP 服务器',
      addMCPServer: '添加 MCP 服务器',
      selectMCPServers: '选择 MCP 服务器',
      toolCount: '{{count}} 个工具',
      noPluginsInstalled: '无已安装的插件',
      noMCPServersConfigured: '无已配置的 MCP 服务器',
    },
    debugDialog: {
      title: '流水线对话',
      selectPipeline: '选择流水线',
      sessionType: '会话类型',
      privateChat: '私聊',
      groupChat: '群聊',
      send: '发送',
      reset: '重置对话',
      inputPlaceholder: '发送 {{type}} 消息...',
      noMessages: '暂无消息',
      userMessage: '用户',
      botMessage: '机器人',
      sendFailed: '发送失败',
      resetSuccess: '对话已重置',
      resetFailed: '重置失败',
      loadMessagesFailed: '加载消息失败',
      loadPipelinesFailed: '加载流水线失败',
      atTips: '提及机器人',
      streaming: '流式传输',
    },
  },
  knowledge: {
    title: '知识库',
    createKnowledgeBase: '创建知识库',
    editKnowledgeBase: '编辑知识库',
    selectKnowledgeBase: '选择知识库',
    selectKnowledgeBases: '选择知识库',
    addKnowledgeBase: '添加知识库',
    noKnowledgeBaseSelected: '未选择知识库',
    empty: '无',
    editDocument: '文档',
    description: '配置可用于提升模型回复质量的知识库',
    metadata: '元数据',
    documents: '文档',
    kbNameRequired: '知识库名称不能为空',
    kbDescriptionRequired: '知识库描述不能为空',
    embeddingModelUUIDRequired: '嵌入模型不能为空',
    daysAgo: '天前',
    today: '今天',
    kbName: '知识库名称',
    kbDescription: '知识库描述',
    topK: '召回数量',
    topKRequired: '召回数量不能为空',
    topKMax: '召回数量最大值为 30',
    topKdescription: '召回相关文档块的数量，取值范围为 1-30',
    defaultDescription: '一个知识库',
    embeddingModelUUID: '嵌入模型',
    selectEmbeddingModel: '选择嵌入模型',
    embeddingModelDescription: '用于向量化文本，可在模型配置页面配置',
    updateTime: '更新于',
    cannotChangeEmbeddingModel: '知识库创建后不可修改嵌入模型',
    updateKnowledgeBaseSuccess: '知识库更新成功',
    updateKnowledgeBaseFailed: '知识库更新失败',
    documentsTab: {
      name: '名称',
      status: '状态',
      noResults: '暂无文档',
      dragAndDrop: '拖拽文件到此处或点击上传',
      uploading: '上传中...',
      supportedFormats: '支持 PDF、Word、TXT、Markdown、HTML、ZIP 等文档格式',
      uploadSuccess: '文件上传成功！',
      uploadError: '文件上传失败，请重试',
      uploadingFile: '上传文件中...',
      fileSizeExceeded: '文件大小超过 10MB 限制，请分割成较小的文件后上传',
      actions: '操作',
      delete: '删除文件',
      fileDeleteSuccess: '文件删除成功',
      fileDeleteFailed: '文件删除失败',
      processing: '处理中',
      completed: '完成',
      failed: '失败',
    },
    deleteKnowledgeBaseConfirmation:
      '你确定要删除这个知识库吗？此知识库下的所有文档将被删除。',
    retrieve: '检索测试',
    retrieveTest: '检索测试',
    query: '查询',
    queryPlaceholder: '输入查询内容...',
    distance: '距离',
    content: '内容',
    fileName: '文件名',
    noResults: '暂无结果',
    retrieveError: '检索失败',
  },
  register: {
    title: '初始化 LangBot 👋',
    description: '这是您首次启动 LangBot',
    adminAccountNote: '您填写的邮箱和密码将作为初始管理员账号',
    register: '注册',
    initSuccess: '初始化成功 请登录',
    initFailed: '初始化失败：',
  },
  resetPassword: {
    title: '重置密码 🔐',
    description: '输入恢复密钥和新的密码来重置您的账户密码',
    recoveryKey: '恢复密钥',
    recoveryKeyDescription:
      '存储在配置文件`data/config.yaml`的`system.recovery_key`中',
    newPassword: '新密码',
    enterRecoveryKey: '输入恢复密钥',
    enterNewPassword: '输入新密码',
    recoveryKeyRequired: '恢复密钥不能为空',
    newPasswordRequired: '新密码不能为空',
    resetPassword: '重置密码',
    resetting: '重置中...',
    resetSuccess: '密码重置成功，请登录',
    resetFailed: '密码重置失败，请检查邮箱和恢复密钥是否正确',
    backToLogin: '返回登录',
  },
  embedding: {
    description: '管理嵌入模型，用于向量化文本',
    createModel: '创建嵌入模型',
    editModel: '编辑嵌入模型',
    getModelListError: '获取嵌入模型列表失败：',
    embeddingModels: '嵌入模型',
    extraParametersDescription:
      '将在请求时附加到请求体中，如 encoding_format, dimensions 等',
  },
  llm: {
    llmModels: '对话模型',
    description: '管理 LLM 模型，用于对话消息生成',
    extraParametersDescription:
      '将在请求时附加到请求体中，如 max_tokens, temperature, top_p 等',
  },
};

export default zhHans;
