onesignal-web-sdk
Version:
Web push notifications from OneSignal.
18 lines (14 loc) • 705 B
text/typescript
import Database from "../services/Database";
import Event from '../Event';
export class PermissionUtils {
public static async triggerNotificationPermissionChanged(updateIfIdentical = false) {
const newPermission = await OneSignal.privateGetNotificationPermission();
const previousPermission = await Database.get('Options', 'notificationPermission');
const shouldBeUpdated = newPermission !== previousPermission || updateIfIdentical;
if (!shouldBeUpdated) {
return;
}
await Database.put('Options', { key: 'notificationPermission', value: newPermission });
Event.trigger(OneSignal.EVENTS.NATIVE_PROMPT_PERMISSIONCHANGED, { to: newPermission });
}
}