parley.js
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

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.

Readme

Keywords

none

Package Sidebar

Install

npm i parley.js

Weekly Downloads

3

Version

2.0.0

License

MIT

Unpacked Size

27.9 kB

Total Files

9

Last publish

Collaborators

  • tomaswrobel