* Add notification permission handling code * Request notification permission when enabling any notification setting * Add badge to notification settings when permissions insufficient * Disable alerts by default, requesting permission and enable them on onboarding
		
			
				
	
	
		
			21 lines
		
	
	
		
			846 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			846 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import { changeSetting, saveSettings } from './settings';
 | 
						|
import { requestBrowserPermission } from './notifications';
 | 
						|
 | 
						|
export const INTRODUCTION_VERSION = 20181216044202;
 | 
						|
 | 
						|
export const closeOnboarding = () => dispatch => {
 | 
						|
  dispatch(changeSetting(['introductionVersion'], INTRODUCTION_VERSION));
 | 
						|
  dispatch(saveSettings());
 | 
						|
 | 
						|
  dispatch(requestBrowserPermission((permission) => {
 | 
						|
    if (permission === 'granted') {
 | 
						|
      dispatch(changeSetting(['notifications', 'alerts', 'follow'], true));
 | 
						|
      dispatch(changeSetting(['notifications', 'alerts', 'favourite'], true));
 | 
						|
      dispatch(changeSetting(['notifications', 'alerts', 'reblog'], true));
 | 
						|
      dispatch(changeSetting(['notifications', 'alerts', 'mention'], true));
 | 
						|
      dispatch(changeSetting(['notifications', 'alerts', 'poll'], true));
 | 
						|
      dispatch(saveSettings());
 | 
						|
    }
 | 
						|
  }));
 | 
						|
};
 |