# j-Notifications

> j-Notifications: easy usage; singleton

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: en
Content-SHA256: e993244f72ce544c610f0171e1bf345611b9b79c12d843d0c4f7cf93b162db7d
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

- singleton

__Configuration__:

- `date` {String} a date format (default `yyyy-MM-dd HH:mm`)
- `timeout` {Number} has to contain a timeout (milliseconds) for the expiration of notification (default: `8000`)
- `native` {Boolean} enables native notifications when is not focused window (default: `false`)

__Methods__
- `component.append(icon, message, [datetime], [callback], [color])` for creating a new notification

Use it with `<ui-component name="notifications">`. When the component is not loaded yet, jComponent downloads it on first use from the address in `DEF.fallback` (the Componentator CDN by default). Author: Peter Širka. Source: the Componentator components repository, MIT license.

```html example.html
<style>
	body { font-family: Arial; background-color: #F5F5F5; }
</style>

<ui-component name="notifications" config="date:dd.MM.yyyy HH:mm;native:true"></ui-component>

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia harum accusamus debitis aut sunt, deserunt magni alias neque unde reprehenderit ipsa ea laboriosam eveniet! Distinctio pariatur sed, a aut nobis.

<script>

	FIND('notifications', function(component) {
		component.append('ti-lightbulb', 'This is a new notification component.');
	});

	setTimeout(function() {
		FIND('notifications').append('ti-calendar', 'You have a meeting in the Central Park.', function() {
			alert('You clicked on the notification');
		}, 'red');
	}, 3000);

	setTimeout(function() {
		FIND('notifications').append('ti-github', 'Please support <a href="https://github.com/petersirka/jComponent" target="_blank">jComponent on GitHub</a>.');
	}, 6000);

	setTimeout(function() {
		FIND('notifications').append('ti-link', 'Total.js is node.js web application framework, please support it on social networks.');
	}, 10000);

</script>
```
