2
0
mirror of https://github.com/tenrok/vue-native-notification.git synced 2026-06-07 09:52:25 +03:00
Files
vue-native-notification/vue-native-notification.min.js
T
2018-08-03 18:49:02 +02:00

2 lines
1.9 KiB
JavaScript

(function(){function a(i,u,c){function f(r,n){if(!u[r]){if(!i[r]){var o="function"==typeof require&&require;if(!n&&o)return o(r,!0);if(s)return s(r,!0);var t=new Error("Cannot find module '"+r+"'");throw t.code="MODULE_NOT_FOUND",t}var e=u[r]={exports:{}};i[r][0].call(e.exports,function(n){var o=i[r][1][n];return f(o||n)},e,e.exports,a,i,u,c)}return u[r].exports}for(var s="function"==typeof require&&require,n=0;n<c.length;n++)f(c[n]);return f}return a})()({1:[function(n,o,r){"use strict";Object.defineProperty(r,"__esModule",{value:true});var f=window.Notification||window.webkitNotification;var s=function n(o){};var a=function n(o){o.preventDefault();window.focus();o.target.close()};var w=function n(o){};var v=function n(o){};var l={onerror:s,onclick:a,onclose:w,onshow:v};var t={install:function n(o,r){r=r||{};r.requestOnNotify=r.requestOnNotify||true;o.notification={};o.prototype.$notification={};var t=function n(){return f.requestPermission()};o.notification.requestPermission=t;o.prototype.$notification.requestPermission=t;var e=function n(u,c,o){o.onerror=function(){};o.onclick=function(){};o.onclose=function(){};o.onshow=function(){};return Promise.resolve().then(function(){if(r.requestOnNotify&&f.permission!=="granted"){return t()}return f.permission}).then(function(n){if(n==="denied"){return new Error("No permission to show notification")}var o=function n(o){"use strict";l.onerror(o);s()};var r=function n(o){"use strict";l.onclick(o);a()};var t=function n(o){"use strict";l.onclose(o);w()};var e=function n(o){"use strict";l.onshow(o);v()};try{var i=new f(u,c);i.onerror=o;i.onclick=r;i.onclose=t;i.onshow=e;return i}catch(n){if(n.name!=="TypeError")return n;return navigator.serviceWorker.ready.then(function(n){return n.showNotification(u,c)}).then(e,o)}})};o.notification.show=e;o.prototype.$notification.show=e}};if(typeof window!=="undefined"&&window.Vue){window.Vue.use(t)}r.default=t},{}]},{},[1]);