Note: Purchase Milk

    @sindresorhus/do-not-disturb

    2.1.0 • Public • Published

    do-not-disturb

    Control the macOS Do Not Disturb feature

    Note that this package does not work inside a sandboxed app.

    If you want to see an official API for this, please copy-paste the following into a new Feedback Assistant report, and submit it to Apple. Apple uses duplicates as an indication for how popular a request is.

    Install

    npm install @sindresorhus/do-not-disturb

    Usage

    import doNotDisturb from '@sindresorhus/do-not-disturb';
    
    await doNotDisturb.enable();

    API

    doNotDisturb

    All the methods return a Promise. You only really need to await them if you use multiple methods at once.

    .enable(): Promise<void>

    .disable(): Promise<void>

    .toggle(force?): Promise<void>

    force

    Type: boolean

    Force it to be enabled/disabled.

    .isEnabled(): Promise<boolean>

    .on('change', listener, options): EventEmitter

    Attach an event listener that gets called when the "Do Not Disturb" state changes.

    options

    Type: object

    pollInterval

    Type: number
    Default: 3000

    Interval in milliseconds at which the polling for the change event is made.

    .off('change', listener): EventEmitter

    Remove an event listener that was attached previously.

    import doNotDisturb from '@sindresorhus/do-not-disturb';
    
    const listener = status => {
    	console.log(`Do Not Disturb status: ${status}`);
    }
    
    doNotDisturb.on('change', listener, {pollInterval: 100});
    
    // …
    
    doNotDisturb.off('change', listener);

    Related

    Install

    npm i @sindresorhus/do-not-disturb

    DownloadsWeekly Downloads

    172

    Version

    2.1.0

    License

    MIT

    Unpacked Size

    192 kB

    Total Files

    5

    Last publish

    Collaborators

    • sindresorhus