Electron helper to prompt for a value via input or select
npm install electron-prompt --save
prompt([options, parentBrowserWindow]).then(...).catch(...)
const prompt = require('electron-prompt');
prompt({
title: 'Prompt example',
label: 'URL:',
value: 'http://example.org',
inputAttrs: {
type: 'url'
},
type: 'input'
})
.then((r) => {
if(r === null) {
console.log('user cancelled');
} else {
console.log('result', r);
}
})
.catch(console.error);
Primary method:
prompt([options, parentBrowserWindow]).then(...).catch(...)
Key | Explanation |
---|---|
title | (optional, string) The title of the prompt window. Defaults to 'Prompt'. |
label | (optional, string) The label which appears on the prompt for the input field. Defaults to 'Please input a value:'. |
value | (optional, string) The default value for the input field. Defaults to null. |
type | (optional, string) The type of input field, either 'input' for a standard text input field or 'select' for a dropdown type input. Defaults to 'input'. |
inputAttrs | (optional, object) The attributes of the input field, analagous to the HTML attributes: {type: 'text', required: true} -> <input type="text" required> . Used if the type is 'input' |
selectOptions | (optional, object) The items for the select dropdown if using te 'select' type in the format 'value': 'display text', where the value is what will be given to the then block and the display text is what the user will see. |
useHtmlLabel | (optional, boolean) Whether the label should be interpreted as HTML or not. Defaults to false. |
width | (optional, integer) The width of the prompt window. Defaults to 370. |
minWidth | (optional, integer) The minimum allowed width for the prompt window. Same default value as width. |
height | (optional, integer) The height of the prompt window. Defaults to 130. |
minHeight | (optional, integer) The minimum allowed height for the prompt window. Same default value as height. |
resizable | (optional, boolean) Whether the prompt window can be resized or not (also sets useContentSize). Defaults to false. |
alwaysOnTop | (optional, boolean) Whether the window should always stay on top of other windows. Defaults to false |
icon | (optional, string) The path to an icon image to use in the title bar. Defaults to null and uses electron's icon. |
customStylesheet | (optional, string) The local path of a CSS file to stylize the prompt window. Defaults to null. |
menuBarVisible | (optional, boolean) Whether to show the menubar or not. Defaults to false. |
If not supplied, it uses the defaults listed in the table above.
The window in which to display the prompt on. If not supplied, the parent window of the prompt will be null.