diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 4c48f41b76..a2dfb1ecf8 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -21,10 +21,12 @@ Downstream consumers relying on the previous `.umd.js` artifacts or on direct br - https://github.com/eclipse-syson/syson/issues/2418[#2418] [services] Remove the `unwrapFeature` service since it is not used anymore. - https://github.com/eclipse-syson/syson/issues/2452[#2352] [diagram] SysON now defines its own `DiagramDefaultToolsFactory` providing show/hide tools. SysON consumers should use this new service instead of the Sirius Web's DefaultToolsFactory. +- [tests] `org.eclipse.syson.application.controller.explorer.testers.TreeItemContextMenuTester.java` has been removed since it was not used anymore. +Please use `org.eclipse.sirius.components.trees.tests.graphql.TreeItemPaletteExecutor.java` from Sirius Web instead. === Dependency update -- [releng] Update to https://github.com/eclipse-sirius/sirius-web[Sirius Web 2026.7.2]. +- [releng] Update to https://github.com/eclipse-sirius/sirius-web[Sirius Web 2026.7.3]. - [releng] Update the version of `turbo` used for the frontend from 2.4.4 to 2.10.5. - [releng] Update `vite` from 8.0.14 to 8.1.5. - [releng] Update `playwright` from 1.57.0 to 1.62.0 diff --git a/backend/application/pom.xml b/backend/application/pom.xml index 05502a22d0..8580750043 100644 --- a/backend/application/pom.xml +++ b/backend/application/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../pom.xml org.eclipse.syson syson-application-parent - 2026.7.2 + 2026.7.3 syson-application-parent SysON Application Parent diff --git a/backend/application/syson-application-configuration/pom.xml b/backend/application/syson-application-configuration/pom.xml index fda1e0eb39..4d7a3b8ff6 100644 --- a/backend/application/syson-application-configuration/pom.xml +++ b/backend/application/syson-application-configuration/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-application-configuration - 2026.7.2 + 2026.7.3 syson-application-configuration SysON Application Configuration diff --git a/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/expressions/services/ExpressionsPaletteToolsProvider.java b/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/expressions/services/ExpressionsPaletteToolsProvider.java index f391c142e5..f008ca776d 100644 --- a/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/expressions/services/ExpressionsPaletteToolsProvider.java +++ b/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/expressions/services/ExpressionsPaletteToolsProvider.java @@ -18,9 +18,7 @@ import java.util.Optional; import org.eclipse.sirius.components.collaborative.diagrams.DiagramContext; -import org.eclipse.sirius.components.collaborative.diagrams.dto.ITool; import org.eclipse.sirius.components.collaborative.diagrams.dto.SingleClickOnDiagramElementTool; -import org.eclipse.sirius.components.collaborative.diagrams.dto.ToolSection; import org.eclipse.sirius.components.core.api.IEditingContext; import org.eclipse.sirius.components.core.api.IObjectSearchService; import org.eclipse.sirius.components.core.api.IReadOnlyObjectPredicate; @@ -28,6 +26,8 @@ import org.eclipse.sirius.components.diagrams.Node; import org.eclipse.sirius.components.diagrams.description.IDiagramElementDescription; import org.eclipse.sirius.components.emf.services.api.IEMFEditingContext; +import org.eclipse.sirius.components.palette.dto.ITool; +import org.eclipse.sirius.components.palette.dto.ToolSection; import org.eclipse.sirius.components.view.emf.diagram.api.IPaletteToolsProvider; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Expression; diff --git a/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/nodes/services/ForkJoinNodePaletteToolProvider.java b/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/nodes/services/ForkJoinNodePaletteToolProvider.java index af485b6c42..ea88c26658 100644 --- a/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/nodes/services/ForkJoinNodePaletteToolProvider.java +++ b/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/nodes/services/ForkJoinNodePaletteToolProvider.java @@ -18,13 +18,13 @@ import java.util.Optional; import org.eclipse.sirius.components.collaborative.diagrams.DiagramContext; -import org.eclipse.sirius.components.collaborative.diagrams.dto.ITool; import org.eclipse.sirius.components.collaborative.diagrams.dto.SingleClickOnDiagramElementTool; -import org.eclipse.sirius.components.collaborative.diagrams.dto.ToolSection; import org.eclipse.sirius.components.core.api.IEditingContext; import org.eclipse.sirius.components.core.api.IObjectSearchService; import org.eclipse.sirius.components.diagrams.Node; import org.eclipse.sirius.components.diagrams.description.IDiagramElementDescription; +import org.eclipse.sirius.components.palette.dto.ITool; +import org.eclipse.sirius.components.palette.dto.ToolSection; import org.eclipse.sirius.components.view.emf.diagram.api.IPaletteToolsProvider; import org.eclipse.syson.sysml.ForkNode; import org.eclipse.syson.sysml.JoinNode; diff --git a/backend/application/syson-application/docker-compose.yml b/backend/application/syson-application/docker-compose.yml index 495ac739fe..4a0cccbae9 100644 --- a/backend/application/syson-application/docker-compose.yml +++ b/backend/application/syson-application/docker-compose.yml @@ -18,7 +18,7 @@ services: SPRING_DATASOURCE_USERNAME: test_username SPRING_DATASOURCE_PASSWORD: test_password SIRIUS_COMPONENTS_CORS_ALLOWEDORIGINPATTERNS: "*" - SIRIUS_WEB_TREE_NEW-PALETTE_ENABLED: false + SIRIUS_WEB_TREE_NEW-PALETTE_ENABLED: true SERVER_PORT: 8080 depends_on: - database diff --git a/backend/application/syson-application/pom.xml b/backend/application/syson-application/pom.xml index baaa276e21..deed229cc5 100644 --- a/backend/application/syson-application/pom.xml +++ b/backend/application/syson-application/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-application - 2026.7.2 + 2026.7.3 syson-application SysON Application diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/testers/TreeItemContextMenuTester.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/testers/TreeItemContextMenuTester.java deleted file mode 100644 index 74fb2abff8..0000000000 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/testers/TreeItemContextMenuTester.java +++ /dev/null @@ -1,45 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2025, 2026 Obeo. - * This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v2.0 - * which accompanies this distribution, and is available at - * https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * Obeo - initial API and implementation - *******************************************************************************/ -package org.eclipse.syson.application.controller.explorer.testers; - -import com.jayway.jsonpath.JsonPath; - -import java.util.List; -import java.util.Map; - -import org.eclipse.sirius.web.tests.graphql.TreeItemContextMenuQueryRunner; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * Gets the context menu of a tree item in the explorer. - * - * @author gdaniel - */ -@Service -public class TreeItemContextMenuTester { - - @Autowired - private TreeItemContextMenuQueryRunner treeItemContextMenuQueryRunner; - - public List getContextMenuEntries(String editingContextId, String representationId, String treeItemId) { - Map contextMenuVariables = Map.of( - "editingContextId", editingContextId, - "representationId", representationId, - "treeItemId", treeItemId); - var result = this.treeItemContextMenuQueryRunner.run(contextMenuVariables); - List contextMenuIds = JsonPath.read(result.data(), "$.data.viewer.editingContext.representation.description.contextMenu[*].id"); - return contextMenuIds; - } - -} diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/view/SysONExplorerTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/view/SysONExplorerTests.java index a8f0e9a267..0d7cf1a563 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/view/SysONExplorerTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controller/explorer/view/SysONExplorerTests.java @@ -34,6 +34,7 @@ import org.eclipse.sirius.components.graphql.tests.ExecuteEditingContextFunctionSuccessPayload; import org.eclipse.sirius.components.graphql.tests.api.IExecuteEditingContextFunctionRunner; import org.eclipse.sirius.components.trees.TreeItem; +import org.eclipse.sirius.components.trees.tests.graphql.TreeItemPaletteExecutor; import org.eclipse.sirius.web.application.views.explorer.ExplorerEventInput; import org.eclipse.sirius.web.application.views.explorer.services.ExplorerDescriptionProvider; import org.eclipse.sirius.web.application.views.explorer.services.ExplorerTreeItemContextMenuEntryProvider; @@ -43,7 +44,6 @@ import org.eclipse.sirius.web.tests.services.representation.RepresentationIdBuilder; import org.eclipse.syson.AbstractIntegrationTests; import org.eclipse.syson.application.controller.explorer.testers.ExpandAllTreeItemTester; -import org.eclipse.syson.application.controller.explorer.testers.TreeItemContextMenuTester; import org.eclipse.syson.application.controller.explorer.testers.TreePathTester; import org.eclipse.syson.application.data.ActionTransitionUsagesProjectData; import org.eclipse.syson.application.data.ExpressionSamplesProjectData; @@ -109,7 +109,7 @@ public class SysONExplorerTests extends AbstractIntegrationTests { private ExpandAllTreeItemTester expandAllTreeItemTester; @Autowired - private TreeItemContextMenuTester treeItemContextMenuTester; + private TreeItemPaletteExecutor treeItemPaletteExecutor; @Autowired private TreePathTester treePathTester; @@ -363,23 +363,39 @@ public void getContextMenuOfModelAndLibraryDirectories() { assertThat(sysmlDirectory.isHasChildren()).isTrue(); }); + Runnable sysmlModelContextMenu = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + explorerRepresentationId, + sysmlModelTreeItemId.get()) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(3).anyMatch(entry -> Objects.equals(entry, ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL))); + + Runnable librariesDirectoryContextMenu = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + explorerRepresentationId, + librariesDirectoryTreeItemId.get()) + .hasPaletteEntries(entries -> assertThat(entries).isEmpty()); + + Runnable kermlDirectoryContextMenu = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + explorerRepresentationId, + kermlDirectoryTreeItemId.get()) + .hasPaletteEntries(entries -> assertThat(entries).isEmpty()); + + Runnable sysmlDirectoryContextMenu = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + explorerRepresentationId, + sysmlDirectoryTreeItemId.get()) + .hasPaletteEntries(entries -> assertThat(entries).isEmpty()); + StepVerifier.create(flux) .consumeNextWith(initialExplorerContentConsumer) + .then(sysmlModelContextMenu) + .then(librariesDirectoryContextMenu) + .then(kermlDirectoryContextMenu) + .then(sysmlDirectoryContextMenu) .thenCancel() .verify(Duration.ofSeconds(10)); - List sysmlModelContextMenu = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, explorerRepresentationId, - sysmlModelTreeItemId.get()); - assertThat(sysmlModelContextMenu).hasSize(3).anyMatch(entry -> Objects.equals(entry, ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL)); - List librariesDirectoryContextMenu = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, explorerRepresentationId, - librariesDirectoryTreeItemId.get()); - assertThat(librariesDirectoryContextMenu).isEmpty(); - List kermlDirectoryContextMenu = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, explorerRepresentationId, - kermlDirectoryTreeItemId.get()); - assertThat(kermlDirectoryContextMenu).isEmpty(); - List sysmlDirectoryContextMenu = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, explorerRepresentationId, - sysmlDirectoryTreeItemId.get()); - assertThat(sysmlDirectoryContextMenu).isEmpty(); } @DisplayName("GIVEN an empty SysML Project, WHEN the tree path is queried, THEN the returned tree path should take into accounts the Explorer filters.") @@ -593,15 +609,16 @@ public void getExplorerContentWithImportedLibraryContainingLibraryPackage() { userLibId.set(userLibTreeItem.getId()); }); - Runnable getUserLibContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(ProjectWithLibraryDependencyContainingLibraryPackageTestProjectData.EDITING_CONTEXT, treeId.get(), - userLibId.get()); - assertThat(menuEntriesIds).hasSize(4) - .contains(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT) - .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) - .contains(ExplorerTreeItemContextMenuEntryProvider.REMOVE_LIBRARY) - .contains(ExplorerTreeItemContextMenuEntryProvider.UPDATE_LIBRARY); - }; + Runnable getUserLibContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + ProjectWithLibraryDependencyContainingLibraryPackageTestProjectData.EDITING_CONTEXT, + treeId.get(), + userLibId.get()) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(4) + .contains(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) + .contains(ExplorerTreeItemContextMenuEntryProvider.REMOVE_LIBRARY) + .contains(ExplorerTreeItemContextMenuEntryProvider.UPDATE_LIBRARY)); + StepVerifier.create(flux) .consumeNextWith(initialExplorerContentConsumer) @@ -646,15 +663,15 @@ public void getExplorerContentWithImportedLibraryContainingCommentAndLibraryPack userLibId.set(userLibTreeItem.getId()); }); - Runnable getUserLibContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(ProjectWithLibraryDependencyContainingCommentAndLibraryPackageTestProjectData.EDITING_CONTEXT, treeId.get(), - userLibId.get()); - assertThat(menuEntriesIds).hasSize(4) - .contains(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT) - .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) - .contains(ExplorerTreeItemContextMenuEntryProvider.REMOVE_LIBRARY) - .contains(ExplorerTreeItemContextMenuEntryProvider.UPDATE_LIBRARY); - }; + Runnable getUserLibContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + ProjectWithLibraryDependencyContainingCommentAndLibraryPackageTestProjectData.EDITING_CONTEXT, + treeId.get(), + userLibId.get()) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(4) + .contains(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) + .contains(ExplorerTreeItemContextMenuEntryProvider.REMOVE_LIBRARY) + .contains(ExplorerTreeItemContextMenuEntryProvider.UPDATE_LIBRARY)); StepVerifier.create(flux) .consumeNextWith(initialExplorerContentConsumer) @@ -758,53 +775,56 @@ public void sysONExplorerTreeItemContextMenuEntriesTest() { assertThat(diagram.isDeletable()).isFalse(); }); - Runnable getDocumentContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, treeId.get(), - GeneralViewEmptyTestProjectData.SemanticIds.MODEL_ID); - assertThat(menuEntriesIds).hasSize(3) - .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_ROOT_OBJECT) - .contains(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT) - .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL); - }; - - Runnable getRootNSContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, treeId.get(), - GeneralViewEmptyTestProjectData.SemanticIds.ROOT_NS_ID); - assertThat(menuEntriesIds).hasSize(5) - .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) - .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION) - .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID) - .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) - .contains(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT); - }; - - Runnable getPackageElementContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, treeId.get(), - GeneralViewEmptyTestProjectData.SemanticIds.PACKAGE_1_ID); - assertThat(menuEntriesIds).hasSize(5) - .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) - .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION) - .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID) - .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) - .contains(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT); - }; - - Runnable getViewUsageElementContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, treeId.get(), - GeneralViewEmptyTestProjectData.SemanticIds.VIEW_USAGE_ID); - // no NewRepresentation on a ViewUsage which already contains a standard diagram or requirements-table - assertThat(menuEntriesIds).hasSize(5) - .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) - .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID) - .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL); - }; - - Runnable getDiagramContextMenuActions = () -> { - var menuEntriesIds = this.treeItemContextMenuTester.getContextMenuEntries(GeneralViewEmptyTestProjectData.EDITING_CONTEXT, treeId.get(), - GeneralViewEmptyTestProjectData.GraphicalIds.DIAGRAM_ID); - // no duplicate representation on standard diagram or requirements-table - assertThat(menuEntriesIds).hasSize(0); - }; + Runnable getDocumentContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + treeId.get(), + GeneralViewEmptyTestProjectData.SemanticIds.MODEL_ID) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(3) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_ROOT_OBJECT) + .contains(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL)); + + Runnable getRootNSContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + treeId.get(), + GeneralViewEmptyTestProjectData.SemanticIds.ROOT_NS_ID) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(5) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION) + .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) + .contains(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT)); + + Runnable getPackageElementContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + treeId.get(), + GeneralViewEmptyTestProjectData.SemanticIds.PACKAGE_1_ID) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(5) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION) + .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) + .contains(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT)); + + Runnable getViewUsageElementContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + treeId.get(), + GeneralViewEmptyTestProjectData.SemanticIds.VIEW_USAGE_ID) + // no NewRepresentation on a ViewUsage which already contains a standard diagram or requirements-table + // but New Expression is available + .hasPaletteEntries(entries -> assertThat(entries).hasSize(5) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) + .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) + .contains(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT) + .contains(SysONExplorerTreeItemContextMenuEntryProvider.CREATE_EXPRESSION_MENU_ENTRY_CONTRIBUTION_ID)); + + Runnable getDiagramContextMenuActions = () -> this.treeItemPaletteExecutor.execute( + GeneralViewEmptyTestProjectData.EDITING_CONTEXT, + treeId.get(), + GeneralViewEmptyTestProjectData.GraphicalIds.DIAGRAM_ID) + // no duplicate representation on standard diagram or requirements-table + .hasPaletteEntries(entries -> assertThat(entries).hasSize(0)); StepVerifier.create(flux) .consumeNextWith(initialTreeContentConsumer) diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java index 711ed0f18e..ebf856d05b 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java @@ -29,7 +29,7 @@ import org.eclipse.sirius.components.collaborative.diagrams.dto.DiagramRefreshedEventPayload; import org.eclipse.sirius.components.collaborative.diagrams.dto.InvokeSingleClickOnTwoDiagramElementsToolInput; import org.eclipse.sirius.components.collaborative.diagrams.dto.InvokeSingleClickOnTwoDiagramElementsToolSuccessPayload; -import org.eclipse.sirius.components.diagrams.tests.graphql.ConnectorToolsQueryRunner; +import org.eclipse.sirius.components.diagrams.tests.graphql.ConnectorPaletteQueryRunner; import org.eclipse.sirius.components.diagrams.tests.graphql.InvokeSingleClickOnTwoDiagramElementsToolMutationRunner; import org.eclipse.sirius.components.diagrams.tests.graphql.PaletteQueryRunner; import org.eclipse.sirius.components.diagrams.tests.navigation.DiagramNavigator; @@ -71,7 +71,7 @@ public class GVInheritedPortTests extends AbstractIntegrationTests { private IGivenDiagramSubscription givenDiagramSubscription; @Autowired - private ConnectorToolsQueryRunner connectorToolsQueryRunner; + private ConnectorPaletteQueryRunner connectorPaletteQueryRunner; @Autowired private InvokeSingleClickOnTwoDiagramElementsToolMutationRunner invokeSingleClickOnTwoDiagramElementsToolMutationRunner; @@ -188,8 +188,8 @@ public void checkInheritedPortSourceRedefinition(String parameterizedValue) { "sourceDiagramElementId", inheritedPortId.get(), "targetDiagramElementId", port1Id.get() ); - var connectorToolsResult = this.connectorToolsQueryRunner.run(variables); - List ids = JsonPath.read(connectorToolsResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='%s')].id", + var connectorPaletteResult = this.connectorPaletteQueryRunner.run(variables); + List ids = JsonPath.read(connectorPaletteResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorPalette.paletteEntries[?(@.label=='%s')].id", parameterizedValue)); String toolId = ids.get(0); @@ -257,8 +257,8 @@ public void checkInheritedPortTargetRedefinition(String parameterizedValue) { "sourceDiagramElementId", port1Id.get(), "targetDiagramElementId", inheritedPortId.get() ); - var connectorToolsResult = this.connectorToolsQueryRunner.run(variables); - List ids = JsonPath.read(connectorToolsResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='%s')].id", + var connectorPaletteResult = this.connectorPaletteQueryRunner.run(variables); + List ids = JsonPath.read(connectorPaletteResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorPalette.paletteEntries[?(@.label=='%s')].id", parameterizedValue)); String toolId = ids.get(0); @@ -326,9 +326,9 @@ public void checkInheritedPortAsSourceAndTargetRedefinition(String parameterized "sourceDiagramElementId", inheritedPortV1Id.get(), "targetDiagramElementId", inheritedPortV2Id.get() ); - var connectorToolsResult = this.connectorToolsQueryRunner.run(variables); - List ids = JsonPath.read(connectorToolsResult.data(), - String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='%s')].id", + var connectorPaletteResult = this.connectorPaletteQueryRunner.run(variables); + List ids = JsonPath.read(connectorPaletteResult.data(), + String.format("$.data.viewer.editingContext.representation.description.connectorPalette.paletteEntries[?(@.label=='%s')].id", parameterizedValue)); String toolId = ids.get(0); diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSatisfyRequirementTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSatisfyRequirementTests.java index 7733d5d848..9b89fd430f 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSatisfyRequirementTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSatisfyRequirementTests.java @@ -129,7 +129,7 @@ public void setUp() { GeneralViewWithTopNodesTestProjectData.SemanticIds.PACKAGE_1_ID); } - @DisplayName("Given a Part, WHEN applying the 'New Satisfy' tool selecting a requirement, THEN the created satisfy requirement is subsetted by reference by the selected requirement") + @DisplayName("GIVEN a Part, WHEN applying the 'New Satisfy' tool selecting a requirement, THEN the created satisfy requirement is subsetted by reference by the selected requirement") @GivenSysONServer({ GeneralViewWithTopNodesTestProjectData.SCRIPT_PATH }) @Test public void testCreateSatisfy() { @@ -190,7 +190,7 @@ public void testCreateSatisfy() { .verify(Duration.ofSeconds(10)); } - @DisplayName("Given a Part, WHEN applying the 'New Satisfy Requirement' tool selecting a requirement, THEN the created satisfy requirement is subsetted by reference by the selected requirement") + @DisplayName("GIVEN a Part, WHEN applying the 'New Satisfy Requirement' tool selecting a requirement, THEN the created satisfy requirement is subsetted by reference by the selected requirement") @GivenSysONServer({ GeneralViewWithTopNodesTestProjectData.SCRIPT_PATH }) @Test public void testCreateSatisfyRequirementSelectingRequirementUsage() { @@ -251,7 +251,7 @@ public void testCreateSatisfyRequirementSelectingRequirementUsage() { .verify(Duration.ofSeconds(10)); } - @DisplayName("Given a Part, WHEN applying the 'New Satisfy Requirement' tool selecting a Definition, THEN the created satisfy requirement is typed by the selected Definition") + @DisplayName("GIVEN a Part, WHEN applying the 'New Satisfy Requirement' tool selecting a Definition, THEN the created satisfy requirement is typed by the selected Definition") @GivenSysONServer({ GeneralViewWithTopNodesTestProjectData.SCRIPT_PATH }) @Test public void testCreateSatisfyRequirementSelectingDefinition() { @@ -313,7 +313,7 @@ public void testCreateSatisfyRequirementSelectingDefinition() { .verify(Duration.ofSeconds(10)); } - @DisplayName("Given a Part, WHEN applying the 'New Satisfy Requirement' tool without selection, THEN the standalone satisfy requirement is created") + @DisplayName("GIVEN a Part, WHEN applying the 'New Satisfy Requirement' tool without selection, THEN the standalone satisfy requirement is created") @GivenSysONServer({ GeneralViewWithTopNodesTestProjectData.SCRIPT_PATH }) @Test public void testCreateStandaloneSatisfyRequirement() { diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSubNodeRequirementCreationTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSubNodeRequirementCreationTests.java index e72db04412..4703632591 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSubNodeRequirementCreationTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVSubNodeRequirementCreationTests.java @@ -1358,14 +1358,14 @@ public void createNewStakeholderFromPartInConcernUsage() { this.createNewStakeholderSelectingExistingElementIn(SysmlPackage.eINSTANCE.getConcernUsage(), GeneralViewWithTopNodesTestProjectData.SemanticIds.CONCERN_USAGE_ID, "concern", GeneralViewWithTopNodesTestProjectData.SemanticIds.PART_USAGE_ID); } - @DisplayName("Given a RequirementDefinition, WHEN creating a new Stakeholder selecting a Part, THEN the Stakeholder subsetted by the Part is created in the RequirementDefinition") + @DisplayName("GIVEN a RequirementDefinition, WHEN creating a new Stakeholder selecting a Part, THEN the Stakeholder subsetted by the Part is created in the RequirementDefinition") @GivenSysONServer({ GeneralViewWithTopNodesTestProjectData.SCRIPT_PATH }) @Test public void createNewStakeholderFromPartInRequirementDefinition() { this.createNewStakeholderSelectingExistingElementIn(SysmlPackage.eINSTANCE.getRequirementDefinition(), GeneralViewWithTopNodesTestProjectData.SemanticIds.REQUIREMENT_DEFINITION_ID, "RequirementDefinition", GeneralViewWithTopNodesTestProjectData.SemanticIds.PART_USAGE_ID); } - @DisplayName("Given a Requirement, WHEN creating a new Stakeholder selecting a Part, THEN the Stakeholder subsetted by the Part is created in the Requirement") + @DisplayName("GIVEN a Requirement, WHEN creating a new Stakeholder selecting a Part, THEN the Stakeholder subsetted by the Part is created in the Requirement") @GivenSysONServer({ GeneralViewWithTopNodesTestProjectData.SCRIPT_PATH }) @Test public void createNewStakeholderFromPartInRequirementUsage() { diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/graphql/ShowDiagramsInheritedMembersMutationRunner.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/graphql/ShowDiagramsInheritedMembersMutationRunner.java index f669c814b6..1a39ba743f 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/graphql/ShowDiagramsInheritedMembersMutationRunner.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/graphql/ShowDiagramsInheritedMembersMutationRunner.java @@ -36,7 +36,10 @@ mutation showDiagramsInheritedMembers($input: ShowDiagramsInheritedMembersInput! show } ... on ErrorPayload { - message + messages { + body + level + } } } } diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropNodesWithMessageMutationRunner.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropNodesWithMessageMutationRunner.java index bfcc9825d0..4c61854c1f 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropNodesWithMessageMutationRunner.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropNodesWithMessageMutationRunner.java @@ -37,7 +37,6 @@ mutation dropNodes($input: DropNodesInput!) { } } ... on ErrorPayload { - message messages { body level diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropOnDiagramWithMessagesMutationRunner.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropOnDiagramWithMessagesMutationRunner.java index fd0ef641fb..9f9d9cf0f1 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropOnDiagramWithMessagesMutationRunner.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/testers/DropOnDiagramWithMessagesMutationRunner.java @@ -42,7 +42,6 @@ mutation dropOnDiagram($input: DropOnDiagramInput!) { } } ... on ErrorPayload { - message messages { body level diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/explorer/view/ExplorerViewControllerIntegrationTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/explorer/view/ExplorerViewControllerIntegrationTests.java index b7ebfca222..351f606a08 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/explorer/view/ExplorerViewControllerIntegrationTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/explorer/view/ExplorerViewControllerIntegrationTests.java @@ -48,9 +48,10 @@ import org.eclipse.sirius.components.trees.TreeItem; import org.eclipse.sirius.components.trees.tests.graphql.InitialDirectEditTreeItemLabelQueryRunner; import org.eclipse.sirius.components.trees.tests.graphql.TreeFiltersQueryRunner; +import org.eclipse.sirius.components.trees.tests.graphql.TreeItemPaletteExecutor; import org.eclipse.sirius.web.application.views.explorer.ExplorerEventInput; +import org.eclipse.sirius.web.application.views.explorer.services.ExplorerTreeItemContextMenuEntryProvider; import org.eclipse.sirius.web.tests.graphql.CreateChildMutationRunner; -import org.eclipse.sirius.web.tests.graphql.TreeItemContextMenuQueryRunner; import org.eclipse.sirius.web.tests.services.api.IGivenInitialServerState; import org.eclipse.sirius.web.tests.services.explorer.ExplorerEventSubscriptionRunner; import org.eclipse.sirius.web.tests.services.representation.RepresentationIdBuilder; @@ -72,6 +73,7 @@ import org.eclipse.syson.tree.explorer.fragments.LibrariesDirectory; import org.eclipse.syson.tree.explorer.fragments.UserLibrariesDirectory; import org.eclipse.syson.tree.explorer.view.SysONTreeViewDescriptionProvider; +import org.eclipse.syson.tree.explorer.view.menu.context.SysONExplorerTreeItemContextMenuEntryProvider; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; @@ -173,7 +175,7 @@ private record TreeItemMatcher(Function treeItemFinder, Predicat private CreateChildMutationRunner createChildMutationRunner; @Autowired - private TreeItemContextMenuQueryRunner treeItemContextMenuQueryRunner; + private TreeItemPaletteExecutor treeItemPaletteExecutor; @Autowired private IExecuteEditingContextFunctionRunner executeEditingContextFunctionRunner; @@ -304,16 +306,16 @@ public void testImportedReadWriteUserLibraryEdition() { var hasProjectContent = this.getTreeRefreshedEventPayloadMatcher(List.of(this.userLibraryPackageRW)); - Runnable getContextualMenuRunnable = () -> { - Map variables = Map.of( - "editingContextId", WithUserLibrariesTestProjectData.EDITING_CONTEXT_ID, - "representationId", treeRepresentationId, - "treeItemId", WithUserLibrariesTestProjectData.SemanticIds.RW_USER_LIBRARY_PACKAGE_ID); - var result = this.treeItemContextMenuQueryRunner.run(variables); - - List contextualMenuIds = JsonPath.read(result.data(), "$.data.viewer.editingContext.representation.description.contextMenu[*].id"); - assertThat(contextualMenuIds).contains("new-object", "expand-all"); - }; + Runnable getContextualMenuRunnable = () -> this.treeItemPaletteExecutor.execute( + WithUserLibrariesTestProjectData.EDITING_CONTEXT_ID, + treeRepresentationId, + WithUserLibrariesTestProjectData.SemanticIds.RW_USER_LIBRARY_PACKAGE_ID) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(5) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT) + .contains(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION) + .contains(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT) + .contains(SysONExplorerTreeItemContextMenuEntryProvider.NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID)); Runnable createChildRunnable = () -> { var input = new CreateChildInput(UUID.randomUUID(), WithUserLibrariesTestProjectData.EDITING_CONTEXT_ID, WithUserLibrariesTestProjectData.SemanticIds.RW_USER_LIBRARY_PACKAGE_ID, "SysMLv2EditService-AcceptActionUsage"); @@ -354,16 +356,12 @@ public void testImportedReadOnlyUserLibraryEdition() { var hasProjectContent = this.getTreeRefreshedEventPayloadMatcher(List.of(this.userLibraryPackageRO)); - Runnable getContextualMenuRunnable = () -> { - Map variables = Map.of( - "editingContextId", WithUserLibrariesTestProjectData.EDITING_CONTEXT_ID, - "representationId", treeRepresentationId, - "treeItemId", WithUserLibrariesTestProjectData.SemanticIds.RO_USER_LIBRARY_PACKAGE_ID); - var result = this.treeItemContextMenuQueryRunner.run(variables); - - List contextualMenuIds = JsonPath.read(result.data(), "$.data.viewer.editingContext.representation.description.contextMenu[*].id"); - assertThat(contextualMenuIds).doesNotContain("new-object", "new-representation", "newObjectsFromText", "duplicate-object").contains("expand-all"); - }; + Runnable getContextualMenuRunnable = () -> this.treeItemPaletteExecutor.execute( + WithUserLibrariesTestProjectData.EDITING_CONTEXT_ID, + treeRepresentationId, + WithUserLibrariesTestProjectData.SemanticIds.RO_USER_LIBRARY_PACKAGE_ID) + .hasPaletteEntries(entries -> assertThat(entries).hasSize(1) + .contains(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL)); StepVerifier.create(treeFlux) .consumeNextWith(hasProjectContent) diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/imports/ImportSysMLModelTest.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/imports/ImportSysMLModelTest.java index 082c626f92..02a6550d75 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/imports/ImportSysMLModelTest.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/imports/ImportSysMLModelTest.java @@ -188,7 +188,7 @@ public void unnamedRedefinedReferenceFeature() throws IOException { }).check(input); } - @DisplayName("Given LiteralString with escaped characters, WHEN importing the model, THEN the extra backlash is removed") + @DisplayName("GIVEN LiteralString with escaped characters, WHEN importing the model, THEN the extra backlash is removed") @Test public void removeExtraBacklash() throws IOException { var input = """ @@ -1288,7 +1288,7 @@ public void checkDoSendPayloadParameterResolution() throws IOException { }).check(input); } - @DisplayName("Given an attribute valued with an unknown unit, WHEN importing the model, THEN then no unresolvable proxies are left") + @DisplayName("GIVEN an attribute valued with an unknown unit, WHEN importing the model, THEN then no unresolvable proxies are left") @Test public void referenceToUnknownUnit() throws IOException { var input = """ diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/metamodel/helper/LibraryNamespaceProviderTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/metamodel/helper/LibraryNamespaceProviderTests.java index 14dc09c7b1..2cb00f2ab3 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/metamodel/helper/LibraryNamespaceProviderTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/metamodel/helper/LibraryNamespaceProviderTests.java @@ -69,7 +69,7 @@ public void beforeEach() { } @Test - @DisplayName("Given a ResourceSet where all library has been registered a immutable, WHEN accessing some Namespace from their qualified name, THEN the targeted element should be returned.") + @DisplayName("GIVEN a ResourceSet where all library has been registered a immutable, WHEN accessing some Namespace from their qualified name, THEN the targeted element should be returned.") public void checkWithRegisteredLibrary() { LibraryNamespaceProvider provider = new LibraryNamespaceProvider(this.resourceSet); // Set all resource to immutable @@ -86,7 +86,7 @@ public void checkWithRegisteredLibrary() { } @Test - @DisplayName("Given a ResourceSet with no library registered as immutable, WHEN accessing some Namespace from their qualified name, THEN the targeted element should be returned.") + @DisplayName("GIVEN a ResourceSet with no library registered as immutable, WHEN accessing some Namespace from their qualified name, THEN the targeted element should be returned.") public void withNoLibraryAdded() { LibraryNamespaceProvider provider = new LibraryNamespaceProvider(this.resourceSet); // Test some use case diff --git a/backend/application/syson-frontend/pom.xml b/backend/application/syson-frontend/pom.xml index ef3a13e3f0..b31721c225 100644 --- a/backend/application/syson-frontend/pom.xml +++ b/backend/application/syson-frontend/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-frontend - 2026.7.2 + 2026.7.3 syson-frontend SysON Frontend diff --git a/backend/application/syson-sysml-export/pom.xml b/backend/application/syson-sysml-export/pom.xml index ef73dca996..eb2f2f2b70 100644 --- a/backend/application/syson-sysml-export/pom.xml +++ b/backend/application/syson-sysml-export/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-export - 2026.7.2 + 2026.7.3 syson-sysml-export SysON SysML Export diff --git a/backend/application/syson-sysml-import/pom.xml b/backend/application/syson-sysml-import/pom.xml index 23e97c4534..5182452fa3 100644 --- a/backend/application/syson-sysml-import/pom.xml +++ b/backend/application/syson-sysml-import/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-import - 2026.7.2 + 2026.7.3 syson-sysml-import SysON SysML Import diff --git a/backend/application/syson-sysml-validation/pom.xml b/backend/application/syson-sysml-validation/pom.xml index 001b6f21f6..72f0b2a23e 100644 --- a/backend/application/syson-sysml-validation/pom.xml +++ b/backend/application/syson-sysml-validation/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-validation - 2026.7.2 + 2026.7.3 syson-validation SysON SysMLv2 validation rules for Validation view diff --git a/backend/metamodel/pom.xml b/backend/metamodel/pom.xml index 36f26366d0..21df6cf154 100644 --- a/backend/metamodel/pom.xml +++ b/backend/metamodel/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../pom.xml org.eclipse.syson syson-metamodel-parent - 2026.7.2 + 2026.7.3 syson-metamodel-parent SysON Metamodel Parent diff --git a/backend/metamodel/syson-siriusweb-customnodes-metamodel-edit/pom.xml b/backend/metamodel/syson-siriusweb-customnodes-metamodel-edit/pom.xml index a12d2b159b..3cd7edcbe5 100644 --- a/backend/metamodel/syson-siriusweb-customnodes-metamodel-edit/pom.xml +++ b/backend/metamodel/syson-siriusweb-customnodes-metamodel-edit/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-siriusweb-customnodes-metamodel-edit - 2026.7.2 + 2026.7.3 syson-siriusweb-customnodes-metamodel-edit SysON SysMLv2 Custom Nodes Metamodel - Edit Support diff --git a/backend/metamodel/syson-siriusweb-customnodes-metamodel/pom.xml b/backend/metamodel/syson-siriusweb-customnodes-metamodel/pom.xml index e576ac1674..7f67b0b33c 100644 --- a/backend/metamodel/syson-siriusweb-customnodes-metamodel/pom.xml +++ b/backend/metamodel/syson-siriusweb-customnodes-metamodel/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-siriusweb-customnodes-metamodel - 2026.7.2 + 2026.7.3 syson-siriusweb-customnodes-metamodel SysON SysMLv2 Custom Nodes Metamodel for Sirius Web diff --git a/backend/metamodel/syson-sysml-metamodel-edit/pom.xml b/backend/metamodel/syson-sysml-metamodel-edit/pom.xml index c28ae798e4..204186f5d5 100644 --- a/backend/metamodel/syson-sysml-metamodel-edit/pom.xml +++ b/backend/metamodel/syson-sysml-metamodel-edit/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-metamodel-edit - 2026.7.2 + 2026.7.3 syson-sysml-metamodel-edit SysON SysMLv2 Metamodel - Edit Support diff --git a/backend/metamodel/syson-sysml-metamodel/pom.xml b/backend/metamodel/syson-sysml-metamodel/pom.xml index d67a43ef27..cd4268c27e 100644 --- a/backend/metamodel/syson-sysml-metamodel/pom.xml +++ b/backend/metamodel/syson-sysml-metamodel/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-metamodel - 2026.7.2 + 2026.7.3 syson-sysml-metamodel SysON SysMLv2 Metamodel diff --git a/backend/metamodel/syson-sysml-metamodel/src/test/java/org/eclipse/syson/sysml/impl/FeatureTest.java b/backend/metamodel/syson-sysml-metamodel/src/test/java/org/eclipse/syson/sysml/impl/FeatureTest.java index d9592110a1..0699e7ace0 100644 --- a/backend/metamodel/syson-sysml-metamodel/src/test/java/org/eclipse/syson/sysml/impl/FeatureTest.java +++ b/backend/metamodel/syson-sysml-metamodel/src/test/java/org/eclipse/syson/sysml/impl/FeatureTest.java @@ -59,7 +59,7 @@ public void checkFeatureChainTypeAndFeatrures() { assertThat(featureChain.getFeature()).isEqualTo(List.of(t3f1)); } - @DisplayName("Given some Features, WHEN computing their types, THEN the computation account subsetted feature") + @DisplayName("GIVEN some Features, WHEN computing their types, THEN the computation account subsetted feature") @Test public void checkType() { var model = new FeatureTypeTestModel(); @@ -85,7 +85,7 @@ public void checkType() { .contains(model.subItemDef1, model.itemDef2); } - @DisplayName("Given some Features in a subsetting loop, WHEN computing their types, THEN the computation do not run into stackoverflow") + @DisplayName("GIVEN some Features in a subsetting loop, WHEN computing their types, THEN the computation do not run into stackoverflow") @Test public void checkTypeWithTypeLoop() { var model = new FeatureTypeTestModel(); @@ -103,7 +103,7 @@ public void checkTypeWithTypeLoop() { .contains(model.subItemDef1, model.itemDef2); } - @DisplayName("Given some Features, WHEN computing their typingFeatures, THEN the computation account subsetted feature") + @DisplayName("GIVEN some Features, WHEN computing their typingFeatures, THEN the computation account subsetted feature") @Test public void checkTypingFeatures() { var model = new FeatureTypeTestModel(); @@ -115,7 +115,7 @@ public void checkTypingFeatures() { .first().isEqualTo(model.item1); } - @DisplayName("Given some Features in a subsetting loop, WHEN computing their typingFeatures, THEN the computation do not run into stackoverflow") + @DisplayName("GIVEN some Features in a subsetting loop, WHEN computing their typingFeatures, THEN the computation do not run into stackoverflow") @Test public void checkFeaturingTypesLoop() { var model = new FeatureTypeTestModel(); diff --git a/backend/releng/pom.xml b/backend/releng/pom.xml index b222736726..892f3d01a4 100644 --- a/backend/releng/pom.xml +++ b/backend/releng/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../pom.xml org.eclipse.syson syson-releng-parent - 2026.7.2 + 2026.7.3 syson-releng-parent SysON Releng Parent diff --git a/backend/releng/syson-test-coverage/pom.xml b/backend/releng/syson-test-coverage/pom.xml index b663ed5356..c056b9bddb 100644 --- a/backend/releng/syson-test-coverage/pom.xml +++ b/backend/releng/syson-test-coverage/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-test-coverage - 2026.7.2 + 2026.7.3 syson-test-coverage-aggregation SysON Test Coverage Aggregation diff --git a/backend/services/pom.xml b/backend/services/pom.xml index 6c2ccd8587..dda2e1b080 100644 --- a/backend/services/pom.xml +++ b/backend/services/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../pom.xml org.eclipse.syson syson-services-parent - 2026.7.2 + 2026.7.3 syson-services-parent SysON Services Parent diff --git a/backend/services/syson-diagram-services/pom.xml b/backend/services/syson-diagram-services/pom.xml index 693d41f3c0..46dfe83ba0 100644 --- a/backend/services/syson-diagram-services/pom.xml +++ b/backend/services/syson-diagram-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-diagram-services - 2026.7.2 + 2026.7.3 syson-diagram-services SysON Diagram Services diff --git a/backend/services/syson-direct-edit-grammar/pom.xml b/backend/services/syson-direct-edit-grammar/pom.xml index 8fed5e418f..f49eedf008 100644 --- a/backend/services/syson-direct-edit-grammar/pom.xml +++ b/backend/services/syson-direct-edit-grammar/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-direct-edit-grammar - 2026.7.2 + 2026.7.3 syson-direct-edit-grammar SysON Direct Edit Grammar diff --git a/backend/services/syson-form-services/pom.xml b/backend/services/syson-form-services/pom.xml index 90d90ce75b..d59ac32781 100644 --- a/backend/services/syson-form-services/pom.xml +++ b/backend/services/syson-form-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-form-services - 2026.7.2 + 2026.7.3 syson-form-services SysON Form Services diff --git a/backend/services/syson-model-services/pom.xml b/backend/services/syson-model-services/pom.xml index 12b318859c..ab7e9eed11 100644 --- a/backend/services/syson-model-services/pom.xml +++ b/backend/services/syson-model-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-model-services - 2026.7.2 + 2026.7.3 syson-model-services SysON Model Services diff --git a/backend/services/syson-representation-services/pom.xml b/backend/services/syson-representation-services/pom.xml index 9be6be2359..6e8a4f8d49 100644 --- a/backend/services/syson-representation-services/pom.xml +++ b/backend/services/syson-representation-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-representation-services - 2026.7.2 + 2026.7.3 syson-representation-services SysON Representation Services diff --git a/backend/services/syson-services/pom.xml b/backend/services/syson-services/pom.xml index e34b10d60e..b21bec4ece 100644 --- a/backend/services/syson-services/pom.xml +++ b/backend/services/syson-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-services - 2026.7.2 + 2026.7.3 syson-services SysON Services diff --git a/backend/services/syson-sysml-metamodel-services/pom.xml b/backend/services/syson-sysml-metamodel-services/pom.xml index 64a09f1ce4..4f29818dce 100644 --- a/backend/services/syson-sysml-metamodel-services/pom.xml +++ b/backend/services/syson-sysml-metamodel-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-metamodel-services - 2026.7.2 + 2026.7.3 syson-sysml-metamodel-services SysON SysML Metamodel Services diff --git a/backend/services/syson-sysml-rest-api-services/pom.xml b/backend/services/syson-sysml-rest-api-services/pom.xml index 02b7e68c3a..6a7e05a380 100644 --- a/backend/services/syson-sysml-rest-api-services/pom.xml +++ b/backend/services/syson-sysml-rest-api-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-sysml-rest-api-services - 2026.7.2 + 2026.7.3 syson-sysml-rest-api-services SysON SysML REST API Services diff --git a/backend/services/syson-table-services/pom.xml b/backend/services/syson-table-services/pom.xml index 589bef528a..cf4bc51b09 100644 --- a/backend/services/syson-table-services/pom.xml +++ b/backend/services/syson-table-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-table-services - 2026.7.2 + 2026.7.3 syson-table-services SysON Table Services diff --git a/backend/services/syson-tree-services/pom.xml b/backend/services/syson-tree-services/pom.xml index 5d4812b075..4bd917cc1e 100644 --- a/backend/services/syson-tree-services/pom.xml +++ b/backend/services/syson-tree-services/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-tree-services - 2026.7.2 + 2026.7.3 syson-tree-services SysON Tree Services diff --git a/backend/tests/pom.xml b/backend/tests/pom.xml index 7f7a51ffb6..3fc53b904a 100644 --- a/backend/tests/pom.xml +++ b/backend/tests/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../pom.xml org.eclipse.syson syson-tests-parent - 2026.7.2 + 2026.7.3 syson-tests-parent SysON Tests Parent diff --git a/backend/tests/syson-tests/pom.xml b/backend/tests/syson-tests/pom.xml index 77ca240a1d..33c68bd7f1 100644 --- a/backend/tests/syson-tests/pom.xml +++ b/backend/tests/syson-tests/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-tests - 2026.7.2 + 2026.7.3 syson-tests SysON Tests diff --git a/backend/views/pom.xml b/backend/views/pom.xml index bf89928044..c3c223b515 100644 --- a/backend/views/pom.xml +++ b/backend/views/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../pom.xml org.eclipse.syson syson-views-parent - 2026.7.2 + 2026.7.3 syson-views-parent SysON Views Parent diff --git a/backend/views/syson-common-view/pom.xml b/backend/views/syson-common-view/pom.xml index 8e212c31a8..70d153dba1 100644 --- a/backend/views/syson-common-view/pom.xml +++ b/backend/views/syson-common-view/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-common-view - 2026.7.2 + 2026.7.3 syson-common-view SysON Sirius Web common elements for SysMLv2 views diff --git a/backend/views/syson-diagram-common-view/pom.xml b/backend/views/syson-diagram-common-view/pom.xml index 1967553597..f659f15913 100644 --- a/backend/views/syson-diagram-common-view/pom.xml +++ b/backend/views/syson-diagram-common-view/pom.xml @@ -18,13 +18,13 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-diagram-common-view - 2026.7.2 + 2026.7.3 syson-diagram-common-view SysON Sirius Web common elements for SysMLv2 diagrams diff --git a/backend/views/syson-diagram-tests/pom.xml b/backend/views/syson-diagram-tests/pom.xml index 79c20bf37c..f9da305c78 100644 --- a/backend/views/syson-diagram-tests/pom.xml +++ b/backend/views/syson-diagram-tests/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-diagram-tests - 2026.7.2 + 2026.7.3 syson-diagram-tests SysON Diagram Tests diff --git a/backend/views/syson-standard-diagrams-view/pom.xml b/backend/views/syson-standard-diagrams-view/pom.xml index 3e3435ed6e..28c0404372 100644 --- a/backend/views/syson-standard-diagrams-view/pom.xml +++ b/backend/views/syson-standard-diagrams-view/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-standard-diagrams-view - 2026.7.2 + 2026.7.3 syson-standard-diagrams-view SysON Sirius Web diagram description of the SysMLv2 Standard Diagrams Views diff --git a/backend/views/syson-table-requirements-view/pom.xml b/backend/views/syson-table-requirements-view/pom.xml index f3ca3cefa2..28658a3798 100644 --- a/backend/views/syson-table-requirements-view/pom.xml +++ b/backend/views/syson-table-requirements-view/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-table-requirements-view - 2026.7.2 + 2026.7.3 syson-table-requirements-view SysON Table Requirements View diff --git a/backend/views/syson-tree-explorer-view/pom.xml b/backend/views/syson-tree-explorer-view/pom.xml index e287bea8de..5a8b87060a 100644 --- a/backend/views/syson-tree-explorer-view/pom.xml +++ b/backend/views/syson-tree-explorer-view/pom.xml @@ -18,12 +18,12 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 ../../../pom.xml org.eclipse.syson syson-tree-explorer-view - 2026.7.2 + 2026.7.3 syson-tree-explorer-view SysON Sirius Web tree description of the explorer view diff --git a/backend/views/syson-tree-explorer-view/src/main/java/org/eclipse/syson/tree/explorer/view/menu/context/SysONExplorerTreeItemContextMenuEntryProvider.java b/backend/views/syson-tree-explorer-view/src/main/java/org/eclipse/syson/tree/explorer/view/menu/context/SysONExplorerTreeItemContextMenuEntryProvider.java index 40a30a2f7d..27f753efc3 100644 --- a/backend/views/syson-tree-explorer-view/src/main/java/org/eclipse/syson/tree/explorer/view/menu/context/SysONExplorerTreeItemContextMenuEntryProvider.java +++ b/backend/views/syson-tree-explorer-view/src/main/java/org/eclipse/syson/tree/explorer/view/menu/context/SysONExplorerTreeItemContextMenuEntryProvider.java @@ -22,13 +22,14 @@ import org.eclipse.emf.common.notify.Notifier; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.Resource; -import org.eclipse.sirius.components.collaborative.trees.api.ITreeItemContextMenuEntryProvider; -import org.eclipse.sirius.components.collaborative.trees.dto.ITreeItemContextMenuEntry; -import org.eclipse.sirius.components.collaborative.trees.dto.SingleClickTreeItemContextMenuEntry; +import org.eclipse.sirius.components.collaborative.trees.dto.palette.SingleClickTreeItemTool; +import org.eclipse.sirius.components.collaborative.trees.palette.api.ITreeItemPaletteCustomizer; import org.eclipse.sirius.components.core.api.IEditingContext; import org.eclipse.sirius.components.core.api.IObjectSearchService; import org.eclipse.sirius.components.core.api.IReadOnlyObjectPredicate; import org.eclipse.sirius.components.emf.services.api.IEMFEditingContext; +import org.eclipse.sirius.components.palette.dto.IPaletteEntry; +import org.eclipse.sirius.components.palette.dto.Palette; import org.eclipse.sirius.components.trees.Tree; import org.eclipse.sirius.components.trees.TreeItem; import org.eclipse.sirius.components.trees.description.TreeDescription; @@ -53,13 +54,12 @@ import org.springframework.stereotype.Service; /** - * Customization of {@link ExplorerTreeItemContextMenuEntryProvider} for SysON to provide the contextual menu entries in - * the 'Explorer' view. + * Provides the palette for the SysON Explorer view. * * @author flatombe */ @Service -public class SysONExplorerTreeItemContextMenuEntryProvider implements ITreeItemContextMenuEntryProvider { +public class SysONExplorerTreeItemContextMenuEntryProvider implements ITreeItemPaletteCustomizer { public static final String NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID = "newObjectsFromText"; @@ -109,8 +109,12 @@ public boolean canHandle(IEditingContext editingContext, TreeDescription treeDes } @Override - public List getTreeItemContextMenuEntries(IEditingContext editingContext, TreeDescription treeDescription, Tree tree, TreeItem treeItem) { - List result = new ArrayList<>(); + public Palette customize(IEditingContext editingContext, TreeDescription treeDescription, Tree tree, TreeItem treeItem, Palette palette) { + return this.getPalette(editingContext, treeDescription, tree, treeItem); + } + + public Palette getPalette(IEditingContext editingContext, TreeDescription treeDescription, Tree tree, TreeItem treeItem) { + List result = new ArrayList<>(); if (editingContext instanceof IEMFEditingContext emfEditingContext) { result.addAll(this.getDocumentContextMenuEntries(emfEditingContext, treeItem)); result.addAll(this.getObjectContextMenuEntries(emfEditingContext, treeItem)); @@ -118,48 +122,48 @@ public List getTreeItemContextMenuEntries(IEditingCon result.addAll(this.getLibraryRelatedEntries(emfEditingContext, treeItem)); } if (this.sysonExplorerService.canExpandAll(treeItem, editingContext)) { - result.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL, this.messageService.treeToolExpandAll(), List.of(), false, List.of())); + result.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.EXPAND_ALL, this.messageService.treeToolExpandAll(), List.of(), false, List.of())); } - return result; + return new Palette("", List.of(), result); } - private List getDocumentContextMenuEntries(IEMFEditingContext editingContext, TreeItem treeItem) { + private List getDocumentContextMenuEntries(IEMFEditingContext editingContext, TreeItem treeItem) { var optionalResource = this.objectSearchService.getObject(editingContext, treeItem.getId()) .filter(Resource.class::isInstance) .map(Resource.class::cast); if (optionalResource.isPresent()) { var resource = optionalResource.get(); - List entries = new ArrayList<>(); + List entries = new ArrayList<>(); if (this.sysonExplorerService.isEditable(resource)) { - entries.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.NEW_ROOT_OBJECT, this.messageService.treeToolNewObject(), List.of(), false, List.of())); + entries.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.NEW_ROOT_OBJECT, this.messageService.treeToolNewObject(), List.of(), false, List.of())); } - entries.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT, this.messageService.treeToolDownload(), List.of(), false, List.of())); + entries.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.DOWNLOAD_DOCUMENT, this.messageService.treeToolDownload(), List.of(), false, List.of())); return entries; } return List.of(); } - private List getObjectContextMenuEntries(IEMFEditingContext editingContext, TreeItem treeItem) { - List entries = new ArrayList<>(); + private List getObjectContextMenuEntries(IEMFEditingContext editingContext, TreeItem treeItem) { + List entries = new ArrayList<>(); var optionalEObject = this.objectSearchService.getObject(editingContext, treeItem.getId()) .filter(EObject.class::isInstance) .map(EObject.class::cast); if (optionalEObject.isPresent()) { var object = optionalEObject.get(); if (this.sysonExplorerService.isEditable(object)) { - entries.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT, this.messageService.treeToolNewObject(), List.of(), false, List.of())); + entries.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.NEW_OBJECT, this.messageService.treeToolNewObject(), List.of(), false, List.of())); if (this.canHaveNewRepresentation(editingContext, treeItem.getId(), object)) { - entries.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION, this.messageService.treeToolNewRepresentation(), List.of(), false, + entries.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.NEW_REPRESENTATION, this.messageService.treeToolNewRepresentation(), List.of(), false, List.of())); } - entries.add(new SingleClickTreeItemContextMenuEntry(NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID, "", List.of(), false, List.of())); + entries.add(new SingleClickTreeItemTool(NEW_OBJECTS_FROM_TEXT_MENU_ENTRY_CONTRIBUTION_ID, "", List.of(), false, List.of())); if (this.canHaveNewExpression(editingContext, object)) { - entries.add(new SingleClickTreeItemContextMenuEntry(CREATE_EXPRESSION_MENU_ENTRY_CONTRIBUTION_ID, "", List.of(), false, List.of())); + entries.add(new SingleClickTreeItemTool(CREATE_EXPRESSION_MENU_ENTRY_CONTRIBUTION_ID, "", List.of(), false, List.of())); } if (object instanceof Element && !(object instanceof Relationship)) { - entries.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT, this.messageService.treeToolDuplicateObject(), List.of(), false, + entries.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_OBJECT, this.messageService.treeToolDuplicateObject(), List.of(), false, List.of())); } } @@ -190,7 +194,7 @@ private boolean canHaveNewExpression(IEMFEditingContext editingContext, EObject && !this.metamodelQueryElementService.hasSingleExpressionDefinition(element); } - private void addExpressionEditionEntries(List entries, Element element) { + private void addExpressionEditionEntries(List entries, Element element) { var expressionEntries = new ArrayList(); // "Edit expression" on the root Expression element itself; the normal "Delete" operation works on it so no need @@ -204,11 +208,11 @@ private void addExpressionEditionEntries(List entries expressionEntries.add(DELETE_EXPRESSION_MENU_ENTRY_CONTRIBUTION_ID); } - expressionEntries.forEach(id -> entries.add(new SingleClickTreeItemContextMenuEntry(id, "", List.of(), false, List.of()))); + expressionEntries.forEach(id -> entries.add(new SingleClickTreeItemTool(id, "", List.of(), false, List.of()))); } - private List getRepresentationContextMenuEntries(IEMFEditingContext editingContext, TreeItem treeItem) { + private List getRepresentationContextMenuEntries(IEMFEditingContext editingContext, TreeItem treeItem) { var optionalRepresentationMetadata = this.objectSearchService.getObject(editingContext, treeItem.getId()) .filter(RepresentationMetadata.class::isInstance) .map(RepresentationMetadata.class::cast); @@ -217,15 +221,15 @@ private List getRepresentationContextMenuEntries(IEMF if (!SysONRepresentationDescriptionIdentifiers.GENERAL_VIEW_DIAGRAM_DESCRIPTION_ID.equals(representationMetadata.getDescriptionId()) && !SysONRepresentationDescriptionIdentifiers.REQUIREMENTS_TABLE_VIEW_DESCRIPTION_ID.equals(representationMetadata.getDescriptionId())) { return List.of( - new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_REPRESENTATION, this.messageService.treeToolDuplicateRepresentation(), List.of(), + new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.DUPLICATE_REPRESENTATION, this.messageService.treeToolDuplicateRepresentation(), List.of(), false, List.of())); } } return List.of(); } - private List getLibraryRelatedEntries(IEMFEditingContext editingContext, TreeItem treeItem) { - List result = new ArrayList<>(); + private List getLibraryRelatedEntries(IEMFEditingContext editingContext, TreeItem treeItem) { + List result = new ArrayList<>(); var optionalNotifier = this.objectSearchService.getObject(editingContext, treeItem.getId()) .filter(Notifier.class::isInstance) .map(Notifier.class::cast); @@ -248,8 +252,8 @@ private List getLibraryRelatedEntries(IEMFEditingCont var libraryMetadataAdapter = optionalLibraryMetadataAdapter.get(); if (this.isDirectDependency(editingContext, libraryMetadataAdapter) && !this.sysonExplorerService.isEditable(optionalNotifier.get())) { // We do not support the update or removal of a transitive dependency for the moment. - result.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.UPDATE_LIBRARY, this.messageService.treeToolUpdateLibrary(), List.of(), true, List.of())); - result.add(new SingleClickTreeItemContextMenuEntry(ExplorerTreeItemContextMenuEntryProvider.REMOVE_LIBRARY, this.messageService.treeToolRemoveLibrary(), + result.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.UPDATE_LIBRARY, this.messageService.treeToolUpdateLibrary(), List.of(), true, List.of())); + result.add(new SingleClickTreeItemTool(ExplorerTreeItemContextMenuEntryProvider.REMOVE_LIBRARY, this.messageService.treeToolRemoveLibrary(), List.of("/icons/remove_library.svg"), true, List.of())); } } diff --git a/doc/content/modules/developer-guide/examples/new_objects_from_text.py b/doc/content/modules/developer-guide/examples/new_objects_from_text.py index 8438ae1f50..e16123250a 100644 --- a/doc/content/modules/developer-guide/examples/new_objects_from_text.py +++ b/doc/content/modules/developer-guide/examples/new_objects_from_text.py @@ -52,7 +52,10 @@ id } ... on ErrorPayload { - message + messages { + body + level + } } } } @@ -116,7 +119,9 @@ def import_sysml_to_project(url, file_path, editing_context_id, object_id): # <3 if result.get("__typename") == "SuccessPayload": return True elif result.get("__typename") == "ErrorPayload": - print(f"Error: {result.get('message')}") + messages = result.get("messages", []) + for msg in messages: + print(f"Error: {msg.get('body')}") return False else: print("Unexpected response:", data) diff --git a/frontend/syson-components/package.json b/frontend/syson-components/package.json index ecadb7fe7e..e6b779d23c 100644 --- a/frontend/syson-components/package.json +++ b/frontend/syson-components/package.json @@ -1,6 +1,6 @@ { "name": "@eclipse-syson/syson-components", - "version": "2026.7.2", + "version": "2026.7.3", "author": "Eclipse SysON", "license": "EPL-2.0", "repository": { @@ -31,28 +31,28 @@ }, "peerDependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.7.2", - "@eclipse-sirius/sirius-components-charts": "2026.7.2", - "@eclipse-sirius/sirius-components-core": "2026.7.2", - "@eclipse-sirius/sirius-components-datatree": "2026.7.2", - "@eclipse-sirius/sirius-components-deck": "2026.7.2", - "@eclipse-sirius/sirius-components-diagrams": "2026.7.2", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.2", - "@eclipse-sirius/sirius-components-forms": "2026.7.2", - "@eclipse-sirius/sirius-components-gantt": "2026.7.2", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.2", - "@eclipse-sirius/sirius-components-markdown": "2026.7.2", - "@eclipse-sirius/sirius-components-omnibox": "2026.7.2", - "@eclipse-sirius/sirius-components-palette": "2026.7.2", - "@eclipse-sirius/sirius-components-portals": "2026.7.2", - "@eclipse-sirius/sirius-components-selection": "2026.7.2", - "@eclipse-sirius/sirius-components-tables": "2026.7.2", - "@eclipse-sirius/sirius-components-trees": "2026.7.2", - "@eclipse-sirius/sirius-components-tsconfig": "2026.7.2", - "@eclipse-sirius/sirius-components-validation": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-reference": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-table": "2026.7.2", - "@eclipse-sirius/sirius-web-application": "2026.7.2", + "@eclipse-sirius/sirius-components-browser": "2026.7.3", + "@eclipse-sirius/sirius-components-charts": "2026.7.3", + "@eclipse-sirius/sirius-components-core": "2026.7.3", + "@eclipse-sirius/sirius-components-datatree": "2026.7.3", + "@eclipse-sirius/sirius-components-deck": "2026.7.3", + "@eclipse-sirius/sirius-components-diagrams": "2026.7.3", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.3", + "@eclipse-sirius/sirius-components-forms": "2026.7.3", + "@eclipse-sirius/sirius-components-gantt": "2026.7.3", + "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.3", + "@eclipse-sirius/sirius-components-markdown": "2026.7.3", + "@eclipse-sirius/sirius-components-omnibox": "2026.7.3", + "@eclipse-sirius/sirius-components-palette": "2026.7.3", + "@eclipse-sirius/sirius-components-portals": "2026.7.3", + "@eclipse-sirius/sirius-components-selection": "2026.7.3", + "@eclipse-sirius/sirius-components-tables": "2026.7.3", + "@eclipse-sirius/sirius-components-trees": "2026.7.3", + "@eclipse-sirius/sirius-components-tsconfig": "2026.7.3", + "@eclipse-sirius/sirius-components-validation": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-reference": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-table": "2026.7.3", + "@eclipse-sirius/sirius-web-application": "2026.7.3", "@lexical/code-core": "0.42.0", "@lexical/extension": "0.42.0", "@lexical/link": "0.42.0", @@ -93,28 +93,28 @@ }, "devDependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.7.2", - "@eclipse-sirius/sirius-components-charts": "2026.7.2", - "@eclipse-sirius/sirius-components-core": "2026.7.2", - "@eclipse-sirius/sirius-components-datatree": "2026.7.2", - "@eclipse-sirius/sirius-components-deck": "2026.7.2", - "@eclipse-sirius/sirius-components-diagrams": "2026.7.2", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.2", - "@eclipse-sirius/sirius-components-forms": "2026.7.2", - "@eclipse-sirius/sirius-components-gantt": "2026.7.2", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.2", - "@eclipse-sirius/sirius-components-markdown": "2026.7.2", - "@eclipse-sirius/sirius-components-omnibox": "2026.7.2", - "@eclipse-sirius/sirius-components-palette": "2026.7.2", - "@eclipse-sirius/sirius-components-portals": "2026.7.2", - "@eclipse-sirius/sirius-components-selection": "2026.7.2", - "@eclipse-sirius/sirius-components-tables": "2026.7.2", - "@eclipse-sirius/sirius-components-trees": "2026.7.2", - "@eclipse-sirius/sirius-components-tsconfig": "2026.7.2", - "@eclipse-sirius/sirius-components-validation": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-reference": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-table": "2026.7.2", - "@eclipse-sirius/sirius-web-application": "2026.7.2", + "@eclipse-sirius/sirius-components-browser": "2026.7.3", + "@eclipse-sirius/sirius-components-charts": "2026.7.3", + "@eclipse-sirius/sirius-components-core": "2026.7.3", + "@eclipse-sirius/sirius-components-datatree": "2026.7.3", + "@eclipse-sirius/sirius-components-deck": "2026.7.3", + "@eclipse-sirius/sirius-components-diagrams": "2026.7.3", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.3", + "@eclipse-sirius/sirius-components-forms": "2026.7.3", + "@eclipse-sirius/sirius-components-gantt": "2026.7.3", + "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.3", + "@eclipse-sirius/sirius-components-markdown": "2026.7.3", + "@eclipse-sirius/sirius-components-omnibox": "2026.7.3", + "@eclipse-sirius/sirius-components-palette": "2026.7.3", + "@eclipse-sirius/sirius-components-portals": "2026.7.3", + "@eclipse-sirius/sirius-components-selection": "2026.7.3", + "@eclipse-sirius/sirius-components-tables": "2026.7.3", + "@eclipse-sirius/sirius-components-trees": "2026.7.3", + "@eclipse-sirius/sirius-components-tsconfig": "2026.7.3", + "@eclipse-sirius/sirius-components-validation": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-reference": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-table": "2026.7.3", + "@eclipse-sirius/sirius-web-application": "2026.7.3", "@lexical/code-core": "0.42.0", "@lexical/extension": "0.42.0", "@lexical/link": "0.42.0", diff --git a/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.tsx b/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.tsx index c93c83187a..e5b06ccb86 100644 --- a/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.tsx +++ b/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.tsx @@ -35,7 +35,10 @@ const setShowDiagramsIconsMutation = gql` show } ... on ErrorPayload { - message + messages { + body + level + } } } } @@ -114,7 +117,7 @@ export const ShowHideDiagramsIcons = ({ editingContextId, diagramId }: DiagramTo } if (isErrorPayload(showDiagramsIcons)) { setState((prevState) => { - return { ...prevState, message: showDiagramsIcons.message }; + return { ...prevState, message: showDiagramsIcons.messages.map((message) => message.body).join(', ') }; }); } } diff --git a/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.types.ts b/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.types.ts index 5dca57bbc8..85fc945bd6 100644 --- a/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.types.ts +++ b/frontend/syson-components/src/extensions/ShowHideDiagramsIcons.types.ts @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2024 Obeo. + * Copyright (c) 2024, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -11,6 +11,8 @@ * Obeo - initial API and implementation *******************************************************************************/ +import { GQLMessage } from '@eclipse-sirius/sirius-components-core'; + export interface ShowHideDiagramsIconsState { checked: boolean | null; tooltip: string; @@ -27,7 +29,7 @@ export interface GQLSetShowDiagramsIconsPayload { } export interface GQLErrorPayload extends GQLSetShowDiagramsIconsPayload { - message: string; + messages: GQLMessage[]; } export interface GQLShowDiagramsIconsMutationVariables { diff --git a/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.tsx b/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.tsx index 2fa73d620c..ec65a343f1 100644 --- a/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.tsx +++ b/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.tsx @@ -35,7 +35,10 @@ const setShowDiagramsInheritedMembersMutation = gql` show } ... on ErrorPayload { - message + messages { + body + level + } } } } @@ -103,7 +106,10 @@ export const ShowHideDiagramsInheritedMembers = ({ editingContextId, diagramId } } if (isErrorPayload(showDiagramsInheritedMembers)) { setState((prevState) => { - return { ...prevState, message: showDiagramsInheritedMembers.message }; + return { + ...prevState, + message: showDiagramsInheritedMembers.messages.map((message) => message.body).join(', '), + }; }); } } diff --git a/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.types.ts b/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.types.ts index 815afbc374..15cbf17b8b 100644 --- a/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.types.ts +++ b/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembers.types.ts @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2024 Obeo. + * Copyright (c) 2024, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -11,6 +11,8 @@ * Obeo - initial API and implementation *******************************************************************************/ +import { GQLMessage } from '@eclipse-sirius/sirius-components-core'; + export interface ShowHideDiagramsInheritedMembersState { checked: boolean | null; tooltip: string; @@ -27,7 +29,7 @@ export interface GQLSetShowDiagramsInheritedMembersPayload { } export interface GQLErrorPayload extends GQLSetShowDiagramsInheritedMembersPayload { - message: string; + messages: GQLMessage[]; } export interface GQLShowDiagramsInheritedMembersMutationVariables { diff --git a/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembersFromStandardLibraries.tsx b/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembersFromStandardLibraries.tsx index bc076253b8..e1d1947cc5 100644 --- a/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembersFromStandardLibraries.tsx +++ b/frontend/syson-components/src/extensions/ShowHideDiagramsInheritedMembersFromStandardLibraries.tsx @@ -37,7 +37,10 @@ const setShowDiagramsInheritedMembersFromStandardLibrariesMutation = gql` show } ... on ErrorPayload { - message + messages { + body + level + } } } } diff --git a/frontend/syson-components/src/extensions/expressions/EditSysMLExpressionModal.tsx b/frontend/syson-components/src/extensions/expressions/EditSysMLExpressionModal.tsx index ea91a141d1..dc75cbbff6 100644 --- a/frontend/syson-components/src/extensions/expressions/EditSysMLExpressionModal.tsx +++ b/frontend/syson-components/src/extensions/expressions/EditSysMLExpressionModal.tsx @@ -178,12 +178,12 @@ export const EditSysMLExpressionModal = ({ // Update validationResult when the operation is finished useEffect(() => { - if (state.operationInProgress === 'creating' && !creationInProgress) { + if (state.operationInProgress === 'creating' && !creationInProgress && postCreationMessages !== null) { setState((prevState) => ({ ...prevState, operationInProgress: null, validationResult: postCreationMessages })); } }, [state.operationInProgress, creationInProgress, postCreationMessages]); useEffect(() => { - if (state.operationInProgress === 'editing' && !editionInProgress) { + if (state.operationInProgress === 'editing' && !editionInProgress && postEditionMessages !== null) { setState((prevState) => ({ ...prevState, operationInProgress: null, validationResult: postEditionMessages })); } }, [state.operationInProgress, editionInProgress, postEditionMessages]); diff --git a/frontend/syson-components/src/extensions/expressions/useDeleteExpression.ts b/frontend/syson-components/src/extensions/expressions/useDeleteExpression.ts index 79c9115346..0752a0184c 100644 --- a/frontend/syson-components/src/extensions/expressions/useDeleteExpression.ts +++ b/frontend/syson-components/src/extensions/expressions/useDeleteExpression.ts @@ -28,7 +28,10 @@ const deleteExpressionMutation = gql` deleteExpression(input: $input) { __typename ... on ErrorPayload { - message + messages { + body + level + } } } } @@ -42,7 +45,7 @@ export const useDeleteExpression = (): UseDeleteExpressionValue => { deleteExpressionMutation ); - const { addErrorMessage } = useMultiToast(); + const { addErrorMessage, addMessages } = useMultiToast(); useEffect(() => { if (error) { addErrorMessage('An error has occurred while executing this action, please contact the server administrator'); @@ -50,7 +53,7 @@ export const useDeleteExpression = (): UseDeleteExpressionValue => { if (data) { const { deleteExpression } = data; if (isErrorPayload(deleteExpression)) { - addErrorMessage(deleteExpression.message); + addMessages(deleteExpression.messages); } } }, [error, data]); diff --git a/frontend/syson-components/src/extensions/expressions/useDeleteExpression.types.ts b/frontend/syson-components/src/extensions/expressions/useDeleteExpression.types.ts index 44e79b8ed2..40c55de171 100644 --- a/frontend/syson-components/src/extensions/expressions/useDeleteExpression.types.ts +++ b/frontend/syson-components/src/extensions/expressions/useDeleteExpression.types.ts @@ -11,6 +11,8 @@ * Obeo - initial API and implementation *******************************************************************************/ +import { GQLMessage } from '@eclipse-sirius/sirius-components-core'; + export interface UseDeleteExpressionValue { deleteExpression: (editingContextId: string, elementId: string) => void; } @@ -38,5 +40,5 @@ export interface GQLSuccessPayload extends GQLDeleteExpressionPayload { } export interface GQLErrorPayload extends GQLDeleteExpressionPayload { - message: string; + messages: GQLMessage[]; } diff --git a/frontend/syson/package.json b/frontend/syson/package.json index d5e6c0aff6..eb7530ece1 100644 --- a/frontend/syson/package.json +++ b/frontend/syson/package.json @@ -1,7 +1,7 @@ { "name": "@eclipse-syson/syson", "author": "Eclipse SysON", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "repository": { "type": "git", @@ -13,29 +13,29 @@ "private": true, "dependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.7.2", - "@eclipse-sirius/sirius-components-charts": "2026.7.2", - "@eclipse-sirius/sirius-components-core": "2026.7.2", - "@eclipse-sirius/sirius-components-datatree": "2026.7.2", - "@eclipse-sirius/sirius-components-deck": "2026.7.2", - "@eclipse-sirius/sirius-components-diagrams": "2026.7.2", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.2", - "@eclipse-sirius/sirius-components-forms": "2026.7.2", - "@eclipse-sirius/sirius-components-gantt": "2026.7.2", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.2", - "@eclipse-sirius/sirius-components-markdown": "2026.7.2", - "@eclipse-sirius/sirius-components-omnibox": "2026.7.2", - "@eclipse-sirius/sirius-components-palette": "2026.7.2", - "@eclipse-sirius/sirius-components-portals": "2026.7.2", - "@eclipse-sirius/sirius-components-selection": "2026.7.2", - "@eclipse-sirius/sirius-components-tables": "2026.7.2", - "@eclipse-sirius/sirius-components-trees": "2026.7.2", - "@eclipse-sirius/sirius-components-tsconfig": "2026.7.2", - "@eclipse-sirius/sirius-components-validation": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-reference": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-table": "2026.7.2", - "@eclipse-sirius/sirius-web-application": "2026.7.2", - "@eclipse-syson/syson-components": "2026.7.2", + "@eclipse-sirius/sirius-components-browser": "2026.7.3", + "@eclipse-sirius/sirius-components-charts": "2026.7.3", + "@eclipse-sirius/sirius-components-core": "2026.7.3", + "@eclipse-sirius/sirius-components-datatree": "2026.7.3", + "@eclipse-sirius/sirius-components-deck": "2026.7.3", + "@eclipse-sirius/sirius-components-diagrams": "2026.7.3", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.3", + "@eclipse-sirius/sirius-components-forms": "2026.7.3", + "@eclipse-sirius/sirius-components-gantt": "2026.7.3", + "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.3", + "@eclipse-sirius/sirius-components-markdown": "2026.7.3", + "@eclipse-sirius/sirius-components-omnibox": "2026.7.3", + "@eclipse-sirius/sirius-components-palette": "2026.7.3", + "@eclipse-sirius/sirius-components-portals": "2026.7.3", + "@eclipse-sirius/sirius-components-selection": "2026.7.3", + "@eclipse-sirius/sirius-components-tables": "2026.7.3", + "@eclipse-sirius/sirius-components-trees": "2026.7.3", + "@eclipse-sirius/sirius-components-tsconfig": "2026.7.3", + "@eclipse-sirius/sirius-components-validation": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-reference": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-table": "2026.7.3", + "@eclipse-sirius/sirius-web-application": "2026.7.3", + "@eclipse-syson/syson-components": "2026.7.3", "@fontsource/roboto": "5.2.10", "@lexical/code-core": "0.42.0", "@lexical/extension": "0.42.0", diff --git a/integration-tests-cypress/cypress/e2e/project/details/details.cy.ts b/integration-tests-cypress/cypress/e2e/project/details/details.cy.ts index b5d2c2713e..1b34a83efb 100644 --- a/integration-tests-cypress/cypress/e2e/project/details/details.cy.ts +++ b/integration-tests-cypress/cypress/e2e/project/details/details.cy.ts @@ -156,7 +156,7 @@ describe('Details View Tests', () => { it('Then creating an expression leaves a single Expression value widget', () => { cy.getByTestId('Create-expression-button').click(); - cy.getByTestId('edit-sysml-expression-modal-textarea').clear().type('true'); + cy.getByTestId('edit-sysml-expression-modal-textarea').find('textarea:visible').should('have.length', 1).clear().type('true'); cy.getByTestId('edit-expression-submit').click(); cy.getByTestId('edit-sysml-expression-modal').should('not.exist'); @@ -164,10 +164,10 @@ describe('Details View Tests', () => { cy.getByTestId('Edit-expression-button').should('have.length', 1).and('be.enabled'); explorer.getSelectedTreeItems().find('button').click(); - cy.getByTestId('treeitem-contextmenu').findByTestId('edit-sysml-expression-menu').should('exist'); - cy.getByTestId('treeitem-contextmenu').findByTestId('new-sysml-expression-menu').should('not.exist'); - cy.getByTestId('treeitem-contextmenu').findByTestId('edit-sysml-expression-menu').click(); - cy.getByTestId('edit-sysml-expression-modal-textarea').clear().type('false'); + cy.getByTestId('Palette').findByTestId('edit-sysml-expression-menu').should('exist'); + cy.getByTestId('Palette').findByTestId('new-sysml-expression-menu').should('not.exist'); + cy.getByTestId('Palette').findByTestId('edit-sysml-expression-menu').click(); + cy.getByTestId('edit-sysml-expression-modal-textarea').find('textarea:visible').should('have.length', 1).clear().type('false'); cy.getByTestId('edit-expression-submit').click(); cy.getByTestId('edit-sysml-expression-modal').should('not.exist'); diff --git a/integration-tests-cypress/cypress/support/explorerCommands.js b/integration-tests-cypress/cypress/support/explorerCommands.js index 9bf7373172..be17f82b0f 100644 --- a/integration-tests-cypress/cypress/support/explorerCommands.js +++ b/integration-tests-cypress/cypress/support/explorerCommands.js @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2023, 2025 Obeo. + * Copyright (c) 2023, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -24,7 +24,7 @@ Cypress.Commands.add('createChildObject', (parent, objectType) => { Cypress.Commands.add('createRepresentationFromExplorer', (parent, representationType) => { cy.getByTestId(`${parent}-more`).click(); - cy.getByTestId('treeitem-contextmenu').findByTestId('new-representation').click(); + cy.getByTestId('Palette').findByTestId('new-representation').click(); cy.getByTestId('representationDescription').children('[role="combobox"]').invoke('text').should('have.length.gt', 1); cy.getByTestId('representationDescription').click(); cy.getByTestId(representationType).should('exist').click(); diff --git a/integration-tests-cypress/cypress/support/serverCommands.js b/integration-tests-cypress/cypress/support/serverCommands.js index 0be626ffb8..b72cee146e 100644 --- a/integration-tests-cypress/cypress/support/serverCommands.js +++ b/integration-tests-cypress/cypress/support/serverCommands.js @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2024, 2025 Obeo. + * Copyright (c) 2024, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -73,7 +73,10 @@ Cypress.Commands.add('deleteNodeFromDiagram', (editingContextId, representationI } } ... on ErrorPayload { - message + messages { + body + level + } } } } diff --git a/integration-tests-cypress/cypress/workbench/Explorer.ts b/integration-tests-cypress/cypress/workbench/Explorer.ts index 291ce41831..896689085c 100644 --- a/integration-tests-cypress/cypress/workbench/Explorer.ts +++ b/integration-tests-cypress/cypress/workbench/Explorer.ts @@ -57,7 +57,7 @@ export class Explorer { public rename(treeItemLabel: string, newName: string): void { this.getTreeItemByLabel(treeItemLabel).find('button').click(); - cy.getByTestId('treeitem-contextmenu').findByTestId('rename-tree-item').click(); + cy.getByTestId('Palette').findByTestId('rename-tree-item').click(); cy.getByTestId('name-edit'); cy.getByTestId('name-edit').get('input').should('have.value', treeItemLabel); cy.getByTestId('name-edit').type(`${newName}{enter}`); @@ -67,12 +67,12 @@ export class Explorer { public delete(treeItemLabel: string): void { this.getTreeItemByLabel(treeItemLabel).find('button').click(); - cy.getByTestId('treeitem-contextmenu').findByTestId('delete').click(); + cy.getByTestId('Palette').findByTestId('delete').click(); } public expandAll(treeItemLabel: string): void { this.getTreeItemByLabel(treeItemLabel).find('button').click(); - cy.getByTestId('treeitem-contextmenu').findByTestId('expand-all').click(); + cy.getByTestId('Palette').findByTestId('expand-all').click(); } public dragTreeItem(treeItemLabel: string, dataTransfer: DataTransfer): void { @@ -81,7 +81,7 @@ export class Explorer { public insertTextualSysMLv2(documentTreeItemLabel: string, textualContent: string) { this.getTreeItemByLabel(documentTreeItemLabel).should('exist').find('button').should('exist').click(); - cy.getByTestId('treeitem-contextmenu').should('exist'); + cy.getByTestId('Palette').should('exist'); cy.get('@consoleDebug').should('be.calledWith', 'query getAllContextMenuEntries: response received'); cy.getByTestId('insert-textual-sysmlv2-menu').should('exist').click(); @@ -101,7 +101,7 @@ export class Explorer { public createRootObject(documentTreeItemLabel: string, childCreationDescriptionLabel: string) { this.getTreeItemByLabel(documentTreeItemLabel).find('button').click(); - cy.getByTestId('treeitem-contextmenu').should('exist'); + cy.getByTestId('Palette').should('exist'); cy.get('@consoleDebug').should('be.calledWith', 'query getAllContextMenuEntries: response received'); cy.getByTestId('new-object').click(); @@ -122,7 +122,7 @@ export class Explorer { public createObject(objectTreeItemLabel: string, childCreationDescriptionLabel: string) { this.getTreeItemByLabel(objectTreeItemLabel).first().find('button').should('exist').click(); - cy.getByTestId('treeitem-contextmenu').should('exist'); + cy.getByTestId('Palette').should('exist'); cy.get('@consoleDebug').should('be.calledWith', 'query getAllContextMenuEntries: response received'); cy.getByTestId('new-object').should('exist').click(); @@ -147,7 +147,7 @@ export class Explorer { representationLabel: string ): void { this.getTreeItemByLabel(treeItemLabel).should('exist').find('button').should('exist').click(); - cy.getByTestId('treeitem-contextmenu').should('exist'); + cy.getByTestId('Palette').should('exist'); cy.get('@consoleDebug').should('be.calledWith', 'query getAllContextMenuEntries: response received'); cy.getByTestId('new-representation').should('exist').click(); diff --git a/integration-tests-cypress/package-lock.json b/integration-tests-cypress/package-lock.json index 1947731ac6..f944c130f2 100644 --- a/integration-tests-cypress/package-lock.json +++ b/integration-tests-cypress/package-lock.json @@ -1,12 +1,12 @@ { "name": "syson-integration-tests-cypress", - "version": "2026.7.2", + "version": "2026.7.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "syson-integration-tests-cypress", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "dependencies": { "prettier": "2.7.1" diff --git a/integration-tests-cypress/package.json b/integration-tests-cypress/package.json index 05684d6b8c..5846975e34 100644 --- a/integration-tests-cypress/package.json +++ b/integration-tests-cypress/package.json @@ -1,6 +1,6 @@ { "name": "syson-integration-tests-cypress", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "private": true, "devDependencies": { diff --git a/integration-tests-playwright/package-lock.json b/integration-tests-playwright/package-lock.json index b72ffc34bd..67998c4363 100644 --- a/integration-tests-playwright/package-lock.json +++ b/integration-tests-playwright/package-lock.json @@ -1,12 +1,12 @@ { "name": "syson-integration-tests-playwright", - "version": "2026.7.2", + "version": "2026.7.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "syson-integration-tests-playwright", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "dependencies": { "prettier": "2.7.1" diff --git a/integration-tests-playwright/package.json b/integration-tests-playwright/package.json index db72c501d0..4e36e217e4 100644 --- a/integration-tests-playwright/package.json +++ b/integration-tests-playwright/package.json @@ -1,6 +1,6 @@ { "name": "syson-integration-tests-playwright", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "private": true, "devDependencies": { diff --git a/integration-tests-playwright/playwright/e2e/diagram.spec.ts b/integration-tests-playwright/playwright/e2e/diagram.spec.ts index ffdaef2505..3a83afefc8 100644 --- a/integration-tests-playwright/playwright/e2e/diagram.spec.ts +++ b/integration-tests-playwright/playwright/e2e/diagram.spec.ts @@ -45,13 +45,22 @@ test.describe('diagram - interconnection view', () => { await page.getByTestId('zoom-out').click(); - const compartmentSizeBefore = await interconnectionCompartment.getReactFlowSize(); + const compartmentSizeBefore = await interconnectionCompartment.getDOMBoundingBox(); await partNode.click(); await partNode.resize({ height: 20, width: 20 }); - const compartmentSizeAfter = await interconnectionCompartment.getReactFlowSize(); - expect(compartmentSizeAfter.height).toBeGreaterThan(compartmentSizeBefore.height); - expect(compartmentSizeAfter.width).toBeGreaterThan(compartmentSizeBefore.width); + await expect + .poll(async () => { + const compartmentSizeAfter = await interconnectionCompartment.getDOMBoundingBox(); + return Math.abs(compartmentSizeAfter.height - compartmentSizeBefore.height); + }) + .toBeGreaterThan(1); + await expect + .poll(async () => { + const compartmentSizeAfter = await interconnectionCompartment.getDOMBoundingBox(); + return Math.abs(compartmentSizeAfter.width - compartmentSizeBefore.width); + }) + .toBeGreaterThan(1); }); }); diff --git a/integration-tests-playwright/playwright/e2e/rotate-node.spec.ts b/integration-tests-playwright/playwright/e2e/rotate-node.spec.ts index 295914ba5b..d1776317c2 100644 --- a/integration-tests-playwright/playwright/e2e/rotate-node.spec.ts +++ b/integration-tests-playwright/playwright/e2e/rotate-node.spec.ts @@ -64,7 +64,7 @@ test.describe('diagram - general view', () => { await page.getByTestId('tool-New Fork').click(); const playwrightForkNode = new PlaywrightNode(page, 'forkNode1'); await expect(playwrightForkNode.nodeLocator).toBeAttached(); - const {width, height} = await playwrightForkNode.getReactFlowSize(); + const { width, height } = await playwrightForkNode.getDOMBoundingBox(); const expectedRotatedWidth = height; const expectedRotatedHeight = width; @@ -73,10 +73,12 @@ test.describe('diagram - general view', () => { await page.getByTestId('toolSection-Edit').click(); await page.getByTestId('overridden_tool_node-rotate').click(); await playwrightForkNode.closePalette(); - const rotatedSize = await playwrightForkNode.getReactFlowSize(); - expect(rotatedSize.width).toBeCloseTo(expectedRotatedWidth, 0); - expect(rotatedSize.height).toBeCloseTo(expectedRotatedHeight, 0); + await expect + .poll(async () => (await playwrightForkNode.getDOMBoundingBox()).width) + .toBeCloseTo(expectedRotatedWidth, 0); + await expect + .poll(async () => (await playwrightForkNode.getDOMBoundingBox()).height) + .toBeCloseTo(expectedRotatedHeight, 0); }); - -}); \ No newline at end of file +}); diff --git a/integration-tests-playwright/playwright/helpers/PlaywrightExplorer.ts b/integration-tests-playwright/playwright/helpers/PlaywrightExplorer.ts index 91b9e9bb80..b593013dfc 100644 --- a/integration-tests-playwright/playwright/helpers/PlaywrightExplorer.ts +++ b/integration-tests-playwright/playwright/helpers/PlaywrightExplorer.ts @@ -45,7 +45,7 @@ export class PlaywrightExplorer { representationLabel: string ) { await this.explorerLocator.getByTestId(`${treeItemLabel}-more`).click(); - const contextMenu = this.page.getByTestId('treeitem-contextmenu'); + const contextMenu = this.page.getByTestId('Palette'); await expect(contextMenu).toBeVisible(); await contextMenu.getByTestId('new-representation').click(); @@ -72,6 +72,12 @@ export class PlaywrightExplorer { await this.explorerLocator.locator(`[data-treeitemlabel="${treeItemLabel}"]`).dblclick(); } + async expandAll(treeItemLabel: string) { + await this.explorerLocator.getByTestId(`${treeItemLabel}-more`).click(); + await this.page.getByTestId('expand-all').isVisible(); + await this.page.getByTestId('expand-all').click(); + } + async uploadDocument(fileName: string) { await this.page.getByTestId('upload-document-icon').click(); await this.page.locator('input[name="file"]').setInputFiles(`./playwright/resources/${fileName}`); diff --git a/integration-tests-playwright/playwright/helpers/PlaywrightProject.ts b/integration-tests-playwright/playwright/helpers/PlaywrightProject.ts index f555c9db8b..36e5bd07b9 100644 --- a/integration-tests-playwright/playwright/helpers/PlaywrightProject.ts +++ b/integration-tests-playwright/playwright/helpers/PlaywrightProject.ts @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2025 Obeo. + * Copyright (c) 2025, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -15,15 +15,18 @@ import { APIRequestContext, expect, type Page } from '@playwright/test'; const createProjectQuery = ` mutation createProject($input: CreateProjectInput!) { createProject(input: $input) { - __typename + __typename ... on CreateProjectSuccessPayload { project { - id - } - } + id + } + } ... on ErrorPayload { - message - } + messages { + body + level + } + } } } `; diff --git a/package-lock.json b/package-lock.json index 7f2ba5bad2..0007bd58fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@eclipse-syson/syson-parent", - "version": "2026.7.2", + "version": "2026.7.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@eclipse-syson/syson-parent", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "workspaces": [ "./frontend/*" @@ -21,33 +21,33 @@ }, "frontend/syson": { "name": "@eclipse-syson/syson", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "dependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.7.2", - "@eclipse-sirius/sirius-components-charts": "2026.7.2", - "@eclipse-sirius/sirius-components-core": "2026.7.2", - "@eclipse-sirius/sirius-components-datatree": "2026.7.2", - "@eclipse-sirius/sirius-components-deck": "2026.7.2", - "@eclipse-sirius/sirius-components-diagrams": "2026.7.2", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.2", - "@eclipse-sirius/sirius-components-forms": "2026.7.2", - "@eclipse-sirius/sirius-components-gantt": "2026.7.2", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.2", - "@eclipse-sirius/sirius-components-markdown": "2026.7.2", - "@eclipse-sirius/sirius-components-omnibox": "2026.7.2", - "@eclipse-sirius/sirius-components-palette": "2026.7.2", - "@eclipse-sirius/sirius-components-portals": "2026.7.2", - "@eclipse-sirius/sirius-components-selection": "2026.7.2", - "@eclipse-sirius/sirius-components-tables": "2026.7.2", - "@eclipse-sirius/sirius-components-trees": "2026.7.2", - "@eclipse-sirius/sirius-components-tsconfig": "2026.7.2", - "@eclipse-sirius/sirius-components-validation": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-reference": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-table": "2026.7.2", - "@eclipse-sirius/sirius-web-application": "2026.7.2", - "@eclipse-syson/syson-components": "2026.7.2", + "@eclipse-sirius/sirius-components-browser": "2026.7.3", + "@eclipse-sirius/sirius-components-charts": "2026.7.3", + "@eclipse-sirius/sirius-components-core": "2026.7.3", + "@eclipse-sirius/sirius-components-datatree": "2026.7.3", + "@eclipse-sirius/sirius-components-deck": "2026.7.3", + "@eclipse-sirius/sirius-components-diagrams": "2026.7.3", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.3", + "@eclipse-sirius/sirius-components-forms": "2026.7.3", + "@eclipse-sirius/sirius-components-gantt": "2026.7.3", + "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.3", + "@eclipse-sirius/sirius-components-markdown": "2026.7.3", + "@eclipse-sirius/sirius-components-omnibox": "2026.7.3", + "@eclipse-sirius/sirius-components-palette": "2026.7.3", + "@eclipse-sirius/sirius-components-portals": "2026.7.3", + "@eclipse-sirius/sirius-components-selection": "2026.7.3", + "@eclipse-sirius/sirius-components-tables": "2026.7.3", + "@eclipse-sirius/sirius-components-trees": "2026.7.3", + "@eclipse-sirius/sirius-components-tsconfig": "2026.7.3", + "@eclipse-sirius/sirius-components-validation": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-reference": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-table": "2026.7.3", + "@eclipse-sirius/sirius-web-application": "2026.7.3", + "@eclipse-syson/syson-components": "2026.7.3", "@fontsource/roboto": "5.2.10", "@lexical/code-core": "0.42.0", "@lexical/extension": "0.42.0", @@ -112,32 +112,32 @@ }, "frontend/syson-components": { "name": "@eclipse-syson/syson-components", - "version": "2026.7.2", + "version": "2026.7.3", "license": "EPL-2.0", "devDependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.7.2", - "@eclipse-sirius/sirius-components-charts": "2026.7.2", - "@eclipse-sirius/sirius-components-core": "2026.7.2", - "@eclipse-sirius/sirius-components-datatree": "2026.7.2", - "@eclipse-sirius/sirius-components-deck": "2026.7.2", - "@eclipse-sirius/sirius-components-diagrams": "2026.7.2", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.2", - "@eclipse-sirius/sirius-components-forms": "2026.7.2", - "@eclipse-sirius/sirius-components-gantt": "2026.7.2", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.2", - "@eclipse-sirius/sirius-components-markdown": "2026.7.2", - "@eclipse-sirius/sirius-components-omnibox": "2026.7.2", - "@eclipse-sirius/sirius-components-palette": "2026.7.2", - "@eclipse-sirius/sirius-components-portals": "2026.7.2", - "@eclipse-sirius/sirius-components-selection": "2026.7.2", - "@eclipse-sirius/sirius-components-tables": "2026.7.2", - "@eclipse-sirius/sirius-components-trees": "2026.7.2", - "@eclipse-sirius/sirius-components-tsconfig": "2026.7.2", - "@eclipse-sirius/sirius-components-validation": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-reference": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-table": "2026.7.2", - "@eclipse-sirius/sirius-web-application": "2026.7.2", + "@eclipse-sirius/sirius-components-browser": "2026.7.3", + "@eclipse-sirius/sirius-components-charts": "2026.7.3", + "@eclipse-sirius/sirius-components-core": "2026.7.3", + "@eclipse-sirius/sirius-components-datatree": "2026.7.3", + "@eclipse-sirius/sirius-components-deck": "2026.7.3", + "@eclipse-sirius/sirius-components-diagrams": "2026.7.3", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.3", + "@eclipse-sirius/sirius-components-forms": "2026.7.3", + "@eclipse-sirius/sirius-components-gantt": "2026.7.3", + "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.3", + "@eclipse-sirius/sirius-components-markdown": "2026.7.3", + "@eclipse-sirius/sirius-components-omnibox": "2026.7.3", + "@eclipse-sirius/sirius-components-palette": "2026.7.3", + "@eclipse-sirius/sirius-components-portals": "2026.7.3", + "@eclipse-sirius/sirius-components-selection": "2026.7.3", + "@eclipse-sirius/sirius-components-tables": "2026.7.3", + "@eclipse-sirius/sirius-components-trees": "2026.7.3", + "@eclipse-sirius/sirius-components-tsconfig": "2026.7.3", + "@eclipse-sirius/sirius-components-validation": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-reference": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-table": "2026.7.3", + "@eclipse-sirius/sirius-web-application": "2026.7.3", "@lexical/code-core": "0.42.0", "@lexical/extension": "0.42.0", "@lexical/link": "0.42.0", @@ -187,28 +187,28 @@ }, "peerDependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.7.2", - "@eclipse-sirius/sirius-components-charts": "2026.7.2", - "@eclipse-sirius/sirius-components-core": "2026.7.2", - "@eclipse-sirius/sirius-components-datatree": "2026.7.2", - "@eclipse-sirius/sirius-components-deck": "2026.7.2", - "@eclipse-sirius/sirius-components-diagrams": "2026.7.2", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.2", - "@eclipse-sirius/sirius-components-forms": "2026.7.2", - "@eclipse-sirius/sirius-components-gantt": "2026.7.2", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.2", - "@eclipse-sirius/sirius-components-markdown": "2026.7.2", - "@eclipse-sirius/sirius-components-omnibox": "2026.7.2", - "@eclipse-sirius/sirius-components-palette": "2026.7.2", - "@eclipse-sirius/sirius-components-portals": "2026.7.2", - "@eclipse-sirius/sirius-components-selection": "2026.7.2", - "@eclipse-sirius/sirius-components-tables": "2026.7.2", - "@eclipse-sirius/sirius-components-trees": "2026.7.2", - "@eclipse-sirius/sirius-components-tsconfig": "2026.7.2", - "@eclipse-sirius/sirius-components-validation": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-reference": "2026.7.2", - "@eclipse-sirius/sirius-components-widget-table": "2026.7.2", - "@eclipse-sirius/sirius-web-application": "2026.7.2", + "@eclipse-sirius/sirius-components-browser": "2026.7.3", + "@eclipse-sirius/sirius-components-charts": "2026.7.3", + "@eclipse-sirius/sirius-components-core": "2026.7.3", + "@eclipse-sirius/sirius-components-datatree": "2026.7.3", + "@eclipse-sirius/sirius-components-deck": "2026.7.3", + "@eclipse-sirius/sirius-components-diagrams": "2026.7.3", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.7.3", + "@eclipse-sirius/sirius-components-forms": "2026.7.3", + "@eclipse-sirius/sirius-components-gantt": "2026.7.3", + "@eclipse-sirius/sirius-components-impactanalysis": "2026.7.3", + "@eclipse-sirius/sirius-components-markdown": "2026.7.3", + "@eclipse-sirius/sirius-components-omnibox": "2026.7.3", + "@eclipse-sirius/sirius-components-palette": "2026.7.3", + "@eclipse-sirius/sirius-components-portals": "2026.7.3", + "@eclipse-sirius/sirius-components-selection": "2026.7.3", + "@eclipse-sirius/sirius-components-tables": "2026.7.3", + "@eclipse-sirius/sirius-components-trees": "2026.7.3", + "@eclipse-sirius/sirius-components-tsconfig": "2026.7.3", + "@eclipse-sirius/sirius-components-validation": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-reference": "2026.7.3", + "@eclipse-sirius/sirius-components-widget-table": "2026.7.3", + "@eclipse-sirius/sirius-web-application": "2026.7.3", "@lexical/code-core": "0.42.0", "@lexical/extension": "0.42.0", "@lexical/link": "0.42.0", @@ -496,9 +496,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-browser": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-browser/2026.7.2/056d5d33c270076b94b1bddd6bfeb0013eb4a880", - "integrity": "sha512-MfDrAa22LcJqDtybXbIuNlwmrj6oKEUUwOwoqjO8kLgmq0vrN1O4O8f+mbTzXLM0MFHOtOwfVE65wZObA0FsKg==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-browser/2026.7.3/a384996fdacc997e15ade58531f10c02f75aa826", + "integrity": "sha512-1rb9rtqWOQqWdiEo5dOJzRi6vhO4nTNUHsUvlDZuzxQZEW0IT0qBX0zQaqkuagJoepOTd9WFYV2c71FG7CDUBA==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -519,9 +519,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-charts": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-charts/2026.7.2/7d0a779199c6e48f1f15d221d9413c5e64816e45", - "integrity": "sha512-3O1HiUqdUs9swE8YPuWo4iJ/+5rAvF34A2YrXHgrRZPJ9u3nyg4c5HU173b3HXJms1RY8uQqxMushhuhH0BdFA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-charts/2026.7.3/9059b0a171fcaa804610c8741a944e8ebd4cc412", + "integrity": "sha512-fjJFmn5dndv8aFEzJsqrOV7wxkLGT/P5RWsByH48FjJMr+7slhO7mkyK9ahznvCoKfS//6jhUlzOyHCLUPCcJw==", "license": "EPL-2.0", "peerDependencies": { "d3": "7.0.0", @@ -529,9 +529,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-core": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-core/2026.7.2/8a6ab54950ad7070950268a162245a8e02c27a3a", - "integrity": "sha512-0q5ynNH6ijBRfD+/HbieIh/qTlji4NUaReP+eNUDPbCtRiCzbqHJxfEkqAelExfC8QElSKquokXkrxu7+rqxHQ==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-core/2026.7.3/33439185d36dca1e3ed10526e39ad5c59fb56b35", + "integrity": "sha512-8R6BB9p37UW/nVR8KL5fC7oFp0yHe/4p858cBWXNVEm2s6MUYAO0TBOZz1yMOJMgPjclMLcoBRDkeIJn/cZ9FA==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -546,9 +546,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-datatree": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-datatree/2026.7.2/1b9d9d21075173da7f0a1154336ef1774de90ddf", - "integrity": "sha512-0v1ZeGG0460h90qzYqVNsO2DoZX0bpN3yu1nUnjPD1th45jr0i3d+ZIqoCdbgxq3AKLWJh+jKzP4Sb7hWGkUjQ==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-datatree/2026.7.3/02b740f9a558ab9404bcd78bb35e002cad7f8c37", + "integrity": "sha512-HJXhEigsbVmqshp6CzKtqSDZB9ybueM6KK67/fRhpZH5jRQqB3vH0Evc22+Z58pNIcuFu7slyZBKYRsR4QlhFw==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -564,9 +564,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-deck": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-deck/2026.7.2/88d225ab4875fb81653057ff8f3bda24815a8d5b", - "integrity": "sha512-+sq8nUkn6RG198/lrh5Y6D3VbU/GwtIJ7VMmUcWKZ2gwH/qD+fMWXZM3htIlKUuc2I8ZXYcYhGr9/VeKOMuKYQ==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-deck/2026.7.3/3c853a83d3ea6e3a959297b92482820c2ac4ac58", + "integrity": "sha512-4lG87+Jsy2nu3ie7yxwpCYT0K1DO1xafoMy9jpPExiJSMicZJ3OUSLq3DGGdX5sBLVSHByuWI0N+3dDMiGM2Wg==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -583,9 +583,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-diagrams": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-diagrams/2026.7.2/fd8dd72926cd39cb0789c56298c8c1aeaf3bc65d", - "integrity": "sha512-jzdQzhpAKqCgDB7SXamBgrrgr+Bc4i7dZwjXGU6ergNe8dea4DVMdlP7y80/22pxng4LHnaiLefmwOYtjiS9Dw==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-diagrams/2026.7.3/3307b026b317cd7bfded9c533300571b0af2df26", + "integrity": "sha512-3dQPBbabWybU0LhcACptqs2JqQtlvU5T2QbFiFXxbrNGvyHQJcWvytCKJJyInayZZ8iMY8z0KQw3B1He9z6tPQ==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -611,9 +611,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-formdescriptioneditors": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-formdescriptioneditors/2026.7.2/82f0b387263156f5fe2c4023b2f007cd9260bc9f", - "integrity": "sha512-q2TBgvMNKLTsMr8ifKHxw0fxmVKwGbWHXCGdXiRLdaFPcKh7Gm/OZMKXZXNp01TeYyt1M5Ddhy9X3UqFCACGew==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-formdescriptioneditors/2026.7.3/7ed64f3cb295fbbab8c329641b925639cbfb8d22", + "integrity": "sha512-HBEyKgZ2Y5Irv23ArsfB+Bum1Z+E5DxVY3FQFRFJrTykzJZtReboMMdu02RvBXA8zE6uF7pIxSgTfx1cuh0Meg==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -646,9 +646,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-forms": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-forms/2026.7.2/ec15dc073b255d76c5b798638cc5a7d2e97f07c0", - "integrity": "sha512-KuoIx7lrp36A/bNfHkf5WAfFwcqUSpc9diRk9jXlfz0wagPLSvnnP30OyfUqft0w7WuEO+3laTRgNcBTqx39MQ==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-forms/2026.7.3/5b0cee221675292575e7afc0ad74330694e655ad", + "integrity": "sha512-vITx1symHq/Jw+jhMtJcxd3iL2rWJhe+mA8BvXYBYz+ySNVOn+seLL/7vO6EhGpx5zg+AWgW2pYDPtf8OQ3s+w==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -680,9 +680,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-gantt": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-gantt/2026.7.2/6bbce7e578f51f8f2b361bd384fef41ae65a7362", - "integrity": "sha512-Jo6m4ShrEPIKT18EY+nLFk8kHvykO4k61/knuEwdANrMLTrUlXOqM6wrqBjrAs2hDQ2t0WX5Bq4L982ELUmO2Q==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-gantt/2026.7.3/592d5189d146014e33fbe6956140f9072493c759", + "integrity": "sha512-ZGxkVp5i9OpiCMJNldu7YORQBSso+CA7VUtTPDnZtNxntSwk7jL2nMewTKxt+T79pa0XXix+h9CGRtK2FaexDg==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -699,9 +699,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-impactanalysis": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-impactanalysis/2026.7.2/c702f59e1de3b1e21fa0284c6bdaa3f73dd0f061", - "integrity": "sha512-7lJnDxXlX4QcnuMWSpVVQj/HbjQo8E2RuvWcRRasA8pL5qSo8fmdAv6dT9iqfTF8wcieuncFja92s1zugRXt7g==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-impactanalysis/2026.7.3/b94df3adc4571f4b1a3a89c3e626b5c5b135a385", + "integrity": "sha512-9aixjv5gowIaQw04r2n5iFfuXv80Y6PJQyvy2vnvAG6WUXZ3Wo0pA5fcU6uWhNxMtOh8A/KbwkxFB0G8C/uQ3w==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -718,9 +718,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-markdown": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-markdown/2026.7.2/10a881c8aa591a8dc0615b94d7dbcd8ccc2f725b", - "integrity": "sha512-540EX4TvQDZkhu9FJJOzHGHKkueXuYVc0fKA/UVwdxqCNuVbbW0AEn8VHkWExc0Jj8JJUd9lJxEqIUJbu4U5pw==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-markdown/2026.7.3/5e29fdf5771b8bc1c43f3288a5de8c514e9282ce", + "integrity": "sha512-sBWd4boDDM3sZ6lKOEjkhhicrRrKx/tW1qFCBBKZ68MqyHD50xYmN/Ly/jklUQhab8vmSaBWCGbYwaU7fC80jA==", "license": "EPL-2.0", "peerDependencies": { "@lexical/code-core": "0.42.0", @@ -741,9 +741,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-omnibox": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-omnibox/2026.7.2/ceb132ab4537854e26cac308724a72bdc153ecb9", - "integrity": "sha512-ig8l3LcaeylCipU2ISrmSY6SIXbyczVnk2y+/lUihnkintFLTKchN3uhXYf9uYCcpUYNT69/VYkPc+1g0r+VmA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-omnibox/2026.7.3/aa4f7e9d01d57033c7c7f478fc99fd0e873c56bd", + "integrity": "sha512-wRPChNIKM6U20/rXm+UBVkkoRiwylp7X/KuIuEbLBxcWQIgXZGPYqk66IWymZU8cHJky7JmTORckTwwBc9s1dQ==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -759,9 +759,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-palette": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-palette/2026.7.2/cdddf2afd5c2ecdb51c526866a3912f2c94869f9", - "integrity": "sha512-31ahFBr9gIlIKlx0dhUsut024g4EdnWiW4Quukr4Hc1vLLX+itxGrmWq/kuDpg+jatEKCFq1nM/MnsYjo/OsBA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-palette/2026.7.3/92d612c41ddddf69e983cde254909b3eaad2acbd", + "integrity": "sha512-D9KlIVFaBF50v35NB9belJhNJzJSXoAoEKSpWzXOLLYmSdBn+LfOglFtz/cHLv+B+gJZbCBi464m7dQKTDkc4w==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -777,9 +777,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-portals": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-portals/2026.7.2/8ea7fcdc8e3d2572648fe5195218040b140a9da5", - "integrity": "sha512-UOmS97F/NLLYSke5m01LbQfZXV4SP43EMQwdTxfN9fFpauNE8ln8W0mP33XbTnUbXZJfOorNeYWjF13ZabY2IA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-portals/2026.7.3/b311af53701892e67c9300ef09b905369003ebc0", + "integrity": "sha512-6bwWxXVkJD3PTFstanF+w6Ar7jTVGWaHQZkjjnf4iB54DQq72F7bIyybhNE5Pyw5rsEZ1DX8HQKitkLMsIsIYQ==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -796,9 +796,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-selection": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-selection/2026.7.2/4955d4765785f7dc570768b71e3ef011be38f629", - "integrity": "sha512-cXz59KLdvnH+iMnDZ7Kj8ueUWRW5wdfhgbDN0X7X1zoqNx2PDzFoMNgVrFxOKQsPcFGtEf2QaR/0EBkAvlpteA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-selection/2026.7.3/689b95a2b4732f62e0b562ac607685b4348fe422", + "integrity": "sha512-wiGej3T/rb+G/RSTLPTeRCsvVgKk0gy3cDJzBeXPBXD3EyCCutepS4Hc9twWNppatZzlhIdV0k8vvWpryMobcg==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -826,9 +826,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-tables": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-tables/2026.7.2/dc7cf4104a2309505a929244cd5bff75d76d981a", - "integrity": "sha512-FwS6jgI8CCSkE0mahoeX0ResU9EBJQ6N/86xdhds303AE9Y7wHyJj36ja7myJQQwImdI01x1u5jA43WvhGnmeQ==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-tables/2026.7.3/9c4d681af725dbe16d62ff50267c2cc73472e51c", + "integrity": "sha512-345Vt1UOAaKGvUUKnj2V+ZMWGGRVbEGdyf+cVW4DzGGWBwscM4X51BT8J0LsgSPqavh/4Nm2rQdmc0o98DCZuw==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -846,9 +846,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-trees": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-trees/2026.7.2/e4e76fc66783128128e71ca236dda97d50c46e50", - "integrity": "sha512-EUMd4Jr3M4VswRwQBtkJUdAmRDvUWVTNSggCKxmJZQY18EgQ6UozkmTu+5IGZx+c+Ip2hlSSPzdb09WpCg6juw==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-trees/2026.7.3/1a194fb79d82c83aa54a4d2068b79a63031b39de", + "integrity": "sha512-/+hLTJLLxRGx6L1WDIv3S3guDdo4qCFWDde2EmmrCBXR5WHZq7aYLC1lKnJ8P4t5ZGJWiBtcUP1DwHnp+DcVxQ==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -867,15 +867,15 @@ } }, "node_modules/@eclipse-sirius/sirius-components-tsconfig": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-tsconfig/2026.7.2/12124bafda6a5851e2acff95b058bdaf30643839", - "integrity": "sha512-BtxIUtOMuZGNwqVF8frV84HD4iVpNeJT/ifagspyr5fJkUnMLeMOVUtJAz2QMYbEJP5+o2SSR4ID1ilLF+nKDA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-tsconfig/2026.7.3/19acfb3077f709a186db50a48266d137401b7d52", + "integrity": "sha512-R/qCDDvOT3NHLjbs7kSVK2NYlpkRfkWXN8XFiQxeZt3CJjnznsIaPRD48KbX7QtAo/0jm48ewLTVmhiRg+Xhmg==", "license": "EPL-2.0" }, "node_modules/@eclipse-sirius/sirius-components-validation": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-validation/2026.7.2/383d5b68d786ba798879a6c27955108325f6fd2f", - "integrity": "sha512-ytTvvqm2jAhCK/k7QxnGS80yb0DW52tLgGPOGh9Ctfw3p2pRl2Ijm5qv6PH5pHKpXpMpMvKHQTzs28kKyap5Ig==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-validation/2026.7.3/9ec6b8f23c4f3b44f782231333e8418157f93c4a", + "integrity": "sha512-/TjIq0GgTI2ZA6oX9pnD8SWkslVrSnBtBKAW2QvsIFjw/b+D474CQYYTZIVV9GD5kqRHX0ifEFcQE35O50cVpg==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -891,9 +891,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-widget-reference": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-widget-reference/2026.7.2/8813bc24e4ee3b0d4081a1411949f33a3de194e9", - "integrity": "sha512-lg0hkBfE6QpQOftDSpskVeLRcSPns4i/GR/UqvHPR4CP6AdM7eaK9P/hmVFx4g2kdQNeofz0KLu26xHKQBxhlw==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-widget-reference/2026.7.3/48809f710e3bccbbf964940a6e69700acf904d27", + "integrity": "sha512-Fw9M7dRFwP47Mvk8MU9YU3PpdZtvRWy1Fhln9AJASMTFKq5hjNHuH9CiAPMxnqxlzeYSxsr+lA4vz4JLGWTkRQ==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -931,9 +931,9 @@ } }, "node_modules/@eclipse-sirius/sirius-components-widget-table": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-widget-table/2026.7.2/4cdf2fa2d42bf59618ab5950a887421092c8a1fd", - "integrity": "sha512-gg6MrDmxmDJaBXTm5q3OCCUV4mCeO3DF5dvXgDry2UZtp+X1EX/H44S1Pvt+F0Wmk7dCu312jn52QqQDEjpnLA==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-widget-table/2026.7.3/631bd44e89ee810fa8f56a4aa32b6693a67a8497", + "integrity": "sha512-IRhGrjNiz8jas0WOGsFL0hYIwumTYmDhai32UU3ild9CXh9rwb9xLdVSzkbx0CLT0Scibld3fXEhX+Olu4corg==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", @@ -967,9 +967,9 @@ } }, "node_modules/@eclipse-sirius/sirius-web-application": { - "version": "2026.7.2", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-web-application/2026.7.2/42dce0c064f71af7048684a3c3ed67eb28da4dd5", - "integrity": "sha512-zoj419k/rBkLqC6B2GIM31uFwKPrnCNsFH8dkVftDGPicXMv7BH1gMT44sRytIGVpaBcXbuaMKexX+Y8Z9RyXQ==", + "version": "2026.7.3", + "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-web-application/2026.7.3/7afd5df6b4d0b88b3273ad706ff3cbfce6af3a66", + "integrity": "sha512-G6vixyhzMbfnhrFbHBsmgttgNT3lhP4T2vB0VR7aklolNJpsGG/F/0ZuAnF+DeqQbR+pwOu/2DFCDdOWtv9Taw==", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", diff --git a/package.json b/package.json index ef36c07c86..5d98b6aa6f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@eclipse-syson/syson-parent", - "version": "2026.7.2", + "version": "2026.7.3", "author": "Eclipse SysON", "license": "EPL-2.0", "repository": { diff --git a/pom.xml b/pom.xml index f1c50d2b71..8ef8acee70 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ org.eclipse.syson syson - 2026.7.2 + 2026.7.3 syson SysON @@ -32,8 +32,8 @@ 21 - 2026.7.2 - 2026.7.2 + 2026.7.3 + 2026.7.3 ${project.basedir}/releng/backend/releng/syson-test-coverage/target/site/jacoco-aggregate/jacoco.xml