551 lines
18 KiB
JSON
551 lines
18 KiB
JSON
{
|
||
"common": {
|
||
"confirm": "Confirm",
|
||
"cancel": "Cancel",
|
||
"delete": "Delete",
|
||
"edit": "Edit",
|
||
"save": "Save",
|
||
"add": "Add",
|
||
"search": "Search",
|
||
"reset": "Reset",
|
||
"newLine": "new line",
|
||
"loading": "Loading...",
|
||
"noData": "No data",
|
||
"more": "More",
|
||
"close": "Close",
|
||
"rename": "Rename",
|
||
"duplicate": "Duplicate",
|
||
"export": "Export",
|
||
"import": "Import",
|
||
"deleteSuccess": "Deleted successfully",
|
||
"deleteFailed": "Delete failed"
|
||
},
|
||
"app": {
|
||
"title": "ZQ Workspace",
|
||
"description": "Tables & Documents collaboration platform"
|
||
},
|
||
"theme": {
|
||
"light": "Light Mode",
|
||
"dark": "Dark Mode",
|
||
"system": "Follow System"
|
||
},
|
||
"language": {
|
||
"zhCN": "简体中文",
|
||
"zhTW": "繁體中文",
|
||
"en": "English"
|
||
},
|
||
"sidebar": {
|
||
"allItems": "All Items",
|
||
"allTables": "All Tables",
|
||
"newTable": "New Table",
|
||
"newDocument": "New Document",
|
||
"newDocumentTitle": "New Document",
|
||
"dashboard": "Dashboard",
|
||
"deleteTable": "Delete",
|
||
"deleteTableConfirm": "Are you sure you want to delete \"{name}\"? This action cannot be undone.",
|
||
"renameTable": "Rename",
|
||
"newTableTitle": "New Table",
|
||
"searchPlaceholder": "Search items...",
|
||
"tables": "Tables",
|
||
"documents": "Documents",
|
||
"collapse": "Collapse sidebar",
|
||
"expand": "Expand sidebar",
|
||
"noResults": "No matching items",
|
||
"emptyTables": "No tables yet",
|
||
"emptyDocuments": "No documents yet",
|
||
"newSubPage": "New Sub Page",
|
||
"moveToRoot": "Move to Root"
|
||
},
|
||
"document": {
|
||
"placeholder": "Type / to open command menu...",
|
||
"untitled": "Untitled Document",
|
||
"titlePlaceholder": "Enter title",
|
||
"autoSaved": "Auto-saved",
|
||
"saving": "Saving...",
|
||
"modifiedToday": "Modified today",
|
||
"modifiedYesterday": "Modified yesterday",
|
||
"modified": " modified",
|
||
"unknownUser": "Unknown User",
|
||
"toc": "Table of Contents",
|
||
"export": "Export",
|
||
"exporting": "Exporting, please wait...",
|
||
"exportMarkdown": "Export Markdown",
|
||
"exportPdf": "Export PDF",
|
||
"exportWord": "Export Word",
|
||
"exportSuccess": "Export successful",
|
||
"exportFailed": "Export failed",
|
||
"moreActions": "More actions"
|
||
},
|
||
"table": {
|
||
"addRecord": "Add Record",
|
||
"addField": "Add Field",
|
||
"deleteRecord": "Delete Record",
|
||
"deleteField": "Delete Field",
|
||
"fieldName": "Field Name",
|
||
"fieldType": "Field Type",
|
||
"rowCount": "{count} records",
|
||
"selectedCount": "{count} selected",
|
||
"emptyTable": "Table is empty. Click to add the first record.",
|
||
"configField": "Configure Field",
|
||
"hideField": "Hide Field",
|
||
"sortAsc": "Sort Ascending",
|
||
"sortDesc": "Sort Descending",
|
||
"insertLeft": "Insert Left",
|
||
"insertRight": "Insert Right",
|
||
"expandRecord": "Expand Record",
|
||
"recordDetail": "Record Detail",
|
||
"batchDelete": "Batch Delete",
|
||
"selectAll": "Select All",
|
||
"noTitle": "(Untitled)",
|
||
"renameField": "Rename Field",
|
||
"duplicateField": "Duplicate Field",
|
||
"editField": "Edit Field",
|
||
"filterByField": "Filter by This Field",
|
||
"clearSort": "Clear Sort",
|
||
"fieldDescription": "Field Description",
|
||
"fieldOptions": "Options",
|
||
"maxRating": "Max Rating",
|
||
"numberFormat": "Number Format",
|
||
"numberFormatNumber": "Number",
|
||
"numberFormatCurrency": "Currency (¥)",
|
||
"numberFormatPercent": "Percent (%)",
|
||
"numberFormatYuan": "Yuan",
|
||
"precision": "Decimal Places",
|
||
"includeTime": "Include Time",
|
||
"currencySymbol": "Currency Symbol",
|
||
"formulaExpression": "Formula Expression",
|
||
"formulaResultType": "Result Type",
|
||
"fieldGroupBasic": "Basic Fields",
|
||
"fieldGroupAdvanced": "Advanced Fields",
|
||
"fieldGroupSystem": "System Fields",
|
||
"copyRecord": "Copy Record",
|
||
"insertAbove": "Insert Above",
|
||
"insertBelow": "Insert Below",
|
||
"deleteRecordConfirm": "Are you sure to delete this record?",
|
||
"copiedToClipboard": "Copied to clipboard",
|
||
"frozenField": "Freeze Up to This Field",
|
||
"unfreezeField": "Unfreeze",
|
||
"multipleSelect": "Allow Multiple",
|
||
"regionLevel": "Region Level",
|
||
"regionProvince": "Province",
|
||
"regionCity": "Province/City",
|
||
"regionDistrict": "Province/City/District",
|
||
"maxImageCount": "Max Image Count",
|
||
"currencyCNY": "¥ CNY",
|
||
"currencyUSD": "$ USD",
|
||
"currencyEUR": "€ EUR",
|
||
"currencyGBP": "£ GBP",
|
||
"currencyKRW": "₩ KRW",
|
||
"formulaPlaceholder": "e.g. {field1} + {field2}",
|
||
"keyboardShortcuts": "Keyboard Shortcuts",
|
||
"paste": "Paste",
|
||
"redo": "Redo",
|
||
"clearCell": "Clear Cell",
|
||
"editCell": "Edit Cell",
|
||
"cancelEdit": "Cancel Edit",
|
||
"navigate": "Navigate Cells",
|
||
"nextCell": "Next / Previous Cell",
|
||
"clearFilter": "Clear Filter for This Field"
|
||
},
|
||
"field": {
|
||
"text": "Text",
|
||
"number": "Number",
|
||
"singleSelect": "Single Select",
|
||
"multiSelect": "Multi Select",
|
||
"date": "Date",
|
||
"checkbox": "Checkbox",
|
||
"person": "Person",
|
||
"attachment": "Attachment",
|
||
"url": "URL",
|
||
"email": "Email",
|
||
"phone": "Phone",
|
||
"rating": "Rating",
|
||
"progress": "Progress",
|
||
"currency": "Currency",
|
||
"autoNumber": "Auto Number",
|
||
"location": "Location",
|
||
"createdTime": "Created Time",
|
||
"modifiedTime": "Modified Time",
|
||
"createdBy": "Created By",
|
||
"modifiedBy": "Modified By",
|
||
"formula": "Formula",
|
||
"richText": "Rich Text",
|
||
"user": "User",
|
||
"department": "Department",
|
||
"region": "Region",
|
||
"image": "Image",
|
||
"link": "Link",
|
||
"lookup": "Lookup",
|
||
"rollup": "Rollup"
|
||
},
|
||
"view": {
|
||
"grid": "Grid View",
|
||
"kanban": "Kanban View",
|
||
"gallery": "Gallery View",
|
||
"form": "Form View",
|
||
"addView": "Add View",
|
||
"deleteView": "Delete View",
|
||
"renameView": "Rename View",
|
||
"duplicateView": "Duplicate View",
|
||
"deleteViewConfirm": "Are you sure to delete view \"{name}\"?",
|
||
"calendar": "Calendar View",
|
||
"gantt": "Gantt View"
|
||
},
|
||
"toolbar": {
|
||
"filter": "Filter",
|
||
"sort": "Sort",
|
||
"group": "Group",
|
||
"hideFields": "Hide Fields",
|
||
"rowHeight": "Row Height",
|
||
"rowHeightShort": "Short",
|
||
"rowHeightMedium": "Medium",
|
||
"rowHeightTall": "Tall",
|
||
"rowHeightExtraTall": "Extra Tall",
|
||
"fieldVisibility": "Field Visibility",
|
||
"showAll": "Show All",
|
||
"hideAll": "Hide All",
|
||
"search": "Search",
|
||
"addFilter": "Add Filter",
|
||
"addSort": "Add Sort",
|
||
"addGroup": "Add Group",
|
||
"fields": "fields",
|
||
"undo": "Undo",
|
||
"copy": "Copy",
|
||
"zebra": "Zebra",
|
||
"export": "Export",
|
||
"exportCSV": "Export CSV",
|
||
"exportFailed": "Export failed",
|
||
"import": "Import",
|
||
"importCSV": "Import CSV",
|
||
"importSuccess": "Import succeeded",
|
||
"importFailed": "Import failed",
|
||
"conditionalFormat": "Conditional Format",
|
||
"noConditionalFormats": "No conditional format rules",
|
||
"addRule": "Add Rule",
|
||
"rule": "Rule",
|
||
"applyToRow": "Entire Row",
|
||
"bgColor": "Background",
|
||
"textColor": "Text Color",
|
||
"preview": "Preview",
|
||
"addRecord": "Add Record",
|
||
"resetData": "Reset Data",
|
||
"resetDataConfirm": "Are you sure you want to reset all data? This action cannot be undone.",
|
||
"confirmReset": "Confirm Reset",
|
||
"resetSampleData": "Reset Sample Data",
|
||
"exportExcel": "Export Excel",
|
||
"copiedRowCol": "Copied {rows} rows × {cols} columns",
|
||
"pastedRowCol": "Pasted {rows} rows × {cols} columns",
|
||
"collapseAll": "Collapse All",
|
||
"expandAll": "Expand All"
|
||
},
|
||
"filter": {
|
||
"equals": "Equals",
|
||
"notEquals": "Not Equals",
|
||
"contains": "Contains",
|
||
"notContains": "Not Contains",
|
||
"isEmpty": "Is Empty",
|
||
"isNotEmpty": "Is Not Empty",
|
||
"greaterThan": "Greater Than",
|
||
"lessThan": "Less Than",
|
||
"where": "Where",
|
||
"and": "And",
|
||
"or": "Or",
|
||
"noFilters": "No filters yet"
|
||
},
|
||
"kanban": {
|
||
"uncategorized": "Uncategorized",
|
||
"addCard": "Add Card",
|
||
"noGroupField": "Please select a group field",
|
||
"groupBy": "Group By",
|
||
"cardFields": "Card Fields",
|
||
"showFields": "Show Fields"
|
||
},
|
||
"gantt": {
|
||
"startField": "Start Date",
|
||
"endField": "End Date",
|
||
"taskName": "Task Name",
|
||
"noDateField": "Please add a date field first",
|
||
"zoomDay": "Day",
|
||
"zoomWeek": "Week",
|
||
"zoomMonth": "Month",
|
||
"durationDays": "{days} days",
|
||
"noDateCount": "{count} without date",
|
||
"todayMark": "Today",
|
||
"milestoneField": "Milestone Field",
|
||
"autoDetect": "Auto Detect",
|
||
"milestone": "Milestone",
|
||
"toggleDependencies": "Toggle Dependencies",
|
||
"toggleCriticalPath": "Toggle Critical Path",
|
||
"depType": "Dependency Type",
|
||
"depDesc_FS": "Finish-to-Start",
|
||
"depDesc_FF": "Finish-to-Finish",
|
||
"depDesc_SS": "Start-to-Start",
|
||
"depDesc_SF": "Start-to-Finish",
|
||
"deleteDep": "Delete Dependency",
|
||
"dragToMove": "Drag to move task",
|
||
"dragToResize": "Drag to resize duration"
|
||
},
|
||
"calendar": {
|
||
"today": "Today",
|
||
"dateField": "Start Date",
|
||
"endDateField": "End Date",
|
||
"noDateField": "Please add a date field first",
|
||
"none": "None",
|
||
"more": "more",
|
||
"allDay": "All Day",
|
||
"modeMonth": "Month",
|
||
"modeWeek": "Week",
|
||
"modeDay": "Day",
|
||
"weekSun": "Sun",
|
||
"weekMon": "Mon",
|
||
"weekTue": "Tue",
|
||
"weekWed": "Wed",
|
||
"weekThu": "Thu",
|
||
"weekFri": "Fri",
|
||
"weekSat": "Sat"
|
||
},
|
||
"gallery": {
|
||
"title": "Gallery View",
|
||
"coverField": "Cover Field",
|
||
"noCover": "No Cover",
|
||
"yes": "Yes",
|
||
"no": "No"
|
||
},
|
||
"form": {
|
||
"title": "Form View",
|
||
"formTitle": "Data Collection Form",
|
||
"formDescription": "Please fill in the following information",
|
||
"submit": "Submit",
|
||
"submitSuccess": "Submitted successfully!",
|
||
"required": "Required",
|
||
"fieldRequired": "{name} is required",
|
||
"invalidEmail": "Please enter a valid email address",
|
||
"invalidPhone": "Please enter a valid phone number",
|
||
"invalidUrl": "Please enter a valid URL",
|
||
"checkFormErrors": "Please check the form for errors"
|
||
},
|
||
"permission": {
|
||
"title": "Permissions",
|
||
"tabCollaborators": "Collaborators",
|
||
"tabFieldPerm": "Field Permissions",
|
||
"tabRowPerm": "Row Permissions",
|
||
"searchUser": "Search users",
|
||
"invite": "Invite",
|
||
"addSuccess": "Added successfully",
|
||
"addFailed": "Failed to add",
|
||
"updateFailed": "Failed to update",
|
||
"removeConfirm": "Are you sure you want to remove {name}?",
|
||
"removeCollaborator": "Remove Collaborator",
|
||
"removed": "Removed",
|
||
"roleOwner": "Owner",
|
||
"roleManager": "Manager",
|
||
"roleEditor": "Editor",
|
||
"roleViewer": "Viewer",
|
||
"roleCustom": "Custom",
|
||
"accessWrite": "Editable",
|
||
"accessRead": "Visible",
|
||
"accessHidden": "Hidden",
|
||
"fieldPermSaved": "Field permissions saved",
|
||
"saveFailed": "Failed to save",
|
||
"rowPermUpdated": "Row permissions updated",
|
||
"fieldPermTip": "Click field permission labels to cycle access levels (Editable / Visible / Hidden). Click \"Save\" to apply.",
|
||
"rowPermTip": "Row permissions control which records each role can view and edit.",
|
||
"viewRecords": "Can view records:",
|
||
"editRecords": "Can edit records:",
|
||
"allRecords": "All records",
|
||
"creatorOnly": "Own records only",
|
||
"noCollaborators": "No collaborators yet",
|
||
"noFieldPerm": "Not configured. Click \"Save\" to initialize.",
|
||
"subjectUser": "User",
|
||
"subjectDept": "Department",
|
||
"subjectRole": "Role",
|
||
"documentScopeHint": "Documents have no column or row dimension. Access is controlled by collaborator roles and capabilities (e.g. edit content, export). Field and row permissions do not apply."
|
||
},
|
||
"cellRenderer": {
|
||
"today": "Today",
|
||
"yesterday": "Yesterday",
|
||
"tomorrow": "Tomorrow",
|
||
"yuan": "Yuan"
|
||
},
|
||
"link": {
|
||
"targetTable": "Target Table",
|
||
"selectTable": "Select target table",
|
||
"linkField": "Link Field",
|
||
"selectLinkField": "Select link field",
|
||
"lookupField": "Lookup Field",
|
||
"rollupField": "Rollup Field",
|
||
"selectField": "Select field",
|
||
"aggregation": "Aggregation",
|
||
"aggCount": "Count (COUNT)",
|
||
"aggCounta": "Non-empty Count (COUNTA)",
|
||
"aggSum": "Sum (SUM)",
|
||
"aggAvg": "Average (AVG)",
|
||
"aggMin": "Minimum (MIN)",
|
||
"aggMax": "Maximum (MAX)",
|
||
"searchPlaceholder": "Search records..."
|
||
},
|
||
"dashboard": {
|
||
"title": "Dashboard",
|
||
"addChart": "Add Chart",
|
||
"barChart": "Bar Chart",
|
||
"lineChart": "Line Chart",
|
||
"pieChart": "Pie Chart",
|
||
"statNumber": "Stat Number",
|
||
"totalRecords": "Total Records",
|
||
"sum": "Sum",
|
||
"average": "Average",
|
||
"max": "Max",
|
||
"min": "Min",
|
||
"empty": "Empty",
|
||
"filled": "Filled",
|
||
"percentEmpty": "% Empty",
|
||
"percentFilled": "% Filled",
|
||
"completed": "Completed",
|
||
"completionRate": "Completion Rate",
|
||
"statusDist": "Status Distribution",
|
||
"priorityDist": "Priority Distribution",
|
||
"progressDist": "Progress Distribution",
|
||
"distribution": "Distribution",
|
||
"noSelectField": "Add a single-select field first",
|
||
"noNumberField": "Add a number / progress / rating field first",
|
||
"noCheckbox": "Add a checkbox field first"
|
||
},
|
||
"summary": {
|
||
"sum": "Sum",
|
||
"avg": "Average",
|
||
"min": "Min",
|
||
"max": "Max",
|
||
"count": "Count",
|
||
"counta": "Count Non-empty",
|
||
"countEmpty": "Count Empty",
|
||
"percentEmpty": "% Empty",
|
||
"percentFilled": "% Filled",
|
||
"clickToAdd": "Summary",
|
||
"none": "None",
|
||
"groupSubtotal": "Subtotal"
|
||
},
|
||
"formula": {
|
||
"availableFields": "Available Fields (click to insert)",
|
||
"placeholder": "Enter formula, e.g. IF({Status}=\"Done\", {Amount} * 1.1, {Amount})",
|
||
"functionReference": "Function Reference",
|
||
"resultText": "Text",
|
||
"resultNumber": "Number",
|
||
"resultDate": "Date",
|
||
"resultBoolean": "Boolean"
|
||
},
|
||
"validation": {
|
||
"title": "Validation",
|
||
"min": "Min Value",
|
||
"max": "Max Value",
|
||
"minLength": "Min Length",
|
||
"maxLength": "Max Length",
|
||
"pattern": "Regex Pattern",
|
||
"patternPlaceholder": "e.g. ^[A-Z]{2}\\d{4}$",
|
||
"unique": "Must be unique",
|
||
"customMessage": "Custom Error Message",
|
||
"customMessagePlaceholder": "Message shown on validation failure",
|
||
"noLimit": "No limit",
|
||
"required": "\"{name}\" is required",
|
||
"minError": "\"{name}\" must be at least {min}",
|
||
"maxError": "\"{name}\" must be at most {max}",
|
||
"minLengthError": "\"{name}\" must be at least {min} characters",
|
||
"maxLengthError": "\"{name}\" must be at most {max} characters",
|
||
"patternError": "\"{name}\" format is invalid",
|
||
"uniqueError": "\"{name}\" value already exists"
|
||
},
|
||
"comment": {
|
||
"title": "Comments",
|
||
"placeholder": "Write a comment, @ to mention...",
|
||
"send": "Send",
|
||
"reply": "Reply",
|
||
"edit": "Edit",
|
||
"delete": "Delete",
|
||
"deleteConfirm": "Delete this comment?",
|
||
"noComments": "No comments yet",
|
||
"mentionHint": "Type @ to search users",
|
||
"justNow": "Just now",
|
||
"minutesAgo": "{n} min ago",
|
||
"hoursAgo": "{n} hr ago",
|
||
"daysAgo": "{n} days ago",
|
||
"editComment": "Edit comment",
|
||
"cancelEdit": "Cancel",
|
||
"saveEdit": "Save",
|
||
"replyTo": "Reply to {name}",
|
||
"commentCount": "{count} comments",
|
||
"postFailed": "Failed to post comment",
|
||
"updateFailed": "Failed to update comment",
|
||
"deleteFailed": "Failed to delete comment"
|
||
},
|
||
"mention": {
|
||
"noResults": "No matching users found",
|
||
"navigate": "navigate",
|
||
"select": "select",
|
||
"close": "close"
|
||
},
|
||
"trash": {
|
||
"title": "Trash",
|
||
"empty": "Trash is empty",
|
||
"restore": "Restore",
|
||
"permanentDelete": "Permanently Delete",
|
||
"permanentDeleteConfirm": "Are you sure you want to permanently delete this record? This action cannot be undone.",
|
||
"emptyTrash": "Empty Trash",
|
||
"emptyTrashConfirm": "Are you sure you want to empty the trash? This action cannot be undone.",
|
||
"restoreSuccess": "Restored successfully",
|
||
"deleteSuccess": "Permanently deleted",
|
||
"emptySuccess": "Trash emptied",
|
||
"deletedAt": "Deleted at",
|
||
"recordCount": "{count} records",
|
||
"batchRestore": "Batch Restore",
|
||
"selectedCount": "{count} selected"
|
||
},
|
||
"version": {
|
||
"title": "Version History",
|
||
"empty": "No version records",
|
||
"createSnapshot": "Save Snapshot",
|
||
"manualSnapshot": "Manual save",
|
||
"createSuccess": "Version snapshot saved",
|
||
"createFailed": "Failed to save version snapshot",
|
||
"preview": "Preview Version",
|
||
"restore": "Restore This Version",
|
||
"restoreConfirm": "Restore Version",
|
||
"restoreConfirmMsg": "Are you sure you want to restore to version v{version}? Current content will be saved as a new version.",
|
||
"restoreSuccess": "Version restored",
|
||
"restoreFailed": "Failed to restore version",
|
||
"deleteConfirm": "Delete Version",
|
||
"deleteConfirmMsg": "Are you sure you want to delete this version? This action cannot be undone.",
|
||
"loadMore": "Load More"
|
||
},
|
||
"template": {
|
||
"selectTitle": "Select Document Template",
|
||
"blankDocument": "Blank Document",
|
||
"fromTemplate": "From Template",
|
||
"searchPlaceholder": "Search templates...",
|
||
"allCategories": "All",
|
||
"system": "System",
|
||
"empty": "No templates",
|
||
"loadFailed": "Failed to load template",
|
||
"usedCount": "Used {count} times",
|
||
"saveAsTemplate": "Save as Template",
|
||
"templateSuffix": "Template",
|
||
"name": "Template Name",
|
||
"namePlaceholder": "Enter template name",
|
||
"nameRequired": "Please enter a template name",
|
||
"description": "Description",
|
||
"descriptionPlaceholder": "Enter template description (optional)",
|
||
"categoryLabel": "Category",
|
||
"categoryPlaceholder": "Enter category",
|
||
"save": "Save",
|
||
"saveSuccess": "Template saved successfully",
|
||
"saveFailed": "Failed to save template",
|
||
"creating": "Creating, please wait...",
|
||
"category": {
|
||
"custom": "Custom",
|
||
"system": "System Templates",
|
||
"meeting": "Meeting",
|
||
"report": "Report",
|
||
"plan": "Plan",
|
||
"note": "Note"
|
||
}
|
||
}
|
||
}
|