Skip to content
This repository has been archived by the owner. It is now read-only.
Notification service for Angular using native HTML5 API.
JavaScript
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples
test
.gitignore
.travis.yml
Gruntfile.js
README.md
angular-notification.js
angular-notification.min.js
angular-notification.min.js.map
bower.json
karma.conf.js
package.json

README.md

angular-notification

This plugin is no longer actively maintained, you can still use it but issues will not be resolved. If you want the npm name, you can contact me by email.

Build Status CDNJS Dependency Status devDependency Status

Notification service for Angular using native HTML5 API.

notification example

Install

Using bower

bower install angular-notification

Using npm

npm install angular-notification

Usage

angular.module('controllers.notification', ['notification'])
.controller('NotificationCtrl', function ($notification) {
  $notification('New message', {
    body: 'You have a new message.'
  });
})

$notification(title, options)

Create a new notification, the signature is the same as the Web Notification API.

Angular-notification provides some sugar to the default API, the permission is requested automatically. There is some options in addition to that already present in the official API:

  • "delay": Specify a delay (in ms) after the notification is automatically closed. Default null.
  • "focusWindowOnClick": Focus the window when the notification is clicked (works only on Chrome, Firefox prevent this for security issue). Default true.
$notification('title', {
  body: 'message',
  dir: 'auto',
  lang: 'en',
  tag: 'my-tag',
  icon: '/my-icon.jpg',
  delay: 1000, // in ms
  focusWindowOnClick: true // focus the window on click
})

$notificationProvider.setOptions(options)

Set default options.

$notificationProvider.setOptions({icon: '/my-icon.jpg'});

notification.close()

Close the notification.

var notification = $notification('hello');
notification.close();

notification.$on(name, listener)

Listen an event on the notification. Using this method, the listener is automatically wrapped in an $apply().

The signature is the same as the angular $scope.$on signature, it returns the deregistration function.

Avalaible examples are 'click', 'show', 'close' and 'error'.

var notification = $notification('hello');
var deregister = notification.$on('click', function () {
  console.log('User has clicked.');
});

// Stop listening the event.
deregister();

$notification.requestPermission()

Request explicitly the permission to display notification, more info in the official API.

$notification.requestPermission()
.then(function (permission) {
  console.log(permission); // default, granted, denied
});

$notification.getPermission()

Check the current permission to display notification. It returns a string of one of these values: default, granted, denied. more info in the official API.

var permission = $notification.getPermission(); // default, granted, denied

$notification.isSupported

A property of bool indicating whether the browser supports the desktop notification feature or not.

var isDesktopNotificationSupported = $notification.isSupported; // true, false

License

MIT

You can’t perform that action at this time.