parley.js
v2.0.0
Published
Parley.js is a small utility replacing `window.prompt` and `window.confirm`.
Downloads
17
Readme
Parley.js
An oversimplified library for HTML5 dialogs
Parley.js is a small utility replacing window.prompt
and window.confirm
.
Minimum requirements
| | Needs | Version | MDN |
| ---------- | ---------- | ------- | ----------------------------- |
| ECMAScript | Promise
| ES2015 | see |
| HTML | <dialog>
| HTML5 | see |
Without Babel, code also needs async
and await
keywords (ES2017).
Usage
import * as Parley from "parley.js";
import "parley.js/dist/default.css";
// ...
If you have a bundler that supports SCSS and TypeScript, you can import the source files directly:
import * as Parley from "parley.js/src";
// ...
Also, you can use UNPKG:
<link rel="stylesheet" href="https://unpkg.com/parley.js/dist/default.css" />
<script type="module">
import * as Parley from "https://unpkg.com/parley.js";
// ...
</script>
Parley.fire
It takes configuration and responds with a Promise. Depending on the input type, configuration and output vary. But if the parley was cancelled (by the cancel button or the escape key) the output is always false.
Base configuration
| Name | Description | Default |
| ------------------- | -------------------------------------------- | ----------- |
| title
| The title displayed in parley. Supports HTML | ""
|
| message
| The HTML message of the parley. | ""
|
| cancelButtonHTML
| The HTML content of the cancel button. | Cancel"
|
| confirmButtonHTML
| The HTML content of the confirm button. | "OK"
|
| value
| The default value. | undefined
|
| inputOptions
| The input-type-specific; see bellow | {} |
Input options
| Input types | Configuration type | Output / Defaut value type |
| -------------------------------------------------- | ------------------ | --------------------------------- |
| "number"
"range"
| NumberOptions
| number
|
| "textarea"
| TextareaOptions
| string
|
| "tel"
"text"
"email"
"search"
"password"
| TextOptions
| string
|
| "checkbox"
"select"
"radio"
| SelectOptions
| string
, string[]
for checkbox |
| "none
| never
| boolean
|
interface NumberOptions {
min?: number;
max?: number;
step?: number;
placeholder?: string;
}
interface TextareaOptions {
rows?: number;
cols?: number;
placeholder?: string;
}
interface TextOptions {
/**
* Regular expression used to validate the input
*/
pattern?: RegExp;
placeholder?: string;
}
interface SelectionOptions {
/**
* The key is the value of the input.
* The value is the label html of the input.
*/
[value: string]: string;
}
Parley.close
and Parley.cancel
Both functions close the parley immediately. While Parley.cancel()
causes to return false
,
Parley.close()
returns the user value.