feat: Update UI schema help texts to descriptions for consistency; add new application event logs and update system state configuration

This commit is contained in:
Miguel 2025-08-27 12:02:57 +02:00
parent 29b6e92284
commit cda40ce0ab
13 changed files with 74 additions and 62 deletions

View File

@ -1902,8 +1902,22 @@
"read_time": 0.02987360954284668,
"variables_count": 4
}
},
{
"timestamp": "2025-08-27T11:20:48.361932",
"level": "info",
"event_type": "application_started",
"message": "Application initialization completed successfully",
"details": {}
},
{
"timestamp": "2025-08-27T11:20:49.372928",
"level": "info",
"event_type": "application_started",
"message": "Application initialization completed successfully",
"details": {}
}
],
"last_updated": "2025-08-27T09:27:47.716461",
"total_entries": 93
"last_updated": "2025-08-27T11:20:49.372928",
"total_entries": 95
}

View File

@ -19,33 +19,33 @@
]
],
"id": {
"ui:help": "Unique ID for this dataset (alphanumeric, underscore, dash)",
"ui:description": "Unique ID for this dataset (alphanumeric, underscore, dash)",
"ui:placeholder": "e.g., DAR, Fast"
},
"name": {
"ui:help": "Human-readable name for this dataset",
"ui:description": "Human-readable name for this dataset",
"ui:placeholder": "e.g., Temperature Sensors, Production Line A"
},
"prefix": {
"ui:help": "Short prefix for CSV filenames (alphanumeric, underscore, dash only)",
"ui:description": "Short prefix for CSV filenames (alphanumeric, underscore, dash only)",
"ui:placeholder": "e.g., temp, line_a, sensors"
},
"enabled": {
"ui:help": "When enabled, this dataset will be actively sampled and recorded",
"ui:description": "When enabled, this dataset will be actively sampled and recorded",
"ui:widget": "switch"
},
"sampling_interval": {
"ui:help": "Custom sampling interval in seconds (0.0110). Leave empty to use the global PLC sampling interval.",
"ui:description": "Custom sampling interval in seconds (0.0110). Leave empty to use the global PLC sampling interval.",
"ui:placeholder": "Leave empty to use global interval",
"ui:widget": "updown",
"ui:options": { "step": 0.01, "min": 0.01, "max": 10 }
"ui:widget": "updown",
"ui:options": { "step": 0.01, "min": 0.01, "max": 10 }
},
"use_optimized_reading": {
"ui:help": "📊 Enable optimized batch reading for better performance. Disable if experiencing compatibility issues with older PLC firmware.",
"ui:description": "📊 Enable optimized batch reading for better performance. Disable if experiencing compatibility issues with older PLC firmware.",
"ui:widget": "switch"
},
"created": {
"ui:help": "Timestamp when this dataset was created",
"ui:description": "Timestamp when this dataset was created",
"ui:readonly": true,
"ui:widget": "text"
}

View File

