Centralized navigation service that handles all navigation operations with automatic shift-key detection for power user workflows

Implements

  • OnDestroy

Constructors

Properties

appManager: ApplicationManager
shiftKeyPressed: boolean = false
subscriptions: Subscription[] = []
workspaceManager: WorkspaceStateManager

Accessors

Methods

  • Open an artifact (system-wide resource) Artifacts are versioned content containers (reports, dashboards, UI components, etc.)

    Parameters

    Returns string

  • Open a dynamic view (system-wide resource) Dynamic views are entity-based views with custom filters, not saved views

    Parameters

    Returns string

  • Navigate to a nav item by name within the current or specified application. Allows passing additional configuration parameters to merge with the nav item's config. This is useful for cross-resource navigation where a component needs to navigate to another nav item with specific parameters (e.g., navigate to Conversations with a specific conversationId).

    Parameters

    • navItemName: string

      The label/name of the nav item to navigate to

    • Optional configuration: Record<string, unknown>

      Additional configuration to merge (e.g., conversationId, artifactId)

    • Optional appId: string

      Optional app ID (defaults to current active app)

    • Optional options: NavigationOptions

      Navigation options

    Returns null | string

    The tab ID if successful, null if nav item not found

  • Open a new entity record creation form System-wide resource using __explorer app ID and neutral color

    Parameters

    • entityName: string

      The name of the entity to create a new record for

    • Optional options: NavigationOptions

      Navigation options including optional newRecordValues for pre-populating fields

    Returns string

  • Switch to an application by ID. This sets the app as active and either opens a specific nav item or creates a default tab. If the requested nav item already has an open tab, switches to that tab instead of creating a new one.

    Parameters

    • appId: string

      The application ID to switch to

    • Optional navItemName: string

      Optional name of a nav item to open within the app. If provided, opens that nav item.

    Returns Promise<void>

  • Handle temporary tab preservation when forcing new tabs Rule: Only ONE tab should be temporary at a time When shift+clicking to force a new tab, pin the current active tab if it's temporary

    Parameters

    • forceNew: boolean
    • newRequest: TabRequest

    Returns void