Skip to content

Move Between Services from Canvas #1099

Description

@matKlju

AS A service designer
I WANT to open another service directly from the current service canvas while being warned about unsaved changes
SO THAT I can quickly navigate between related services without accidentally losing my work.

Description

Add the ability to navigate directly between services from the canvas (e.g. via the Next Service node or title dropdown menu). If the current service contains unsaved changes, display a confirmation modal before leaving the canvas.

Acceptance Criteria

  • Clicking a referenced service name/title on the "Next service" node redirects to that service in the editor.
  • Add a dropdown menu to service title to display available services to navigate from there.
    • Simple dropdown menu will display all services
    • Should display up to 10 services
    • if more services available - vertical scroll bar appears
    • pressing on service name will start re-direct
  • If there are no unsaved changes, navigation occurs immediately.
  • If there are unsaved changes, a confirmation modal is displayed.
    • EST "Sul on salvestamata muudatusi. Kas soovid kindlasti lahkuda? Salvestamata muudatused lähevad kaotsi."
    • ENG "You have unsaved changes. Are you sure you want to leave? Unsaved changes will be lost."
  • The user can choose Cancel/ Tühista - WHITE, to remain on the current service.
  • The user can choose Continue/ Jätka - BLUE, to discard unsaved changes and open the selected service.
  • The user can choose Save and continue/ Salvesta ja jätka - BLUE, to automatically save and progress to the next service
  • The selected service opens correctly after confirmation.

new ACs:

  • The current service is detected when a Next Service node references itself.
  • Clicking the self-referencing service link does not open a new empty canvas.
  • The current service and its existing configuration remain visible.
  • Links referencing other services continue to work normally.
  • Unsaved changes are not lost.

Notes

  • The confirmation behavior should match other unsaved-change dialogs used throughout the application.
  • This feature is intended to improve navigation between chained services and reduce friction when working with reusable service flows. :contentReference[oaicite:0]{index=0}

Prototypes

Dropdown:
Image

EST:
Image

ENG:
Image

Metadata

Metadata

Assignees

Labels

Projects

Status
In Review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions