UNPKG

ng2-alert-center

Version:

Alert center provides an alert service and an alert component, you can include in your Angular 2 project.

130 lines (78 loc) 3.11 kB
# ng2-alert-center Alert center provides an alert service and an alert component, you can include in your Angular 2 project. Currently it uses bootstrap 3 for styling. If you don't use bootstrap, you can just use the bootstrap classes to apply your own styles. ## Status [![Build Status](https://travis-ci.org/zsfarkas/ng2-alert-center.svg?branch=master)](https://travis-ci.org/zsfarkas/ng2-alert-center) [![NPM](https://nodei.co/npm/ng2-alert-center.png?downloads=true&downloadRank=true&stars=true)](https://npmjs.org/ng2-alert-center) [![NPM](https://nodei.co/npm-dl/ng2-alert-center.png?height=3&months=6)](https://npmjs.org/ng2-alert-center) ## Install `npm install ng2-alert-center --save` ## Usage Hopefully, it is easy to understand by this example, how to use this module. Refer the API description for further information. ``` @Component({ template: ` <!-- Insert the alert center component once into your html body /--> <div class="my-alert-center-style> <nac-alert-center [animation]="'fancy'" [htmlTextEnabled]="true"></nac-alert-center> </div> ` }) export MyComponent { /* Inject the alert service into your component. */ constructor(private service: AlertCenterService) { } /* Call this method to send an alert. */ sendAnAlert() { const alert = new Alert(AlertType.INFO, 'Test alert.'); this.service.alert(alert); } /* Let the alert disappear by itself in 5 seconds */ sendAnAutoDismissingAlert() { const alert = Alert.create(AlertType.INFO, 'Auto dismissing <b>test alert</b>.', 5000); this.service.alert(alert); } } ``` ## Show case You can test the module online: * http://ng2-alert-center-demo.farkas.land ## Roadmap Please consider, that this module is under development. Following features are coming: * Links in alerts * Support for i18n * More tests ## API ### Component `<nac-alert-center>` Use this component to define the place, where alerts appear in your application. You can use individual styles for the positioning. #### Inputs: `animation`: * it defines the enabled animation of appearing disappearing of alerts. * possible values: `'none'`, `'decent'`, `'fancy'` * default: `'none'` `htmlTextEnabled`: * set it `true` to enable html in alert text. * possible values: `true|false` * default: `false` ### Injectable Service `AlertCenterService` Inject this class in your components, which you want to send an alert from. #### Properties `alerts: Observable<Alert>` The component `<nac-alert-center>` will be informed via this observable, if an alert was sent. #### Methods: `alert (anAlert: Alert): void` Informs the observing components about a new alert. ### Model class `Alert` Represents an alert, which will be displayed by the component `<nac-alert-center>`. #### Properties: `alertType: AlertType` default: none `text: string` default: none `textStrong: string` default: `''` `autoDismissTime: number` default: `0` `dismissable: boolean` default: `true` #### Methods: `constructor (alertType: AlertType, text: string, textStrong = '', dismissType = 0)`