{ "name": "en-US", "LoginForm": { "userLabel": "User ID:", "passwordLabel": "Password:", "loginBut": "Login", "cancelBut": "Cancel", "cultureLabel": "Language:" }, "TabBar": { "home": "Home", "file": "Files", "media": "Media", "share": "Share", "mine": "Me" }, "MinePage": { "title": "Me", "myTheme": "My Theme", "mySecurity": "Security", "familyTree": "Family Trees", "familyPerson": "Family Members", "currentTheme": "Current Theme", "aboutTitle": "About", "appName": "App", "versionLabel": "Version", "platformLabel": "Platform" }, "ThemePage": { "title": "My Theme", "themeTitle": "Theme Color", "themeHint": "Component colors update instantly on switch and the choice is remembered", "darkTitle": "Dark Mode", "darkAuto": "Follow System", "darkLight": "Light", "darkDark": "Dark" }, "SecurityPage": { "title": "Security", "pageHint": "Permission system and basic settings, admin only", "pendingTag": "Pending", "pendingTip": "Not migrated from the legacy system yet, coming soon", "user": "Users", "userDesc": "Accounts, login users and status", "actor": "Roles", "actorDesc": "Security roles and membership", "group": "User Groups", "groupDesc": "Groups and group permission assignment", "function": "Functions", "functionDesc": "System functions and menu definitions", "permission": "Permissions", "permissionDesc": "Function grants and permission dependencies", "generator": "Number Generators", "generatorDesc": "Document number rules and sequences", "master": "Master Data", "masterDesc": "Master data and base dictionary settings", "helpFunction": "Help Functions", "helpFunctionDesc": "Function help documentation", "helpFeature": "Help Features", "helpFeatureDesc": "Help topics and grouping maintenance" }, "FamilyTreePage": { "title": "Family Tree Query", "detailTitle": "Family Tree Detail", "infoTitle": "Tree Information", "treeId": "Tree ID", "treeIdPlaceholder": "Enter tree ID", "treeName": "Tree Name", "brief": "Brief", "publicIndc": "Public", "treeCover": "Cover File", "ancestor": "Ancestor Genealogy Name", "ancestorSurname": "Ancestor Surname", "ancestorGenealogyName": "Ancestor Genealogy Name", "yes": "Yes", "no": "No", "searchBut": "Search", "resetBut": "Reset", "addTreeBut": "New Tree", "currentPerson": "Current Member", "gender": "Gender", "genealogyName": "Genealogy Name", "commonName": "Common Name", "personSearch": "Member Search", "pedigreeChart": "Pedigree Chart", "ancestryChart": "Ancestry Chart", "cancel": "Cancel", "chartEmpty": "No family tree data", "applyManage": "Apply for Manager", "requestSentTip": "Request submitted, waiting for approval", "addAncestor": "Add Ancestor", "spouseTitle": "Spouses", "addSpouse": "Add Spouse", "pickSpouse": "Pick Member", "spouseEmpty": "No spouse record", "marryDateText": "Marriage Date Text", "marryDate": "Marriage Date", "divorceDateText": "Divorce Date Text", "divorceDate": "Divorce Date", "marryType": "Marriage Type", "isCurrent": "Current Marriage", "childTitle": "Children", "addChild": "Add Child", "childEmpty": "No child record", "parent": "Parent", "parentEmpty": "Add a spouse first", "relationType": "Relation Type", "relationEmpty": "No relation available", "remark": "Remark", "permTitle": "Permission Maintenance", "permPending": "Pending Requests", "permManager": "Managers", "permEmpty": "No record", "approve": "Approve", "setManager": "Set Manager", "reject": "Reject", "remove": "Remove", "managerTag": "Manager", "memberTag": "Member", "inputTreeIdTip": "Please enter tree ID", "noAmendTip": "You have no permission to amend this family tree", "treeNameRequired": "Please enter tree name" }, "FamilyPersonPage": { "title": "Family Member Query", "detailTitle": "Member Detail", "personId": "Member ID", "treeId": "Tree ID", "surname": "Surname", "genealogyName": "Genealogy Name", "commonName": "Common Name", "gender": "Gender", "createdDatetime": "Created Date", "basicTitle": "Basic Information", "familyTitle": "Family & Education", "workTitle": "Career & Status", "introTitle": "Biography", "alias": "Alias", "zi": "Courtesy Name (Zi)", "hao": "Art Name (Hao)", "birthOrder": "Birth Order", "maritalStatus": "Marital Status", "fatherId": "Father ID", "motherName": "Mother Name", "school": "School", "major": "Major", "education": "Education", "graduationStatus": "Graduation Status", "duty": "Duty", "title": "Title", "privacy": "Public Profile", "liveStatus": "Living Status", "bindUserId": "Bound User ID", "bindUser": "Bound User", "birthText": "Birth Text", "birthDate": "Birth Date", "deathText": "Death Text", "deathDate": "Death Date", "introduction": "Biography", "yes": "Yes", "no": "No", "avatarTitle": "Avatar", "uploadAvatar": "Upload Avatar", "clearAvatar": "Clear Avatar", "uploadingTip": "Uploading…", "avatarUploadedTip": "Avatar uploaded", "avatarUploadFailed": "Avatar upload failed", "readonlyTip": "Detailed profile is private, only basic information is visible", "quickCreateTitle": "Quick Add Member", "surnamePlaceholder": "Enter surname", "genealogyNamePlaceholder": "Enter genealogy name", "genderPlaceholder": "Select gender", "genderEmpty": "No gender available", "surnameRequired": "Please enter surname", "genealogyNameRequired": "Please enter genealogy name", "genderRequired": "Please select gender", "quickCreateFailed": "Failed to create member" }, "GeneratorPage": { "title": "Number Generators", "detailTitle": "Number Rule Detail", "systemId": "System Id", "subsystemId": "Subsystem Id", "prefix": "Prefix", "refreshPeriod": "Refresh Period", "format": "Format", "nextId": "Next Id", "lastGeneratorDate": "Last Generated At", "yes": "Yes", "no": "No", "formatRequired": "Please enter the format" }, "GroupPage": { "title": "User Groups", "detailTitle": "User Group Detail", "groupName": "Group Name", "groupLocalName": "Local Name", "groupEngName": "English Name", "createdDatetime": "Created At", "nameRequired": "Please enter the group name", "localNameRequired": "Please enter the local name", "actionView": "View", "actionCreate": "Create", "actionAmend": "Amend", "actionDelete": "Delete", "permissionTitle": "Permissions", "addPermissionBut": "Add Permission", "permissionEmpty": "No permissions yet", "unnamedPermission": "Unnamed permission", "dependentLabel": "Dependent", "dependentViewTitle": "Dependent Permissions", "dependentViewEmpty": "No dependent permissions yet", "unnamedDependent": "Unnamed dependent", "actorTitle": "Roles", "addActorBut": "Add Role", "actorEmpty": "No roles yet", "unnamedActor": "Unnamed role" }, "FunctionPage": { "title": "Functions", "detailTitle": "Function Detail", "functionName": "Function Name", "functionLocalName": "Local Name", "functionEngName": "English Name", "functionIndc": "Menu?", "icon": "Icon", "permissionName": "Permission Name", "pageUrl": "Page URL", "apiRoute": "API Route", "pageName": "Page Name", "remark": "Remark", "yes": "Yes", "no": "No", "menuItem": "Menu item", "nameRequired": "Please enter the function name", "localNameRequired": "Please enter the local name", "pickPermissionBut": "Pick Permission", "parentTitle": "Parent Directory", "addParentBut": "Add Parent", "parentEmpty": "No parent directory", "unnamedParent": "Unnamed parent", "sonTitle": "Child Menus", "addSonBut": "Add Child", "sonEmpty": "No child menus", "unnamedSon": "Unnamed child" }, "PermissionPage": { "title": "Permissions", "detailTitle": "Permission Detail", "permissionName": "Permission Name", "description": "Description", "dependent": "Dependent", "createdDatetime": "Created At", "delegateIndc": "Delegable?", "yes": "Yes", "no": "No", "nameRequired": "Please enter the permission name", "descriptionRequired": "Please enter the description", "dependentNameRequired": "Please enter the dependent name", "dependentDescRequired": "Please enter the dependent local name", "dependentTitle": "Dependent Permissions", "addDependentBut": "Add Dependent", "dependentEmpty": "No dependent permissions yet", "dependentDetailName": "Dependent Name", "dependentDetailDescription": "Dependent Local Name", "dependentNamePlaceholder": "Name of the dependent permission", "dependentDescPlaceholder": "Local description of the dependent permission" }, "MasterPage": { "title": "Master Data", "detailTitle": "Master Data Detail", "masterCategory": "Category", "masterSubcategory": "Subcategory", "masterCodeItem": "Code Item", "localDescription": "Local Description", "engDescription": "English Description", "value": "Value", "orderBy": "Order", "validIndc": "Valid?", "remark": "Remark", "yes": "Yes", "no": "No", "categoryRequired": "Please enter the category", "subcategoryRequired": "Please enter the subcategory", "codeItemRequired": "Please enter the code item", "localDescriptionRequired": "Please enter the local description" }, "ActorPage": { "detailTitle": "Role Detail", "actorName": "Role Name", "actorLocalName": "Local Name", "actorEngName": "English Name", "actorNameRequired": "Please enter the role name", "localNameRequired": "Please enter the local name", "groupTitle": "Groups", "addGroupBut": "Add Group", "groupEmpty": "No groups yet", "unnamedGroup": "Unnamed group", "userTitle": "Member Users", "addUserBut": "Add User", "userEmpty": "No member users yet", "unnamedUser": "Unnamed user" }, "HelpFunctionPage": { "title": "Help Functions", "detailTitle": "Help Function Detail", "functionName": "Function Name", "intro": "Introduction", "enabledIndc": "Enabled?", "yes": "Yes", "no": "No", "helpFunctionId": "Id", "enabledTag": "Enabled", "nameRequired": "Please pick a function name", "pickFunctionBut": "Pick the function to document", "stepTitle": "Steps", "addStepBut": "Add Step", "stepEmpty": "No steps yet", "unnamedGroup": "No feature group selected", "stepName": "Title", "stepDescription": "Description", "stepTips": "Tips", "stepIcon": "Icon", "stepTitlePlaceholder": "What to do in this step", "stepDescPlaceholder": "How to do this step", "stepTipsPlaceholder": "Extra tips, optional", "stepIconPlaceholder": "Icon name on the page", "featureTitle": "Referenced Feature Groups", "addFeatureBut": "Reference Feature Group", "featureEmpty": "No feature group referenced", "previewBut": "Preview" }, "HelpPreview": { "title": "Help", "flow": "Operation Steps", "features": "Features & Icons", "tip": "Tip", "empty": "Nothing to preview yet. Fill in the introduction, steps, or reference a feature group first.", "cancel": "Cancel" }, "HelpFeaturePage": { "title": "Help Features", "detailTitle": "Feature Group Detail", "name": "Feature Name", "description": "Description", "icon": "Icon", "color": "Color", "groupCode": "Group Code", "groupName": "Group Name", "featureCount": "Features", "groupTitle": "Feature Group", "groupCodeRequired": "Please enter the group code", "nameRequired": "Please enter the feature name", "featureTitle": "Features In Group", "addFeatureBut": "Add Feature", "featureEmpty": "No features yet", "namePlaceholder": "Usually the text on the button", "descPlaceholder": "What this button / icon does", "iconPlaceholder": "e.g. DeleteOutlined", "colorPlaceholder": "e.g. #faad14 / red", "noGroupTip": "This feature has no owning group" }, "FilePage": { "title": "Files", "searchPlaceholder": "Search files / folders", "album": "Family Album", "musicHall": "Music Hall", "videoHall": "Video Hall", "shareCenter": "Share Hall", "trash": "Trash", "catAll": "All", "catImage": "Images", "catVideo": "Videos", "catDocument": "Docs", "catAudio": "Audio", "emptyText": "No matching files", "sortTimeDesc": "Newest first", "sortTimeAsc": "Oldest first", "sortName": "Sort by name", "selectedCount": "{count} selected", "selectAll": "Select All", "unselectAll": "Unselect All", "actionSelect": "Select", "visPrivate": "Private", "visGroup": "Group", "visPublic": "Public", "actionRename": "Rename", "actionMove": "Move", "actionDownload": "Download", "actionDelete": "Delete", "actionShare": "Share to Family", "actionShareShort": "Share", "actionPublish": "Publish", "actionPublishAlbum": "Publish Album", "actionPreview": "Preview", "actionAlbumShow": "Album Preview", "actionVideoPlay": "Play Video", "actionAudioPlay": "Play Music", "actionDetail": "Details", "actionCancel": "Cancel", "actionDone": "Done", "addTitle": "Please Select", "addUpload": "Upload File", "addFolder": "New Folder", "folderPlaceholder": "Enter folder name", "folderCancel": "Cancel", "folderConfirm": "Create", "folderInvalid": "Folder name cannot contain / or \\", "folderCreated": "Folder created", "todoTip": "Coming soon", "todayLabel": "Today", "myCloud": "My Cloud", "loading": "Loading…", "loadFailed": "Failed to load, please retry", "retryBut": "Retry", "renameTitle": "Rename", "renameConfirm": "Save", "renameDone": "Renamed", "deleteConfirmText": "Delete {count} item(s)? You can restore them in Trash", "deleteDone": "Deleted", "moveTitle": "Choose destination folder", "moveRoot": "My Drive", "moveDone": "Moved", "moveSelected": "{count} item(s) selected", "moveHere": "Move here", "moveNoSub": "No subfolders", "shareTitle": "Choose a family folder", "shareHere": "Share here", "shareDone": "Shared", "shareNoFile": "No shareable files", "publishNoFile": "No publishable files", "publishUnsupported": "This file type cannot be published", "publishPickPhoto": "Choose a photo album", "publishPickAudio": "Choose an audio album", "publishPickVideo": "Choose a video album", "publishConfirmPhoto": "Publish Album", "publishConfirmAudio": "Publish Music Album", "publishConfirmVideo": "Publish Video Album", "publishCreatePhoto": "New Album", "publishCreateAudio": "New Music Set", "publishCreateVideo": "New Video Set", "publishDone": "Published", "downloadNoFile": "No downloadable files", "downloadDone": "Downloaded", "downloading": "Downloading…", "previewNoImage": "No previewable images", "loadingMedia": "Preparing media…", "pleaseWait": "Working…", "actionFailed": "Operation failed", "pickerEmpty": "Nothing to choose", "playTitle": "Now playing", "detailName": "Name", "detailSize": "Size", "detailTime": "Time", "detailOrder": "Storage key" }, "TrashPage": { "title": "Trash", "restore": "Restore", "purge": "Delete permanently", "restoreDone": "Restored", "purgeDone": "Permanently deleted", "purgeConfirmText": "Permanently delete {count} item(s)? This cannot be undone", "pickFirst": "Select items first", "emptyText": "Trash is empty" }, "ShareHallPage": { "title": "Share Hall", "noPermission": "No permission for this folder", "enter": "Open", "preview": "Preview", "play": "Play", "download": "Download", "unshare": "Unshare", "unshareConfirmText": "Unshare \"{name}\"? The original file stays in its owner's drive", "unshareDone": "Unshared", "createDone": "Folder created", "emptyGroups": "No shared groups yet", "emptyText": "This folder is empty" }, "SharePage": { "title": "Family Groups", "createTitle": "Create Group", "noAccess": "This group is private and you are not a member", "unnamed": "Unnamed", "chipPublic": "Public", "chipPrivate": "Private", "chipJoinable": "Joinable", "chipManager": "Admin", "chipMember": "Member", "emptyGroups": "No groups to join yet", "noDesc": "No description", "cancel": "Cancel", "save": "Save", "amend": "Edit", "dissolve": "Disband", "dissolveConfirm": "Disband \"{name}\"? Folders and memberships will be removed together", "dissolveDone": "Group disbanded", "saveDone": "Saved", "createDone": "Group created", "nameRequired": "Enter a group name", "groupInfo": "Group Info", "groupName": "Group Name", "groupDesc": "Description", "publicSetting": "Public group", "joinApply": "Allow join requests", "folders": "Shared Folders", "newFolder": "New Folder", "add": "Add", "folderPh": "Enter folder name", "notePh": "Note (optional)", "noFolders": "No shared folders", "deleteFolder": "Delete Folder", "deleteFolderConfirm": "Delete this shared folder? It cannot be deleted if it still contains items", "folderNotEmpty": "The folder still contains items and cannot be deleted", "delete": "Delete", "assign": "Assign", "assignDone": "Permission assigned", "noCandidate": "All members already have this folder", "requests": "Pending Requests", "approve": "Approve", "approveDone": "Approved", "reject": "Reject", "rejectConfirm": "Reject this request?", "rejectDone": "Rejected", "members": "Members", "removeMember": "Remove", "removeMemberConfirm": "Remove this member from the group? Their folder permissions will be cleared", "permissions": "Folder Permissions", "applyJoin": "Join", "submitApply": "Submit", "joinPh": "Tell the admin why you want to join", "applyDone": "Request submitted, awaiting review" }, "MediaPage": { "title": "Media", "createTitle": "New Album", "segPhoto": "Photos", "segAudio": "Music", "segVideo": "Video", "emptyAlbums": "No albums yet", "unnamed": "Untitled", "noDesc": "No description", "noAccess": "You don't have access to this album", "chipPublic": "Public", "chipDefault": "Default", "albumInfo": "Album Info", "albumNo": "Album No.", "albumName": "Album Name", "albumDesc": "Album Description", "autoNo": "Generated on save", "autoNoHint": " (auto-generated, cannot be modified)", "publicLabel": "Public to everyone", "defaultLabel": "Set as default", "nameRequired": "Please enter an album name", "details": "Album Items", "noDetails": "No items yet. Publish content to this album from the Files page", "moveUp": "Up", "moveDown": "Down", "delete": "Delete", "deleteDetailConfirm": "Remove this item from the album?", "groups": "Shared Groups", "groupName": "Group Name", "groupDesc": "Group Description", "addGroup": "Add Group", "noGroups": "Not published to any group yet", "noGroupsAvailable": "No groups available, or all already published", "exhibit": "Exhibit", "amend": "Edit", "save": "Save", "cancel": "Cancel", "deleteConfirm": "Delete album \"{name}\"? Items and group publishing will be removed", "deleteDone": "Album deleted", "saveDone": "Saved", "createDone": "Album created" }, "TransportPage": { "title": "Transfers", "active": "Active", "done": "Finished", "empty": "No transfer tasks", "queued": "Queued", "uploading": "Uploading", "transferring": "transferring", "success": "Done", "failed": "Failed", "cancelled": "Cancelled", "retry": "Retry", "cancel": "Cancel", "remove": "Remove", "clearDone": "Clear done" }, "AdminPage": { "filterBut": "Filter", "filterTitle": "Filter Conditions", "searchPlaceholder": "Search", "confirmBut": "OK", "cancelBut": "Cancel", "clearBut": "Clear", "clearAllBut": "Clear All", "startPlaceholder": "From", "endPlaceholder": "To", "quickDays": "Last {days} days", "totalText": "{total} record(s)", "selectedText": "{count} selected", "selectAllBut": "Select All", "unselectAllBut": "Deselect", "emptyText": "No matching records", "viewBut": "View", "amendBut": "Edit", "createBut": "New", "deleteBut": "Delete", "saveBut": "Save", "backBut": "Back", "pickDoneBut": "Done", "pickNoneTip": "Please select a record", "notExistTip": "Record not found", "notSetTip": "Not set", "savedTip": "Saved", "deletedTip": "Records deleted", "confirmDeleteTitle": "Delete the selected records?", "noPermissionText": "No accessible admin function", "menuLoading": "Loading menu…", "menuRetryBut": "Reload", "menuEmptyText": "The server returned no authorized function", "loadingTip": "Loading…", "savingTip": "Saving…" }, "UserPage": { "title": "User Query", "detailTitle": "User Detail", "userName": "User Name", "userLocalName": "Local Name", "userEngName": "English Name", "userMobile": "Mobile", "userPassword": "Password", "createdDatetime": "Created Date", "account": "Account", "unnamed": "No user name", "actorTitle": "Roles", "actorEnquiryTitle": "Role Query", "actorName": "Role Name", "actorLocalName": "Role Local Name", "addActorBut": "Add Role", "actorEmpty": "No role yet", "unnamedActor": "Unnamed role", "userNameRequired": "Please enter the user name", "localNameRequired": "Please enter the local name", "passwordTip": "Leave it empty to keep the password" }, "ErrorPage": { "reasonsTitle": "Possible reasons", "fromLabel": "Failed address:", "goLoginBut": "Sign in", "reloginBut": "Sign in again", "goHomeBut": "Back to home", "goBackBut": "Go back", "badge401": "UNAUTHORIZED · Not signed in", "title401": "You need to sign in first", "desc401": "Your session has expired, or you have not signed in yet. Sign in again to continue.", "hint401": "Note: signing out on another device also invalidates this one.", "r401_1": "Session expired: idle for too long, or the access token has expired", "r401_2": "You signed out on another device or tab, so this device was invalidated", "r401_3": "The browser cleared local data (private mode, cleared cache, another browser)", "r401_4": "An administrator just changed your account information (password, phone number)", "badge403": "FORBIDDEN · No permission", "title403": "You have no permission for this page", "desc403": "Your account is fine, but your role / permission group has not been granted this function.", "hint403": "Note: permissions are assigned by administrators and take effect only after signing in again.", "r403_1": "Your role / permission group does not include this function", "r403_2": "The function has not been authorized in the backend, so the entry is visible but won't open", "r403_3": "Permissions were just changed, and your local data still holds the old ones", "r403_4": "Someone shared their link with you, but your account lacks the matching permission", "badge404": "NOT FOUND · Page missing", "title404": "This page does not exist", "desc404": "The address may be wrong, or the page is no longer part of the system.", "hint404": "Note: functions without permission are hidden from the menu, and opening their address lands here.", "r404_1": "The address is misspelled, or was truncated when copied from chat or email", "r404_2": "The function is not exposed in the menu (no such route in the system)", "r404_3": "The page was taken offline or renamed, while your bookmark still holds the old address", "r404_4": "The server just restarted and the menu has not loaded yet — refresh once" } }