@jaspero/ng-confirmations
TypeScript icon, indicating that this package has built-in type declarations

0.4.7 • Public • Published

Build Status NPM Version

NG Confirmations

An easy to use alert library for Angular.

A demo can be found here

Installation

To install this library, run:

$ npm install --save @jaspero/ng-confirmations

Setup

Import JasperoConfirmationsModule in your @NgModule:

@NgModule({
    imports: [
        JasperoConfirmationsModule
    ],
    declarations: [AppComponent],
    bootstrap: [AppComponent]
})
export class AppModule {}

Then create the component in a root component (you can create it anywhere but you can only use it in that component on any lower ones).

<jaspero-confirmations [defaultSettings]="options"></jaspero-confirmations>

How To Use

You need to import the ConfirmationService in your component:

constructor(private _confirmation: ConfirmationService) {}

Then use the create(title: any, message: any, settings: ConfirmSettings) method to initiate the confirmation modal.

open() {
    this._confirmation.create('Do something?', 'You should really just do it.')
        // The confirmation returns an Observable Subject which will notify you about the outcome
        .subscribe((ans: ResolveEmit) => console.log(ans))
}

ResolveEmit

This is returned by the create() method.

export interface ResolveEmit {
    // Returns this if modal resolved with yes or no
    resolved?: boolean;
    // If the modal was closed in some other way this is removed
    closedWithOutResolving?: string;
}

If the modal was closed by clicking on yes/no this is returned:

{resolved: true // false if no was pressed}

If the modal was closed in any other way:

{closedWithOutResolving: 'overlayClick' // reason for closing}

Options

Available settings:

export interface ConfirmSettings {
    overlay?: boolean; // Default: true
    overlayClickToClose?: boolean; // Default: true
    showCloseButton?: boolean; // Default: true
    confirmText?: string | TemplateRef; // Default: 'Yes'
    declineText?: string | TemplateRef; // Default: 'No'
}

You can provide the settings as input to the <jaspero-confirmations></jaspero-confirmations> component. Making the settings default for each created alert. However you can also override the settings by passing them in the create() method.

Note:

The title, message, confirmText and declineText properties can all be either a string an html string or a TemplateRef.

FAQ

Does this library support AoT?

Yes AoT is supported.

Does the defaultSettings input need to be provided?

No, if none was provided the defaults are used.

Development

To generate all *.js, *.d.ts and *.metadata.json files:

$ npm run build

To lint all *.ts files:

$ npm run lint

License

MIT © Jaspero co.

Readme

Keywords

Package Sidebar

Install

npm i @jaspero/ng-confirmations

Weekly Downloads

35

Version

0.4.7

License

MIT

Unpacked Size

46.4 kB

Total Files

14

Last publish

Collaborators

  • flauc1