/* _ __ _ __ | | / /___ _(_) /____ | | /| / / __ `/ / / ___/ | |/ |/ / /_/ / / (__ ) |__/|__/\__,_/_/_/____/ The lightweight framework for web-like apps (c) Lea Anthony 2019-present */ /* jshint esversion: 6 */ import { SystemCall } from './calls'; /** * @type {Object} OpenDialogOptions * @param {string} [DefaultDirectory=""] * @param {string} [DefaultFilename=""] * @param {string} [Title=""] * @param {string} [Filters=""] * @param {boolean} [AllowFiles=false] * @param {boolean} [AllowDirectories=false] * @param {boolean} [AllowMultiple=false] * @param {boolean} [ShowHiddenFiles=false] * @param {boolean} [CanCreateDirectories=false] * @param {boolean} [ResolvesAliases=false] - Mac Only: Resolves aliases (symlinks) * @param {boolean} [TreatPackagesAsDirectories=false] - Mac Only: Show packages (EG Applications) as folders */ /** * Opens a dialog using the given parameters, prompting the user to * select files/folders. * * @export * @param {OpenDialogOptions} options * @returns {Promise>} - List of files/folders selected */ export function Open(options) { return SystemCall('Dialog.Open', options); } /** * * @type {Object} SaveDialogOptions * @param {string} [DefaultDirectory=""] * @param {string} [DefaultFilename=""] * @param {string} [Title=""] * @param {string} [Filters=""] * @param {boolean} [ShowHiddenFiles=false] * @param {boolean} [CanCreateDirectories=false] * @param {boolean} [TreatPackagesAsDirectories=false] */ /** * Opens a dialog using the given parameters, prompting the user to * select a single file/folder. * * @export * @param {SaveDialogOptions} options * @returns {Promise} */ export function Save(options) { return SystemCall('Dialog.Save', options); } /** * * @type {Object} MessageDialogOptions * @param {DialogType} [Type=InfoDialog] - The type of the dialog * @param {string} [Title=""] - The dialog title * @param {string} [Message=""] - The dialog message * @param {string[]} [Buttons=[]] - The button titles * @param {string} [DefaultButton=""] - The button that should be used as the default button * @param {string} [CancelButton=""] - The button that should be used as the cancel button * @param {string} [Icon=""] - The name of the icon to use in the dialog */ /** * Opens a dialog using the given parameters, to display a message * or prompt the user to select an option * * @export * @name Message * @param {MessageDialogOptions} options * @returns {Promise} - The button text that was selected */ export function Message(options) { return SystemCall('Dialog.Message', options); }