feat: Copy paste of classes (RDFA-381)#93
Conversation
…-Paste-of-classes # Conflicts: # backend/src/main/java/org/rdfarchitect/services/update/classes/UpdateClassService.java
Signed-off-by: Philipp Kirchner <philipp.kirchner@soptim.de>
Signed-off-by: Jan-Hendrik Spahn <jan-hendrik.spahn@soptim.de>
…-Paste-of-classes # Conflicts: # backend/src/main/java/org/rdfarchitect/database/inmemory/InMemoryDatabaseAdapter.java # backend/src/main/java/org/rdfarchitect/services/select/QueryGraphService.java # backend/src/main/java/org/rdfarchitect/services/update/classes/UpdateClassService.java # backend/src/main/java/org/rdfarchitect/services/update/classes/associations/AssociationsService.java # backend/src/main/java/org/rdfarchitect/services/update/classes/attributes/AttributesService.java # backend/src/main/java/org/rdfarchitect/services/update/packages/UpdatePackageService.java # backend/src/test/java/org/rdfarchitect/services/update/UpdateClassServiceTest.java # frontend/src/lib/api/backend.js # frontend/src/routes/layout/menu-bar/Edit.svelte
There was a problem hiding this comment.
-
The paste action pastes the class in a new package without the "package_" prefix, regardless if the original package has the prefix or not
-
When pasting a class with an association, that already exists, the association breaks. E.g. pasting IdentifiedObject and DiagramObject from the DL-profile to a new empty schema. For some reason this only happens, when pasting the IdentifiedObject first.
-
A similar bug happens, when pasting DiagramObject, then Diagram, then a DiagramObject again. This is probably the same bug, as described before, but i'm not 100% sure how and under what circumstances the paste with association works and when it doesn't
-
When a class does not exist in a graph, but is referenced as external and then is pasted, its pasted as a copy not as original, also its not possible to rename it to the original name, since its flagged as "must be unique".
-
When pasting a class with associations to a class that does not exists yet in the schema, there are faulty api calls for GET /datasets/.../graphs/.../classes/... on each reload of the class
-
the " - Copy" suffix adds spaces which are stored in the uri like this: "\u0020-\u0020Copy" This works, but i feel like spaces in class names should not be allowed or at least not encouraged?
-
"Copied class Diagram from DiagramLayout to no package as Diagram - Copy with attributes with associations" I think, when pasting to "no package" it should be "default package" instead to keep naming uniform. Also "Copy with attributes with associations" sounds strange, i think the last part should reflect the paste options, (without attributes, associations, bare), Also would it maybe make sense to add the dataset and graph name? this could result in a very long changelog message so im not sure about this.
-
ctrl-c, ctrl-v would be nice, but maybe this should be moved to the [RDFA-365] "Keyboard shortcuts" ticket, since i the behaviour of when to copy what, might not be trivial and would require some discussion.
-
There is no paste without enum entries, is this intentional? The option doesn't really make sense, since it should never
-
pasting into a different dataset/graph changes the selected package but not the dataset/graph. It should either be change all 3 or change none
-
When creating a class there is a package preselected called "nullnulldefault'
-
When nothing is selected "addClass" via the menu bar crashes the website
-
The order of paste and "addClass" is different in the packageNav context menu and the diagram context menu
-
there is no "constraints" option in the diagram class context menu
-
opening constraints via the packageNav class context menu, throws errors
-
Closing the class editor via the close buttons throws an error
-
Delete Class is not recorded in the changelog
-
some external classes are shown as external packages in the search results
Signed-off-by: Philipp Kirchner <philipp.kirchner@soptim.de>
|
Signed-off-by: Philipp Kirchner <philipp.kirchner@soptim.de>
Description
Added the option to copy classes and paste them as duplicate or as abstract
Test Checklist
General Behavior
Global MenuBar
Welcome Page
Editor - MenuBar
Editor - Navigation
Editor - Package View
Editor - Class Editor
Prefixes Page
Changelog Page
Compare Page