JSPM

  • Created
  • Published
  • Downloads 3236
  • Score
    100M100P100Q123635F
  • License MIT

Promise-based Alert, Confirm and Prompt replacement

Package Exports

  • smalltalk
  • smalltalk/legacy

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (smalltalk) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Smalltalk License NPM version Dependency Status Build Status Coverage

Simple Promise-based replacement of native Alert, Confirm and Prompt.

Install

npm i smalltalk

API

First things first, require smalltalk with:

const smalltalk = require('smalltalk');

You can also use native version with:

const smalltalk = require('smalltalk/native');

In every method of smalltalk last parameter options is optional and could be used to prevent handling of cancel event.

{
    cancel: true /* default */
}

smalltalk.alert(title, message)

Alert

smalltalk
    .alert('Error', 'There was an error!')
    .then(() => {
        console.log('ok');
    });

smalltalk.confirm(title, message [, options])

Confirm

smalltalk
    .confirm('Question', 'Are you sure?')
    .then(() => {
        console.log('yes');
    .catch(() => {
        console.log('no');
    });

smalltalk.prompt(title, message, value [, options])

Prompt

smalltalk
    .prompt('Question', 'How old are you?', '10')
    .then((value) => {
        console.log(value);
    .catch(() => {
        console.log('cancel');
    });

Use type='password' for password fields:

smalltalk
    .prompt('Question', 'How old are you?', '10', {
        type: 'password',
    })
    .then((value) => {
        console.log(value);
    .catch(() => {
        console.log('cancel');
    });

Bundlers

When webpack rollup or browserify used, you can import es5 version with:

import smalltalk from 'smalltalk/legacy';

License

MIT