pingDevice(proto, ipaddr) {
		const target = '%s://%s%s?%s'.format(proto ?? 'http', ipaddr ?? window.location.host, L.resource('icons/loading.svg'), Math.random());

		return new Promise((resolveFn, rejectFn) => {
			const img = new Image();

			img.onload = resolveFn;
			img.onerror = rejectFn;

			window.setTimeout(rejectFn, 1000);

			img.src = target;
		});
	}
Perform a device connectivity test.

Attempt to fetch a well known resource from the remote device via HTTP
in order to test connectivity. This function is mainly useful to wait
for the router to come back online after a reboot or reconfiguration.

@param {string} [proto=http]
The protocol to use for fetching the resource. May be either `http`
(the default) or `https`.

@param {string} [ipaddr=window.location.host]
Override the host address to probe. By default the current host as seen
in the address bar is probed.

@returns {Promise<Event>}
Returns a promise resolving to a `load` event in case the device is
reachable or rejecting with an `error` event in case it is not reachable
or rejecting with `null` when the connectivity check timed out.