chore: initialize qiming workspace repository
This commit is contained in:
25
qiming-mobile/constants/api.constants.uts
Normal file
25
qiming-mobile/constants/api.constants.uts
Normal file
@@ -0,0 +1,25 @@
|
||||
import { API_BASE_URL } from './config';
|
||||
import { COMMON_HEADERS ,TEMP_CONVERSATION_CONNECTION_URL,CONVERSATION_CONNECTION_URL} from './common.constants';
|
||||
|
||||
// 聊天相关API
|
||||
export const CHAT_API = {
|
||||
// 流式聊天
|
||||
STREAM: CONVERSATION_CONNECTION_URL,
|
||||
// 临时会话流式聊天
|
||||
TEMP_STREAM: TEMP_CONVERSATION_CONNECTION_URL,
|
||||
}
|
||||
|
||||
// 请求头配置
|
||||
export const API_HEADERS = {
|
||||
...COMMON_HEADERS,
|
||||
'Accept': 'application/json, text/plain, */*'
|
||||
}
|
||||
|
||||
// 超时配置
|
||||
export const API_TIMEOUT = 30000 // 30秒
|
||||
|
||||
// 重试配置
|
||||
export const API_RETRY = {
|
||||
MAX_RETRIES: 3,
|
||||
RETRY_DELAY: 1000 // 1秒
|
||||
}
|
||||
7
qiming-mobile/constants/codes.constants.uts
Normal file
7
qiming-mobile/constants/codes.constants.uts
Normal file
@@ -0,0 +1,7 @@
|
||||
export const SUCCESS_CODE = '0000';
|
||||
// 用户未登录
|
||||
export const USER_NO_LOGIN = '4010';
|
||||
// 重定向登录
|
||||
export const REDIRECT_LOGIN = '4011';
|
||||
// 智能体不存在或已下架
|
||||
export const AGENT_NOT_EXIST = '0001';
|
||||
49
qiming-mobile/constants/common.constants.uts
Normal file
49
qiming-mobile/constants/common.constants.uts
Normal file
@@ -0,0 +1,49 @@
|
||||
import { API_BASE_URL } from './config';
|
||||
|
||||
// 文件上传地址
|
||||
export const UPLOAD_FILE_ACTION = `${API_BASE_URL}/api/file/upload`;
|
||||
|
||||
// 会话 Connection地址
|
||||
export const CONVERSATION_CONNECTION_URL = `${API_BASE_URL}/api/agent/conversation/chat`;
|
||||
// 临时会话 Connection地址
|
||||
export const TEMP_CONVERSATION_CONNECTION_URL = `${API_BASE_URL}/api/temp/chat/completions`;
|
||||
|
||||
// 文档地址
|
||||
export const DOCUMENT_URL = 'https://nlp-book.swufenlp.group';
|
||||
|
||||
// 平台文档地址
|
||||
export const SITE_DOCUMENT_URL = 'https://qiming.com/user-manual.html';
|
||||
|
||||
// 可上传文件后缀类型:doc docx pdf md json txt
|
||||
export const UPLOAD_FILE_SUFFIX = ['doc', 'docx', 'pdf', 'md', 'json', 'txt'];
|
||||
|
||||
// 验证码长度
|
||||
export const VERIFICATION_CODE_LEN = 6;
|
||||
|
||||
// 倒计时
|
||||
export const COUNT_DOWN_LEN = 60;
|
||||
|
||||
// 默认图片数量
|
||||
export const DEFAULT_IMAGE_COUNT = 9;
|
||||
// 默认文件数量
|
||||
export const DEFAULT_FILE_COUNT = 9;
|
||||
|
||||
// 临时会话的uid, 用于区分临时会话和普通会话, 缓存在sessionStorage中,key为TEMP_CONVERSATION_UID, value为uid
|
||||
export const TEMP_CONVERSATION_UID = 'TEMP_CONVERSATION_UID';
|
||||
// 临时会话的key
|
||||
export const TEMP_CHAT_KEY = 'TEMP_CHAT_KEY';
|
||||
|
||||
// 全部
|
||||
export const CONST_ALL = 'All';
|
||||
|
||||
// 聊天输入方式
|
||||
export const CHAT_INPUT_METHOD = 'CHAT_INPUT_METHOD';
|
||||
|
||||
|
||||
// 公共 header 配置
|
||||
export const COMMON_HEADERS = {
|
||||
'Content-Type': 'application/json',
|
||||
// #ifdef MP-WEIXIN
|
||||
'X-Client-Type': 'mp-weixin',
|
||||
// #endif
|
||||
}
|
||||
36
qiming-mobile/constants/config.uts
Normal file
36
qiming-mobile/constants/config.uts
Normal file
@@ -0,0 +1,36 @@
|
||||
// 环境配置
|
||||
// 使用uni-app的条件编译来处理不同环境
|
||||
|
||||
let API_BASE_URL = "";
|
||||
|
||||
// uEnvProd
|
||||
if (process.env.NODE_ENV === "production") {
|
||||
// #ifdef MP-WEIXIN
|
||||
API_BASE_URL = "https://agent.qiming.com";
|
||||
// #endif
|
||||
}
|
||||
|
||||
// uEnvDev
|
||||
if (process.env.NODE_ENV === "development") {
|
||||
API_BASE_URL = "https://testagent.xspaceagi.com";
|
||||
}
|
||||
|
||||
// 允许外部链接跳转的域名
|
||||
export const ALLOW_EXTERNAL_LINK_DOMAIN = [API_BASE_URL, "https://qiming.com"];
|
||||
|
||||
// 不需要登录检查的地址
|
||||
export const NO_LOGIN_CHECK_URL = [
|
||||
"https://qiming.com/user-agreement.html",
|
||||
"https://qiming.com/privacy.html",
|
||||
];
|
||||
|
||||
// 版本号
|
||||
export const VERSION = "v1.0.3";
|
||||
|
||||
// 登录白名单地址
|
||||
export const LOGIN_WHITELIST_URL = [
|
||||
"/api/user/getLoginInfo",
|
||||
];
|
||||
|
||||
// API_BASE_URL 为 let 声明,单独导出;其余常量已在声明处直接导出
|
||||
export { API_BASE_URL };
|
||||
14
qiming-mobile/constants/event.constants.uts
Normal file
14
qiming-mobile/constants/event.constants.uts
Normal file
@@ -0,0 +1,14 @@
|
||||
/**
|
||||
* 事件常量
|
||||
* 用于事件订阅和发布时的类型安全引用
|
||||
*
|
||||
* 与 PC 端 @/constants/event.constants.tsx 保持一致
|
||||
*/
|
||||
import { EventTypeEnum } from '@/types/enums/event';
|
||||
|
||||
export const EVENT_TYPE = {
|
||||
NewNotifyMessage: EventTypeEnum.NewNotifyMessage, // 新消息
|
||||
RefreshChatMessage: EventTypeEnum.RefreshChatMessage, // 刷新会话
|
||||
RefreshFileList: EventTypeEnum.RefreshFileList, // 刷新文件列表
|
||||
ChatFinished: EventTypeEnum.ChatFinished, // 会话结束
|
||||
};
|
||||
10
qiming-mobile/constants/home.constants.uts
Normal file
10
qiming-mobile/constants/home.constants.uts
Normal file
@@ -0,0 +1,10 @@
|
||||
export const ACCESS_TOKEN = 'ACCESS_TOKEN';
|
||||
export const USER_INFO = 'USER_INFO';
|
||||
// expireDate
|
||||
export const EXPIRE_DATE = 'EXPIRE_DATE';
|
||||
export const PHONE = 'PHONE';
|
||||
export const SPACE_ID = 'SPACE_ID';
|
||||
export const SPACE_URL = 'SPACE_URL';
|
||||
|
||||
// 租户配置信息
|
||||
export const TENANT_CONFIG_INFO = 'TENANT_CONFIG_INFO';
|
||||
380
qiming-mobile/constants/i18n-locales/en-us.uts
Normal file
380
qiming-mobile/constants/i18n-locales/en-us.uts
Normal file
@@ -0,0 +1,380 @@
|
||||
export const I18N_EN_US: Record<string, string> = {
|
||||
"Mobile.Nav.home": "Home",
|
||||
"Mobile.Nav.unionRecord": "Directory",
|
||||
"Mobile.Nav.agent": "Agent",
|
||||
"Mobile.Nav.app": "App",
|
||||
"Mobile.App.pressAgainToExit": "Press again to exit the app",
|
||||
"Mobile.Common.loginRegister": "Sign In / Sign Up",
|
||||
"Mobile.Common.noticeExperience": "You are viewing demo data. Sign in to access all features.",
|
||||
"Mobile.Common.recentUsed": "Recently Used",
|
||||
"Mobile.Common.conversationHistory": "Conversation History",
|
||||
"Mobile.Common.menu": "Menu",
|
||||
"Mobile.Common.tip": "Tip",
|
||||
"Mobile.Common.confirm": "Confirm",
|
||||
"Mobile.Common.cancel": "Cancel",
|
||||
"Mobile.Common.agree": "Agree",
|
||||
"Mobile.Common.disagree": "Disagree",
|
||||
"Mobile.Common.switching": "Switching...",
|
||||
"Mobile.Common.switchSuccess": "Language updated",
|
||||
"Mobile.Common.switchFailed": "Failed to switch language",
|
||||
"Mobile.Common.noData": "No data",
|
||||
"Mobile.Common.noMoreData": "No more data",
|
||||
"Mobile.Common.all": "All",
|
||||
"Mobile.Common.appName": "Qiming",
|
||||
"Mobile.Common.coverImageAlt": "Cover image",
|
||||
"Mobile.Common.avatarAlt": "Avatar",
|
||||
"Mobile.Common.noDataImageAlt": "No data illustration",
|
||||
"Mobile.Common.agentIconAlt": "Agent icon",
|
||||
"Mobile.Common.skillIconAlt": "Skill icon",
|
||||
"Mobile.Common.appLogoAlt": "App logo",
|
||||
"Mobile.Common.deleteIconAlt": "Delete",
|
||||
"Mobile.Auth.agreementPrefix": "I have read and agree to the Terms:",
|
||||
"Mobile.Auth.agreementSeparator": ", ",
|
||||
"Mobile.Auth.serviceAgreement": "Terms of Service",
|
||||
"Mobile.Auth.userAgreementLink": "https://qiming.com/user-agreement.html",
|
||||
"Mobile.Auth.privacyAgreement": "Privacy Policy",
|
||||
"Mobile.Auth.privacyAgreementLink": "https://qiming.com/privacy.html",
|
||||
"Mobile.Auth.loginSuccess": "Sign in successful",
|
||||
"Mobile.Auth.loginFailed": "Sign in failed",
|
||||
"Mobile.Auth.passwordLogin": "Sign In with Password",
|
||||
"Mobile.Auth.codeLoginRegister": "Sign In / Sign Up with Code",
|
||||
"Mobile.Auth.nextStep": "Next",
|
||||
"Mobile.Auth.login": "Sign In",
|
||||
"Mobile.Auth.inputPhone": "Please enter your phone number",
|
||||
"Mobile.Auth.defaultAreaCode": "+86",
|
||||
"Mobile.Auth.inputEmail": "Please enter your email",
|
||||
"Mobile.Auth.inputPassword": "Please enter your password",
|
||||
"Mobile.Auth.invalidPhoneFormat": "Please enter a valid phone number",
|
||||
"Mobile.Auth.invalidEmailFormat": "Please enter a valid email address",
|
||||
"Mobile.Auth.codeSentSuccess": "Verification code sent",
|
||||
"Mobile.Auth.inputEmailCode": "Enter email verification code",
|
||||
"Mobile.Auth.inputSmsCode": "Enter SMS verification code",
|
||||
"Mobile.Auth.codeSentToPrefix": "Verification code sent to",
|
||||
"Mobile.Auth.codeSentToEmailTarget": "your email",
|
||||
"Mobile.Auth.codeSentToPhoneTarget": "phone number",
|
||||
"Mobile.Auth.inputVerifyCode": "Please enter the verification code",
|
||||
"Mobile.Auth.resend": "Resend",
|
||||
"Mobile.Auth.resendSuccess": "Code resent successfully",
|
||||
"Mobile.Auth.sending": "Sending...",
|
||||
"Mobile.Auth.clipboardReadFailed": "Failed to read clipboard",
|
||||
"Mobile.Auth.clipboardGetFailed": "Failed to get clipboard",
|
||||
"Mobile.Auth.codeAutoFilled": "Code auto-filled",
|
||||
"Mobile.Auth.pasteSixDigits": "Please paste a 6-digit code",
|
||||
"Mobile.Auth.clipboardNotSixDigits": "Clipboard content is not a 6-digit code",
|
||||
"Mobile.Auth.clipboardEmpty": "Clipboard is empty",
|
||||
"Mobile.Auth.setPasswordTitle": "Set Password",
|
||||
"Mobile.Auth.setPasswordDesc": "Use at least 6 characters. Do not use passwords from other websites or easily guessed passwords.",
|
||||
"Mobile.Auth.inputPasswordAgain": "Please re-enter your password",
|
||||
"Mobile.Auth.setting": "Setting up...",
|
||||
"Mobile.Common.ok": "OK",
|
||||
"Mobile.Auth.passwordMinLength": "Password must be at least 6 characters",
|
||||
"Mobile.Auth.confirmPassword": "Please confirm password",
|
||||
"Mobile.Auth.passwordMismatch": "Passwords do not match",
|
||||
"Mobile.Auth.passwordSetSuccess": "Password set successfully",
|
||||
"Mobile.Auth.passwordSetFailed": "Failed to set password. Please try again.",
|
||||
"Mobile.Common.networkRetry": "Network error. Please try again.",
|
||||
"Mobile.Auth.pleaseAgreeProtocol": "Please agree to the Terms and Privacy Policy.",
|
||||
"Mobile.Auth.userCancelAuthorize": "Authorization canceled",
|
||||
"Mobile.Auth.oneClickLogin": "Quick Sign In",
|
||||
"Mobile.Auth.phoneLoginRegister": "Phone Sign In / Sign Up",
|
||||
"Mobile.Auth.welcomeUse": "Welcome to {siteName}",
|
||||
"Mobile.Header.mySubscriptions": "My Subscriptions",
|
||||
"Mobile.Header.profile": "Profile",
|
||||
"Mobile.Header.logout": "Sign Out",
|
||||
"Mobile.Header.logoutSuccess": "Signed out",
|
||||
"Mobile.Header.logoutFailed": "Sign out failed",
|
||||
"Mobile.MySubscriptions.title": "My Subscriptions",
|
||||
"Mobile.MySubscriptions.notEnabled": "Subscription is not enabled yet",
|
||||
"Mobile.MySubscriptions.empty": "No subscriptions yet",
|
||||
"Mobile.MySubscriptions.totalCredits": "Total Credits",
|
||||
"Mobile.MySubscriptions.subscriptionCredits": "Subscription Credits",
|
||||
"Mobile.MySubscriptions.purchaseCredits": "Purchase Credits",
|
||||
"Mobile.MySubscriptions.activityCredits": "Activity Credits",
|
||||
"Mobile.MySubscriptions.addPurchase": "+ Add",
|
||||
"Mobile.MySubscriptions.detail": "Detail",
|
||||
"Mobile.MySubscriptions.planGrid": "Subscription Plans",
|
||||
"Mobile.MySubscriptions.currentPlan": "In Use",
|
||||
"Mobile.MySubscriptions.statusActive": "Active",
|
||||
"Mobile.MySubscriptions.statusHot": "Hot",
|
||||
"Mobile.MySubscriptions.feeMonth": "Monthly Fee",
|
||||
"Mobile.MySubscriptions.feeQuarter": "Quarterly Fee",
|
||||
"Mobile.MySubscriptions.feeYear": "Yearly Fee",
|
||||
"Mobile.MySubscriptions.perMonth": "/Month",
|
||||
"Mobile.MySubscriptions.perQuarter": "/Quarter",
|
||||
"Mobile.MySubscriptions.perYear": "/Year",
|
||||
"Mobile.MySubscriptions.perForever": "/Forever",
|
||||
"Mobile.MySubscriptions.renewNow": "Renew",
|
||||
"Mobile.MySubscriptions.upgradeNow": "Upgrade",
|
||||
"Mobile.MySubscriptions.subscribeNow": "Subscribe",
|
||||
"Mobile.MySubscriptions.currentPlanButton": "Current Plan",
|
||||
"Mobile.MySubscriptions.continuousMonthly": "Continuous Monthly",
|
||||
"Mobile.MySubscriptions.continuousQuarterly": "Continuous Quarterly",
|
||||
"Mobile.MySubscriptions.continuousYearly": "Continuous Yearly",
|
||||
"Mobile.MySubscriptions.nextRenewal": "Next renewal: {time}",
|
||||
"Mobile.MySubscriptions.subscribedContent": "Subscribed Content",
|
||||
"Mobile.MySubscriptions.tabAgents": "Agents",
|
||||
"Mobile.MySubscriptions.tabSkills": "Skills",
|
||||
"Mobile.MySubscriptions.tabCredits": "Purchase Credits",
|
||||
"Mobile.MySubscriptions.subAmount": "Sub Amount",
|
||||
"Mobile.MySubscriptions.usedAmount": "Used",
|
||||
"Mobile.MySubscriptions.purchaseAmount": "Purchase Amount",
|
||||
"Mobile.MySubscriptions.remaining": "Remaining",
|
||||
"Mobile.MySubscriptions.creditUnit": "Credits",
|
||||
"Mobile.MySubscriptions.expireTime": "Expire Time",
|
||||
"Mobile.MySubscriptions.subscribing": "Active",
|
||||
"Mobile.MySubscriptions.expired": "Expired",
|
||||
"Mobile.MySubscriptions.aboutToUseUp": "Running Low",
|
||||
"Mobile.MySubscriptions.fullyUsed": "Used Up",
|
||||
"Mobile.MySubscriptions.normalUsage": "Sufficient",
|
||||
"Mobile.MySubscriptions.validityForever": "Permanent",
|
||||
"Mobile.MySubscriptions.boughtOut": "Bought Out",
|
||||
"Mobile.MySubscriptions.permanentUse": "Permanent",
|
||||
"Mobile.MySubscriptions.buyoutPriceLabel": "Buyout Price",
|
||||
"Mobile.MySubscriptions.monthlyPayment": "Monthly",
|
||||
"Mobile.MySubscriptions.quarterlyPayment": "Quarterly",
|
||||
"Mobile.MySubscriptions.yearlyPayment": "Yearly",
|
||||
"Mobile.MySubscriptions.purchaseTitle": "Purchase Credits",
|
||||
"Mobile.MySubscriptions.purchaseSubtitle": "Select a credit package for instant delivery",
|
||||
"Mobile.MySubscriptions.orderIdNotFound": "Order ID not found",
|
||||
"Mobile.MySubscriptions.creditPackageCredit": "Credits",
|
||||
"Mobile.MySubscriptions.loadFailed": "Load failed",
|
||||
"Mobile.MySubscriptions.paySuccess": "Payment successful",
|
||||
"Mobile.MySubscriptions.payFailed": "Payment failed",
|
||||
"Mobile.MySubscriptions.payPending": "Payment pending",
|
||||
"Mobile.MySubscriptions.stateActive": "Active",
|
||||
"Mobile.MySubscriptions.stateExpired": "Expired",
|
||||
"Mobile.MySubscriptions.stateCancelled": "Cancelled",
|
||||
"Mobile.Profile.title": "Profile",
|
||||
"Mobile.Profile.userName": "Username",
|
||||
"Mobile.Profile.phone": "Phone",
|
||||
"Mobile.Profile.email": "Email",
|
||||
"Mobile.Profile.pendingBind": "Pending",
|
||||
"Mobile.Profile.dynamicCodeExpire": "Dynamic verification code (expires {expire})",
|
||||
"Mobile.Profile.version": "Version",
|
||||
"Mobile.Profile.language": "Language",
|
||||
"Mobile.Profile.languagePlaceholder": "Select language",
|
||||
"Mobile.Profile.default": "Default",
|
||||
"Mobile.Profile.selectLanguage": "Select language",
|
||||
"Mobile.Link.invalidConfig": "Link configuration is invalid",
|
||||
"Mobile.Link.copyAndOpen": "Link copied. Please paste it manually to open",
|
||||
"Mobile.Link.openFailed": "Failed to open link",
|
||||
"Mobile.Link.copied": "Link copied",
|
||||
"Mobile.Page.loading": "Loading",
|
||||
"Mobile.Page.inputRequired": "Please enter content",
|
||||
"Mobile.Page.loadingMore": "Loading...",
|
||||
"Mobile.AgentList.fetchCategoryFailed": "Failed to load categories",
|
||||
"Mobile.AgentList.fetchAgentFailed": "Failed to load agent list",
|
||||
"Mobile.AgentList.unCollectFailed": "Failed to remove favorite",
|
||||
"Mobile.AgentList.collectFailed": "Failed to add to favorites",
|
||||
"Mobile.AgentList.confirmDeleteAgent": "Are you sure you want to delete this agent?",
|
||||
"Mobile.AgentList.deleteFailed": "Delete failed",
|
||||
"Mobile.AgentList.paymentRequiredTag": "Paid",
|
||||
"Mobile.AgentList.subscribedTag": "Subscribed",
|
||||
"Mobile.Conversation.unnamed": "Untitled conversation",
|
||||
"Mobile.Conversation.unknownAgent": "Unknown agent",
|
||||
"Mobile.Conversation.executing": "Running",
|
||||
"Mobile.AgentUnion.searchPlaceholder": "Search Directory",
|
||||
"Mobile.AgentUnion.fetchHomeAgentListFailed": "Failed to load agents",
|
||||
"Mobile.TempSession.defaultDesc": "I'm your AI assistant. How can I help you?",
|
||||
"Mobile.TempSession.inputPlaceholder": "Enter a command",
|
||||
"Mobile.Auth.resendAfterSeconds": "{seconds}s",
|
||||
"Mobile.AgentSearch.placeholder": "Search agents",
|
||||
"Mobile.AgentSearch.pageAppPlaceholder": "Search App",
|
||||
"Mobile.AgentSearch.emptyResult": "No results",
|
||||
"Mobile.AgentSearch.fetchAgentFailed": "Failed to load agents",
|
||||
"Mobile.AgentSearch.fetchRecentUsedFailed": "Failed to load recently used agents",
|
||||
"Mobile.Chat.noAgentPermission": "You do not have permission to access this agent",
|
||||
"Mobile.Chat.subscriptionRequiredTip": "Please subscribe or upgrade your plan to use",
|
||||
"Mobile.Conversation.mySubscription": "My Subscription",
|
||||
"Mobile.Chat.subscriptionModalTitle": "Subscription Plans",
|
||||
"Mobile.Common.loading": "Loading...",
|
||||
"Mobile.Chat.callLimitLabel": "Call Limit",
|
||||
"Mobile.Chat.unlimited": "Unlimited",
|
||||
"Mobile.Chat.timesPerMonth": " times/month",
|
||||
"Mobile.Chat.takePhoto": "Take Photo",
|
||||
"Mobile.Chat.album": "Album",
|
||||
"Mobile.Chat.file": "File",
|
||||
"Mobile.Chat.skill": "Skill",
|
||||
"Mobile.Chat.aiGeneratedDisclaimer": "AI-generated content, please verify carefully",
|
||||
"Mobile.Chat.fileLimitReached": "You already have {count} files. Please delete some and reselect",
|
||||
"Mobile.Chat.fileMaxSelect": "You can select up to {count} files.",
|
||||
"Mobile.Chat.imageLimitReached": "You already have {count} images. Please delete some and reselect",
|
||||
"Mobile.Chat.imageMaxSelect": "You can select up to {count} images.",
|
||||
"Mobile.Chat.fillRequiredParams": "Please fill in required fields",
|
||||
"Mobile.Chat.removeUploadFailed": "Please remove any images or files that failed to upload before proceeding",
|
||||
"Mobile.Chat.previewTypeUnsupported": "This file type cannot be previewed",
|
||||
"Mobile.Chat.chooseImageFailed": "Failed to select image: {reason}",
|
||||
"Mobile.Chat.uploadImageAlt": "Upload image",
|
||||
"Mobile.Chat.uploadFileAlt": "Upload file",
|
||||
"Mobile.Chat.modelSelect": "Model Selection",
|
||||
"Mobile.Chat.thinking": "Thinking",
|
||||
"Mobile.Chat.thought": "Thought",
|
||||
"Mobile.Common.retry": "Retry",
|
||||
"Mobile.Common.copySuccess": "Copied",
|
||||
"Mobile.Common.copyFailed": "Copy failed",
|
||||
"Mobile.Common.from": "From",
|
||||
"Mobile.Common.loadMore": "Load more",
|
||||
"Mobile.Common.open": "Open",
|
||||
"Mobile.Common.pageHome": "Home",
|
||||
"Mobile.Common.workspace": "Workspace",
|
||||
"Mobile.Common.pleaseInput": "Please enter",
|
||||
"Mobile.Common.pleaseSelect": "Please select",
|
||||
"Mobile.Common.requiredMark": "*",
|
||||
"Mobile.Common.optionSeparator": "/",
|
||||
"Mobile.Conversation.newConversation": "New conversation",
|
||||
"Mobile.Conversation.moreInfo": "More info",
|
||||
"Mobile.Conversation.favorite": "Favorite",
|
||||
"Mobile.Conversation.more": "More",
|
||||
"Mobile.Conversation.share": "Share",
|
||||
"Mobile.Conversation.allConversations": "All conversations",
|
||||
"Mobile.Conversation.relatedTitle": "Related conversations",
|
||||
"Mobile.Conversation.viewAll": "View all",
|
||||
"Mobile.ThirdParty.UniAiX.invalidMessageContent": "Message content is not a string",
|
||||
"Mobile.ThirdParty.MpHtml.copyCode": "Copy code",
|
||||
"Mobile.ThirdParty.MpHtml.saveSuccess": "Saved successfully",
|
||||
"Mobile.ThirdParty.MpHtml.executionPlan": "Execution plan",
|
||||
"Mobile.ThirdParty.MpHtml.callArguments": "Call arguments",
|
||||
"Mobile.ThirdParty.MpHtml.callResult": "Call result",
|
||||
"Mobile.ThirdParty.MpHtml.emptyResult": "Result is empty",
|
||||
"Mobile.ThirdParty.MpHtml.toolCall": "Tool Calls",
|
||||
"Mobile.ThirdParty.MpHtml.itemCount": "items",
|
||||
"Mobile.ThirdParty.UniCaptcha.defaultTitle": "Enter verification code",
|
||||
"Mobile.ThirdParty.UniCaptcha.fillCaptcha": "Please enter the verification code",
|
||||
"Mobile.ThirdParty.UniCaptcha.sceneRequired": "Scene is required",
|
||||
"Mobile.ThirdParty.XTools.saveSuccess": "Saved successfully",
|
||||
"Mobile.ThirdParty.XTools.saveFailed": "Save failed",
|
||||
"Mobile.ThirdParty.XTools.wechatUnsupported": "WeChat operation is not supported in the current environment",
|
||||
"Mobile.ThirdParty.XTools.getServiceFailed": "Failed to get service. This action is not supported",
|
||||
"Mobile.Conversation.loadingHistory": "Loading conversation history",
|
||||
"Mobile.Conversation.settingsTitle": "Conversation Settings",
|
||||
"Mobile.Conversation.settingsLocked": "Conversation settings cannot be changed after the conversation starts.",
|
||||
"Mobile.Conversation.startWithAgent": "Start chatting with {name}",
|
||||
"Mobile.Conversation.chatKeyRequired": "Chat link key cannot be empty",
|
||||
"Mobile.Conversation.idRequired": "Conversation ID cannot be empty",
|
||||
"Mobile.Conversation.agentIdMissing": "Agent ID is missing",
|
||||
"Mobile.Conversation.unfavoriteSuccess": "Unfavorited",
|
||||
"Mobile.Conversation.favoriteSuccess": "Added to favorites",
|
||||
"Mobile.FilePreview.getShareKeyFailed": "Failed to get share link",
|
||||
"Mobile.FilePreview.shareDomainMissing": "Share failed: current domain is unavailable",
|
||||
"Mobile.FilePreview.shareSuccess": "Shared successfully. Link copied.",
|
||||
"Mobile.FilePreview.shareFailed": "Share failed",
|
||||
"Mobile.FilePreview.invalidParams": "Conversation ID or file name cannot be empty",
|
||||
"Mobile.FilePreview.previewPageLoadFailed": "Preview page failed to load",
|
||||
"Mobile.FilePreview.documentRenderFailed": "Document render failed",
|
||||
"Mobile.PagePreview.defaultTitle": "Page preview",
|
||||
"Mobile.FileTree.noFiles": "No files yet",
|
||||
"Mobile.FileTree.invalidConversationId": "Conversation ID is invalid. Cannot export.",
|
||||
"Mobile.FileTree.preparingDownload": "Preparing download...",
|
||||
"Mobile.FileTree.exportSuccess": "Export successful!",
|
||||
"Mobile.FileTree.exportUnknownError": "An unknown error occurred during export",
|
||||
"Mobile.FileTree.exportFailed": "Export failed: {message}",
|
||||
"Mobile.FileTree.linkFileNotSupported": "This link file cannot be previewed",
|
||||
"Mobile.FileTree.downloading": "Downloading...",
|
||||
"Mobile.FileTree.downloadServerError": "Download failed: server returned an error",
|
||||
"Mobile.FileTree.serverError": "Server error",
|
||||
"Mobile.FileTree.saveFailed": "Failed to save file",
|
||||
"Mobile.FileTree.downloadComplete": "Download complete",
|
||||
"Mobile.FileTree.zipSavedContent": 'ZIP file saved successfully!\n\nFile name: {fileName}\nFile path:\n{filePath}\n\nTip: The file is stored in mini-program storage. You can check it in WeChat settings, or tap "Open" to view it.',
|
||||
"Mobile.FileTree.openFailed": "Unable to open file. Please view it in WeChat settings",
|
||||
"Mobile.FileTree.fileValidateFailed": "File validation failed",
|
||||
"Mobile.FileTree.downloadFailedWithCode": "Download failed: {code}",
|
||||
"Mobile.FileTree.downloadNetworkFailed": "Download failed. Please check your network.",
|
||||
"Mobile.AgentDev.downloadFailedWithCode": "Download failed: {code}",
|
||||
"Mobile.PageCard.noPreviewImage": "No preview image available",
|
||||
"Mobile.PageCard.createdAt": "Created on {date}",
|
||||
"Mobile.ButtonWrapper.pagePathParamConfigError": "Invalid page path parameter configuration",
|
||||
"Mobile.ButtonWrapper.pagePathConfigError": "Invalid page path configuration",
|
||||
"Mobile.Sandbox.selectorTitle": "Agent computer selection",
|
||||
"Mobile.Sandbox.unavailable": "Computer unavailable",
|
||||
"Mobile.Sandbox.noneAvailable": "No available computer",
|
||||
"Mobile.Sandbox.switchFailed": "Switch failed",
|
||||
"Mobile.Skill.searchSkillName": "Search skill name",
|
||||
"Mobile.Skill.empty": "No skills yet",
|
||||
"Mobile.Skill.recentUsed": "Recently Used",
|
||||
"Mobile.Skill.myFavorites": "My Favorites",
|
||||
"Mobile.Voice.holdToTalk": "Hold to talk",
|
||||
"Mobile.Voice.recognizing": "Recognizing speech...",
|
||||
"Mobile.Voice.connecting": "Connecting...",
|
||||
"Mobile.Voice.conversationActiveError": "Conversation is active. Pause the current session first.",
|
||||
"Mobile.Voice.noSpeechDetected": "No speech detected",
|
||||
"Mobile.Voice.serviceNotReady": "Audio upload service not initialized",
|
||||
"Mobile.Voice.permissionRequired": "Recording permission required",
|
||||
"Mobile.Voice.permissionContent": "Recording needs microphone access. Allow permission in settings.",
|
||||
"Mobile.Voice.goToSettings": "Go to settings",
|
||||
"Mobile.Voice.recordFailed": "Recording failed",
|
||||
"Mobile.Webview.defaultTitle": "Extension Page",
|
||||
"Mobile.Webview.loadFailed": "Failed to load page",
|
||||
"Mobile.Webview.aiReading": "AI is reading the webpage...",
|
||||
"Mobile.Common.invalidInputString": "Input is empty or not a string",
|
||||
"Mobile.Common.invalidJsonFormat": "Invalid JSON format",
|
||||
"Mobile.Common.missingPathParam": "Missing path parameter: {key}",
|
||||
"Mobile.Time.yearsAgo": "{count} years ago",
|
||||
"Mobile.Time.lastYear": "Last year",
|
||||
"Mobile.Time.monthsAgo": "{count} months ago",
|
||||
"Mobile.Time.daysAgo": "{count} days ago",
|
||||
"Mobile.Time.dayBeforeYesterday": "The day before yesterday",
|
||||
"Mobile.Time.yesterday": "Yesterday",
|
||||
"Mobile.Time.hoursAgo": "{count} hours ago",
|
||||
"Mobile.Time.minutesAgo": "{count} minutes ago",
|
||||
"Mobile.Time.justNow": "Just now",
|
||||
"Mobile.Permission.microphoneTitle": "Microphone permission required",
|
||||
"Mobile.Permission.microphoneDescription": "Recording requires microphone access. Please allow microphone permission in browser settings and try again.",
|
||||
"Mobile.Permission.cameraTitle": "Camera permission required",
|
||||
"Mobile.Permission.cameraDescription": "Taking photos requires camera access. Please allow camera permission in browser settings and try again.",
|
||||
"Mobile.Permission.stepClickLock": "Click the lock icon on the left side of the browser address bar",
|
||||
"Mobile.Permission.stepAllowMicrophone": 'Find "Microphone" and choose "Allow"',
|
||||
"Mobile.Permission.stepRefreshRetryRecord": "Refresh the page and try recording again",
|
||||
"Mobile.Permission.stepAllowCamera": 'Find "Camera" and choose "Allow"',
|
||||
"Mobile.Permission.stepRefreshRetryPhoto": "Refresh the page and try taking photos again",
|
||||
"Mobile.Permission.guideContent": "{description}\n\nSteps:\n{steps}",
|
||||
"Mobile.Permission.gotIt": "Got it",
|
||||
"Mobile.Stream.timeoutDisconnected": "Request timed out and was disconnected",
|
||||
"Mobile.Stream.httpErrorWithCode": "Request failed with status code: {code}",
|
||||
"Mobile.AudioUploader.pathRequired": "Audio file path is required",
|
||||
"Mobile.AudioUploader.fileEmpty": "Audio file is empty",
|
||||
"Mobile.AudioUploader.fileTooLarge": "File is too large. Please keep it under 10MB.",
|
||||
"Mobile.AudioUploader.durationTooLong": "Audio duration is too long. Maximum is 10 minutes.",
|
||||
"Mobile.AudioUploader.noTextRecognized": "No text recognized",
|
||||
"Mobile.AudioUploader.responseParseFailed": "Failed to parse response data",
|
||||
"Mobile.AudioUploader.networkFailed": "Network request failed",
|
||||
"Mobile.AudioUploader.uploadFailed": "Upload failed",
|
||||
"Mobile.AudioUploader.requestFailedWithCode": "Request failed with status code: {code}",
|
||||
"Mobile.AudioUploader.networkTimeout": "Network connection timed out. Please check your network settings",
|
||||
"Mobile.AudioUploader.networkException": "Network connection error. Please check your network settings.",
|
||||
"Mobile.AudioUploader.serverError": "Internal server error. Please try again later",
|
||||
"Mobile.AudioUploader.fileTooLargeDuration": "File is too large. Please shorten the recording duration",
|
||||
"Mobile.AudioUploader.formatNotSupported": "Audio format is not supported",
|
||||
"Mobile.AudioUploader.fileReadFailed": "File read failed: {reason}",
|
||||
"Mobile.Common.restarting": "Restarting...",
|
||||
"Mobile.Sandbox.restartAgent": "Restart agent",
|
||||
"Mobile.Sandbox.restartAgentSuccess": "Agent restarted successfully!",
|
||||
"Mobile.Sandbox.restartAgentFailed": "Failed to restart agent",
|
||||
"Mobile.Sandbox.restartCloudComp": "Restart agent computer",
|
||||
"Mobile.Sandbox.restartCloudCompSuccess": "Agent computer restarted successfully!",
|
||||
"Mobile.Sandbox.restartClient": "Restart client",
|
||||
"Mobile.Sandbox.restartClientSuccess": "Client restarted successfully!",
|
||||
"Mobile.Common.operationFailed": "Operation failed",
|
||||
"Mobile.Components.HistoryConversationList.rename": "Rename",
|
||||
"Mobile.Components.HistoryConversationList.delete": "Delete",
|
||||
"Mobile.Components.HistoryConversationList.renameModalTitle": "Rename",
|
||||
"Mobile.Components.HistoryConversationList.renamePlaceholder": "Please enter a new name",
|
||||
"Mobile.Components.HistoryConversationList.renameSuccess": "Renamed successfully",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleEmpty": "Title cannot be empty",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleTooLong": "Title cannot exceed 50 characters",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalTitle": "Delete Conversation",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalContent": "This conversation will be permanently deleted and cannot be recovered. Are you sure you want to delete it?",
|
||||
"Mobile.Components.HistoryConversationList.deleteSuccess": "Deleted successfully",
|
||||
"Mobile.CreditRecords.pageTitle": "Credit Details",
|
||||
"Mobile.CreditRecords.empty": "No credit records",
|
||||
"Mobile.CreditRecords.remaining": "Remaining",
|
||||
"Mobile.CreditRecords.badgeIncrease": "+ Increase",
|
||||
"Mobile.CreditRecords.badgeDecrease": "- Decrease",
|
||||
"Mobile.CreditRecords.typeSubscription": "Subscription Grant",
|
||||
"Mobile.CreditRecords.typePurchase": "Purchase",
|
||||
"Mobile.CreditRecords.typeActivity": "Activity Grant",
|
||||
"Mobile.CreditRecords.typeManual": "System Grant",
|
||||
"Mobile.CreditRecords.typeModelCall": "Token Consumption",
|
||||
"Mobile.CreditRecords.typeAgentCall": "Agent Call",
|
||||
"Mobile.CreditRecords.typeToolCall": "Tool Call",
|
||||
"Mobile.CreditRecords.typeManualDeduct": "System Deduct",
|
||||
};
|
||||
380
qiming-mobile/constants/i18n-locales/zh-cn.uts
Normal file
380
qiming-mobile/constants/i18n-locales/zh-cn.uts
Normal file
@@ -0,0 +1,380 @@
|
||||
export const I18N_ZH_CN: Record<string, string> = {
|
||||
"Mobile.Nav.home": "首页",
|
||||
"Mobile.Nav.unionRecord": "智联录",
|
||||
"Mobile.Nav.agent": "智能体",
|
||||
"Mobile.Nav.app": "应用",
|
||||
"Mobile.App.pressAgainToExit": "再按一次退出应用",
|
||||
"Mobile.Common.loginRegister": "登录 / 注册",
|
||||
"Mobile.Common.noticeExperience": "当前展示为体验数据,登录后使用完整功能",
|
||||
"Mobile.Common.recentUsed": "最近使用",
|
||||
"Mobile.Common.conversationHistory": "会话记录",
|
||||
"Mobile.Common.menu": "菜单",
|
||||
"Mobile.Common.tip": "提示",
|
||||
"Mobile.Common.confirm": "确认",
|
||||
"Mobile.Common.cancel": "取消",
|
||||
"Mobile.Common.agree": "同意",
|
||||
"Mobile.Common.disagree": "不同意",
|
||||
"Mobile.Common.switching": "切换中...",
|
||||
"Mobile.Common.switchSuccess": "语言已更新",
|
||||
"Mobile.Common.switchFailed": "语言切换失败",
|
||||
"Mobile.Common.noData": "暂无数据",
|
||||
"Mobile.Common.noMoreData": "没有更多数据了",
|
||||
"Mobile.Common.all": "全部",
|
||||
"Mobile.Common.appName": "启明",
|
||||
"Mobile.Common.coverImageAlt": "封面图",
|
||||
"Mobile.Common.avatarAlt": "头像",
|
||||
"Mobile.Common.noDataImageAlt": "暂无数据插图",
|
||||
"Mobile.Common.agentIconAlt": "智能体图标",
|
||||
"Mobile.Common.skillIconAlt": "技能图标",
|
||||
"Mobile.Common.appLogoAlt": "应用 Logo",
|
||||
"Mobile.Common.deleteIconAlt": "删除",
|
||||
"Mobile.Auth.agreementPrefix": "已阅读并同意协议:",
|
||||
"Mobile.Auth.agreementSeparator": "、",
|
||||
"Mobile.Auth.serviceAgreement": "服务使用协议",
|
||||
"Mobile.Auth.userAgreementLink": "https://qiming.com/user-agreement.html",
|
||||
"Mobile.Auth.privacyAgreement": "隐私协议",
|
||||
"Mobile.Auth.privacyAgreementLink": "https://qiming.com/privacy.html",
|
||||
"Mobile.Auth.loginSuccess": "登录成功",
|
||||
"Mobile.Auth.loginFailed": "登录失败",
|
||||
"Mobile.Auth.passwordLogin": "密码登录",
|
||||
"Mobile.Auth.codeLoginRegister": "验证码登录/注册",
|
||||
"Mobile.Auth.nextStep": "下一步",
|
||||
"Mobile.Auth.login": "登录",
|
||||
"Mobile.Auth.inputPhone": "请输入手机号",
|
||||
"Mobile.Auth.defaultAreaCode": "+86",
|
||||
"Mobile.Auth.inputEmail": "请输入邮箱",
|
||||
"Mobile.Auth.inputPassword": "请输入密码",
|
||||
"Mobile.Auth.invalidPhoneFormat": "请输入正确的手机号格式",
|
||||
"Mobile.Auth.invalidEmailFormat": "请输入正确的邮箱格式",
|
||||
"Mobile.Auth.codeSentSuccess": "验证码发送成功",
|
||||
"Mobile.Auth.inputEmailCode": "输入邮箱验证码",
|
||||
"Mobile.Auth.inputSmsCode": "输入短信验证码",
|
||||
"Mobile.Auth.codeSentToPrefix": "验证码已发送至",
|
||||
"Mobile.Auth.codeSentToEmailTarget": "你的邮箱",
|
||||
"Mobile.Auth.codeSentToPhoneTarget": "手机号",
|
||||
"Mobile.Auth.inputVerifyCode": "请输入验证码",
|
||||
"Mobile.Auth.resend": "重新获取",
|
||||
"Mobile.Auth.resendSuccess": "重新发送成功",
|
||||
"Mobile.Auth.sending": "正在发送...",
|
||||
"Mobile.Auth.clipboardReadFailed": "读取剪贴板失败",
|
||||
"Mobile.Auth.clipboardGetFailed": "获取剪贴板失败",
|
||||
"Mobile.Auth.codeAutoFilled": "验证码已自动填充",
|
||||
"Mobile.Auth.pasteSixDigits": "请粘贴6位数字验证码",
|
||||
"Mobile.Auth.clipboardNotSixDigits": "剪贴板内容不是6位数字验证码",
|
||||
"Mobile.Auth.clipboardEmpty": "剪贴板为空",
|
||||
"Mobile.Auth.setPasswordTitle": "密码设置",
|
||||
"Mobile.Auth.setPasswordDesc": "请至少使用6个字符。请勿使用你登录其他网站的密码或容易被猜到的密码",
|
||||
"Mobile.Auth.inputPasswordAgain": "请再次输入密码",
|
||||
"Mobile.Auth.setting": "设置中...",
|
||||
"Mobile.Common.ok": "确定",
|
||||
"Mobile.Auth.passwordMinLength": "密码至少需要6个字符",
|
||||
"Mobile.Auth.confirmPassword": "请确认密码",
|
||||
"Mobile.Auth.passwordMismatch": "两次输入的密码不一致",
|
||||
"Mobile.Auth.passwordSetSuccess": "密码设置成功",
|
||||
"Mobile.Auth.passwordSetFailed": "密码设置失败,请重试",
|
||||
"Mobile.Common.networkRetry": "网络错误,请重试",
|
||||
"Mobile.Auth.pleaseAgreeProtocol": "请同意服务协议及隐私保护!",
|
||||
"Mobile.Auth.userCancelAuthorize": "用户取消授权",
|
||||
"Mobile.Auth.oneClickLogin": "一键登录",
|
||||
"Mobile.Auth.phoneLoginRegister": "手机号码登录/注册",
|
||||
"Mobile.Auth.welcomeUse": "欢迎使用{siteName}",
|
||||
"Mobile.Header.mySubscriptions": "我的订阅",
|
||||
"Mobile.Header.profile": "个人资料",
|
||||
"Mobile.Header.logout": "退出登录",
|
||||
"Mobile.Header.logoutSuccess": "退出成功",
|
||||
"Mobile.Header.logoutFailed": "退出失败",
|
||||
"Mobile.MySubscriptions.title": "我的订阅",
|
||||
"Mobile.MySubscriptions.notEnabled": "订阅功能暂未开启",
|
||||
"Mobile.MySubscriptions.empty": "暂无订阅内容",
|
||||
"Mobile.MySubscriptions.totalCredits": "总积分",
|
||||
"Mobile.MySubscriptions.subscriptionCredits": "订阅积分",
|
||||
"Mobile.MySubscriptions.purchaseCredits": "增购积分",
|
||||
"Mobile.MySubscriptions.activityCredits": "活动积分",
|
||||
"Mobile.MySubscriptions.addPurchase": "+ 增购",
|
||||
"Mobile.MySubscriptions.detail": "明细",
|
||||
"Mobile.MySubscriptions.planGrid": "订阅套餐",
|
||||
"Mobile.MySubscriptions.currentPlan": "使用中",
|
||||
"Mobile.MySubscriptions.statusActive": "使用中",
|
||||
"Mobile.MySubscriptions.statusHot": "热门",
|
||||
"Mobile.MySubscriptions.feeMonth": "月费",
|
||||
"Mobile.MySubscriptions.feeQuarter": "季费",
|
||||
"Mobile.MySubscriptions.feeYear": "年费",
|
||||
"Mobile.MySubscriptions.perMonth": "/月",
|
||||
"Mobile.MySubscriptions.perQuarter": "/季",
|
||||
"Mobile.MySubscriptions.perYear": "/年",
|
||||
"Mobile.MySubscriptions.perForever": "/永久有效",
|
||||
"Mobile.MySubscriptions.renewNow": "续订",
|
||||
"Mobile.MySubscriptions.upgradeNow": "升级",
|
||||
"Mobile.MySubscriptions.subscribeNow": "订阅",
|
||||
"Mobile.MySubscriptions.currentPlanButton": "当前套餐",
|
||||
"Mobile.MySubscriptions.continuousMonthly": "连续包月",
|
||||
"Mobile.MySubscriptions.continuousQuarterly": "连续包季",
|
||||
"Mobile.MySubscriptions.continuousYearly": "连续包年",
|
||||
"Mobile.MySubscriptions.nextRenewal": "下次续费:{time}",
|
||||
"Mobile.MySubscriptions.subscribedContent": "已订阅内容",
|
||||
"Mobile.MySubscriptions.tabAgents": "智能体",
|
||||
"Mobile.MySubscriptions.tabSkills": "技能",
|
||||
"Mobile.MySubscriptions.tabCredits": "增购积分",
|
||||
"Mobile.MySubscriptions.subAmount": "订阅金额",
|
||||
"Mobile.MySubscriptions.usedAmount": "已消耗",
|
||||
"Mobile.MySubscriptions.purchaseAmount": "增购金额",
|
||||
"Mobile.MySubscriptions.remaining": "剩余",
|
||||
"Mobile.MySubscriptions.creditUnit": "积分",
|
||||
"Mobile.MySubscriptions.expireTime": "到期时间",
|
||||
"Mobile.MySubscriptions.subscribing": "订阅中",
|
||||
"Mobile.MySubscriptions.expired": "已到期",
|
||||
"Mobile.MySubscriptions.aboutToUseUp": "即将用完",
|
||||
"Mobile.MySubscriptions.fullyUsed": "已用完",
|
||||
"Mobile.MySubscriptions.normalUsage": "充足",
|
||||
"Mobile.MySubscriptions.validityForever": "永久有效",
|
||||
"Mobile.MySubscriptions.boughtOut": "已买断",
|
||||
"Mobile.MySubscriptions.permanentUse": "永久使用",
|
||||
"Mobile.MySubscriptions.buyoutPriceLabel": "买断价",
|
||||
"Mobile.MySubscriptions.monthlyPayment": "月付",
|
||||
"Mobile.MySubscriptions.quarterlyPayment": "季付",
|
||||
"Mobile.MySubscriptions.yearlyPayment": "年付",
|
||||
"Mobile.MySubscriptions.purchaseTitle": "增购积分",
|
||||
"Mobile.MySubscriptions.purchaseSubtitle": "选择积分套餐,即刻到账",
|
||||
"Mobile.MySubscriptions.orderIdNotFound": "未获取到订单号",
|
||||
"Mobile.MySubscriptions.creditPackageCredit": "积分",
|
||||
"Mobile.MySubscriptions.loadFailed": "加载失败",
|
||||
"Mobile.MySubscriptions.paySuccess": "支付成功",
|
||||
"Mobile.MySubscriptions.payFailed": "支付失败",
|
||||
"Mobile.MySubscriptions.payPending": "支付处理中",
|
||||
"Mobile.MySubscriptions.stateActive": "使用中",
|
||||
"Mobile.MySubscriptions.stateExpired": "已过期",
|
||||
"Mobile.MySubscriptions.stateCancelled": "已取消",
|
||||
"Mobile.Profile.title": "个人资料",
|
||||
"Mobile.Profile.userName": "用户名",
|
||||
"Mobile.Profile.phone": "手机号",
|
||||
"Mobile.Profile.email": "邮箱",
|
||||
"Mobile.Profile.pendingBind": "待绑定",
|
||||
"Mobile.Profile.dynamicCodeExpire": "动态认证码({expire} 过期)",
|
||||
"Mobile.Profile.version": "版本",
|
||||
"Mobile.Profile.language": "语言",
|
||||
"Mobile.Profile.languagePlaceholder": "请选择语言",
|
||||
"Mobile.Profile.default": "默认",
|
||||
"Mobile.Profile.selectLanguage": "选择语言",
|
||||
"Mobile.Link.invalidConfig": "链接地址配置错误",
|
||||
"Mobile.Link.copyAndOpen": "链接已复制,请手动粘贴打开",
|
||||
"Mobile.Link.openFailed": "打开链接失败",
|
||||
"Mobile.Link.copied": "链接已复制",
|
||||
"Mobile.Page.loading": "加载中",
|
||||
"Mobile.Page.inputRequired": "请输入内容",
|
||||
"Mobile.Page.loadingMore": "加载中...",
|
||||
"Mobile.AgentList.fetchCategoryFailed": "获取分类信息失败",
|
||||
"Mobile.AgentList.fetchAgentFailed": "获取智能体列表失败",
|
||||
"Mobile.AgentList.unCollectFailed": "取消收藏失败",
|
||||
"Mobile.AgentList.collectFailed": "添加收藏失败",
|
||||
"Mobile.AgentList.confirmDeleteAgent": "你确认要删除该智能体吗?",
|
||||
"Mobile.AgentList.deleteFailed": "删除失败",
|
||||
"Mobile.AgentList.paymentRequiredTag": "付费",
|
||||
"Mobile.AgentList.subscribedTag": "已订阅",
|
||||
"Mobile.Conversation.unnamed": "未命名会话",
|
||||
"Mobile.Conversation.unknownAgent": "未知智能体",
|
||||
"Mobile.Conversation.executing": "执行中",
|
||||
"Mobile.AgentUnion.searchPlaceholder": "搜索智联录",
|
||||
"Mobile.AgentUnion.fetchHomeAgentListFailed": "获取主页智能体列表失败",
|
||||
"Mobile.TempSession.defaultDesc": "我是你的智能助手,有什么需要帮忙的吗?",
|
||||
"Mobile.TempSession.inputPlaceholder": "请输入指令",
|
||||
"Mobile.Auth.resendAfterSeconds": "{seconds}s后",
|
||||
"Mobile.AgentSearch.placeholder": "搜索智能体",
|
||||
"Mobile.AgentSearch.pageAppPlaceholder": "搜索应用",
|
||||
"Mobile.AgentSearch.emptyResult": "暂无结果",
|
||||
"Mobile.AgentSearch.fetchAgentFailed": "获取智能体列表失败",
|
||||
"Mobile.AgentSearch.fetchRecentUsedFailed": "获取最近使用智能体列表失败",
|
||||
"Mobile.Chat.noAgentPermission": "您无该智能体权限",
|
||||
"Mobile.Chat.subscriptionRequiredTip": "请订阅或升级套餐后使用",
|
||||
"Mobile.Conversation.mySubscription": "我的订阅",
|
||||
"Mobile.Chat.subscriptionModalTitle": "订阅计划",
|
||||
"Mobile.Common.loading": "加载中...",
|
||||
"Mobile.Chat.callLimitLabel": "调用额度",
|
||||
"Mobile.Chat.unlimited": "不限次",
|
||||
"Mobile.Chat.timesPerMonth": "次/月",
|
||||
"Mobile.Chat.takePhoto": "拍照",
|
||||
"Mobile.Chat.album": "相册",
|
||||
"Mobile.Chat.file": "文件",
|
||||
"Mobile.Chat.skill": "技能",
|
||||
"Mobile.Chat.aiGeneratedDisclaimer": "内容由AI生成,请仔细甄别",
|
||||
"Mobile.Chat.fileLimitReached": "已经有 {count} 个文件了,请删除部分文件之后重新选择",
|
||||
"Mobile.Chat.fileMaxSelect": "最多只能选择 {count} 个文件",
|
||||
"Mobile.Chat.imageLimitReached": "已经有 {count} 张图片了,请删除部分图片之后重新选择",
|
||||
"Mobile.Chat.imageMaxSelect": "最多只能选择 {count} 张图片",
|
||||
"Mobile.Chat.fillRequiredParams": "请填写必填参数",
|
||||
"Mobile.Chat.removeUploadFailed": "请先删除上传失败的图片或文件",
|
||||
"Mobile.Chat.previewTypeUnsupported": "当前不支持预览该类型文件",
|
||||
"Mobile.Chat.chooseImageFailed": "选择图片失败: {reason}",
|
||||
"Mobile.Chat.uploadImageAlt": "上传图片",
|
||||
"Mobile.Chat.uploadFileAlt": "上传文件",
|
||||
"Mobile.Chat.modelSelect": "模型选择",
|
||||
"Mobile.Chat.thinking": "正在思考",
|
||||
"Mobile.Chat.thought": "已思考",
|
||||
"Mobile.Common.retry": "重试",
|
||||
"Mobile.Common.copySuccess": "复制成功",
|
||||
"Mobile.Common.copyFailed": "复制失败",
|
||||
"Mobile.Common.from": "来自",
|
||||
"Mobile.Common.loadMore": "加载更多",
|
||||
"Mobile.Common.open": "打开",
|
||||
"Mobile.Common.pageHome": "页面首页",
|
||||
"Mobile.Common.workspace": "工作台",
|
||||
"Mobile.Common.pleaseInput": "请输入",
|
||||
"Mobile.Common.pleaseSelect": "请选择",
|
||||
"Mobile.Common.requiredMark": "*",
|
||||
"Mobile.Common.optionSeparator": "/",
|
||||
"Mobile.Conversation.newConversation": "新建会话",
|
||||
"Mobile.Conversation.moreInfo": "更多信息",
|
||||
"Mobile.Conversation.favorite": "收藏",
|
||||
"Mobile.Conversation.more": "更多",
|
||||
"Mobile.Conversation.share": "分享",
|
||||
"Mobile.Conversation.allConversations": "全部会话",
|
||||
"Mobile.Conversation.relatedTitle": "相关会话",
|
||||
"Mobile.Conversation.viewAll": "查看全部",
|
||||
"Mobile.ThirdParty.UniAiX.invalidMessageContent": "消息内容不是字符串",
|
||||
"Mobile.ThirdParty.MpHtml.copyCode": "复制代码",
|
||||
"Mobile.ThirdParty.MpHtml.saveSuccess": "保存成功",
|
||||
"Mobile.ThirdParty.MpHtml.executionPlan": "执行计划",
|
||||
"Mobile.ThirdParty.MpHtml.callArguments": "调用参数",
|
||||
"Mobile.ThirdParty.MpHtml.callResult": "调用结果",
|
||||
"Mobile.ThirdParty.MpHtml.emptyResult": "结果为空",
|
||||
"Mobile.ThirdParty.MpHtml.toolCall": "工具调用",
|
||||
"Mobile.ThirdParty.MpHtml.itemCount": "项",
|
||||
"Mobile.ThirdParty.UniCaptcha.defaultTitle": "请输入验证码",
|
||||
"Mobile.ThirdParty.UniCaptcha.fillCaptcha": "请填写验证码",
|
||||
"Mobile.ThirdParty.UniCaptcha.sceneRequired": "scene不能为空",
|
||||
"Mobile.ThirdParty.XTools.saveSuccess": "保存成功",
|
||||
"Mobile.ThirdParty.XTools.saveFailed": "保存失败",
|
||||
"Mobile.ThirdParty.XTools.wechatUnsupported": "当前环境不支持微信操作",
|
||||
"Mobile.ThirdParty.XTools.getServiceFailed": "获取服务失败,不支持该操作",
|
||||
"Mobile.Conversation.loadingHistory": "正在加载历史会话",
|
||||
"Mobile.Conversation.settingsTitle": "对话设置",
|
||||
"Mobile.Conversation.settingsLocked": "对话开始后,对话设置将无法修改。",
|
||||
"Mobile.Conversation.startWithAgent": "和{name}开始会话",
|
||||
"Mobile.Conversation.chatKeyRequired": "会话链接Key不能为空",
|
||||
"Mobile.Conversation.idRequired": "会话ID不能为空",
|
||||
"Mobile.Conversation.agentIdMissing": "智能体ID不存在",
|
||||
"Mobile.Conversation.unfavoriteSuccess": "已取消收藏",
|
||||
"Mobile.Conversation.favoriteSuccess": "已添加到收藏",
|
||||
"Mobile.FilePreview.getShareKeyFailed": "获取分享链接失败",
|
||||
"Mobile.FilePreview.shareDomainMissing": "分享失败,无法获取当前域名",
|
||||
"Mobile.FilePreview.shareSuccess": "分享成功,链接已复制",
|
||||
"Mobile.FilePreview.shareFailed": "分享失败",
|
||||
"Mobile.FilePreview.invalidParams": "会话ID或文件名不能为空",
|
||||
"Mobile.FilePreview.previewPageLoadFailed": "预览页面加载失败",
|
||||
"Mobile.FilePreview.documentRenderFailed": "文档渲染失败",
|
||||
"Mobile.PagePreview.defaultTitle": "页面预览",
|
||||
"Mobile.FileTree.noFiles": "暂无文件",
|
||||
"Mobile.FileTree.invalidConversationId": "会话ID不存在或无效,无法导出",
|
||||
"Mobile.FileTree.preparingDownload": "准备下载...",
|
||||
"Mobile.FileTree.exportSuccess": "导出成功!",
|
||||
"Mobile.FileTree.exportUnknownError": "导出过程中发生未知错误",
|
||||
"Mobile.FileTree.exportFailed": "导出失败: {message}",
|
||||
"Mobile.FileTree.linkFileNotSupported": "该文件为链接文件,不支持预览",
|
||||
"Mobile.FileTree.downloading": "下载中...",
|
||||
"Mobile.FileTree.downloadServerError": "下载失败:服务器返回错误",
|
||||
"Mobile.FileTree.serverError": "服务器返回错误",
|
||||
"Mobile.FileTree.saveFailed": "保存文件失败",
|
||||
"Mobile.FileTree.downloadComplete": "下载完成",
|
||||
"Mobile.FileTree.zipSavedContent": 'ZIP文件已保存成功!\n\n文件名:{fileName}\n文件路径:\n{filePath}\n\n提示:文件保存在小程序文件目录中,可通过微信设置中的小程序存储空间查看,或点击"打开"直接查看文件。',
|
||||
"Mobile.FileTree.openFailed": "无法打开文件,请通过微信设置查看",
|
||||
"Mobile.FileTree.fileValidateFailed": "文件验证失败",
|
||||
"Mobile.FileTree.downloadFailedWithCode": "下载失败: {code}",
|
||||
"Mobile.FileTree.downloadNetworkFailed": "下载失败,请检查网络",
|
||||
"Mobile.AgentDev.downloadFailedWithCode": "下载失败: {code}",
|
||||
"Mobile.PageCard.noPreviewImage": "无可用预览图",
|
||||
"Mobile.PageCard.createdAt": "创建于 {date}",
|
||||
"Mobile.ButtonWrapper.pagePathParamConfigError": "页面路径参数配置错误",
|
||||
"Mobile.ButtonWrapper.pagePathConfigError": "页面路径配置错误",
|
||||
"Mobile.Sandbox.selectorTitle": "智能体电脑选择",
|
||||
"Mobile.Sandbox.unavailable": "电脑不可用",
|
||||
"Mobile.Sandbox.noneAvailable": "无可用电脑",
|
||||
"Mobile.Sandbox.switchFailed": "切换失败",
|
||||
"Mobile.Skill.searchSkillName": "搜索技能名称",
|
||||
"Mobile.Skill.empty": "暂无技能",
|
||||
"Mobile.Skill.recentUsed": "最近使用",
|
||||
"Mobile.Skill.myFavorites": "我的收藏",
|
||||
"Mobile.Voice.holdToTalk": "按住说话",
|
||||
"Mobile.Voice.recognizing": "语音识别中",
|
||||
"Mobile.Voice.connecting": "正在连接",
|
||||
"Mobile.Voice.conversationActiveError": "会话正在进行中,请先暂停现有会话",
|
||||
"Mobile.Voice.noSpeechDetected": "未识别到文字",
|
||||
"Mobile.Voice.serviceNotReady": "音频上传服务未初始化",
|
||||
"Mobile.Voice.permissionRequired": "需要录音权限",
|
||||
"Mobile.Voice.permissionContent": "录音功能需要访问你的麦克风,请在设置中允许录音权限",
|
||||
"Mobile.Voice.goToSettings": "去设置",
|
||||
"Mobile.Voice.recordFailed": "录音失败",
|
||||
"Mobile.Webview.defaultTitle": "扩展页面",
|
||||
"Mobile.Webview.loadFailed": "页面加载失败",
|
||||
"Mobile.Webview.aiReading": "AI读取网页内容中...",
|
||||
"Mobile.Common.invalidInputString": "输入为空或不是字符串",
|
||||
"Mobile.Common.invalidJsonFormat": "JSON格式错误",
|
||||
"Mobile.Common.missingPathParam": "缺少路径参数: {key}",
|
||||
"Mobile.Time.yearsAgo": "{count}年前",
|
||||
"Mobile.Time.lastYear": "去年",
|
||||
"Mobile.Time.monthsAgo": "{count}月前",
|
||||
"Mobile.Time.daysAgo": "{count}天前",
|
||||
"Mobile.Time.dayBeforeYesterday": "前天",
|
||||
"Mobile.Time.yesterday": "昨天",
|
||||
"Mobile.Time.hoursAgo": "{count}小时前",
|
||||
"Mobile.Time.minutesAgo": "{count}分钟前",
|
||||
"Mobile.Time.justNow": "刚刚",
|
||||
"Mobile.Permission.microphoneTitle": "需要麦克风权限",
|
||||
"Mobile.Permission.microphoneDescription": "录音功能需要访问你的麦克风。请在浏览器设置中允许麦克风权限,然后重新尝试。",
|
||||
"Mobile.Permission.cameraTitle": "需要摄像头权限",
|
||||
"Mobile.Permission.cameraDescription": "拍照功能需要访问你的摄像头。请在浏览器设置中允许摄像头权限,然后重新尝试。",
|
||||
"Mobile.Permission.stepClickLock": "点击浏览器地址栏左侧的锁定图标",
|
||||
"Mobile.Permission.stepAllowMicrophone": '找到"麦克风"选项,选择"允许"',
|
||||
"Mobile.Permission.stepRefreshRetryRecord": "刷新页面后重新尝试录音",
|
||||
"Mobile.Permission.stepAllowCamera": '找到"摄像头"选项,选择"允许"',
|
||||
"Mobile.Permission.stepRefreshRetryPhoto": "刷新页面后重新尝试拍照",
|
||||
"Mobile.Permission.guideContent": "{description}\n\n操作步骤:\n{steps}",
|
||||
"Mobile.Permission.gotIt": "知道了",
|
||||
"Mobile.Stream.timeoutDisconnected": "请求超时,已自动断开",
|
||||
"Mobile.Stream.httpErrorWithCode": "请求失败,状态码: {code}",
|
||||
"Mobile.AudioUploader.pathRequired": "音频文件路径不能为空",
|
||||
"Mobile.AudioUploader.fileEmpty": "音频文件为空",
|
||||
"Mobile.AudioUploader.fileTooLarge": "音频文件过大,请控制在10MB以内",
|
||||
"Mobile.AudioUploader.durationTooLong": "录音时长过长,最多支持10分钟",
|
||||
"Mobile.AudioUploader.noTextRecognized": "未识别到文字",
|
||||
"Mobile.AudioUploader.responseParseFailed": "响应数据解析失败",
|
||||
"Mobile.AudioUploader.networkFailed": "网络请求失败",
|
||||
"Mobile.AudioUploader.uploadFailed": "上传失败",
|
||||
"Mobile.AudioUploader.requestFailedWithCode": "请求失败,状态码: {code}",
|
||||
"Mobile.AudioUploader.networkTimeout": "网络连接超时,请检查网络设置",
|
||||
"Mobile.AudioUploader.networkException": "网络连接异常,请检查网络设置",
|
||||
"Mobile.AudioUploader.serverError": "服务器内部错误,请稍后重试",
|
||||
"Mobile.AudioUploader.fileTooLargeDuration": "文件过大,请控制录音时长",
|
||||
"Mobile.AudioUploader.formatNotSupported": "音频格式不支持",
|
||||
"Mobile.AudioUploader.fileReadFailed": "文件读取失败: {reason}",
|
||||
"Mobile.Common.restarting": "重启中...",
|
||||
"Mobile.Sandbox.restartAgent": "重启智能体",
|
||||
"Mobile.Sandbox.restartAgentSuccess": "重启智能体成功!",
|
||||
"Mobile.Sandbox.restartAgentFailed": "重启智能体失败",
|
||||
"Mobile.Sandbox.restartCloudComp": "重启智能体电脑",
|
||||
"Mobile.Sandbox.restartCloudCompSuccess": "重启智能体电脑成功!",
|
||||
"Mobile.Sandbox.restartClient": "重启客户端",
|
||||
"Mobile.Sandbox.restartClientSuccess": "重启客户端成功!",
|
||||
"Mobile.Common.operationFailed": "操作失败",
|
||||
"Mobile.Components.HistoryConversationList.rename": "重命名",
|
||||
"Mobile.Components.HistoryConversationList.delete": "删除",
|
||||
"Mobile.Components.HistoryConversationList.renameModalTitle": "修改名称",
|
||||
"Mobile.Components.HistoryConversationList.renamePlaceholder": "请输入新名称",
|
||||
"Mobile.Components.HistoryConversationList.renameSuccess": "修改成功",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleEmpty": "标题不能为空",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleTooLong": "标题长度不能超过 50 个字符",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalTitle": "永久删除会话",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalContent": "本条会话数据将被永久删除,不可恢复及撤销。确定要删除吗?",
|
||||
"Mobile.Components.HistoryConversationList.deleteSuccess": "删除成功",
|
||||
"Mobile.CreditRecords.pageTitle": "积分明细",
|
||||
"Mobile.CreditRecords.empty": "暂无积分记录",
|
||||
"Mobile.CreditRecords.remaining": "剩余",
|
||||
"Mobile.CreditRecords.badgeIncrease": "+ 增加",
|
||||
"Mobile.CreditRecords.badgeDecrease": "- 扣减",
|
||||
"Mobile.CreditRecords.typeSubscription": "订阅发放",
|
||||
"Mobile.CreditRecords.typePurchase": "增购",
|
||||
"Mobile.CreditRecords.typeActivity": "活动发放",
|
||||
"Mobile.CreditRecords.typeManual": "系统发放",
|
||||
"Mobile.CreditRecords.typeModelCall": "TOKEN消耗",
|
||||
"Mobile.CreditRecords.typeAgentCall": "智能体调用",
|
||||
"Mobile.CreditRecords.typeToolCall": "工具调用",
|
||||
"Mobile.CreditRecords.typeManualDeduct": "系统扣减",
|
||||
};
|
||||
373
qiming-mobile/constants/i18n-locales/zh-hk.uts
Normal file
373
qiming-mobile/constants/i18n-locales/zh-hk.uts
Normal file
@@ -0,0 +1,373 @@
|
||||
export const I18N_ZH_HK: Record<string, string> = {
|
||||
"Mobile.Nav.home": "首頁",
|
||||
"Mobile.Nav.unionRecord": "智聯錄",
|
||||
"Mobile.Nav.agent": "智能體",
|
||||
"Mobile.Nav.app": "應用程式",
|
||||
"Mobile.App.pressAgainToExit": "再按一次退出應用程式",
|
||||
"Mobile.Common.loginRegister": "登入 / 註冊",
|
||||
"Mobile.Common.noticeExperience": "目前顯示為體驗資料,登入後可使用完整功能",
|
||||
"Mobile.Common.recentUsed": "最近使用",
|
||||
"Mobile.Common.conversationHistory": "對話記錄",
|
||||
"Mobile.Common.menu": "選單",
|
||||
"Mobile.Common.tip": "提示",
|
||||
"Mobile.Common.confirm": "確認",
|
||||
"Mobile.Common.cancel": "取消",
|
||||
"Mobile.Common.agree": "同意",
|
||||
"Mobile.Common.disagree": "不同意",
|
||||
"Mobile.Common.switching": "切換中...",
|
||||
"Mobile.Common.switchSuccess": "語言已更新",
|
||||
"Mobile.Common.switchFailed": "語言切換失敗",
|
||||
"Mobile.Common.noData": "暫無資料",
|
||||
"Mobile.Common.noMoreData": "沒有更多資料了",
|
||||
"Mobile.Common.all": "全部",
|
||||
"Mobile.Common.appName": "啟明",
|
||||
"Mobile.Common.coverImageAlt": "封面圖",
|
||||
"Mobile.Common.avatarAlt": "頭像",
|
||||
"Mobile.Common.noDataImageAlt": "暫無資料插圖",
|
||||
"Mobile.Common.agentIconAlt": "智能體圖示",
|
||||
"Mobile.Common.skillIconAlt": "技能圖示",
|
||||
"Mobile.Common.appLogoAlt": "應用程式 Logo",
|
||||
"Mobile.Common.deleteIconAlt": "刪除",
|
||||
"Mobile.Auth.agreementPrefix": "已閱讀並同意協議:",
|
||||
"Mobile.Auth.agreementSeparator": "、",
|
||||
"Mobile.Auth.serviceAgreement": "服務使用協議",
|
||||
"Mobile.Auth.userAgreementLink": "https://qiming.com/user-agreement.html",
|
||||
"Mobile.Auth.privacyAgreement": "隱私協議",
|
||||
"Mobile.Auth.privacyAgreementLink": "https://qiming.com/privacy.html",
|
||||
"Mobile.Auth.loginSuccess": "登入成功",
|
||||
"Mobile.Auth.loginFailed": "登入失敗",
|
||||
"Mobile.Auth.passwordLogin": "密碼登入",
|
||||
"Mobile.Auth.codeLoginRegister": "驗證碼登入/註冊",
|
||||
"Mobile.Auth.nextStep": "下一步",
|
||||
"Mobile.Auth.login": "登入",
|
||||
"Mobile.Auth.inputPhone": "請輸入手機號碼",
|
||||
"Mobile.Auth.defaultAreaCode": "+86",
|
||||
"Mobile.Auth.inputEmail": "請輸入電郵",
|
||||
"Mobile.Auth.inputPassword": "請輸入密碼",
|
||||
"Mobile.Auth.invalidPhoneFormat": "請輸入正確的手機號碼格式",
|
||||
"Mobile.Auth.invalidEmailFormat": "請輸入正確的電郵格式",
|
||||
"Mobile.Auth.codeSentSuccess": "驗證碼發送成功",
|
||||
"Mobile.Auth.inputEmailCode": "輸入電郵驗證碼",
|
||||
"Mobile.Auth.inputSmsCode": "輸入短訊驗證碼",
|
||||
"Mobile.Auth.codeSentToPrefix": "驗證碼已發送至",
|
||||
"Mobile.Auth.codeSentToEmailTarget": "你的電郵",
|
||||
"Mobile.Auth.codeSentToPhoneTarget": "手機號碼",
|
||||
"Mobile.Auth.inputVerifyCode": "請輸入驗證碼",
|
||||
"Mobile.Auth.resend": "重新獲取",
|
||||
"Mobile.Auth.resendSuccess": "重新發送成功",
|
||||
"Mobile.Auth.sending": "正在發送...",
|
||||
"Mobile.Auth.clipboardReadFailed": "讀取剪貼簿失敗",
|
||||
"Mobile.Auth.clipboardGetFailed": "取得剪貼簿失敗",
|
||||
"Mobile.Auth.codeAutoFilled": "驗證碼已自動填充",
|
||||
"Mobile.Auth.pasteSixDigits": "請貼上 6 位數字驗證碼",
|
||||
"Mobile.Auth.clipboardNotSixDigits": "剪貼簿內容不是 6 位數字驗證碼",
|
||||
"Mobile.Auth.clipboardEmpty": "剪貼簿為空",
|
||||
"Mobile.Auth.setPasswordTitle": "密碼設定",
|
||||
"Mobile.Auth.setPasswordDesc": "請至少使用 6 個字元。請勿使用你登入其他網站的密碼或容易被猜到的密碼",
|
||||
"Mobile.Auth.inputPasswordAgain": "請再次輸入密碼",
|
||||
"Mobile.Auth.setting": "設定中...",
|
||||
"Mobile.Common.ok": "確定",
|
||||
"Mobile.Auth.passwordMinLength": "密碼至少需要 6 個字元",
|
||||
"Mobile.Auth.confirmPassword": "請確認密碼",
|
||||
"Mobile.Auth.passwordMismatch": "兩次輸入的密碼不一致",
|
||||
"Mobile.Auth.passwordSetSuccess": "密碼設定成功",
|
||||
"Mobile.Auth.passwordSetFailed": "密碼設定失敗,請重試",
|
||||
"Mobile.Common.networkRetry": "網絡錯誤,請重試",
|
||||
"Mobile.Auth.pleaseAgreeProtocol": "請同意服務協議及私隱保護!",
|
||||
"Mobile.Auth.userCancelAuthorize": "用戶取消授權",
|
||||
"Mobile.Auth.oneClickLogin": "一鍵登入",
|
||||
"Mobile.Auth.phoneLoginRegister": "手機號碼登入/註冊",
|
||||
"Mobile.Auth.welcomeUse": "歡迎使用{siteName}",
|
||||
"Mobile.Header.mySubscriptions": "我的訂閱",
|
||||
"Mobile.Header.profile": "個人資料",
|
||||
"Mobile.Header.logout": "登出",
|
||||
"Mobile.Header.logoutSuccess": "退出成功",
|
||||
"Mobile.Header.logoutFailed": "退出失敗",
|
||||
"Mobile.MySubscriptions.title": "我的訂閱",
|
||||
"Mobile.MySubscriptions.notEnabled": "訂閱功能暫未開啟",
|
||||
"Mobile.MySubscriptions.empty": "暫無訂閱內容",
|
||||
"Mobile.MySubscriptions.totalCredits": "總積分",
|
||||
"Mobile.MySubscriptions.subscriptionCredits": "訂閱積分",
|
||||
"Mobile.MySubscriptions.purchaseCredits": "增購積分",
|
||||
"Mobile.MySubscriptions.activityCredits": "活動積分",
|
||||
"Mobile.MySubscriptions.addPurchase": "+ 增購",
|
||||
"Mobile.MySubscriptions.detail": "明細",
|
||||
"Mobile.MySubscriptions.planGrid": "訂閱套餐",
|
||||
"Mobile.MySubscriptions.currentPlan": "當前訂閱",
|
||||
"Mobile.MySubscriptions.statusActive": "使用中",
|
||||
"Mobile.MySubscriptions.statusHot": "熱門",
|
||||
"Mobile.MySubscriptions.feeMonth": "月費",
|
||||
"Mobile.MySubscriptions.feeQuarter": "季費",
|
||||
"Mobile.MySubscriptions.feeYear": "年費",
|
||||
"Mobile.MySubscriptions.perMonth": "/月",
|
||||
"Mobile.MySubscriptions.perQuarter": "/季",
|
||||
"Mobile.MySubscriptions.perYear": "/年",
|
||||
"Mobile.MySubscriptions.perForever": "/永久有效",
|
||||
"Mobile.MySubscriptions.renewNow": "續訂",
|
||||
"Mobile.MySubscriptions.upgradeNow": "升級",
|
||||
"Mobile.MySubscriptions.subscribeNow": "訂閱",
|
||||
"Mobile.MySubscriptions.nextRenewal": "下次續費:{time}",
|
||||
"Mobile.MySubscriptions.subscribedContent": "已訂閱內容",
|
||||
"Mobile.MySubscriptions.tabAgents": "智能體",
|
||||
"Mobile.MySubscriptions.tabSkills": "技能",
|
||||
"Mobile.MySubscriptions.tabCredits": "增購積分",
|
||||
"Mobile.MySubscriptions.subAmount": "訂閱金額",
|
||||
"Mobile.MySubscriptions.usedAmount": "已消耗",
|
||||
"Mobile.MySubscriptions.purchaseAmount": "增購金額",
|
||||
"Mobile.MySubscriptions.remaining": "剩餘",
|
||||
"Mobile.MySubscriptions.creditUnit": "積分",
|
||||
"Mobile.MySubscriptions.expireTime": "到期時間",
|
||||
"Mobile.MySubscriptions.subscribing": "訂閱中",
|
||||
"Mobile.MySubscriptions.expired": "已到期",
|
||||
"Mobile.MySubscriptions.aboutToUseUp": "即將用完",
|
||||
"Mobile.MySubscriptions.fullyUsed": "已用完",
|
||||
"Mobile.MySubscriptions.normalUsage": "充足",
|
||||
"Mobile.MySubscriptions.validityForever": "永久有效",
|
||||
"Mobile.MySubscriptions.boughtOut": "已買斷",
|
||||
"Mobile.MySubscriptions.permanentUse": "永久使用",
|
||||
"Mobile.MySubscriptions.buyoutPriceLabel": "買斷價",
|
||||
"Mobile.MySubscriptions.monthlyPayment": "月付",
|
||||
"Mobile.MySubscriptions.quarterlyPayment": "季付",
|
||||
"Mobile.MySubscriptions.yearlyPayment": "年付",
|
||||
"Mobile.MySubscriptions.purchaseTitle": "增購積分",
|
||||
"Mobile.MySubscriptions.purchaseSubtitle": "選擇積分套餐,即刻到帳",
|
||||
"Mobile.MySubscriptions.orderIdNotFound": "未獲取到訂單號",
|
||||
"Mobile.MySubscriptions.creditPackageCredit": "積分",
|
||||
"Mobile.MySubscriptions.loadFailed": "載入失敗",
|
||||
"Mobile.MySubscriptions.stateActive": "使用中",
|
||||
"Mobile.MySubscriptions.stateExpired": "已過期",
|
||||
"Mobile.MySubscriptions.stateCancelled": "已取消",
|
||||
"Mobile.Profile.title": "個人資料",
|
||||
"Mobile.Profile.userName": "用戶名稱",
|
||||
"Mobile.Profile.phone": "手機號碼",
|
||||
"Mobile.Profile.email": "電郵",
|
||||
"Mobile.Profile.pendingBind": "待綁定",
|
||||
"Mobile.Profile.dynamicCodeExpire": "動態認證碼({expire} 到期)",
|
||||
"Mobile.Profile.version": "版本",
|
||||
"Mobile.Profile.language": "語言",
|
||||
"Mobile.Profile.languagePlaceholder": "請選擇語言",
|
||||
"Mobile.Profile.default": "默認",
|
||||
"Mobile.Profile.selectLanguage": "選擇語言",
|
||||
"Mobile.Link.invalidConfig": "連結地址配置錯誤",
|
||||
"Mobile.Link.copyAndOpen": "連結已複製,請手動貼上開啟",
|
||||
"Mobile.Link.openFailed": "開啟連結失敗",
|
||||
"Mobile.Link.copied": "連結已複製",
|
||||
"Mobile.Page.loading": "載入中",
|
||||
"Mobile.Page.inputRequired": "請輸入內容",
|
||||
"Mobile.Page.loadingMore": "載入中...",
|
||||
"Mobile.AgentList.fetchCategoryFailed": "取得分類資料失敗",
|
||||
"Mobile.AgentList.fetchAgentFailed": "取得智能體列表失敗",
|
||||
"Mobile.AgentList.unCollectFailed": "取消收藏失敗",
|
||||
"Mobile.AgentList.collectFailed": "加入收藏失敗",
|
||||
"Mobile.AgentList.confirmDeleteAgent": "你確認要刪除該智能體嗎?",
|
||||
"Mobile.AgentList.deleteFailed": "刪除失敗",
|
||||
"Mobile.AgentList.paymentRequiredTag": "付費",
|
||||
"Mobile.AgentList.subscribedTag": "已訂閱",
|
||||
"Mobile.Conversation.unnamed": "未命名對話",
|
||||
"Mobile.Conversation.unknownAgent": "未知智能體",
|
||||
"Mobile.Conversation.executing": "執行中",
|
||||
"Mobile.AgentUnion.searchPlaceholder": "搜尋智聯錄",
|
||||
"Mobile.AgentUnion.fetchHomeAgentListFailed": "取得主頁智能體列表失敗",
|
||||
"Mobile.TempSession.defaultDesc": "我是你的智能助手,有什麼需要幫忙嗎?",
|
||||
"Mobile.TempSession.inputPlaceholder": "請輸入指令",
|
||||
"Mobile.Auth.resendAfterSeconds": "{seconds}s後",
|
||||
"Mobile.AgentSearch.placeholder": "搜尋智能體",
|
||||
"Mobile.AgentSearch.pageAppPlaceholder": "搜尋應用程式",
|
||||
"Mobile.AgentSearch.emptyResult": "暫無結果",
|
||||
"Mobile.AgentSearch.fetchAgentFailed": "取得智能體列表失敗",
|
||||
"Mobile.AgentSearch.fetchRecentUsedFailed": "取得最近使用智能體列表失敗",
|
||||
"Mobile.Chat.noAgentPermission": "您沒有該智能體權限",
|
||||
"Mobile.Chat.subscriptionRequiredTip": "請訂閱或升級套餐後使用",
|
||||
"Mobile.Conversation.mySubscription": "我的訂閱",
|
||||
"Mobile.Chat.subscriptionModalTitle": "訂閱計劃",
|
||||
"Mobile.Common.loading": "載入中...",
|
||||
"Mobile.Chat.callLimitLabel": "調用額度",
|
||||
"Mobile.Chat.unlimited": "不限次",
|
||||
"Mobile.Chat.timesPerMonth": "次/月",
|
||||
"Mobile.Chat.takePhoto": "拍照",
|
||||
"Mobile.Chat.album": "相簿",
|
||||
"Mobile.Chat.file": "檔案",
|
||||
"Mobile.Chat.skill": "技能",
|
||||
"Mobile.Chat.aiGeneratedDisclaimer": "內容由 AI 生成,請仔細辨別",
|
||||
"Mobile.Chat.fileLimitReached": "已經有 {count} 個檔案了,請刪除部分檔案後重新選擇",
|
||||
"Mobile.Chat.fileMaxSelect": "最多只能選擇 {count} 個檔案",
|
||||
"Mobile.Chat.imageLimitReached": "已經有 {count} 張圖片了,請刪除部分圖片後重新選擇",
|
||||
"Mobile.Chat.imageMaxSelect": "最多只能選擇 {count} 張圖片",
|
||||
"Mobile.Chat.fillRequiredParams": "請填寫必填參數",
|
||||
"Mobile.Chat.removeUploadFailed": "請先刪除上傳失敗的圖片或檔案",
|
||||
"Mobile.Chat.previewTypeUnsupported": "目前不支援預覽此類型檔案",
|
||||
"Mobile.Chat.chooseImageFailed": "選擇圖片失敗: {reason}",
|
||||
"Mobile.Chat.uploadImageAlt": "上傳圖片",
|
||||
"Mobile.Chat.uploadFileAlt": "上傳檔案",
|
||||
"Mobile.Chat.modelSelect": "模型選擇",
|
||||
"Mobile.Chat.thinking": "正在思考",
|
||||
"Mobile.Chat.thought": "已思考",
|
||||
"Mobile.Common.retry": "重試",
|
||||
"Mobile.Common.copySuccess": "複製成功",
|
||||
"Mobile.Common.copyFailed": "複製失敗",
|
||||
"Mobile.Common.from": "來自",
|
||||
"Mobile.Common.loadMore": "載入更多",
|
||||
"Mobile.Common.open": "開啟",
|
||||
"Mobile.Common.pageHome": "頁面首頁",
|
||||
"Mobile.Common.workspace": "工作台",
|
||||
"Mobile.Common.pleaseInput": "請輸入",
|
||||
"Mobile.Common.pleaseSelect": "請選擇",
|
||||
"Mobile.Common.requiredMark": "*",
|
||||
"Mobile.Common.optionSeparator": "/",
|
||||
"Mobile.Conversation.newConversation": "新建對話",
|
||||
"Mobile.Conversation.moreInfo": "更多資訊",
|
||||
"Mobile.Conversation.favorite": "收藏",
|
||||
"Mobile.Conversation.more": "更多",
|
||||
"Mobile.Conversation.share": "分享",
|
||||
"Mobile.Conversation.allConversations": "全部對話",
|
||||
"Mobile.Conversation.relatedTitle": "相關對話",
|
||||
"Mobile.Conversation.viewAll": "查看全部",
|
||||
"Mobile.ThirdParty.UniAiX.invalidMessageContent": "訊息內容不是字串",
|
||||
"Mobile.ThirdParty.MpHtml.copyCode": "複製程式碼",
|
||||
"Mobile.ThirdParty.MpHtml.saveSuccess": "儲存成功",
|
||||
"Mobile.ThirdParty.MpHtml.executionPlan": "執行計劃",
|
||||
"Mobile.ThirdParty.MpHtml.callArguments": "調用參數",
|
||||
"Mobile.ThirdParty.MpHtml.callResult": "調用結果",
|
||||
"Mobile.ThirdParty.MpHtml.emptyResult": "結果為空",
|
||||
"Mobile.ThirdParty.MpHtml.toolCall": "工具調用",
|
||||
"Mobile.ThirdParty.MpHtml.itemCount": "項",
|
||||
"Mobile.ThirdParty.UniCaptcha.defaultTitle": "請輸入驗證碼",
|
||||
"Mobile.ThirdParty.UniCaptcha.fillCaptcha": "請填寫驗證碼",
|
||||
"Mobile.ThirdParty.UniCaptcha.sceneRequired": "scene 不能為空",
|
||||
"Mobile.ThirdParty.XTools.saveSuccess": "儲存成功",
|
||||
"Mobile.ThirdParty.XTools.saveFailed": "儲存失敗",
|
||||
"Mobile.ThirdParty.XTools.wechatUnsupported": "目前環境不支援微信操作",
|
||||
"Mobile.ThirdParty.XTools.getServiceFailed": "取得服務失敗,不支援此操作",
|
||||
"Mobile.Conversation.loadingHistory": "正在載入歷史對話",
|
||||
"Mobile.Conversation.settingsTitle": "對話設定",
|
||||
"Mobile.Conversation.settingsLocked": "對話開始後,對話設定將無法修改。",
|
||||
"Mobile.Conversation.startWithAgent": "與{name}開始對話",
|
||||
"Mobile.Conversation.chatKeyRequired": "對話連結 Key 不能為空",
|
||||
"Mobile.Conversation.idRequired": "對話 ID 不能為空",
|
||||
"Mobile.Conversation.agentIdMissing": "智能體 ID 不存在",
|
||||
"Mobile.Conversation.unfavoriteSuccess": "已取消收藏",
|
||||
"Mobile.Conversation.favoriteSuccess": "已加入收藏",
|
||||
"Mobile.FilePreview.getShareKeyFailed": "取得分享連結失敗",
|
||||
"Mobile.FilePreview.shareDomainMissing": "分享失敗,無法取得目前網域",
|
||||
"Mobile.FilePreview.shareSuccess": "分享成功,連結已複製",
|
||||
"Mobile.FilePreview.shareFailed": "分享失敗",
|
||||
"Mobile.FilePreview.invalidParams": "對話 ID 或檔案名稱不能為空",
|
||||
"Mobile.FilePreview.previewPageLoadFailed": "預覽頁面載入失敗",
|
||||
"Mobile.FilePreview.documentRenderFailed": "文件渲染失敗",
|
||||
"Mobile.PagePreview.defaultTitle": "頁面預覽",
|
||||
"Mobile.FileTree.noFiles": "暫無檔案",
|
||||
"Mobile.FileTree.invalidConversationId": "對話 ID 不存在或無效,無法匯出",
|
||||
"Mobile.FileTree.preparingDownload": "準備下載...",
|
||||
"Mobile.FileTree.exportSuccess": "匯出成功!",
|
||||
"Mobile.FileTree.exportUnknownError": "匯出過程中發生未知錯誤",
|
||||
"Mobile.FileTree.exportFailed": "匯出失敗: {message}",
|
||||
"Mobile.FileTree.linkFileNotSupported": "該檔案為連結檔案,不支援預覽",
|
||||
"Mobile.FileTree.downloading": "下載中...",
|
||||
"Mobile.FileTree.downloadServerError": "下載失敗:伺服器返回錯誤",
|
||||
"Mobile.FileTree.serverError": "伺服器返回錯誤",
|
||||
"Mobile.FileTree.saveFailed": "儲存檔案失敗",
|
||||
"Mobile.FileTree.downloadComplete": "下載完成",
|
||||
"Mobile.FileTree.zipSavedContent": 'ZIP 檔案已儲存成功!\n\n檔案名稱:{fileName}\n檔案路徑:\n{filePath}\n\n提示:檔案保存在小程式檔案目錄中,可透過微信設定中的小程式儲存空間查看,或按下"開啟"直接查看檔案。',
|
||||
"Mobile.FileTree.openFailed": "無法開啟檔案,請透過微信設定查看",
|
||||
"Mobile.FileTree.fileValidateFailed": "檔案驗證失敗",
|
||||
"Mobile.FileTree.downloadFailedWithCode": "下載失敗: {code}",
|
||||
"Mobile.FileTree.downloadNetworkFailed": "下載失敗,請檢查網絡",
|
||||
"Mobile.AgentDev.downloadFailedWithCode": "下載失敗: {code}",
|
||||
"Mobile.PageCard.noPreviewImage": "沒有可用預覽圖",
|
||||
"Mobile.PageCard.createdAt": "建立於 {date}",
|
||||
"Mobile.ButtonWrapper.pagePathParamConfigError": "頁面路徑參數配置錯誤",
|
||||
"Mobile.ButtonWrapper.pagePathConfigError": "頁面路徑配置錯誤",
|
||||
"Mobile.Sandbox.selectorTitle": "智能體電腦選擇",
|
||||
"Mobile.Sandbox.unavailable": "電腦不可用",
|
||||
"Mobile.Sandbox.noneAvailable": "沒有可用電腦",
|
||||
"Mobile.Sandbox.switchFailed": "切換失敗",
|
||||
"Mobile.Skill.searchSkillName": "搜尋技能名稱",
|
||||
"Mobile.Skill.empty": "暫無技能",
|
||||
"Mobile.Skill.recentUsed": "最近使用",
|
||||
"Mobile.Skill.myFavorites": "我的收藏",
|
||||
"Mobile.Voice.holdToTalk": "按住說話",
|
||||
"Mobile.Voice.recognizing": "語音識別中",
|
||||
"Mobile.Voice.connecting": "正在連接",
|
||||
"Mobile.Voice.conversationActiveError": "對話正在進行中,請先暫停現有對話",
|
||||
"Mobile.Voice.noSpeechDetected": "未識別到文字",
|
||||
"Mobile.Voice.serviceNotReady": "音訊上傳服務未初始化",
|
||||
"Mobile.Voice.permissionRequired": "需要錄音權限",
|
||||
"Mobile.Voice.permissionContent": "錄音功能需要存取你的咪高峰,請在設定中允許錄音權限",
|
||||
"Mobile.Voice.goToSettings": "前往設定",
|
||||
"Mobile.Voice.recordFailed": "錄音失敗",
|
||||
"Mobile.Webview.defaultTitle": "擴展頁面",
|
||||
"Mobile.Webview.loadFailed": "頁面載入失敗",
|
||||
"Mobile.Webview.aiReading": "AI 正在讀取網頁內容...",
|
||||
"Mobile.Common.invalidInputString": "輸入為空或不是字串",
|
||||
"Mobile.Common.invalidJsonFormat": "JSON 格式錯誤",
|
||||
"Mobile.Common.missingPathParam": "缺少路徑參數: {key}",
|
||||
"Mobile.Time.yearsAgo": "{count}年前",
|
||||
"Mobile.Time.lastYear": "去年",
|
||||
"Mobile.Time.monthsAgo": "{count}個月前",
|
||||
"Mobile.Time.daysAgo": "{count}天前",
|
||||
"Mobile.Time.dayBeforeYesterday": "前天",
|
||||
"Mobile.Time.yesterday": "昨天",
|
||||
"Mobile.Time.hoursAgo": "{count}小時前",
|
||||
"Mobile.Time.minutesAgo": "{count}分鐘前",
|
||||
"Mobile.Time.justNow": "剛剛",
|
||||
"Mobile.Permission.microphoneTitle": "需要咪高峰權限",
|
||||
"Mobile.Permission.microphoneDescription": "錄音功能需要存取你的咪高峰。請在瀏覽器設定中允許咪高峰權限,然後再試一次。",
|
||||
"Mobile.Permission.cameraTitle": "需要相機權限",
|
||||
"Mobile.Permission.cameraDescription": "拍照功能需要存取你的相機。請在瀏覽器設定中允許相機權限,然後再試一次。",
|
||||
"Mobile.Permission.stepClickLock": "按一下瀏覽器網址列左側的鎖定圖示",
|
||||
"Mobile.Permission.stepAllowMicrophone": '找到"咪高峰"選項,選擇"允許"',
|
||||
"Mobile.Permission.stepRefreshRetryRecord": "重新整理頁面後再次嘗試錄音",
|
||||
"Mobile.Permission.stepAllowCamera": '找到"相機"選項,選擇"允許"',
|
||||
"Mobile.Permission.stepRefreshRetryPhoto": "重新整理頁面後再次嘗試拍照",
|
||||
"Mobile.Permission.guideContent": "{description}\n\n操作步驟:\n{steps}",
|
||||
"Mobile.Permission.gotIt": "知道了",
|
||||
"Mobile.Stream.timeoutDisconnected": "請求逾時,已自動中斷",
|
||||
"Mobile.Stream.httpErrorWithCode": "請求失敗,狀態碼: {code}",
|
||||
"Mobile.AudioUploader.pathRequired": "音訊檔案路徑不能為空",
|
||||
"Mobile.AudioUploader.fileEmpty": "音訊檔案為空",
|
||||
"Mobile.AudioUploader.fileTooLarge": "音訊檔案過大,請控制在 10MB 以內",
|
||||
"Mobile.AudioUploader.durationTooLong": "錄音時間過長,最多支援 10 分鐘",
|
||||
"Mobile.AudioUploader.noTextRecognized": "未識別到文字",
|
||||
"Mobile.AudioUploader.responseParseFailed": "回應資料解析失敗",
|
||||
"Mobile.AudioUploader.networkFailed": "網絡請求失敗",
|
||||
"Mobile.AudioUploader.uploadFailed": "上傳失敗",
|
||||
"Mobile.AudioUploader.requestFailedWithCode": "請求失敗,狀態碼: {code}",
|
||||
"Mobile.AudioUploader.networkTimeout": "網絡連線逾時,請檢查網絡設定",
|
||||
"Mobile.AudioUploader.networkException": "網絡連線異常,請檢查網絡設定",
|
||||
"Mobile.AudioUploader.serverError": "伺服器內部錯誤,請稍後再試",
|
||||
"Mobile.AudioUploader.fileTooLargeDuration": "檔案過大,請控制錄音時長",
|
||||
"Mobile.AudioUploader.formatNotSupported": "不支援的音訊格式",
|
||||
"Mobile.AudioUploader.fileReadFailed": "檔案讀取失敗: {reason}",
|
||||
"Mobile.Common.restarting": "重啟中...",
|
||||
"Mobile.Sandbox.restartAgent": "重啟智能體",
|
||||
"Mobile.Sandbox.restartAgentSuccess": "重啟智能體成功!",
|
||||
"Mobile.Sandbox.restartAgentFailed": "重啟智能體失敗",
|
||||
"Mobile.Sandbox.restartCloudComp": "重啟智能體電腦",
|
||||
"Mobile.Sandbox.restartCloudCompSuccess": "重啟智能體電腦成功!",
|
||||
"Mobile.Sandbox.restartClient": "重啟客戶端",
|
||||
"Mobile.Sandbox.restartClientSuccess": "重啟客戶端成功!",
|
||||
"Mobile.Common.operationFailed": "操作失敗",
|
||||
"Mobile.Components.HistoryConversationList.rename": "重新命名",
|
||||
"Mobile.Components.HistoryConversationList.delete": "刪除",
|
||||
"Mobile.Components.HistoryConversationList.renameModalTitle": "修改名稱",
|
||||
"Mobile.Components.HistoryConversationList.renamePlaceholder": "請輸入新名稱",
|
||||
"Mobile.Components.HistoryConversationList.renameSuccess": "修改成功",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleEmpty": "標題不能為空",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleTooLong": "標題長度不能超過 50 個字元",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalTitle": "永久刪除會話",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalContent": "本條會話數據將被永久刪除,不可恢復及撤銷。確定要刪除嗎?",
|
||||
"Mobile.Components.HistoryConversationList.deleteSuccess": "刪除成功",
|
||||
"Mobile.CreditRecords.pageTitle": "積分明細",
|
||||
"Mobile.CreditRecords.empty": "暫無積分記錄",
|
||||
"Mobile.CreditRecords.remaining": "剩餘",
|
||||
"Mobile.CreditRecords.badgeIncrease": "+ 增加",
|
||||
"Mobile.CreditRecords.badgeDecrease": "- 扣減",
|
||||
"Mobile.CreditRecords.typeSubscription": "訂閱發放",
|
||||
"Mobile.CreditRecords.typePurchase": "增購",
|
||||
"Mobile.CreditRecords.typeActivity": "活動發放",
|
||||
"Mobile.CreditRecords.typeManual": "系統發放",
|
||||
"Mobile.CreditRecords.typeModelCall": "TOKEN消耗",
|
||||
"Mobile.CreditRecords.typeAgentCall": "智能體調用",
|
||||
"Mobile.CreditRecords.typeToolCall": "工具調用",
|
||||
"Mobile.CreditRecords.typeManualDeduct": "系統扣減",
|
||||
};
|
||||
373
qiming-mobile/constants/i18n-locales/zh-tw.uts
Normal file
373
qiming-mobile/constants/i18n-locales/zh-tw.uts
Normal file
@@ -0,0 +1,373 @@
|
||||
export const I18N_ZH_TW: Record<string, string> = {
|
||||
"Mobile.Nav.home": "首頁",
|
||||
"Mobile.Nav.unionRecord": "智聯錄",
|
||||
"Mobile.Nav.agent": "智慧體",
|
||||
"Mobile.Nav.app": "應用",
|
||||
"Mobile.App.pressAgainToExit": "再按一次退出應用",
|
||||
"Mobile.Common.loginRegister": "登入 / 註冊",
|
||||
"Mobile.Common.noticeExperience": "當前展示為體驗資料,登入後使用完整功能",
|
||||
"Mobile.Common.recentUsed": "最近使用",
|
||||
"Mobile.Common.conversationHistory": "會話記錄",
|
||||
"Mobile.Common.menu": "選單",
|
||||
"Mobile.Common.tip": "提示",
|
||||
"Mobile.Common.confirm": "確認",
|
||||
"Mobile.Common.cancel": "取消",
|
||||
"Mobile.Common.agree": "同意",
|
||||
"Mobile.Common.disagree": "不同意",
|
||||
"Mobile.Common.switching": "切換中...",
|
||||
"Mobile.Common.switchSuccess": "語言已更新",
|
||||
"Mobile.Common.switchFailed": "語言切換失敗",
|
||||
"Mobile.Common.noData": "暫無資料",
|
||||
"Mobile.Common.noMoreData": "沒有更多資料了",
|
||||
"Mobile.Common.all": "全部",
|
||||
"Mobile.Common.appName": "啟明",
|
||||
"Mobile.Common.coverImageAlt": "封面圖",
|
||||
"Mobile.Common.avatarAlt": "頭像",
|
||||
"Mobile.Common.noDataImageAlt": "暫無資料插圖",
|
||||
"Mobile.Common.agentIconAlt": "智慧體圖示",
|
||||
"Mobile.Common.skillIconAlt": "技能圖示",
|
||||
"Mobile.Common.appLogoAlt": "應用 Logo",
|
||||
"Mobile.Common.deleteIconAlt": "刪除",
|
||||
"Mobile.Auth.agreementPrefix": "已閱讀並同意協議:",
|
||||
"Mobile.Auth.agreementSeparator": "、",
|
||||
"Mobile.Auth.serviceAgreement": "服務使用協議",
|
||||
"Mobile.Auth.userAgreementLink": "https://qiming.com/user-agreement.html",
|
||||
"Mobile.Auth.privacyAgreement": "隱私協議",
|
||||
"Mobile.Auth.privacyAgreementLink": "https://qiming.com/privacy.html",
|
||||
"Mobile.Auth.loginSuccess": "登入成功",
|
||||
"Mobile.Auth.loginFailed": "登入失敗",
|
||||
"Mobile.Auth.passwordLogin": "密碼登入",
|
||||
"Mobile.Auth.codeLoginRegister": "驗證碼登入/註冊",
|
||||
"Mobile.Auth.nextStep": "下一步",
|
||||
"Mobile.Auth.login": "登入",
|
||||
"Mobile.Auth.inputPhone": "請輸入手機號",
|
||||
"Mobile.Auth.defaultAreaCode": "+86",
|
||||
"Mobile.Auth.inputEmail": "請輸入郵箱",
|
||||
"Mobile.Auth.inputPassword": "請輸入密碼",
|
||||
"Mobile.Auth.invalidPhoneFormat": "請輸入正確的手機號格式",
|
||||
"Mobile.Auth.invalidEmailFormat": "請輸入正確的郵箱格式",
|
||||
"Mobile.Auth.codeSentSuccess": "驗證碼發送成功",
|
||||
"Mobile.Auth.inputEmailCode": "輸入郵箱驗證碼",
|
||||
"Mobile.Auth.inputSmsCode": "輸入簡訊驗證碼",
|
||||
"Mobile.Auth.codeSentToPrefix": "驗證碼已發送至",
|
||||
"Mobile.Auth.codeSentToEmailTarget": "你的郵箱",
|
||||
"Mobile.Auth.codeSentToPhoneTarget": "手機號",
|
||||
"Mobile.Auth.inputVerifyCode": "請輸入驗證碼",
|
||||
"Mobile.Auth.resend": "重新獲取",
|
||||
"Mobile.Auth.resendSuccess": "重新發送成功",
|
||||
"Mobile.Auth.sending": "正在發送...",
|
||||
"Mobile.Auth.clipboardReadFailed": "讀取剪貼簿失敗",
|
||||
"Mobile.Auth.clipboardGetFailed": "取得剪貼簿失敗",
|
||||
"Mobile.Auth.codeAutoFilled": "驗證碼已自動填充",
|
||||
"Mobile.Auth.pasteSixDigits": "請貼上 6 位數字驗證碼",
|
||||
"Mobile.Auth.clipboardNotSixDigits": "剪貼簿內容不是 6 位數字驗證碼",
|
||||
"Mobile.Auth.clipboardEmpty": "剪貼簿為空",
|
||||
"Mobile.Auth.setPasswordTitle": "密碼設定",
|
||||
"Mobile.Auth.setPasswordDesc": "請至少使用 6 個字元。請勿使用你登入其他網站的密碼或容易被猜到的密碼",
|
||||
"Mobile.Auth.inputPasswordAgain": "請再次輸入密碼",
|
||||
"Mobile.Auth.setting": "設定中...",
|
||||
"Mobile.Common.ok": "確定",
|
||||
"Mobile.Auth.passwordMinLength": "密碼至少需要 6 個字元",
|
||||
"Mobile.Auth.confirmPassword": "請確認密碼",
|
||||
"Mobile.Auth.passwordMismatch": "兩次輸入的密碼不一致",
|
||||
"Mobile.Auth.passwordSetSuccess": "密碼設定成功",
|
||||
"Mobile.Auth.passwordSetFailed": "密碼設定失敗,請重試",
|
||||
"Mobile.Common.networkRetry": "網路錯誤,請重試",
|
||||
"Mobile.Auth.pleaseAgreeProtocol": "請同意服務協議及隱私保護!",
|
||||
"Mobile.Auth.userCancelAuthorize": "使用者取消授權",
|
||||
"Mobile.Auth.oneClickLogin": "一鍵登入",
|
||||
"Mobile.Auth.phoneLoginRegister": "手機號碼登入/註冊",
|
||||
"Mobile.Auth.welcomeUse": "歡迎使用{siteName}",
|
||||
"Mobile.Header.mySubscriptions": "我的訂閱",
|
||||
"Mobile.Header.profile": "個人資料",
|
||||
"Mobile.Header.logout": "退出登入",
|
||||
"Mobile.Header.logoutSuccess": "退出成功",
|
||||
"Mobile.Header.logoutFailed": "退出失敗",
|
||||
"Mobile.MySubscriptions.title": "我的訂閱",
|
||||
"Mobile.MySubscriptions.notEnabled": "訂閱功能暫未開啟",
|
||||
"Mobile.MySubscriptions.empty": "暫無訂閱內容",
|
||||
"Mobile.MySubscriptions.totalCredits": "總積分",
|
||||
"Mobile.MySubscriptions.subscriptionCredits": "訂閱積分",
|
||||
"Mobile.MySubscriptions.purchaseCredits": "增購積分",
|
||||
"Mobile.MySubscriptions.activityCredits": "活動積分",
|
||||
"Mobile.MySubscriptions.addPurchase": "+ 增購",
|
||||
"Mobile.MySubscriptions.detail": "明細",
|
||||
"Mobile.MySubscriptions.planGrid": "訂閱套餐",
|
||||
"Mobile.MySubscriptions.currentPlan": "當前訂閱",
|
||||
"Mobile.MySubscriptions.statusActive": "使用中",
|
||||
"Mobile.MySubscriptions.statusHot": "熱門",
|
||||
"Mobile.MySubscriptions.feeMonth": "月費",
|
||||
"Mobile.MySubscriptions.feeQuarter": "季費",
|
||||
"Mobile.MySubscriptions.feeYear": "年費",
|
||||
"Mobile.MySubscriptions.perMonth": "/月",
|
||||
"Mobile.MySubscriptions.perQuarter": "/季",
|
||||
"Mobile.MySubscriptions.perYear": "/年",
|
||||
"Mobile.MySubscriptions.perForever": "/永久有效",
|
||||
"Mobile.MySubscriptions.renewNow": "續訂",
|
||||
"Mobile.MySubscriptions.upgradeNow": "升級",
|
||||
"Mobile.MySubscriptions.subscribeNow": "訂閱",
|
||||
"Mobile.MySubscriptions.nextRenewal": "下次續費:{time}",
|
||||
"Mobile.MySubscriptions.subscribedContent": "已訂閱內容",
|
||||
"Mobile.MySubscriptions.tabAgents": "智能體",
|
||||
"Mobile.MySubscriptions.tabSkills": "技能",
|
||||
"Mobile.MySubscriptions.tabCredits": "增購積分",
|
||||
"Mobile.MySubscriptions.subAmount": "訂閱金額",
|
||||
"Mobile.MySubscriptions.usedAmount": "已消耗",
|
||||
"Mobile.MySubscriptions.purchaseAmount": "增購金額",
|
||||
"Mobile.MySubscriptions.remaining": "剩餘",
|
||||
"Mobile.MySubscriptions.creditUnit": "積分",
|
||||
"Mobile.MySubscriptions.expireTime": "到期時間",
|
||||
"Mobile.MySubscriptions.subscribing": "訂閱中",
|
||||
"Mobile.MySubscriptions.expired": "已到期",
|
||||
"Mobile.MySubscriptions.aboutToUseUp": "即將用完",
|
||||
"Mobile.MySubscriptions.fullyUsed": "已用完",
|
||||
"Mobile.MySubscriptions.normalUsage": "充足",
|
||||
"Mobile.MySubscriptions.validityForever": "永久有效",
|
||||
"Mobile.MySubscriptions.boughtOut": "已買斷",
|
||||
"Mobile.MySubscriptions.permanentUse": "永久使用",
|
||||
"Mobile.MySubscriptions.buyoutPriceLabel": "買斷價",
|
||||
"Mobile.MySubscriptions.monthlyPayment": "月付",
|
||||
"Mobile.MySubscriptions.quarterlyPayment": "季付",
|
||||
"Mobile.MySubscriptions.yearlyPayment": "年付",
|
||||
"Mobile.MySubscriptions.purchaseTitle": "增購積分",
|
||||
"Mobile.MySubscriptions.purchaseSubtitle": "選擇積分套餐,即刻到帳",
|
||||
"Mobile.MySubscriptions.orderIdNotFound": "未獲取到訂單號",
|
||||
"Mobile.MySubscriptions.creditPackageCredit": "積分",
|
||||
"Mobile.MySubscriptions.loadFailed": "載入失敗",
|
||||
"Mobile.MySubscriptions.stateActive": "使用中",
|
||||
"Mobile.MySubscriptions.stateExpired": "已過期",
|
||||
"Mobile.MySubscriptions.stateCancelled": "已取消",
|
||||
"Mobile.Profile.title": "個人資料",
|
||||
"Mobile.Profile.userName": "使用者名稱",
|
||||
"Mobile.Profile.phone": "手機號",
|
||||
"Mobile.Profile.email": "郵箱",
|
||||
"Mobile.Profile.pendingBind": "待綁定",
|
||||
"Mobile.Profile.dynamicCodeExpire": "動態認證碼({expire} 過期)",
|
||||
"Mobile.Profile.version": "版本",
|
||||
"Mobile.Profile.language": "語言",
|
||||
"Mobile.Profile.languagePlaceholder": "請選擇語言",
|
||||
"Mobile.Profile.default": "預設",
|
||||
"Mobile.Profile.selectLanguage": "選擇語言",
|
||||
"Mobile.Link.invalidConfig": "連結地址配置錯誤",
|
||||
"Mobile.Link.copyAndOpen": "連結已複製,請手動貼上開啟",
|
||||
"Mobile.Link.openFailed": "開啟連結失敗",
|
||||
"Mobile.Link.copied": "連結已複製",
|
||||
"Mobile.Page.loading": "載入中",
|
||||
"Mobile.Page.inputRequired": "請輸入內容",
|
||||
"Mobile.Page.loadingMore": "載入中...",
|
||||
"Mobile.AgentList.fetchCategoryFailed": "取得分類資訊失敗",
|
||||
"Mobile.AgentList.fetchAgentFailed": "取得智慧體列表失敗",
|
||||
"Mobile.AgentList.unCollectFailed": "取消收藏失敗",
|
||||
"Mobile.AgentList.collectFailed": "新增收藏失敗",
|
||||
"Mobile.AgentList.confirmDeleteAgent": "你確認要刪除該智慧體嗎?",
|
||||
"Mobile.AgentList.deleteFailed": "刪除失敗",
|
||||
"Mobile.AgentList.paymentRequiredTag": "付費",
|
||||
"Mobile.AgentList.subscribedTag": "已訂閱",
|
||||
"Mobile.Conversation.unnamed": "未命名會話",
|
||||
"Mobile.Conversation.unknownAgent": "未知智慧體",
|
||||
"Mobile.Conversation.executing": "執行中",
|
||||
"Mobile.AgentUnion.searchPlaceholder": "搜尋智聯錄",
|
||||
"Mobile.AgentUnion.fetchHomeAgentListFailed": "取得主頁智慧體列表失敗",
|
||||
"Mobile.TempSession.defaultDesc": "我是你的智慧助手,有什麼需要幫忙的嗎?",
|
||||
"Mobile.TempSession.inputPlaceholder": "請輸入指令",
|
||||
"Mobile.Auth.resendAfterSeconds": "{seconds}s後",
|
||||
"Mobile.AgentSearch.placeholder": "搜尋智慧體",
|
||||
"Mobile.AgentSearch.pageAppPlaceholder": "搜尋應用",
|
||||
"Mobile.AgentSearch.emptyResult": "暫無結果",
|
||||
"Mobile.AgentSearch.fetchAgentFailed": "取得智慧體列表失敗",
|
||||
"Mobile.AgentSearch.fetchRecentUsedFailed": "取得最近使用智慧體列表失敗",
|
||||
"Mobile.Chat.noAgentPermission": "您無該智慧體權限",
|
||||
"Mobile.Chat.subscriptionRequiredTip": "請訂閱或升級套餐後使用",
|
||||
"Mobile.Conversation.mySubscription": "我的訂閱",
|
||||
"Mobile.Chat.subscriptionModalTitle": "訂閱計畫",
|
||||
"Mobile.Common.loading": "載入中...",
|
||||
"Mobile.Chat.callLimitLabel": "調用額度",
|
||||
"Mobile.Chat.unlimited": "不限次",
|
||||
"Mobile.Chat.timesPerMonth": "次/月",
|
||||
"Mobile.Chat.takePhoto": "拍照",
|
||||
"Mobile.Chat.album": "相簿",
|
||||
"Mobile.Chat.file": "檔案",
|
||||
"Mobile.Chat.skill": "技能",
|
||||
"Mobile.Chat.aiGeneratedDisclaimer": "內容由 AI 生成,請仔細甄別",
|
||||
"Mobile.Chat.fileLimitReached": "已經有 {count} 個檔案了,請刪除部分檔案之後重新選擇",
|
||||
"Mobile.Chat.fileMaxSelect": "最多只能選擇 {count} 個檔案",
|
||||
"Mobile.Chat.imageLimitReached": "已經有 {count} 張圖片了,請刪除部分圖片之後重新選擇",
|
||||
"Mobile.Chat.imageMaxSelect": "最多只能選擇 {count} 張圖片",
|
||||
"Mobile.Chat.fillRequiredParams": "請填寫必填參數",
|
||||
"Mobile.Chat.removeUploadFailed": "請先刪除上傳失敗的圖片或檔案",
|
||||
"Mobile.Chat.previewTypeUnsupported": "目前不支援預覽該類型檔案",
|
||||
"Mobile.Chat.chooseImageFailed": "選擇圖片失敗: {reason}",
|
||||
"Mobile.Chat.uploadImageAlt": "上傳圖片",
|
||||
"Mobile.Chat.uploadFileAlt": "上傳檔案",
|
||||
"Mobile.Chat.modelSelect": "模型選擇",
|
||||
"Mobile.Chat.thinking": "正在思考",
|
||||
"Mobile.Chat.thought": "已思考",
|
||||
"Mobile.Common.retry": "重試",
|
||||
"Mobile.Common.copySuccess": "複製成功",
|
||||
"Mobile.Common.copyFailed": "複製失敗",
|
||||
"Mobile.Common.from": "來自",
|
||||
"Mobile.Common.loadMore": "載入更多",
|
||||
"Mobile.Common.open": "開啟",
|
||||
"Mobile.Common.pageHome": "頁面首頁",
|
||||
"Mobile.Common.workspace": "工作台",
|
||||
"Mobile.Common.pleaseInput": "請輸入",
|
||||
"Mobile.Common.pleaseSelect": "請選擇",
|
||||
"Mobile.Common.requiredMark": "*",
|
||||
"Mobile.Common.optionSeparator": "/",
|
||||
"Mobile.Conversation.newConversation": "新建會話",
|
||||
"Mobile.Conversation.moreInfo": "更多資訊",
|
||||
"Mobile.Conversation.favorite": "收藏",
|
||||
"Mobile.Conversation.more": "更多",
|
||||
"Mobile.Conversation.share": "分享",
|
||||
"Mobile.Conversation.allConversations": "全部會話",
|
||||
"Mobile.Conversation.relatedTitle": "相關會話",
|
||||
"Mobile.Conversation.viewAll": "查看全部",
|
||||
"Mobile.ThirdParty.UniAiX.invalidMessageContent": "訊息內容不是字串",
|
||||
"Mobile.ThirdParty.MpHtml.copyCode": "複製程式碼",
|
||||
"Mobile.ThirdParty.MpHtml.saveSuccess": "保存成功",
|
||||
"Mobile.ThirdParty.MpHtml.executionPlan": "執行計畫",
|
||||
"Mobile.ThirdParty.MpHtml.callArguments": "呼叫參數",
|
||||
"Mobile.ThirdParty.MpHtml.callResult": "呼叫結果",
|
||||
"Mobile.ThirdParty.MpHtml.emptyResult": "結果為空",
|
||||
"Mobile.ThirdParty.MpHtml.toolCall": "工具調用",
|
||||
"Mobile.ThirdParty.MpHtml.itemCount": "項",
|
||||
"Mobile.ThirdParty.UniCaptcha.defaultTitle": "請輸入驗證碼",
|
||||
"Mobile.ThirdParty.UniCaptcha.fillCaptcha": "請填寫驗證碼",
|
||||
"Mobile.ThirdParty.UniCaptcha.sceneRequired": "scene 不能為空",
|
||||
"Mobile.ThirdParty.XTools.saveSuccess": "保存成功",
|
||||
"Mobile.ThirdParty.XTools.saveFailed": "保存失敗",
|
||||
"Mobile.ThirdParty.XTools.wechatUnsupported": "當前環境不支援微信操作",
|
||||
"Mobile.ThirdParty.XTools.getServiceFailed": "取得服務失敗,不支援該操作",
|
||||
"Mobile.Conversation.loadingHistory": "正在載入歷史會話",
|
||||
"Mobile.Conversation.settingsTitle": "對話設定",
|
||||
"Mobile.Conversation.settingsLocked": "對話開始後,對話設定將無法修改。",
|
||||
"Mobile.Conversation.startWithAgent": "和{name}開始會話",
|
||||
"Mobile.Conversation.chatKeyRequired": "會話連結 Key 不能為空",
|
||||
"Mobile.Conversation.idRequired": "會話 ID 不能為空",
|
||||
"Mobile.Conversation.agentIdMissing": "智慧體 ID 不存在",
|
||||
"Mobile.Conversation.unfavoriteSuccess": "已取消收藏",
|
||||
"Mobile.Conversation.favoriteSuccess": "已新增到收藏",
|
||||
"Mobile.FilePreview.getShareKeyFailed": "取得分享連結失敗",
|
||||
"Mobile.FilePreview.shareDomainMissing": "分享失敗,無法取得目前網域",
|
||||
"Mobile.FilePreview.shareSuccess": "分享成功,連結已複製",
|
||||
"Mobile.FilePreview.shareFailed": "分享失敗",
|
||||
"Mobile.FilePreview.invalidParams": "會話 ID 或檔案名稱不能為空",
|
||||
"Mobile.FilePreview.previewPageLoadFailed": "預覽頁面載入失敗",
|
||||
"Mobile.FilePreview.documentRenderFailed": "文件渲染失敗",
|
||||
"Mobile.PagePreview.defaultTitle": "頁面預覽",
|
||||
"Mobile.FileTree.noFiles": "暫無檔案",
|
||||
"Mobile.FileTree.invalidConversationId": "會話 ID 不存在或無效,無法匯出",
|
||||
"Mobile.FileTree.preparingDownload": "準備下載...",
|
||||
"Mobile.FileTree.exportSuccess": "匯出成功!",
|
||||
"Mobile.FileTree.exportUnknownError": "匯出過程中發生未知錯誤",
|
||||
"Mobile.FileTree.exportFailed": "匯出失敗: {message}",
|
||||
"Mobile.FileTree.linkFileNotSupported": "該檔案為連結檔案,不支援預覽",
|
||||
"Mobile.FileTree.downloading": "下載中...",
|
||||
"Mobile.FileTree.downloadServerError": "下載失敗:伺服器回傳錯誤",
|
||||
"Mobile.FileTree.serverError": "伺服器回傳錯誤",
|
||||
"Mobile.FileTree.saveFailed": "保存檔案失敗",
|
||||
"Mobile.FileTree.downloadComplete": "下載完成",
|
||||
"Mobile.FileTree.zipSavedContent": 'ZIP 檔案已保存成功!\n\n檔案名稱:{fileName}\n檔案路徑:\n{filePath}\n\n提示:檔案保存在小程式檔案目錄中,可透過微信設定中的小程式儲存空間查看,或點擊"開啟"直接查看檔案。',
|
||||
"Mobile.FileTree.openFailed": "無法開啟檔案,請透過微信設定查看",
|
||||
"Mobile.FileTree.fileValidateFailed": "檔案驗證失敗",
|
||||
"Mobile.FileTree.downloadFailedWithCode": "下載失敗: {code}",
|
||||
"Mobile.FileTree.downloadNetworkFailed": "下載失敗,請檢查網路",
|
||||
"Mobile.AgentDev.downloadFailedWithCode": "下載失敗: {code}",
|
||||
"Mobile.PageCard.noPreviewImage": "無可用預覽圖",
|
||||
"Mobile.PageCard.createdAt": "建立於 {date}",
|
||||
"Mobile.ButtonWrapper.pagePathParamConfigError": "頁面路徑參數配置錯誤",
|
||||
"Mobile.ButtonWrapper.pagePathConfigError": "頁面路徑配置錯誤",
|
||||
"Mobile.Sandbox.selectorTitle": "智慧體電腦選擇",
|
||||
"Mobile.Sandbox.unavailable": "電腦不可用",
|
||||
"Mobile.Sandbox.noneAvailable": "無可用電腦",
|
||||
"Mobile.Sandbox.switchFailed": "切換失敗",
|
||||
"Mobile.Skill.searchSkillName": "搜尋技能名稱",
|
||||
"Mobile.Skill.empty": "暫無技能",
|
||||
"Mobile.Skill.recentUsed": "最近使用",
|
||||
"Mobile.Skill.myFavorites": "我的收藏",
|
||||
"Mobile.Voice.holdToTalk": "按住說話",
|
||||
"Mobile.Voice.recognizing": "語音辨識中",
|
||||
"Mobile.Voice.connecting": "正在連線",
|
||||
"Mobile.Voice.conversationActiveError": "會話正在進行中,請先暫停現有會話",
|
||||
"Mobile.Voice.noSpeechDetected": "未辨識到文字",
|
||||
"Mobile.Voice.serviceNotReady": "音訊上傳服務未初始化",
|
||||
"Mobile.Voice.permissionRequired": "需要錄音權限",
|
||||
"Mobile.Voice.permissionContent": "錄音功能需要存取你的麥克風,請在設定中允許錄音權限",
|
||||
"Mobile.Voice.goToSettings": "去設定",
|
||||
"Mobile.Voice.recordFailed": "錄音失敗",
|
||||
"Mobile.Webview.defaultTitle": "擴展頁面",
|
||||
"Mobile.Webview.loadFailed": "頁面載入失敗",
|
||||
"Mobile.Webview.aiReading": "AI 讀取網頁內容中...",
|
||||
"Mobile.Common.invalidInputString": "輸入為空或不是字串",
|
||||
"Mobile.Common.invalidJsonFormat": "JSON 格式錯誤",
|
||||
"Mobile.Common.missingPathParam": "缺少路徑參數: {key}",
|
||||
"Mobile.Time.yearsAgo": "{count}年前",
|
||||
"Mobile.Time.lastYear": "去年",
|
||||
"Mobile.Time.monthsAgo": "{count}月前",
|
||||
"Mobile.Time.daysAgo": "{count}天前",
|
||||
"Mobile.Time.dayBeforeYesterday": "前天",
|
||||
"Mobile.Time.yesterday": "昨天",
|
||||
"Mobile.Time.hoursAgo": "{count}小時前",
|
||||
"Mobile.Time.minutesAgo": "{count}分鐘前",
|
||||
"Mobile.Time.justNow": "剛剛",
|
||||
"Mobile.Permission.microphoneTitle": "需要麥克風權限",
|
||||
"Mobile.Permission.microphoneDescription": "錄音功能需要存取你的麥克風。請在瀏覽器設定中允許麥克風權限,然後重新嘗試。",
|
||||
"Mobile.Permission.cameraTitle": "需要攝影機權限",
|
||||
"Mobile.Permission.cameraDescription": "拍照功能需要存取你的攝影機。請在瀏覽器設定中允許攝影機權限,然後重新嘗試。",
|
||||
"Mobile.Permission.stepClickLock": "點擊瀏覽器網址列左側的鎖定圖示",
|
||||
"Mobile.Permission.stepAllowMicrophone": '找到"麥克風"選項,選擇"允許"',
|
||||
"Mobile.Permission.stepRefreshRetryRecord": "重新整理頁面後再次嘗試錄音",
|
||||
"Mobile.Permission.stepAllowCamera": '找到"攝影機"選項,選擇"允許"',
|
||||
"Mobile.Permission.stepRefreshRetryPhoto": "重新整理頁面後再次嘗試拍照",
|
||||
"Mobile.Permission.guideContent": "{description}\n\n操作步驟:\n{steps}",
|
||||
"Mobile.Permission.gotIt": "知道了",
|
||||
"Mobile.Stream.timeoutDisconnected": "請求逾時,已自動斷開",
|
||||
"Mobile.Stream.httpErrorWithCode": "請求失敗,狀態碼: {code}",
|
||||
"Mobile.AudioUploader.pathRequired": "音訊檔案路徑不能為空",
|
||||
"Mobile.AudioUploader.fileEmpty": "音訊檔案為空",
|
||||
"Mobile.AudioUploader.fileTooLarge": "音訊檔案過大,請控制在 10MB 以內",
|
||||
"Mobile.AudioUploader.durationTooLong": "錄音時長過長,最多支援 10 分鐘",
|
||||
"Mobile.AudioUploader.noTextRecognized": "未辨識到文字",
|
||||
"Mobile.AudioUploader.responseParseFailed": "回應資料解析失敗",
|
||||
"Mobile.AudioUploader.networkFailed": "網路請求失敗",
|
||||
"Mobile.AudioUploader.uploadFailed": "上傳失敗",
|
||||
"Mobile.AudioUploader.requestFailedWithCode": "請求失敗,狀態碼: {code}",
|
||||
"Mobile.AudioUploader.networkTimeout": "網路連線逾時,請檢查網路設定",
|
||||
"Mobile.AudioUploader.networkException": "網路連線異常,請檢查網路設定",
|
||||
"Mobile.AudioUploader.serverError": "伺服器內部錯誤,請稍後重試",
|
||||
"Mobile.AudioUploader.fileTooLargeDuration": "檔案過大,請控制錄音時長",
|
||||
"Mobile.AudioUploader.formatNotSupported": "不支援的音訊格式",
|
||||
"Mobile.AudioUploader.fileReadFailed": "檔案讀取失敗: {reason}",
|
||||
"Mobile.Common.restarting": "重啟中...",
|
||||
"Mobile.Sandbox.restartAgent": "重啟智慧體",
|
||||
"Mobile.Sandbox.restartAgentSuccess": "重啟智慧體成功!",
|
||||
"Mobile.Sandbox.restartAgentFailed": "重啟智慧體失敗",
|
||||
"Mobile.Sandbox.restartCloudComp": "重啟智慧體電腦",
|
||||
"Mobile.Sandbox.restartCloudCompSuccess": "重啟智慧體電腦成功!",
|
||||
"Mobile.Sandbox.restartClient": "重啟客戶端",
|
||||
"Mobile.Sandbox.restartClientSuccess": "重啟客戶端成功!",
|
||||
"Mobile.Common.operationFailed": "操作失敗",
|
||||
"Mobile.Components.HistoryConversationList.rename": "重新命名",
|
||||
"Mobile.Components.HistoryConversationList.delete": "刪除",
|
||||
"Mobile.Components.HistoryConversationList.renameModalTitle": "修改名稱",
|
||||
"Mobile.Components.HistoryConversationList.renamePlaceholder": "請輸入新名稱",
|
||||
"Mobile.Components.HistoryConversationList.renameSuccess": "修改成功",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleEmpty": "標題不能為空",
|
||||
"Mobile.Components.HistoryConversationList.renameTitleTooLong": "標題長度不能超過 50 個字元",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalTitle": "永久刪除會話",
|
||||
"Mobile.Components.HistoryConversationList.deleteModalContent": "本條會話數據將被永久刪除,不可恢復及撤銷。確定要刪除嗎?",
|
||||
"Mobile.Components.HistoryConversationList.deleteSuccess": "刪除成功",
|
||||
"Mobile.CreditRecords.pageTitle": "積分明細",
|
||||
"Mobile.CreditRecords.empty": "暫無積分記錄",
|
||||
"Mobile.CreditRecords.remaining": "剩餘",
|
||||
"Mobile.CreditRecords.badgeIncrease": "+ 增加",
|
||||
"Mobile.CreditRecords.badgeDecrease": "- 扣減",
|
||||
"Mobile.CreditRecords.typeSubscription": "訂閱發放",
|
||||
"Mobile.CreditRecords.typePurchase": "增購",
|
||||
"Mobile.CreditRecords.typeActivity": "活動發放",
|
||||
"Mobile.CreditRecords.typeManual": "系統發放",
|
||||
"Mobile.CreditRecords.typeModelCall": "TOKEN消耗",
|
||||
"Mobile.CreditRecords.typeAgentCall": "智慧體調用",
|
||||
"Mobile.CreditRecords.typeToolCall": "工具調用",
|
||||
"Mobile.CreditRecords.typeManualDeduct": "系統扣減",
|
||||
};
|
||||
8
qiming-mobile/constants/i18n.constants.uts
Normal file
8
qiming-mobile/constants/i18n.constants.uts
Normal file
@@ -0,0 +1,8 @@
|
||||
export const DEFAULT_LANG = "zh-CN";
|
||||
|
||||
export const I18N_LANG_STORAGE_KEY = "I18N_LANG";
|
||||
export const I18N_LANG_MAP_STORAGE_KEY = "I18N_LANG_MAP";
|
||||
export const I18N_LANG_LIST_STORAGE_KEY = "I18N_LANG_LIST";
|
||||
|
||||
export const I18N_SET_LANG_API = "/api/i18n/lang/set";
|
||||
|
||||
170
qiming-mobile/constants/i18n.local.constants.uts
Normal file
170
qiming-mobile/constants/i18n.local.constants.uts
Normal file
@@ -0,0 +1,170 @@
|
||||
import { DEFAULT_LANG } from "@/constants/i18n.constants";
|
||||
import { I18N_EN_US } from "@/constants/i18n-locales/en-us";
|
||||
import { I18N_ZH_HK } from "@/constants/i18n-locales/zh-hk";
|
||||
import { I18N_ZH_CN } from "@/constants/i18n-locales/zh-cn";
|
||||
import { I18N_ZH_TW } from "@/constants/i18n-locales/zh-tw";
|
||||
|
||||
export const I18N_FALLBACK_BUNDLES: Record<string, Record<string, string>> = {
|
||||
"zh-cn": I18N_ZH_CN,
|
||||
"zh-tw": I18N_ZH_TW,
|
||||
"zh-hk": I18N_ZH_HK,
|
||||
"en-us": I18N_EN_US,
|
||||
};
|
||||
|
||||
const normalizeBundleLang = (lang: string): string => {
|
||||
const source = (lang || "").trim();
|
||||
if (!source) return "zh-cn";
|
||||
const normalized = source.replaceAll("_", "-");
|
||||
const lower = normalized.toLowerCase();
|
||||
|
||||
// bundle key 统一收敛为本地词包文件名使用的小写语言 key。
|
||||
if (lower === "zh-cn" || lower === "zh-hans") return "zh-cn";
|
||||
if (lower === "zh-tw" || lower === "zh-hant") return "zh-tw";
|
||||
if (lower === "zh-hk") return "zh-hk";
|
||||
if (lower === "en-us" || lower === "en") return "en-us";
|
||||
if (lower.startsWith("zh-hans")) return "zh-cn";
|
||||
if (lower.startsWith("zh-cn")) return "zh-cn";
|
||||
if (lower.startsWith("zh-hant-hk")) return "zh-hk";
|
||||
if (lower.startsWith("zh-hk")) return "zh-hk";
|
||||
if (lower.startsWith("zh-hant")) return "zh-tw";
|
||||
if (lower.startsWith("zh-tw")) return "zh-tw";
|
||||
if (lower.startsWith("en-")) return "en-us";
|
||||
if (lower.startsWith("en-us")) return "en-us";
|
||||
|
||||
if (normalized === "zh-CN") return "zh-cn";
|
||||
if (normalized === "zh-TW") return "zh-tw";
|
||||
if (normalized === "zh-HK") return "zh-hk";
|
||||
if (normalized === "en-US") return "en-us";
|
||||
|
||||
return lower;
|
||||
};
|
||||
|
||||
export const toBundleKey = (lang: string): string => {
|
||||
return normalizeBundleLang(lang);
|
||||
};
|
||||
|
||||
const zhFallback = I18N_FALLBACK_BUNDLES[toBundleKey(DEFAULT_LANG)] || {};
|
||||
|
||||
/**
|
||||
* 历史中文字面量到 i18n key 的兼容映射表。
|
||||
*
|
||||
* 作用:
|
||||
* 1. 兼容仍然传入中文字面量的老组件/老页面 props
|
||||
* 2. 兼容部分第三方组件内部仍会透传旧中文的场景
|
||||
* 3. 为 `translateText()` 提供迁移过渡期桥接能力
|
||||
*
|
||||
* 注意:
|
||||
* - 这里不是主词典,不应用于新增业务文案
|
||||
* - 新代码应优先直接传 `Mobile.*` key
|
||||
* - 只有“历史兼容”或“三方兼容”确有必要时,才允许继续补充映射项
|
||||
*/
|
||||
export const I18N_LITERAL_LOOKUP: Record<string, string> = {
|
||||
// 导航与首页基础文案
|
||||
首页: "Mobile.Nav.home",
|
||||
智联录: "Mobile.Nav.unionRecord",
|
||||
智能体: "Mobile.Nav.agent",
|
||||
应用: "Mobile.Nav.app",
|
||||
最近使用: "Mobile.Common.recentUsed",
|
||||
会话记录: "Mobile.Common.conversationHistory",
|
||||
菜单: "Mobile.Common.menu",
|
||||
提示: "Mobile.Common.tip",
|
||||
全部: "Mobile.Common.all",
|
||||
暂无数据: "Mobile.Common.noData",
|
||||
没有更多数据了: "Mobile.Common.noMoreData",
|
||||
|
||||
// 登录与认证链路
|
||||
"登录 / 注册": "Mobile.Common.loginRegister",
|
||||
"当前展示为体验数据,登录后使用完整功能": "Mobile.Common.noticeExperience",
|
||||
同意: "Mobile.Common.agree",
|
||||
不同意: "Mobile.Common.disagree",
|
||||
|
||||
// 个人中心与公共状态
|
||||
语言: "Mobile.Profile.language",
|
||||
|
||||
// 协议、链接与通用反馈
|
||||
"已阅读并同意协议:": "Mobile.Auth.agreementPrefix",
|
||||
服务使用协议: "Mobile.Auth.serviceAgreement",
|
||||
隐私协议: "Mobile.Auth.privacyAgreement",
|
||||
"请同意服务协议及隐私保护!": "Mobile.Auth.pleaseAgreeProtocol",
|
||||
链接地址配置错误: "Mobile.Link.invalidConfig",
|
||||
链接已复制: "Mobile.Link.copied",
|
||||
"链接已复制,请手动粘贴打开": "Mobile.Link.copyAndOpen",
|
||||
打开链接失败: "Mobile.Link.openFailed",
|
||||
加载中: "Mobile.Page.loading",
|
||||
"加载中...": "Mobile.Page.loadingMore",
|
||||
请输入内容: "Mobile.Page.inputRequired",
|
||||
重试: "Mobile.Common.retry",
|
||||
复制成功: "Mobile.Common.copySuccess",
|
||||
复制失败: "Mobile.Common.copyFailed",
|
||||
来自: "Mobile.Common.from",
|
||||
页面首页: "Mobile.Common.pageHome",
|
||||
工作台: "Mobile.Common.workspace",
|
||||
|
||||
// 搜索与列表页
|
||||
搜索智能体: "Mobile.AgentSearch.placeholder",
|
||||
暂无结果: "Mobile.AgentSearch.emptyResult",
|
||||
|
||||
// 聊天输入与会话主链路
|
||||
拍照: "Mobile.Chat.takePhoto",
|
||||
相册: "Mobile.Chat.album",
|
||||
文件: "Mobile.Chat.file",
|
||||
技能: "Mobile.Chat.skill",
|
||||
对话设置: "Mobile.Conversation.settingsTitle",
|
||||
相关会话: "Mobile.Conversation.relatedTitle",
|
||||
查看全部: "Mobile.Conversation.viewAll",
|
||||
消息内容不是字符串: "Mobile.ThirdParty.UniAiX.invalidMessageContent",
|
||||
复制代码: "Mobile.ThirdParty.MpHtml.copyCode",
|
||||
保存成功: "Mobile.ThirdParty.MpHtml.saveSuccess",
|
||||
执行计划: "Mobile.ThirdParty.MpHtml.executionPlan",
|
||||
调用参数: "Mobile.ThirdParty.MpHtml.callArguments",
|
||||
调用结果: "Mobile.ThirdParty.MpHtml.callResult",
|
||||
结果为空: "Mobile.ThirdParty.MpHtml.emptyResult",
|
||||
请填写验证码: "Mobile.ThirdParty.UniCaptcha.fillCaptcha",
|
||||
scene不能为空: "Mobile.ThirdParty.UniCaptcha.sceneRequired",
|
||||
保存失败: "Mobile.ThirdParty.XTools.saveFailed",
|
||||
当前环境不支持微信操作: "Mobile.ThirdParty.XTools.wechatUnsupported",
|
||||
"获取服务失败,不支持该操作": "Mobile.ThirdParty.XTools.getServiceFailed",
|
||||
|
||||
// 会话、沙盒与业务页遗留文案
|
||||
全部会话: "Mobile.Conversation.allConversations",
|
||||
新建会话: "Mobile.Conversation.newConversation",
|
||||
更多信息: "Mobile.Conversation.moreInfo",
|
||||
收藏: "Mobile.Conversation.favorite",
|
||||
分享: "Mobile.Conversation.share",
|
||||
会话链接Key不能为空: "Mobile.Conversation.chatKeyRequired",
|
||||
会话ID不能为空: "Mobile.Conversation.idRequired",
|
||||
智能体电脑选择: "Mobile.Sandbox.selectorTitle",
|
||||
电脑不可用: "Mobile.Sandbox.unavailable",
|
||||
无可用电脑: "Mobile.Sandbox.noneAvailable",
|
||||
搜索智联录: "Mobile.AgentUnion.searchPlaceholder",
|
||||
获取主页智能体列表失败: "Mobile.AgentUnion.fetchHomeAgentListFailed",
|
||||
获取分类信息失败: "Mobile.AgentList.fetchCategoryFailed",
|
||||
获取智能体列表失败: "Mobile.AgentList.fetchAgentFailed",
|
||||
取消收藏失败: "Mobile.AgentList.unCollectFailed",
|
||||
添加收藏失败: "Mobile.AgentList.collectFailed",
|
||||
"你确认要删除该智能体吗?": "Mobile.AgentList.confirmDeleteAgent",
|
||||
删除失败: "Mobile.AgentList.deleteFailed",
|
||||
未命名会话: "Mobile.Conversation.unnamed",
|
||||
未知智能体: "Mobile.Conversation.unknownAgent",
|
||||
执行中: "Mobile.Conversation.executing",
|
||||
"我是你的智能助手,有什么需要帮忙的吗?": "Mobile.TempSession.defaultDesc",
|
||||
请输入指令: "Mobile.TempSession.inputPlaceholder",
|
||||
};
|
||||
|
||||
export const getLocalFallback = (lang: string, key: string): string => {
|
||||
const bundleKey = toBundleKey(lang);
|
||||
const defaultBundleKey = toBundleKey(DEFAULT_LANG);
|
||||
return (
|
||||
I18N_FALLBACK_BUNDLES[bundleKey]?.[key] ||
|
||||
I18N_FALLBACK_BUNDLES[defaultBundleKey]?.[key] ||
|
||||
""
|
||||
);
|
||||
};
|
||||
|
||||
export const resolveLiteralKey = (value: string): string => {
|
||||
return I18N_LITERAL_LOOKUP[value] || value;
|
||||
};
|
||||
|
||||
export const getZhFallback = (key: string): string => {
|
||||
return zhFallback[key] || key;
|
||||
};
|
||||
Reference in New Issue
Block a user