mirror of
https://github.com/tauri-apps/tauri.git
synced 2024-12-19 08:31:35 +03:00
2681ad361b
Co-authored-by: Quentin Goinaud <armaldio@gmail.com> Co-authored-by: Lucas Fernandes Nogueira <lucasfernandesnog@gmail.com> Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
48 lines
1.0 KiB
TypeScript
48 lines
1.0 KiB
TypeScript
import { OpenDialogOptions, SaveDialogOptions } from './types/dialog'
|
|
import { promisified } from './tauri'
|
|
|
|
/**
|
|
* @name openDialog
|
|
* @description Open a file/directory selection dialog
|
|
* @param [options]
|
|
* @param [options.filter]
|
|
* @param [options.defaultPath]
|
|
* @param [options.multiple=false]
|
|
* @param [options.directory=false]
|
|
* @returns promise resolving to the select path(s)
|
|
*/
|
|
async function open(options: OpenDialogOptions = {}): Promise<String | String[]> {
|
|
if (typeof options === 'object') {
|
|
Object.freeze(options)
|
|
}
|
|
|
|
return await promisified({
|
|
cmd: 'openDialog',
|
|
options
|
|
})
|
|
}
|
|
|
|
/**
|
|
* @name save
|
|
* @description Open a file/directory save dialog
|
|
* @param [options]
|
|
* @param [options.filter]
|
|
* @param [options.defaultPath]
|
|
* @returns promise resolving to the select path
|
|
*/
|
|
async function save(options: SaveDialogOptions = {}): Promise<String> {
|
|
if (typeof options === 'object') {
|
|
Object.freeze(options)
|
|
}
|
|
|
|
return await promisified({
|
|
cmd: 'saveDialog',
|
|
options
|
|
})
|
|
}
|
|
|
|
export {
|
|
open,
|
|
save
|
|
}
|