Feat/ODBC Browser, History Table ODBC, New Parameter Table#2063
Feat/ODBC Browser, History Table ODBC, New Parameter Table#2063MatthewReed303 wants to merge 21 commits intofrangoteam:masterfrom
Conversation
- Add separate toolbar color properties (background, text, button) distinct from header colors - Update all toolbar elements (buttons, selectors, filter, paginator) to use toolbar colors - Add row selection tag setting with proper typing: bool for selection state, number for row index, JSON string for row data - Add hover/focus effects for filter input matching toolbar styling - Reorganize property panel with toolbar section after row settings - Add translations for new toolbar color properties - Various styling improvements and consistency fixes
…tions Co-authored-by: MatthewReed303 <63492864+MatthewReed303@users.noreply.github.com>
Co-authored-by: MatthewReed303 <63492864+MatthewReed303@users.noreply.github.com>
Co-authored-by: MatthewReed303 <63492864+MatthewReed303@users.noreply.github.com>
Co-authored-by: MatthewReed303 <63492864+MatthewReed303@users.noreply.github.com>
…ion interface Co-authored-by: MatthewReed303 <63492864+MatthewReed303@users.noreply.github.com>
|
500,000 LOC on this PR. Wow (ridiculous IMO no matter the added functionality) but that's just me. |
|
Nice work on this feature — it’s a pretty big addition 👍 As a first pass, I’d fix a couple of high-level things before we go deeper: 1. Build artifactsPlease remove the generated build files from the PR. 2. Security (ODBC / DB access)Since this introduces quite a bit of database and ODBC logic, we should double-check the security side — especially how queries are handled on the server. Where possible, we should prefer parameterized queries instead of building SQL strings dynamically. For example: const query = `SELECT * FROM users WHERE id = ${userId}`;would be safer as: const query = `SELECT * FROM users WHERE id = ?`;
const result = await connection.query(query, [userId]);This way the driver handles escaping and we reduce injection risks. 3. ODBC device accessThe API lets the client choose the storage type and ODBC device. We should make sure this follows the same authorization pattern used in similar endpoints — i.e. enforce the check when authorization is configured, just like we do elsewhere. Once this is clarified/adjusted, we can go through the implementation in more detail. |
ODBC Browser and Enhanced Table Features
This PR introduces comprehensive ODBC database integration and enhanced table functionality to FUXA SCADA.
Key Features Added:
ODBC Browser
Database Integration
New Parameter Table Type
Table Enhancements
Technical Changes: