chore(release): v1.1.0 unify DI(strategy), AI equivalence service, config domain refactor, docker alias; health checks and schedules
This commit is contained in:
@@ -1,5 +1,18 @@
|
||||
{
|
||||
"title": "System Management",
|
||||
"role": {
|
||||
"title": "Role Management",
|
||||
"list": "Role List",
|
||||
"name": "Role",
|
||||
"roleName": "Role Name",
|
||||
"id": "Role ID",
|
||||
"status": "Status",
|
||||
"remark": "Remark",
|
||||
"createTime": "Creation Time",
|
||||
"operation": "Operation",
|
||||
"permissions": "Permissions",
|
||||
"setPermissions": "Permissions"
|
||||
},
|
||||
"dept": {
|
||||
"name": "Department",
|
||||
"title": "Department Management",
|
||||
@@ -12,22 +25,39 @@
|
||||
},
|
||||
"menu": {
|
||||
"title": "Menu Management",
|
||||
"addMenu": "Add Menu",
|
||||
"editMenu": "Edit Menu",
|
||||
"parent": "Parent Menu",
|
||||
"menuTitle": "Title",
|
||||
"menuName": "Menu Name",
|
||||
"menuNamePlaceholder": "Please enter menu name",
|
||||
"menuKey": "Menu Key",
|
||||
"menuKeyPlaceholder": "Please enter menu key",
|
||||
"menuKeyValidata": "Menu key format is incorrect",
|
||||
"name": "Menu",
|
||||
"type": "Type",
|
||||
"menuType": "Menu Type",
|
||||
"menuTypeDir": "Directory",
|
||||
"menuTypeMenu": "Menu",
|
||||
"menuTypeButton": "Button",
|
||||
"typeCatalog": "Catalog",
|
||||
"typeMenu": "Menu",
|
||||
"typeButton": "Button",
|
||||
"typeLink": "Link",
|
||||
"typeEmbedded": "Embedded",
|
||||
"icon": "Icon",
|
||||
"menuIcon": "Menu Icon",
|
||||
"activeIcon": "Active Icon",
|
||||
"activePath": "Active Path",
|
||||
"path": "Route Path",
|
||||
"routePath": "Route Path",
|
||||
"routePathPlaceholder": "Please enter route path",
|
||||
"viewPath": "View Path",
|
||||
"viewPathPlaceholder": "Please enter view path",
|
||||
"component": "Component",
|
||||
"status": "Status",
|
||||
"authId": "Auth ID",
|
||||
"authIdPlaceholder": "Please enter auth ID",
|
||||
"authCode": "Auth Code",
|
||||
"badge": "Badge",
|
||||
"operation": "Operation",
|
||||
@@ -47,19 +77,455 @@
|
||||
"normal": "Text",
|
||||
"none": "None"
|
||||
},
|
||||
"badgeVariants": "Badge Style"
|
||||
"badgeVariants": "Badge Style",
|
||||
"addon": "Addon",
|
||||
"parentMenu": "Parent Menu",
|
||||
"menuShortName": "Short Name",
|
||||
"menuShortNamePlaceholder": "Please enter menu short name",
|
||||
"isShow": "Show",
|
||||
"show": "Show",
|
||||
"hide": "Hide",
|
||||
"sort": "Sort",
|
||||
"initializeMenu": "Initialize Menu",
|
||||
"initializeMenuTipsOne": "This operation will reset all menu data",
|
||||
"initializeMenuTipsTwo": "Are you sure you want to continue?",
|
||||
"initializeSuccess": "Menu initialized successfully",
|
||||
"initializeError": "Failed to initialize menu",
|
||||
"loadError": "Failed to load menu list",
|
||||
"loadMenuError": "Failed to load menu data",
|
||||
"loadAddonError": "Failed to load addon data",
|
||||
"loadMenuInfoError": "Failed to load menu information",
|
||||
"saveError": "Failed to save menu",
|
||||
"addSuccess": "Menu added successfully",
|
||||
"editSuccess": "Menu updated successfully",
|
||||
"deleteSuccess": "Menu deleted successfully",
|
||||
"deleteError": "Failed to delete menu",
|
||||
"deleteConfirm": "Are you sure you want to delete this menu?"
|
||||
},
|
||||
"role": {
|
||||
"title": "Role Management",
|
||||
"list": "Role List",
|
||||
"name": "Role",
|
||||
"roleName": "Role Name",
|
||||
"id": "Role ID",
|
||||
"status": "Status",
|
||||
"remark": "Remark",
|
||||
"group": {
|
||||
"title": "Site Group",
|
||||
"groupId": "Group ID",
|
||||
"groupName": "Group Name",
|
||||
"groupDesc": "Group Description",
|
||||
"mainApp": "Main Application",
|
||||
"containAddon": "Include Addons",
|
||||
"appName": "Application Name",
|
||||
"addonName": "Addon Name",
|
||||
"createTime": "Creation Time",
|
||||
"operation": "Operation",
|
||||
"permissions": "Permissions",
|
||||
"setPermissions": "Permissions"
|
||||
"addGroup": "Add Group",
|
||||
"editGroup": "Edit Group",
|
||||
"deleteConfirm": "Are you sure you want to delete this group?",
|
||||
"deleteSuccess": "Group deleted successfully",
|
||||
"deleteError": "Failed to delete group",
|
||||
"saveSuccess": "Group saved successfully",
|
||||
"saveError": "Failed to save group",
|
||||
"groupNamePlaceholder": "Please enter group name",
|
||||
"groupDescPlaceholder": "Please enter group description",
|
||||
"mainAppPlaceholder": "Please select main application",
|
||||
"containAddonPlaceholder": "Please select included addons",
|
||||
"appListEmpty": "No applications",
|
||||
"addonListEmpty": "No addons",
|
||||
"moreApps": "+{count} more applications",
|
||||
"moreAddons": "+{count} more addons",
|
||||
"selectAppFirst": "Please select the corresponding main application first",
|
||||
"addonRemovedDueToAppDependency": "Some addons have been automatically removed due to dependency relationships"
|
||||
},
|
||||
"diy": {
|
||||
"title": "DIY Decoration",
|
||||
"decorating": "Decorating",
|
||||
"list": {
|
||||
"title": "Custom Pages",
|
||||
"pageId": "Page ID",
|
||||
"pageTitle": "Page Title",
|
||||
"pageTitlePlaceholder": "Please enter page title",
|
||||
"addonName": "Belonging App",
|
||||
"pageType": "Page Type",
|
||||
"pageTypePlaceholder": "Please select page type",
|
||||
"status": "Status",
|
||||
"updateTime": "Update Time",
|
||||
"addPage": "Add Page",
|
||||
"preview": "Preview",
|
||||
"shareSetting": "Share Settings",
|
||||
"copy": "Copy",
|
||||
"copySuccess": "Page copied successfully",
|
||||
"copyError": "Failed to copy page",
|
||||
"deleteConfirm": "Are you sure you want to delete this page?",
|
||||
"deleteSuccess": "Page deleted successfully",
|
||||
"deleteError": "Failed to delete page",
|
||||
"setUseSuccess": "Set successfully",
|
||||
"setUseError": "Failed to set",
|
||||
"cannotSetUseDiyPage": "DIY_PAGE type pages cannot be set as in use",
|
||||
"shareTitle": "Share Title",
|
||||
"shareTitlePlaceholder": "Please enter share title",
|
||||
"shareDesc": "Share Description",
|
||||
"shareDescPlaceholder": "Please enter share description",
|
||||
"shareImage": "Share Image",
|
||||
"wechatShare": "WeChat Official Account Share",
|
||||
"weappShare": "WeChat Mini Program Share"
|
||||
},
|
||||
"design": {
|
||||
"templatePagePlaceholder": "Select Template Page",
|
||||
"templatePageEmpty": "Empty Template",
|
||||
"pageSet": "Page Settings",
|
||||
"moveUpComponent": "Move Up Component",
|
||||
"moveDownComponent": "Move Down Component",
|
||||
"copyComponent": "Copy Component",
|
||||
"delComponent": "Delete Component",
|
||||
"resetComponent": "Reset Component",
|
||||
"delComponentTips": "Are you sure you want to delete this component?",
|
||||
"changeTemplatePageTips": "Switching template page will clear current page content, are you sure you want to continue?",
|
||||
"developTitle": "Development Mode Configuration",
|
||||
"wapDomain": "WAP Domain",
|
||||
"wapDomainPlaceholder": "Please enter WAP domain, e.g.: https://www.example.com",
|
||||
"settingTips": "Configuration Instructions",
|
||||
"initPageError": "Failed to initialize page",
|
||||
"tabEditContent": "Content",
|
||||
"tabEditStyle": "Style",
|
||||
"pageSettings": "Page Settings",
|
||||
"pageName": "Page Name",
|
||||
"pageNamePlaceholder": "Please enter page name",
|
||||
"pageMode": "Page Mode",
|
||||
"style1": "Single Column Layout",
|
||||
"style2": "Left-Right Layout",
|
||||
"alignment": "Alignment",
|
||||
"alignLeft": "Left Align",
|
||||
"alignRight": "Right Align",
|
||||
"borderControl": "Border Control",
|
||||
"pageBackground": "Page Background",
|
||||
"bgColor": "Background Color",
|
||||
"bgColorTips": "Left is start color, right is end color",
|
||||
"gradientAngle": "Gradient Angle",
|
||||
"topToBottom": "Top to Bottom",
|
||||
"leftToRight": "Left to Right",
|
||||
"bgImage": "Background Image",
|
||||
"bgHeightScale": "Background Height Scale",
|
||||
"bgHeightScaleTips": "0 for auto height",
|
||||
"topStatusBar": "Top Status Bar",
|
||||
"showStatusBar": "Show Status Bar",
|
||||
"statusBarStyle": "Status Bar Style",
|
||||
"style1Text": "Text Only",
|
||||
"style2ImageText": "Image + Text",
|
||||
"style3ImageSearch": "Image + Search",
|
||||
"style4Location": "Location",
|
||||
"textAlign": "Text Alignment",
|
||||
"alignCenter": "Center",
|
||||
"logoImage": "Logo Image",
|
||||
"searchPlaceholder": "Search Placeholder",
|
||||
"searchPlaceholderTips": "Please enter search placeholder text",
|
||||
"link": "Jump Link",
|
||||
"linkPlaceholder": "Please select jump link",
|
||||
"popWindow": "Popup Settings",
|
||||
"showPopWindow": "Show Popup",
|
||||
"neverShow": "Never Show",
|
||||
"showOnce": "Show Once",
|
||||
"showAlways": "Show Always",
|
||||
"popImage": "Popup Image",
|
||||
"popLink": "Popup Link",
|
||||
"popLinkPlaceholder": "Please select popup jump link",
|
||||
"leavePageContentTips": "Page content has been modified, are you sure you want to leave?",
|
||||
"diyPageTitlePlaceholder": "Please enter page title",
|
||||
"componentCanOnlyAdd": "Can only add up to",
|
||||
"piece": "pieces",
|
||||
"componentNotMoved": "This component cannot be moved",
|
||||
"notCopy": "Cannot copy"
|
||||
},
|
||||
"bottomNav": {
|
||||
"title": "Bottom Navigation",
|
||||
"name": "Navigation Name",
|
||||
"namePlaceholder": "Please enter navigation name",
|
||||
"navigationItems": "Navigation Items",
|
||||
"item": "Item",
|
||||
"itemCount": "Item Count",
|
||||
"text": "Text",
|
||||
"textPlaceholder": "Please enter navigation text",
|
||||
"link": "Link",
|
||||
"linkPlaceholder": "Please enter navigation link",
|
||||
"selectedIcon": "Selected Icon",
|
||||
"unselectedIcon": "Unselected Icon",
|
||||
"addItem": "Add Navigation Item",
|
||||
"addBottomNav": "Add Bottom Navigation",
|
||||
"editBottomNav": "Edit Bottom Navigation",
|
||||
"deleteConfirm": "Are you sure you want to delete this bottom navigation?",
|
||||
"deleteSuccess": "Bottom navigation deleted successfully",
|
||||
"deleteError": "Failed to delete bottom navigation"
|
||||
},
|
||||
"route": {
|
||||
"title": "Route Management",
|
||||
"name": "Route Name",
|
||||
"namePlaceholder": "Please enter route name",
|
||||
"path": "Route Path",
|
||||
"pathPlaceholder": "Please enter route path",
|
||||
"component": "Component Path",
|
||||
"componentPlaceholder": "Please enter component path",
|
||||
"title": "Page Title",
|
||||
"titlePlaceholder": "Please enter page title",
|
||||
"icon": "Icon",
|
||||
"iconPlaceholder": "Please enter icon class name",
|
||||
"keepAlive": "Cache Page",
|
||||
"requireAuth": "Require Login",
|
||||
"addRoute": "Add Route",
|
||||
"editRoute": "Edit Route",
|
||||
"deleteConfirm": "Are you sure you want to delete this route?",
|
||||
"deleteSuccess": "Route deleted successfully",
|
||||
"deleteError": "Failed to delete route"
|
||||
}
|
||||
},
|
||||
"channel": {
|
||||
"weapp": {
|
||||
"access": {
|
||||
"title": "Mini Program Access",
|
||||
"tip": "Please follow the steps below to complete WeChat Mini Program access configuration",
|
||||
"qrCodeTip": "WeChat Mini Program QR Code",
|
||||
"bindAuth": "Bind Now",
|
||||
"refreshAuth": "Refresh Authorization",
|
||||
"viewTutorial": "View Tutorial"
|
||||
},
|
||||
"config": {
|
||||
"title": "Mini Program Configuration",
|
||||
"basicTab": "Basic Configuration",
|
||||
"serverTab": "Server Configuration",
|
||||
"domainTab": "Domain Configuration",
|
||||
"privacyTab": "Privacy Policy",
|
||||
"domainTip": "Please configure the business domain for the mini program, separate multiple domains with semicolons",
|
||||
"privacyTip": "Please configure the privacy policy information for the mini program",
|
||||
"modifyDomain": "Modify Domain",
|
||||
"modifyPrivacy": "Modify Privacy Policy"
|
||||
},
|
||||
"template": {
|
||||
"title": "Subscription Message Templates",
|
||||
"batchSync": "Batch Sync",
|
||||
"sync": "Sync"
|
||||
},
|
||||
"code": {
|
||||
"title": "Version Release",
|
||||
"cloudRelease": "Cloud Release",
|
||||
"cloudReleaseTip": "Release mini program version directly through the cloud",
|
||||
"localRelease": "Local Upload",
|
||||
"localReleaseTip": "Upload locally packaged mini program code",
|
||||
"preview": "Preview Code",
|
||||
"previewTip": "Scan code to preview mini program",
|
||||
"uploadLog": "Upload Log",
|
||||
"uploadProgress": "Upload Progress"
|
||||
},
|
||||
"course": {
|
||||
"title": "Mini Program Access Tutorial",
|
||||
"subtitle": "Follow the steps below to complete WeChat Mini Program access configuration",
|
||||
"start": "Start Access",
|
||||
"step1": {
|
||||
"title": "Bind WeChat Mini Program",
|
||||
"desc1": "First, you need to bind the WeChat Mini Program account to get the AppID and AppSecret of the mini program.",
|
||||
"desc2": "Log in to the WeChat public platform, enter the mini program management backend, and get the relevant configuration information.",
|
||||
"note": "Notes:",
|
||||
"note1": "Ensure the mini program has completed certification",
|
||||
"note2": "Get the correct AppID and AppSecret",
|
||||
"note3": "Configure the server domain for the mini program"
|
||||
},
|
||||
"step2": {
|
||||
"title": "Configure Message Server",
|
||||
"desc1": "Configure the message server for the mini program to ensure normal reception of message pushes from the WeChat server.",
|
||||
"desc2": "Set parameters such as Token, EncodingAESKey, and choose the appropriate encryption method.",
|
||||
"config": "Configuration Items:",
|
||||
"config1": "Token: Custom verification token",
|
||||
"config2": "EncodingAESKey: Message encryption key",
|
||||
"config3": "Encryption Method: Plain text, Compatible, Secure mode"
|
||||
},
|
||||
"step3": {
|
||||
"title": "Subscription Message Templates",
|
||||
"desc1": "Synchronize the subscription message templates of the mini program for sending notification messages to users.",
|
||||
"desc2": "You can sync existing templates from the WeChat public platform or create new templates.",
|
||||
"tip": "Subscription messages require user active subscription before sending"
|
||||
},
|
||||
"step4": {
|
||||
"title": "Release Mini Program",
|
||||
"desc1": "After completing development and testing, submit the mini program version for review and release.",
|
||||
"desc2": "You can choose cloud release or local upload for version release.",
|
||||
"cloud": "Cloud Release Features",
|
||||
"cloud1": "Submit code directly online",
|
||||
"cloud2": "Automatically complete package upload",
|
||||
"cloud3": "Support version management",
|
||||
"local": "Local Upload Features",
|
||||
"local1": "Upload local packaged files",
|
||||
"local2": "Support custom packaging process",
|
||||
"local3": "Suitable for complex projects"
|
||||
}
|
||||
},
|
||||
"wechat": {
|
||||
"title": "WeChat Official Account",
|
||||
"access": {
|
||||
"title": "Access Guide",
|
||||
"config": "Configuration Management",
|
||||
"tip": "Please follow the steps below to complete WeChat Official Account integration",
|
||||
"step1": {
|
||||
"title": "Step 1: Register Official Account",
|
||||
"desc": "Visit WeChat Official Account Platform to register and verify your account"
|
||||
},
|
||||
"step2": {
|
||||
"title": "Step 2: Get Configuration Info",
|
||||
"desc": "Get AppID and AppSecret from Official Account backend",
|
||||
"copyAppId": "Copy AppID",
|
||||
"copyAppSecret": "Copy AppSecret"
|
||||
},
|
||||
"step3": {
|
||||
"title": "Step 3: Configure Server",
|
||||
"desc": "Download certificate and configure server information",
|
||||
"download": "Download Certificate"
|
||||
},
|
||||
"step4": {
|
||||
"title": "Step 4: Test Connection",
|
||||
"desc": "Test if the connection between Official Account and system is working",
|
||||
"test": "Test Connection"
|
||||
},
|
||||
"next": "Next",
|
||||
"prev": "Previous",
|
||||
"complete": "Complete",
|
||||
"success": "Integration configuration completed",
|
||||
"copySuccess": "Copy successful"
|
||||
},
|
||||
"config": {
|
||||
"title": "Official Account Configuration",
|
||||
"basic": "Basic Configuration",
|
||||
"server": "Server Configuration",
|
||||
"domain": "Domain Configuration",
|
||||
"privacy": "Privacy Configuration",
|
||||
"appId": "AppID",
|
||||
"appIdPlaceholder": "Please enter Official Account AppID",
|
||||
"appIdRequired": "Please enter AppID",
|
||||
"appSecret": "AppSecret",
|
||||
"appSecretPlaceholder": "Please enter Official Account AppSecret",
|
||||
"appSecretRequired": "Please enter AppSecret",
|
||||
"token": "Token",
|
||||
"tokenPlaceholder": "Please enter Token",
|
||||
"tokenRequired": "Please enter Token",
|
||||
"aesKey": "AES Key",
|
||||
"aesKeyPlaceholder": "Please enter AES key",
|
||||
"originalId": "Original ID",
|
||||
"originalIdPlaceholder": "Please enter Official Account original ID",
|
||||
"qrcode": "QR Code",
|
||||
"upload": "Upload QR Code",
|
||||
"uploadSuccess": "Upload successful",
|
||||
"uploadError": "Upload failed",
|
||||
"imageOnly": "Only image files can be uploaded",
|
||||
"imageSize": "Image size cannot exceed 2MB",
|
||||
"save": "Save",
|
||||
"reset": "Reset",
|
||||
"saveSuccess": "Save successful",
|
||||
"saveError": "Save failed",
|
||||
"loadError": "Failed to load configuration",
|
||||
"serverUrl": "Server URL",
|
||||
"serverUrlPlaceholder": "Automatically generated by system",
|
||||
"encodingAesKey": "Message Encryption Key",
|
||||
"encodingAesKeyPlaceholder": "Please enter message encryption key",
|
||||
"encodingAesKeyTip": "43 characters, used for message encryption/decryption",
|
||||
"encryptType": "Encryption Type",
|
||||
"encryptType0": "Plain Text Mode",
|
||||
"encryptType1": "Compatible Mode",
|
||||
"encryptType2": "Secure Mode",
|
||||
"businessDomain": "Business Domain",
|
||||
"businessDomainPlaceholder": "One domain per line, maximum 3",
|
||||
"businessDomainRequired": "Please enter business domain",
|
||||
"businessDomainTip": "No security warning when users input on this domain",
|
||||
"jsDomain": "JS Interface Safe Domain",
|
||||
"jsDomainPlaceholder": "One domain per line, maximum 3",
|
||||
"jsDomainTip": "Domain for calling JS interfaces",
|
||||
"webDomain": "Web Authorization Domain",
|
||||
"webDomainPlaceholder": "One domain per line, maximum 3",
|
||||
"webDomainTip": "Domain for web authorization",
|
||||
"privacyTip": "Please configure privacy settings carefully to ensure compliance with relevant laws",
|
||||
"privacyPolicy": "Privacy Policy",
|
||||
"privacyPolicy1": "Privacy protection enabled",
|
||||
"privacyPolicy0": "Privacy protection disabled",
|
||||
"privacyPolicyRequired": "Please select privacy policy",
|
||||
"userPrivacy": "User Privacy Description",
|
||||
"userPrivacyPlaceholder": "Please enter user privacy description",
|
||||
"userPrivacyTip": "Explain data collection and usage to users",
|
||||
"dataRetention": "Data Retention Period",
|
||||
"retention30": "30 days",
|
||||
"retention90": "90 days",
|
||||
"retention180": "180 days",
|
||||
"retention365": "365 days",
|
||||
"dataRetentionTip": "User data retention period, automatically deleted after expiration"
|
||||
},
|
||||
"template": {
|
||||
"title": "Message Templates",
|
||||
"sync": "Sync Templates",
|
||||
"edit": "Edit Template",
|
||||
"templateId": "Template ID",
|
||||
"primaryIndustry": "Primary Industry",
|
||||
"deputyIndustry": "Deputy Industry",
|
||||
"content": "Template Content",
|
||||
"example": "Example",
|
||||
"deleteConfirm": "Are you sure to delete template【{title}】?",
|
||||
"loadError": "Failed to load templates",
|
||||
"syncSuccess": "Sync successful",
|
||||
"syncError": "Sync failed"
|
||||
},
|
||||
"menu": {
|
||||
"title": "Custom Menu",
|
||||
"preview": "Preview",
|
||||
"publish": "Publish",
|
||||
"editor": "Menu Editor",
|
||||
"selectMenu": "Please select a menu to edit",
|
||||
"name": "Menu Name",
|
||||
"namePlaceholder": "Please enter menu name",
|
||||
"nameRequired": "Please enter menu name",
|
||||
"type": "Menu Type",
|
||||
"typeRequired": "Please select menu type",
|
||||
"typeClick": "Click Event",
|
||||
"typeView": "Redirect URL",
|
||||
"typeMiniprogram": "Mini Program",
|
||||
"typeScancode": "Scan Code Event",
|
||||
"typeLocation": "Send Location",
|
||||
"key": "Menu KEY",
|
||||
"keyPlaceholder": "Please enter menu KEY",
|
||||
"url": "Web Link",
|
||||
"urlPlaceholder": "Please enter web link",
|
||||
"appid": "Mini Program APPID",
|
||||
"appidPlaceholder": "Please enter mini program APPID",
|
||||
"pagepath": "Mini Program Path",
|
||||
"pagepathPlaceholder": "Please enter mini program path",
|
||||
"addSubMenu": "Add Sub Menu",
|
||||
"deleteConfirm": "Are you sure to delete this menu?",
|
||||
"loadError": "Failed to load menu",
|
||||
"saveSuccess": "Save successful",
|
||||
"saveError": "Save failed",
|
||||
"newMenu": "New Menu",
|
||||
"newSubMenu": "New Sub Menu"
|
||||
},
|
||||
"user": {
|
||||
"title": "User Management",
|
||||
"sync": "Sync Users",
|
||||
"export": "Export Users",
|
||||
"nickname": "Nickname",
|
||||
"nicknamePlaceholder": "Please enter nickname",
|
||||
"subscribe": "Subscription Status",
|
||||
"subscribed": "Subscribed",
|
||||
"unsubscribed": "Unsubscribed",
|
||||
"sex": "Gender",
|
||||
"male": "Male",
|
||||
"female": "Female",
|
||||
"unknown": "Unknown",
|
||||
"city": "City",
|
||||
"province": "Province",
|
||||
"country": "Country",
|
||||
"subscribeTime": "Subscription Time",
|
||||
"openid": "OpenID",
|
||||
"unionid": "UnionID",
|
||||
"groupid": "Group ID",
|
||||
"tagidList": "Tag List",
|
||||
"remark": "Remark",
|
||||
"language": "Language",
|
||||
"headimgurl": "Avatar",
|
||||
"detail": "User Details",
|
||||
"sendMessage": "Send Message",
|
||||
"setTag": "Set Tag",
|
||||
"sendMessageTip": "Send message function under development",
|
||||
"setTagTip": "Set tag function under development",
|
||||
"loadError": "Failed to load users",
|
||||
"syncSuccess": "Sync successful",
|
||||
"syncError": "Sync failed",
|
||||
"exporting": "Exporting user data..."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user