export default { tabs: { info: 'Source Info', nodes: 'Data Nodes', viewData: 'View Data', baseInfo: 'Basic Info', ruleExpr: 'Rule Expression', reqParams: 'Request Params', sourceConfig: 'Source Config', indicator: { dialogTitleAdd: 'Add Calculation Indicator Model', dialogTitleEdit: 'Edit Calculation Indicator Model', labels: { key: 'Indicator Key', name: 'Indicator Name', description: 'Description', formula: 'Formula', dataType: 'Data Type', accuracy: 'Accuracy', operators: 'Operators', deviceAttr: 'Device Attribute', currentFormula: 'Current Formula', editFormula: 'Edit', }, placeholders: { inputKey: 'Enter indicator key', inputName: 'Enter indicator name', inputDescription: 'Enter description', inputFormula: 'Enter formula', selectDataType: 'Select data type', inputAccuracy: 'Enter accuracy', }, types: { int: 'int (integer)', long: 'long (long integer)', float: 'float (single precision)', double: 'double (double precision)', }, }, }, labels: { sourceNameTitle: 'Source Name:', sourceStatus: 'Status', sourceKey: 'Source Key', sourceName: 'Source Name', sourceDesc: 'Source Description', sourceFrom: 'Source From', deviceKey: 'Device Key', productKey: 'Product Key', dbType: 'Source From', host: 'Host', port: 'Port', user: 'Username', password: 'Password', dbName: 'Database Name', tableName: 'Table Name', pk: 'Primary Key', num: 'Batch Size', cronExpression: 'Cron Expression', expression: 'Expression', param: 'Param', method: 'Method', url: 'URL', interval: 'Update Interval', paramType: 'Param Type', paramTitle: 'Param Title', paramKey: 'Param Key', paramValue: 'Param Value', }, columns: { id: 'ID', key: 'Key', name: 'Name', dataType: 'Data Type', value: 'Value Items', createdAt: 'Created At', action: 'Actions', sourceId: 'ID', from: 'Source Type', }, actions: { publish: 'Publish', disable: 'Disable', add: 'Add', edit: 'Edit', delete: 'Delete', detail: 'Detail', records: 'Records', search: 'Search', createSource: 'New Source', batchDelete: 'Batch Delete', copy: 'Copy', }, status: { published: 'Published', unpublished: 'Unpublished', all: 'All', }, options: { all: 'All', api: 'API Import', db: 'Database', file: 'File', device: 'Device', yes: 'Yes', no: 'No', }, messages: { opSuccess: 'Operation succeeded', deleteConfirmSelected: 'Are you sure to delete selected data?', deleteNodeConfirm: 'This will permanently delete node: "{name}". Continue?', pleaseSelectToDelete: 'Please select data to delete.', tip: 'Tip', confirm: 'Confirm', cancel: 'Cancel', deleteSuccess: 'Deleted successfully', copyConfirm: 'Confirm to copy this data?', copySuccess: 'Copied successfully', batchDeleteConfirm: 'Confirm to batch delete these data?', deleteRowConfirm: 'This will delete: "{name}". Continue?', }, placeholders: { input: 'Please enter', sourceType: 'Source Type', }, tags: { labels: { entity: 'Tag', name: 'Tag Name', code: 'English Code', parent: 'Parent Tag', color: 'Tag Color', description: 'Description', }, columns: { name: 'Tag Name', code: 'English Code', color: 'Color', description: 'Description', createdAt: 'Created At', action: 'Actions', }, actions: { search: 'Search', createTag: 'New Tag', add: 'Add', edit: 'Edit', delete: 'Delete', cancel: 'Cancel', confirm: 'Confirm', }, options: { colors: { red: 'Red', green: 'Green', blue: 'Blue', yellow: 'Yellow', purple: 'Purple', pink: 'Pink', indigo: 'Indigo', gray: 'Gray', orange: 'Orange', cyan: 'Cyan', }, }, placeholders: { searchNameOrCode: 'Search tag name or English code', inputName: 'Please enter tag name', inputCode: 'Please enter English code', selectParent: 'Please select parent tag', selectColor: 'Please select tag color', inputDesc: 'Please enter description', }, messages: { tip: 'Tip', deleteRowConfirm: 'This will permanently delete the tag: "{name}". Continue?', deleteSuccess: 'Deleted successfully', addSuccess: 'Added successfully', editSuccess: 'Edited successfully', required: ' is required', }, }, modeling: { labels: { modelKey: 'Model Key', tableName: 'Table Name', modelName: 'Model Name', modelType: 'Model Type', desc: 'Description', fieldTitle: 'Field Title', fieldName: 'Field Name', dataSourceName: 'Data Source Name', defaultValue: 'Default Value', remark: 'Remark', indicatorKey: 'Indicator Key', indicatorName: 'Indicator Name', formula: 'Formula', dataType: 'Data Type', second: 'Second', minute: 'Minute', hour: 'Hour', day: 'Day', custom: 'Custom', method: 'Method', isPk: 'Primary Key', isSorting: 'Sortable', sortOrder: 'Sort Order', orderDesc: 'Descending', orderAsc: 'Ascending', }, methods: { default: 'Default', max: 'Max', min: 'Min', avg: 'Average', sum: 'Sum', }, types: { int: 'int (integer)', long: 'long (long integer)', float: 'float (single precision)', double: 'double (double precision)', string: 'string', boolean: 'boolean', date: 'date', }, fieldNode: { dialogTitleAdd: 'Add Field Node', dialogTitleEdit: 'Edit Field Node', }, columns: { id: 'ID', name: 'Model Name', type: 'Type', typeName: 'Type', desc: 'Description', status: 'Status', createdAt: 'Created At', action: 'Actions', }, placeholders: { input: 'Please enter', select: 'Please select', inputFieldTitle: 'Please enter field title', inputFieldName: 'Please enter field name', inputIndicatorKey: 'Please enter indicator key', }, actions: { search: 'Search', reset: 'Reset', createModel: 'New Model', delete: 'Delete', edit: 'Edit', copy: 'Copy', fieldManage: 'Field Manage', dataRecord: 'Data Records', aggregateSetting: 'Aggregation Settings', calcIndicators: 'Calculation Indicators', addFieldNode: 'Add Field Node', addCalcIndicator: 'New Calculation Indicator Model', publish: 'Publish', unpublish: 'Unpublish', confirm: 'Confirm', cancel: 'Cancel', set: 'Set', }, status: { published: 'Published', unpublished: 'Unpublished', }, messages: { tip: 'Tips', selectToDelete: 'Please select the data to delete.', confirmBatchDelete: 'Are you sure you want to delete the selected data?', deleteModelConfirm: 'This will permanently delete the model: "{name}". Continue?', deleteNodeConfirm: 'This will permanently delete the node: "{name}". Continue?', deleteSuccess: 'Deleted successfully', copyConfirm: 'Confirm to copy?', copySuccess: 'Copied successfully', operateSuccess: 'Operation succeeded', confirmPublish: 'Confirm to {status}?', fieldRequired: '{field} is required', lettersOnly: 'Letters only', }, aggregate: { dialogTitle: 'Set Aggregation', labels: { groupNode: 'Group Node', timeWindowNode: 'Time Window Node', duration: 'Duration', unit: 'Time Unit', }, placeholders: { selectGroupNode: 'Select group node', selectTimeWindowNode: 'Select time window node', inputDuration: 'Enter duration', selectUnit: 'Select unit', }, units: { 1: 'Second', 2: 'Minute', 3: 'Hour', 4: 'Day', }, }, units: { 1: 'Second', 2: 'Minute', 3: 'Hour', 4: 'Day', }, indicator: { key: 'Indicator Key', name: 'Indicator Name', formula: 'Formula', }, relation: { dialogTitle: 'Set Main Source and Join Fields', labels: { source: 'Data Source', sourceNode: 'Source Node', }, placeholders: { selectSource: 'Please select data source', selectSourceNode: 'Please select source node', }, }, edit: { dialogTitleAdd: 'Add Model', dialogTitleEdit: 'Edit Model', labels: { scheduleRequest: 'Scheduled Request', busiTypes: 'Unit Types', }, cron: { selectTitle: 'Select Cron Rule', }, }, }, indicator: { actions: { search: 'Search', add: 'Add', export: 'Export', publish: 'Publish', unpublish: 'Unpublish', detail: 'Detail', data: 'Data', edit: 'Edit', delete: 'Delete', save: 'Save', cancel: 'Cancel', filter: 'Filter', }, status: { all: 'All', published: 'Published', unpublished: 'Unpublished', }, placeholders: { searchByNameOrCodeOrDesc: 'Enter name, code or description', searchValue: 'Enter indicator value or raw value', dateRangeSeparator: 'to', startTime: 'Start Time', endTime: 'End Time', allDimensions: 'All Dimensions', selectDate: 'Select date', selectDimensionValue: 'Select dimension value', inputDimensionValue: 'Enter dimension value', }, columns: { name: 'Name', code: 'Code', description: 'Description', type: 'Type', unit: 'Unit', formula: 'Formula', status: 'Status', createdAt: 'Created At', createdBy: 'Created By', action: 'Actions', time: 'Time', value: 'Indicator Value', maxValue: 'Max', minValue: 'Min', avgValue: 'Average', sumValue: 'Sum', countValue: 'Count', }, messages: { selectOrInputDimensionValue: 'Please select or enter dimension value', confirmPublish: 'Confirm to {status}?', opSuccess: 'Operation succeeded', }, detail: { title: 'Indicator Detail', close: 'Close', unitItems: 'items', labels: { name: 'Indicator Name', description: 'Indicator Description', type: 'Indicator Type', unit: 'Unit', formula: 'Formula', dimensionCount: 'Dimension Count', status: 'Status', createdAt: 'Created At', createdBy: 'Created By', }, }, data: { title: 'Indicator Data', buttons: { filter: 'Filter', export: 'Export', }, exportFileNameSuffix: 'Indicator Data Export.xlsx', }, list: { confirmDelete: 'This will permanently delete indicator: {name} ({code}). Continue?', tip: 'Tip', exportFileName: 'Indicator List Export.xlsx', }, edit: { dialogTitleAdd: 'Create Indicator', dialogTitleEdit: 'Edit Indicator', tabs: { base: 'Basic Info', formula: 'Formula', dimension: 'Dimensions', }, labels: { code: 'Indicator Code', name: 'Indicator Name', type: 'Indicator Type', unit: 'Unit', dataTemplateKey: 'Modeling KEY', computeStrategy: 'Compute Strategy', calculationMode: 'Calculation Mode', calculationSchedule: 'Schedule', description: 'Indicator Description', formula: 'Formula', formulaParams: 'Formula Params', dimensions: 'Dimensions', dimensionName: 'Dimension Name', dimensionCode: 'Dimension Code', dimensionValueType: 'Value Type', dimensionDescription: 'Dimension Description', }, placeholders: { inputCode: 'Enter unique code, e.g. IND001', inputName: 'Enter indicator name', selectType: 'Select indicator type', inputUnit: 'Enter unit (e.g. mg/L, %)', inputDataTemplateKey: 'Enter data modeling KEY', selectComputeStrategy: 'Select compute strategy', inputSchedule: 'Enter cron or expression', inputDescription: 'Enter indicator description', inputFormula: 'Enter formula, e.g. COD = (V1 - V2) × C × 8 × 1000 / V', inputParamName: 'Enter parameter name', inputParamCode: 'Enter parameter code', inputParamValue: 'Enter parameter value', inputParamDesc: 'Enter parameter description', inputDimName: 'Enter dimension name', inputDimCode: 'Enter dimension code, e.g. time, location', selectDimValueType: 'Select value type', inputDimDesc: 'Enter dimension description', }, calculationModes: { demand: 'On-demand', schedule: 'Scheduled', }, computeStrategies: { aggregation: 'Aggregation', accumulation: 'Accumulation', mathematical: 'Mathematical', }, valueTypes: { int: 'Integer', long: 'Long', double: 'Double', text: 'String', date: 'Date', string: 'String', number: 'Number', boolean: 'Boolean', datetime: 'Datetime', }, table: { index: 'No.', paramName: 'Param Name', paramCode: 'Param Code', paramValue: 'Param Value', paramDesc: 'Param Description', action: 'Action', }, emptyTips: { params: 'No parameters yet, please add formula parameters', dimensions: 'No dimensions yet, please add analysis dimensions', }, buttons: { addParam: 'Add Param', addDimension: 'Add Dimension', cancel: 'Cancel', save: 'Save', edit: 'Edit', delete: 'Delete', add: 'Add', }, messages: { saved: 'Saved successfully', }, dialogs: { addParam: 'Add Parameter', addDimension: 'Add Dimension', }, }, }, };