@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

/@sindresorhus/do-not-disturb/

    Package Sidebar

    Install

    npm i @sindresorhus/do-not-disturb

    Weekly Downloads

    188

    Version

    2.1.0

    License

    MIT

    Unpacked Size

    192 kB

    Total Files

    5

    Last publish

    Collaborators

    • sindresorhus