Protecteddestroy$ProtectednavigationTab ID for query param notification scoping. Set by resource wrappers that render child dashboards, so the child knows which tab it belongs to. If not set, falls back to Data.Configuration.tabId.
If specified, this provider will be used for communication and for all metadata purposes. By default, if not provided, the Metadata and RunView classes are used for this and the default GraphQLDataProvider is used which is connected to the same back-end MJAPI instance as the Metadata and RunView classes. If you want to have this component connect to a different MJAPI back-end, create an instance of a ProviderBase sub-class like GraphQLDataProvider/etc, and configure it as appropriate to connect to the MJAPI back-end you want to use, and then pass it in here.
StaticɵdirStaticɵfacGet formatted date string
Get a greeting based on time of day
Check if sidebar has any content to show
Returns either the default Metadata provider or the one specified in the Provider property, if it was specified
Returns either the default RunQuery provider or the one specified in the Provider property, if it was specified
Returns either the default RunReport provider or the one specified in the Provider property, if it was specified
Returns either the default RunView provider or the one specified in the Provider property, if it was specified
Permanently hide the "No pinned items yet" empty state for this user. Persisted in UserSettings via UserInfoEngine.
Filter apps by search query (matches app name or nav item labels)
Format a date for display (pure function, safe to call in template)
Get icon for an entity by name, using entity metadata Icon field (cached)
Get the display name for a favorite (resolved name or entity name fallback)
Extract input value from a DOM event (strict template helper)
Accent color for a pin — prefers the stored accentColor in Configuration, falls back to Color, then CSS var
Get icon for a pin based on resource type and metadata
ProtectedGetRead current query params from tab configuration. Use in initDashboard() / ngOnInit() to get initial URL state.
Get this component's tab ID. Checks ParentTabId input first (set by resource wrappers for child dashboards), then falls back to Data.Configuration.tabId.
Hide the pin context menu
A callback method that is invoked immediately after Angular has completed initialization of a component's view. It is invoked only once when the view is instantiated.
A callback method that performs custom clean-up, invoked immediately before a directive, pipe, or service instance is destroyed.
A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.
ProtectedNotifyAsk the host shell to close/dismiss this resource (typically: close the tab). Called by subclasses that hosted a form that emitted a 'dismiss' navigation event — most often, a brand-new record where the user clicked Discard. The record was never saved, the form is empty, and leaving it open serves no purpose. The tab-container listens for this and closes the workspace tab.
ProtectedNotifyCall this to notify the tab system that the resource's display name has changed. The tab container will update the tab title and browser title accordingly.
ProtectedNotifyProtectedNotifyCallback from the Configure Action Pin dialog
Callback from the Run Action Pin dialog
Handle when config is saved
Navigate to a favorite item using NavigationService
Navigate to a notification using NavigationService
Set a section's collapsed state in the Add Pin panel from the accordion panel's (ExpandedChange) output. The accordion reports the EXPANDED state, which is the inverse of our stored COLLAPSED flag. OnPush component, so mark for check after mutating the map.
Edit a pin (enters edit mode focused on this pin)
Move a pin to a different group
Unpin a resource from the pin context menu
ProtectedOnCalled by the framework when query params change from an external source (browser back/forward, deep link navigation). Override in subclasses to react to query param changes.
The new query params from the URL
'popstate' for back/forward, 'deeplink' for external URL entry
Open the Configure Action Pin dialog — triggered when the user clicks an Action in the Add Pin panel. Actions need extra configuration (preset params, runtime params, title, theming) before they can be pinned.
Open app configuration dialog
Pin an app nav item from the Add Panel
Pin a resource from the Add Panel
ProtectedRefreshMarks this component's view (and its ancestors) as needing change detection and schedules a tick — the reliable way for a resource component to re-render after updating state from async work (RunView/RunQuery continuations, timers, websocket pushes, RxJS subscriptions).
WHY THIS EXISTS: the Explorer shell hosts resource components dynamically — createComponent()
ApplicationRef.attachView() — because tab content mounts into Golden Layout / cached DOM
containers, not into an Angular template. Since Angular 18's change-detection scheduler
rework (Explorer is on Angular 21), ApplicationRef.tick() only refreshes attached views
that are FLAGGED dirty; a root-level attached view whose component mutates plain fields from
an async continuation is never flagged, so the view silently never re-renders — even though
the component uses default (non-OnPush) change detection (issue #3106).The framework calls this automatically from NotifyLoadStarted() / NotifyLoadComplete(), so the standard load lifecycle re-renders without any subclass action. Call it yourself after any LATER async state change that must reach the DOM outside those signals.
Remove a group - moves all pins to ungrouped
Remove a pin
ProtectedResourceSave edited group name - updates all pins in the group
Save edited pin name
Show the pin context menu (triggered by ellipsis button)
Start editing a group name
Start inline editing of a pin's display name
Toggle edit mode for pins
Toggle sidebar visibility
Track function for apps loop
Track function for nav items preview
Track function for notifications
ProtectedUpdatePush query param changes to the URL. Creates a browser history entry. Safe to call during OnQueryParamsChanged — auto-suppressed to prevent loops.
Home Dashboard - Personalized home screen showing all available applications with quick access navigation and configuration options.
Uses OnPush change detection and cached computed values for optimal performance. Registered as a BaseResourceComponent so it can be used as a Custom resource type in nav items, allowing users to return to the Home dashboard after viewing orphan resources.