🗃️ Structure import#2504
Conversation
4740f30 to
bca53a5
Compare
…rison AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
…ges atomically AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
…er works The <input> was inside <template #actions> which gets unmounted when the menu closes. Moving it to the default slot keeps it in the DOM so .importStructureFileInput.click() can open the file picker. AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
…rted {id} template
generateOcsUrl() does not support {id} placeholder substitution — it just
prepends the OCS base path. The literal string '{id}' was being included in
the URL, causing 404s silently swallowed by the catch blocks.
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6)
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
…tations
StructureDiffService was returning a flat structure that ImportStructurePreview
was unable to render:
- tableMeta: was {changes: [{field, current, incoming}]}, now {field: {current, incoming}}
- columns add: was {action, sourceId, title, type, details}, now {action, column: <srcCol>}
- columns update: was {action, sourceId, targetId, title, type, changes: [{field,...}]},
now {action, targetId, column: {title, type}, changes: {field: {current, incoming}}}
- columns delete: was {action, targetId, title, type},
now {action, targetId, column: {title, type}}
- views add: was {action, title, details}, now {action, view: <srcView>}
- views update changes: was [{field, current, incoming}], now {field: {current, incoming}}
Updated StructureDiffServiceTest assertions to match the corrected shapes.
Also removed the :disabled guard that prevented Preview from firing without
a selected file — replaced with a showWarning call inside the handler.
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6)
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
…ogic AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6) Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
bca53a5 to
d6ec125
Compare
|
hey @AndyScherzinger! Thank you for working on this. Really good feature that nice to have. Few points from my side:
|
|
Hi @Koc Thanks a lot for the testing and review. All very good points to look into and address. The clear identification of column would be neat to have and makes updating structures easier. Yet for existing ones some/improved heuristic drill might make sense, else you can't make use of this on legacy table structures but that could be a limitation to accept. Maybe. The colors aren't correct yet, first wanted to to get it working, right, polished. In that order and the current state is still very much in progress. The issues at the end are currently issues of default values that don't get exported but a target value gets computed, so a difference is detected... |



WIP for CI execution/checks