@ -14,11 +14,10 @@
"dataset_id": {
"ui:widget": "text",
"ui:placeholder": "Enter unique dataset identifier",
"ui:help": "🆔 Unique identifier for this dataset (must match existing dataset)"
"ui:description": "🆔 Unique identifier for this dataset (must match existing dataset)"
},
"variables": {
"ui:description": "🔧 PLC Variable Definitions",
"ui:help": "Define PLC memory locations, data types, and properties for each variable",
"ui:description": "🔧 Define PLC memory locations, data types, and properties for each variable",
"ui:options": {
"addable": true,
"orderable": true,
@ -82,7 +81,7 @@
],
"configType": {
"ui:widget": "select",
"ui:help": "Choose between manual configuration or symbol-based setup",
"ui:description": "Choose between manual configuration or symbol-based setup",
"ui:options": {
"enumOptions": [
{
@ -99,16 +98,16 @@
"name": {
"ui:widget": "text",
"ui:placeholder": "Variable name",
"ui:help": "📝 Human-readable name for this variable"
"ui:description": "📝 Human-readable name for this variable"
},
"symbol": {
"ui:widget": "dataset-variable-symbol",
"ui:placeholder": "Select a PLC symbol...",
"ui:help": "🔍 Search and select a symbol from the loaded ASC file"
"ui:description": "🔍 Search and select a symbol from the loaded ASC file"
},
"area": {
"ui:widget": "select",
"ui:help": "PLC memory area (DB=DataBlock, MW=MemoryWord, etc.)",
"ui:description": "PLC memory area (DB=DataBlock, MW=MemoryWord, etc.)",
"ui:options": {
"enumOptions": [
{
@ -156,22 +155,20 @@
},
"db": {
"ui:widget": "updown",
"ui:help": "⚠️ Data Block number (only required for DB area - will be ignored for other areas like PE, PA, MW, etc.)",
"ui:placeholder": "1011",
"ui:description": "🗃️ This field is only used when Area = 'DB (Data Block)'"
"ui:description": "⚠️ Data Block number (only required for DB area - will be ignored for other areas like PE, PA, MW, etc.)",
"ui:placeholder": "1011"
},
"offset": {
"ui:widget": "updown",
"ui:help": "Byte offset within the memory area"
"ui:description": "Byte offset within the memory area"
},
"bit": {
"ui:widget": "updown",
"ui:help": "⚠️ Bit position (0-7) - only required for BOOL data type, will be ignored for other types",
"ui:description": "✅ This field is only used when Type = 'BOOL (1-bit boolean)'"
"ui:description": "⚠️ Bit position (0-7) - only required for BOOL data type, will be ignored for other types"
},
"type": {
"ui:widget": "select",
"ui:help": "PLC data type",
"ui:description": "PLC data type",
"ui:options": {
"enumOptions": [
{
@ -223,7 +220,7 @@
},
"streaming": {
"ui:widget": "switch",
"ui:help": "📡 Enable real-time streaming to PlotJuggler for visualization"
"ui:description": "📡 Enable real-time streaming to PlotJuggler for visualization"
}
}
}

View File

@ -20,7 +20,7 @@
"mode": "directory",
"title": "Select Records Directory"
},
"ui:help": "💾 Directory for CSV files. Relative paths based on app directory, absolute paths (C:\\folder) used as-is."
"ui:description": "💾 Directory for CSV files. Relative paths based on app directory, absolute paths (C:\\folder) used as-is."
},
"rotation_enabled": {
"ui:column": 3,
@ -82,7 +82,7 @@
"title": "Select ASC Symbol File",
"filetypes": [["ASC Files", "*.asc"], ["All Files", "*.*"]]
},
"ui:help": "📁 Select the ASC symbol file from TIA Portal export. Use Load Symbols button to process."
"ui:description": "📁 Select the ASC symbol file from TIA Portal export. Use Load Symbols button to process."
},
"ui:column": 12,
"ui:layout": [
@ -125,7 +125,7 @@
},
"sampling_interval": {
"ui:column": 4,
"ui:help": "⏱️ Time interval between UDP data transmissions for real-time streaming",
"ui:description": "⏱️ Time interval between UDP data transmissions for real-time streaming",
"ui:widget": "updown"
},
"ui:column": 12,

View File

@ -89,61 +89,61 @@
"id": {
"ui:widget": "text",
"ui:placeholder": "plot_1",
"ui:help": "🆔 Unique identifier for this plot"
"ui:description": "🆔 Unique identifier for this plot"
},
"name": {
"ui:widget": "text",
"ui:placeholder": "My Plot",
"ui:help": "📊 Human-readable name for the plot"
"ui:description": "📊 Human-readable name for the plot"
},
"session_id": {
"ui:widget": "text",
"ui:placeholder": "plot_1",
"ui:help": "🔗 Session identifier (usually same as ID)"
"ui:description": "🔗 Session identifier (usually same as ID)"
},
"time_window": {
"ui:widget": "updown",
"ui:help": "⏱️ Time window in seconds (5-3600)"
"ui:description": "⏱️ Time window in seconds (5-3600)"
},
"y_min": {
"ui:widget": "updown",
"ui:help": "📉 Minimum Y axis value (leave empty for auto)"
"ui:description": "📉 Minimum Y axis value (leave empty for auto)"
},
"y_max": {
"ui:widget": "updown",
"ui:help": "📈 Maximum Y axis value (leave empty for auto)"
"ui:description": "📈 Maximum Y axis value (leave empty for auto)"
},
"trigger_variable": {
"ui:widget": "text",
"ui:help": "🎯 Variable name to use as trigger (optional)"
"ui:description": "🎯 Variable name to use as trigger (optional)"
},
"trigger_enabled": {
"ui:widget": "switch",
"ui:help": "✅ Enable trigger-based recording"
"ui:description": "✅ Enable trigger-based recording"
},
"trigger_on_true": {
"ui:widget": "switch",
"ui:help": "🔄 Trigger when variable becomes true (vs false)"
"ui:description": "🔄 Trigger when variable becomes true (vs false)"
},
"line_tension": {
"ui:widget": "updown",
"ui:help": "📈 Line smoothness: 0=straight lines, 0.4=smooth curves"
"ui:description": "📈 Line smoothness: 0=straight lines, 0.4=smooth curves"
},
"stepped": {
"ui:widget": "switch",
"ui:help": "📊 Enable stepped line style instead of curves"
"ui:description": "📊 Enable stepped line style instead of curves"
},
"stacked": {
"ui:widget": "switch",
"ui:help": "📚 Enable stacked Y-axes for multi-axis visualization"
"ui:description": "📚 Enable stacked Y-axes for multi-axis visualization"
},
"point_radius": {
"ui:widget": "updown",
"ui:help": "🔴 Size of data points (0-10)"
"ui:description": "🔴 Size of data points (0-10)"
},
"point_hover_radius": {
"ui:widget": "updown",
"ui:help": "🎯 Size of points when hovering (0-15)"
"ui:description": "🎯 Size of points when hovering (0-15)"
}
}
},

View File

@ -14,11 +14,10 @@
"plot_id": {
"ui:widget": "text",
"ui:placeholder": "Enter unique plot identifier",
"ui:help": "🆔 Unique identifier for this plot session (must match existing plot)"
"ui:description": "🆔 Unique identifier for this plot session (must match existing plot)"
},
"variables": {
"ui:description": "🎨 Plot Variable Configuration",
"ui:help": "Configure colors and display settings for each variable in the plot",
"ui:description": "🎨 Configure colors and display settings for each variable in the plot",
"ui:options": {
"addable": true,
"orderable": true,
@ -64,16 +63,16 @@
"variable_name": {
"ui:widget": "variableSelector",
"ui:placeholder": "Search and select variable from datasets...",
"ui:help": "🔍 Search and select a variable from the configured datasets (includes live values and metadata)"
"ui:description": "🔍 Search and select a variable from the configured datasets (includes live values and metadata)"
},
"label": {
"ui:widget": "text",
"ui:placeholder": "Chart legend label...",
"ui:help": "📊 Label shown in the plot legend for this variable"
"ui:description": "📊 Label shown in the plot legend for this variable"
},
"color": {
"ui:widget": "color",
"ui:help": "🎨 Select the color for this variable in the plot",
"ui:description": "🎨 Select the color for this variable in the plot",
"ui:placeholder": "#3498db",
"ui:options": {
"presetColors": [
@ -94,15 +93,15 @@
},
"line_width": {
"ui:widget": "updown",
"ui:help": "📏 Width of the line in the plot (1-10 pixels)"
"ui:description": "📏 Width of the line in the plot (1-10 pixels)"
},
"y_axis": {
"ui:widget": "select",
"ui:help": "📊 Which Y-axis to use for this variable (left or right)"
"ui:description": "📊 Which Y-axis to use for this variable (left or right)"
},
"enabled": {
"ui:widget": "switch",
"ui:help": "📊 Enable this variable to be displayed in the real-time plot"
"ui:description": "📊 Enable this variable to be displayed in the real-time plot"
}
}
}

View File

@ -10,6 +10,7 @@
},
"dependencies": {
"@chakra-ui/react": "^2.8.2",
"@chakra-ui/theme-tools": "^2.2.6",
"@emotion/react": "^11.13.0",
"@emotion/styled": "^11.13.0",
"@rjsf/chakra-ui": "^5.24.12",

View File

@ -1140,30 +1140,30 @@ export default function PlotManager() {
variable_name: {
"ui:widget": "variableSelector",
"ui:placeholder": "Search and select variable from datasets...",
"ui:help": "🔍 Search and select a variable from the configured datasets (includes live values and metadata)"
"ui:description": "🔍 Search and select a variable from the configured datasets (includes live values and metadata)"
},
label: {
"ui:widget": "text",
"ui:placeholder": "Chart legend label...",
"ui:help": "📊 Label shown in the plot legend for this variable"
"ui:description": "📊 Label shown in the plot legend for this variable"
},
color: {
"ui:widget": "color",
"ui:help": "🎨 Select the color for this variable in the plot",
"ui:description": "🎨 Select the color for this variable in the plot",
"ui:placeholder": "#3498db"
},
line_width: {
"ui:widget": "updown",
"ui:help": "📏 Thickness of the line in the plot (1-10)",
"ui:description": "📏 Thickness of the line in the plot (1-10)",
"ui:options": { "step": 1, "min": 1, "max": 10 }
},
y_axis: {
"ui:widget": "select",
"ui:help": "📈 Which Y-axis to use for this variable"
"ui:description": "📈 Which Y-axis to use for this variable"
},
enabled: {
"ui:widget": "checkbox",
"ui:help": "✅ Whether to show this variable in the plot"
"ui:description": "✅ Whether to show this variable in the plot"
}
}
}

View File

@ -42,7 +42,7 @@ const PathBrowserWidget = ({
showPathInfo = true
} = options
const helpText = uiSchema['ui:help'] || schema.description
const helpText = uiSchema['ui:description'] || schema.description
const handleBrowse = async () => {
try {

View File

@ -42,7 +42,7 @@ const PathBrowserWidget = ({
showPathInfo = true
} = options
const helpText = uiSchema['ui:help'] || schema.description
const helpText = uiSchema['ui:description'] || schema.description
const handleBrowse = async () => {
try {

View File

@ -40,7 +40,7 @@ const SimpleFilePathWidget = ({
showPathInfo = true
} = options
const helpText = uiSchema['ui:help'] || schema.description
const helpText = uiSchema['ui:description'] || schema.description
const handleBrowseFile = async () => {
try {

View File

@ -5,5 +5,6 @@
"active_datasets": []
},
"auto_recovery_enabled": true,
"last_update": "2025-08-27T09:27:26.829523"
"last_update": "2025-08-27T11:21:07.224296",
"plotjuggler_path": "C:\\Program Files\\PlotJuggler\\plotjuggler.exe"
}