@tauri-apps/plugin-dialog
Interfaces
ConfirmDialogOptions
Properties
DialogFilter
Extension filters for the file dialog.
Since
2.0.0
Properties
| Property | Type | Description |
|---|---|---|
extensions | string[] | Extensions to filter, without a Example extensions: [‘svg’, ‘png’] |
name | string | Filter name. |
FileResponse
Properties
| Property | Type |
|---|---|
base64Data? | string |
duration? | number |
height? | number |
mimeType? | string |
modifiedAt? | number |
name? | string |
path | string |
size | number |
width? | number |
MessageDialogOptions
Since
2.0.0
Properties
OpenDialogOptions
Options for the open dialog.
Since
2.0.0
Properties
| Property | Type | Description |
|---|---|---|
canCreateDirectories? | boolean | Whether to allow creating directories in the dialog. Enabled by default. macOS Only |
defaultPath? | string | Initial directory or file path. |
directory? | boolean | Whether the dialog is a directory selection or not. |
filters? | DialogFilter[] | The filters of the dialog. |
multiple? | boolean | Whether the dialog allows multiple selection or not. |
recursive? | boolean | If directory is true, indicates that it will be read recursively later. Defines whether subdirectories will be allowed on the scope or not. |
title? | string | The title of the dialog window. |
SaveDialogOptions
Options for the save dialog.
Since
2.0.0
Properties
| Property | Type | Description |
|---|---|---|
canCreateDirectories? | boolean | Whether to allow creating directories in the dialog. Enabled by default. macOS Only |
defaultPath? | string | Initial directory or file path. If it’s a directory path, the dialog interface will change to that folder. If it’s not an existing directory, the file name will be set to the dialog’s file name input and the dialog will be set to the parent folder. |
filters? | DialogFilter[] | The filters of the dialog. |
title? | string | The title of the dialog window. |
Type Aliases
OpenDialogReturn<T>
type OpenDialogReturn<T>: T["directory"] extends true ? T["multiple"] extends true ? string[] | null : string | null : T["multiple"] extends true ? FileResponse[] | null : FileResponse | null;Type parameters
| Type parameter |
|---|
T extends OpenDialogOptions |
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/dialog/guest-js/index.ts#L105
Functions
ask()
function ask(message, options?): Promise<boolean>Shows a question dialog with Yes and No buttons.
Parameters
| Parameter | Type | Description |
|---|---|---|
message | string | The message to show. |
options? | string | ConfirmDialogOptions | The dialog’s options. If a string, it represents the dialog title. |
Returns
Promise<boolean>
A promise resolving to a boolean indicating whether Yes was clicked or not.
Example
import { ask } from '@tauri-apps/plugin-dialog';const yes = await ask('Are you sure?', 'Tauri');const yes2 = await ask('This action cannot be reverted. Are you sure?', { title: 'Tauri', kind: 'warning' });Since
2.0.0
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/dialog/guest-js/index.ts#L253
confirm()
function confirm(message, options?): Promise<boolean>Shows a question dialog with Ok and Cancel buttons.
Parameters
| Parameter | Type | Description |
|---|---|---|
message | string | The message to show. |
options? | string | ConfirmDialogOptions | The dialog’s options. If a string, it represents the dialog title. |
Returns
Promise<boolean>
A promise resolving to a boolean indicating whether Ok was clicked or not.
Example
import { confirm } from '@tauri-apps/plugin-dialog';const confirmed = await confirm('Are you sure?', 'Tauri');const confirmed2 = await confirm('This action cannot be reverted. Are you sure?', { title: 'Tauri', kind: 'warning' });Since
2.0.0
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/dialog/guest-js/index.ts#L283
message()
function message(message, options?): Promise<void>Shows a message dialog with an Ok button.
Parameters
| Parameter | Type | Description |
|---|---|---|
message | string | The message to show. |
options? | string | MessageDialogOptions | The dialog’s options. If a string, it represents the dialog title. |
Returns
Promise<void>
A promise indicating the success or failure of the operation.
Example
import { message } from '@tauri-apps/plugin-dialog';await message('Tauri is awesome', 'Tauri');await message('File not found', { title: 'Tauri', kind: 'error' });Since
2.0.0
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/dialog/guest-js/index.ts#L224
open()
function open<T>(options): Promise<OpenDialogReturn<T>>Open a file/directory selection dialog.
The selected paths are added to the filesystem and asset protocol scopes. When security is more important than the easy of use of this API, prefer writing a dedicated command instead.
Note that the scope change is not persisted, so the values are cleared when the application is restarted. You can save it to the filesystem using tauri-plugin-persisted-scope.
Type parameters
| Type parameter |
|---|
T extends OpenDialogOptions |
Parameters
| Parameter | Type |
|---|---|
options | T |
Returns
A promise resolving to the selected path(s)
Examples
import { open } from '@tauri-apps/plugin-dialog';// Open a selection dialog for image filesconst selected = await open({ multiple: true, filters: [{ name: 'Image', extensions: ['png', 'jpeg'] }]});if (Array.isArray(selected)) { // user selected multiple files} else if (selected === null) { // user cancelled the selection} else { // user selected a single file}import { open } from '@tauri-apps/plugin-dialog';import { appDir } from '@tauri-apps/api/path';// Open a selection dialog for directoriesconst selected = await open({ directory: true, multiple: true, defaultPath: await appDir(),});if (Array.isArray(selected)) { // user selected multiple directories} else if (selected === null) { // user cancelled the selection} else { // user selected a single directory}Since
2.0.0
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/dialog/guest-js/index.ts#L165
save()
function save(options): Promise<string | null>Open a file/directory save dialog.
The selected path is added to the filesystem and asset protocol scopes. When security is more important than the easy of use of this API, prefer writing a dedicated command instead.
Note that the scope change is not persisted, so the values are cleared when the application is restarted. You can save it to the filesystem using tauri-plugin-persisted-scope.
Parameters
| Parameter | Type |
|---|---|
options | SaveDialogOptions |
Returns
Promise<string | null>
A promise resolving to the selected path.
Example
import { save } from '@tauri-apps/plugin-dialog';const filePath = await save({ filters: [{ name: 'Image', extensions: ['png', 'jpeg'] }]});Since
2.0.0
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/dialog/guest-js/index.ts#L199
© 2024 Tauri Contributors. CC-BY / MIT