OWASP / threat-dragon

An open source threat modeling tool from OWASP
https://owasp.org/www-project-threat-dragon/
Apache License 2.0
925 stars 248 forks source link

Canvas reverts to small view area on save #1041

Open jgadsden opened 3 months ago

jgadsden commented 3 months ago

Describe the bug: When a diagram is saved, Antv/X6 drawing package reverts the canvas size to the size of the container view The user is left with a confusing diagram and has to drag components to get them back into view Updating to antv/x6 version 2.x did not solve this, see #722

Expected behaviour: when opening a diagram, the canvas size and viewing area should match the previous sizes

Environment:

To Reproduce:

  1. Open the example diagram
  2. drag a component so that the diagram canvas resizes
  3. save the diagram
  4. only a portion of the canvas is now displayed

Any additional context, screenshots, etc:

Create a model that spans more than one page vertically, note that this diagram is zoomed out to show the complete example model:

Screenshot 2024-10-28 at 05 40 21

press the save button and observer that only the top page is displayed in the diagram view:

Screenshot 2024-10-28 at 05 40 41

The model is still complete, zoom in and out to reframe the diagram

MuhammadSaqlain-dev commented 3 months ago

@jgadsden I do not get this point.

Because on my side, when I save the file, it does not revert the canvas size...

Are you saying that when he saves the file in a JSON file and then opens this JSON file again, it reverts the canvas size to the size of the container view? can you elaborate on this more?

jgadsden commented 1 month ago

the problem is to do with the dependencies for the version of antv/x6 that we are using : v1.35.0 or v1.35.1

I am not sure which dependency it is but we can take the v2.2.0 tag, which works, and update the dependencies which then produce the fault:

npm run clean
rm td.vue/package-lock.json
git status
npm i
grep -n2 "antv" td.vue/package-lock.json
npm run start:desktop

this means we have to update antv/x6 to version 2.x, subject of issue #722

jgadsden commented 6 days ago

moving this to version 2.4 it seems to be an incompatibility with antv/x6 and Vue 2 Vue is due to be migrated to away from 2.x to version 3.5.x, subject of issue #444