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ɵfacReturns 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
Cancels all unsaved changes and reverts to original values. Resets the changed flag on all view models and hides the action buttons.
Checks if users are allowed to customize preferences for this notification type. When false, the delivery channel checkboxes are disabled and an info message is shown.
The notification type entity
True if user customization is allowed (default), false otherwise
Gets the auto-expire duration in days for a notification type. Displayed in the metadata row to inform users about automatic read marking.
The notification type entity
Number of days until auto-expire, or null if not configured
Gets the color hex code for a notification type. Used for MD3 dynamic color styling (icon background, border accent).
The notification type entity
Hex color code (e.g., '#0076B6'), defaults to '#999' if not specified
Gets the Font Awesome icon class for a notification type. Used for MD3 dynamic icon styling in the card header.
The notification type entity
Font Awesome icon class (e.g., 'fa-bell'), defaults to 'fa-bell' if not specified
Angular lifecycle hook - initializes the component by loading notification preferences.
Called when a user toggles any delivery channel checkbox. Updates the view model's changed flag by comparing current state to original values. Sets the global hasChanges flag to show/hide the save/cancel buttons.
The view model for the notification type being modified
Saves all changed notification preferences using a transaction group for batch updates. Creates new preference records for types that don't have existing preferences. Updates the Enabled field based on whether any channel is enabled. Shows success/error notification on completion.
Promise that resolves when save is complete
Component for managing user notification preferences.
Displays notification types with configurable delivery channels (in-app, email, SMS). Users can customize which channels they want to receive notifications through, unless the notification type restricts user customization.
Uses Material Design 3 (MD3) styling principles for consistent, accessible UI.
Data flow: