notification
Send toast notifications (brief auto-expiring OS window element) to your user. Can also be used with the Notification Web API.
References
PermissionState
Re-exports PermissionState
Enumerations
Importance
Enumeration Members
Default
Default: 3;High
High: 4;Low
Low: 2;Min
Min: 1;None
None: 0;ScheduleEvery
Enumeration Members
Day
Day: "day";Hour
Hour: "hour";Minute
Minute: "minute";Month
Month: "month";Second
Second: "second";Not supported on iOS.
TwoWeeks
TwoWeeks: "twoWeeks";Week
Week: "week";Year
Year: "year";Visibility
Enumeration Members
Private
Private: 0;Public
Public: 1;Secret
Secret: -1;Classes
Schedule
Constructors
new Schedule()
new Schedule(): ScheduleReturns
Properties
| Property | Type | Defined in |
|---|---|---|
at | undefined | object | |
every | undefined | object | |
interval | undefined | object |
Methods
at()
static at( date, repeating, allowWhileIdle): ScheduleParameters
| Parameter | Type | Default value |
|---|---|---|
date | Date | undefined |
repeating | boolean | false |
allowWhileIdle | boolean | false |
Returns
every()
static every( kind, count, allowWhileIdle): ScheduleParameters
| Parameter | Type | Default value |
|---|---|---|
kind | ScheduleEvery | undefined |
count | number | undefined |
allowWhileIdle | boolean | false |
Returns
interval()
static interval(interval, allowWhileIdle): ScheduleParameters
| Parameter | Type | Default value |
|---|---|---|
interval | ScheduleInterval | undefined |
allowWhileIdle | boolean | false |
Returns
Interfaces
Action
Properties
| Property | Type | Defined in |
|---|---|---|
destructive? | boolean | |
foreground? | boolean | |
id | string | |
input? | boolean | |
inputButtonTitle? | string | |
inputPlaceholder? | string | |
requiresAuthentication? | boolean | |
title | string |
ActionType
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
actions | Action[] | The list of associated actions | |
allowInCarPlay? | boolean | - | |
customDismissAction? | boolean | - | |
hiddenPreviewsBodyPlaceholder? | string | - | |
hiddenPreviewsShowSubtitle? | boolean | - | |
hiddenPreviewsShowTitle? | boolean | - | |
id | string | The identifier of this action type |
ActiveNotification
Properties
| Property | Type | Defined in |
|---|---|---|
actionTypeId? | string | |
attachments | Attachment[] | |
body? | string | |
data | Record<string, string> | |
extra | Record<string, unknown> | |
group? | string | |
groupSummary | boolean | |
id | number | |
schedule? | Schedule | |
sound? | string | |
tag? | string | |
title? | string |
Attachment
Attachment of a notification.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Attachment identifier. | |
url | string | Attachment URL. Accepts the asset and file protocols. |
Channel
Properties
| Property | Type | Defined in |
|---|---|---|
description? | string | |
id | string | |
importance? | Importance | |
lightColor? | string | |
lights? | boolean | |
name | string | |
sound? | string | |
vibration? | boolean | |
visibility? | Visibility |
Options
Options to send a notification.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
actionTypeId? | string | Defines an action type for this notification. | |
attachments? | Attachment[] | Notification attachments. | |
autoCancel? | boolean | Automatically cancel the notification when the user clicks on it. | |
body? | string | Optional notification body. | |
channelId? | string | Identifier of the Channel that deliveres this notification. If the channel does not exist, the notification won’t fire. Make sure the channel exists with listChannels and createChannel. | |
extra? | Record<string, unknown> | Extra payload to store in the notification. | |
group? | string | Identifier used to group multiple notifications. https://developer.apple.com/documentation/usernotifications/unmutablenotificationcontent/1649872-threadidentifier | |
groupSummary? | boolean | Instructs the system that this notification is the summary of a group on Android. | |
icon? | string | Notification icon. On Android the icon must be placed in the app’s res/drawable folder. | |
iconColor? | string | Icon color on Android. | |
id? | number | The notification identifier to reference this object later. Must be a 32-bit integer. | |
inboxLines? | string[] | List of lines to add to the notification. Changes the notification style to inbox. Cannot be used with largeBody. Only supports up to 5 lines. | |
largeBody? | string | Multiline text. Changes the notification style to big text. Cannot be used with inboxLines. | |
largeIcon? | string | Notification large icon (Android). The icon must be placed in the app’s res/drawable folder. | |
number? | number | Sets the number of items this notification represents on Android. | |
ongoing? | boolean | If true, the notification cannot be dismissed by the user on Android. An application service must manage the dismissal of the notification. It is typically used to indicate a background task that is pending (e.g. a file download) or the user is engaged with (e.g. playing music). | |
schedule? | Schedule | Schedule this notification to fire on a later time or a fixed interval. | |
silent? | boolean | Changes the notification presentation to be silent on iOS (no badge, no sound, not listed). | |
sound? | string | The sound resource name. Only available on mobile. | |
summary? | string | Detail text for the notification with largeBody, inboxLines or groupSummary. | |
title | string | Notification title. | |
visibility? | Visibility | Notification visibility. |
PendingNotification
Properties
| Property | Type | Defined in |
|---|---|---|
body? | string | |
id | number | |
schedule | Schedule | |
title? | string |
ScheduleInterval
Properties
Functions
active()
function active(): Promise<ActiveNotification[]>Retrieves the list of active notifications.
Returns
A promise resolving to the list of active notifications.
Example
import { active } from '@crabnebula/taurify-api/notification';const activeNotifications = await active();cancel()
function cancel(notifications): Promise<void>Cancels the pending notifications with the given list of identifiers.
Parameters
| Parameter | Type |
|---|---|
notifications | number[] |
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { cancel } from '@crabnebula/taurify-api/notification';await cancel([-34234, 23432, 4311]);cancelAll()
function cancelAll(): Promise<void>Cancels all pending notifications.
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { cancelAll } from '@crabnebula/taurify-api/notification';await cancelAll();channels()
function channels(): Promise<Channel[]>Retrieves the list of notification channels.
Returns
A promise resolving to the list of notification channels.
Example
import { channels } from '@crabnebula/taurify-api/notification';const notificationChannels = await channels();createChannel()
function createChannel(channel): Promise<void>Creates a notification channel.
Parameters
| Parameter | Type |
|---|---|
channel | Channel |
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { createChannel, Importance, Visibility } from '@crabnebula/taurify-api/notification';await createChannel({ id: 'new-messages', name: 'New Messages', lights: true, vibration: true, importance: Importance.Default, visibility: Visibility.Private});isPermissionGranted()
function isPermissionGranted(): Promise<boolean>Checks if the permission to send notifications is granted.
Returns
Promise<boolean>
Example
import { isPermissionGranted } from '@crabnebula/taurify-api/notification';const permissionGranted = await isPermissionGranted();onAction()
function onAction(cb): Promise<PluginListener>Parameters
| Parameter | Type |
|---|---|
cb | (notification) => void |
Returns
onNotificationReceived()
function onNotificationReceived(cb): Promise<PluginListener>Parameters
| Parameter | Type |
|---|---|
cb | (notification) => void |
Returns
pending()
function pending(): Promise<PendingNotification[]>Retrieves the list of pending notifications.
Returns
Promise<PendingNotification[]>
A promise resolving to the list of pending notifications.
Example
import { pending } from '@crabnebula/taurify-api/notification';const pendingNotifications = await pending();registerActionTypes()
function registerActionTypes(types): Promise<void>Register actions that are performed when the user clicks on the notification.
Parameters
| Parameter | Type |
|---|---|
types | ActionType[] |
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { registerActionTypes } from '@crabnebula/taurify-api/notification';await registerActionTypes([{ id: 'tauri', actions: [{ id: 'my-action', title: 'Settings' }]}])removeActive()
function removeActive(notifications): Promise<void>Removes the active notifications with the given list of identifiers.
Parameters
| Parameter | Type |
|---|---|
notifications | object[] |
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { cancel } from '@crabnebula/taurify-api/notification';await cancel([-34234, 23432, 4311])removeAllActive()
function removeAllActive(): Promise<void>Removes all active notifications.
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { removeAllActive } from '@crabnebula/taurify-api/notification';await removeAllActive()removeChannel()
function removeChannel(id): Promise<void>Removes the channel with the given identifier.
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { removeChannel } from '@crabnebula/taurify-api/notification';await removeChannel();requestPermission()
function requestPermission(): Promise<NotificationPermission>Requests the permission to send notifications.
Returns
Promise<NotificationPermission>
A promise resolving to whether the user granted the permission or not.
Example
import { isPermissionGranted, requestPermission } from '@crabnebula/taurify-api/notification';let permissionGranted = await isPermissionGranted();if (!permissionGranted) { const permission = await requestPermission(); permissionGranted = permission === 'granted';}sendNotification()
function sendNotification(options): voidSends a notification to the user.
Parameters
| Parameter | Type |
|---|---|
options | string | Options |
Returns
void
Example
import { isPermissionGranted, requestPermission, sendNotification } from '@crabnebula/taurify-api/notification';let permissionGranted = await isPermissionGranted();if (!permissionGranted) { const permission = await requestPermission(); permissionGranted = permission === 'granted';}if (permissionGranted) { sendNotification('Tauri is awesome!'); sendNotification({ title: 'TAURI', body: 'Tauri is awesome!' });}