Ultraviolet

3.1.2

const uv = new UVServiceWorker();

self.addEventListener(‘fetch’, event => { event.respondWith( (async ()=>{ if (uv.route(event)) { return await uv.fetch(event); } return await fetch(event.request); })() ); });


# v3.1.1

-   This version of Ultraviolet upgrades [bare-mux](https://www.npmjs.com/package/@mercuryworkshop/bare-mux). This solves an issue with the bare clients not being found.

# v3.1.0

-   This version of Ultraviolet upgrades [bare-mux](https://www.npmjs.com/package/@mercuryworkshop/bare-mux). This solves an issue with websockets not reporting the ready state correctly, causing incompatibilities on websites.

# v3.0.2

-   This version of Ultraviolet fixes an NPM versioning error.

# v3.0.1

-   This version of Ultraviolet upgrades [bare-mux](https://www.npmjs.com/package/@mercuryworkshop/bare-mux). This solves an issue with websockets not being opened properly.
-   This version of Ultraviolet allows error messages to be iframed on cross origin isolated pages.

# v3.0.0

-   This version of Ultraviolet has support for using [bare-mux](https://github.com/MercuryWorkshop/bare-mux) transports, allowing for use for other implementations like [EpoxyTransport](https://github.com/MercuryWorkshop/EpoxyTransport), [CurlTransport](https://github.com/MercuryWorkshop/CurlTransport), and the existing implementation [Bare-Client](https://github.com/MercuryWorkshop/Bare-as-module3).

# v2.0.0

-   This version of Ultraviolet has support for Bare server v3
-   Support for older Bare servers was dropped.

# v1.0.10

-   This version of Ultraviolet fixes an NPM versioning error.

# v1.0.8

-   This version of Ultraviolet improves error messages.

# v1.0.7

-   This version of Ultraviolet correctly sets the `cache` option when making a request.

# v1.0.6

-   This version of Ultraviolet upgrades [@tomphttp/bare-client](https://www.npmjs.com/package/@tomphttp/bare-client). As a result, refreshing can fix errors with the Bare metadata being fetched.

# v1.0.5

-   This version of Ultraviolet fixes a minor bug with `blob:` URLs.

# v1.0.4

-   This version of Ultraviolet introduces support for passing a list of Bare servers in the `uv.config.js` file. This allows users to specify multiple servers that the service worker can choose from, improving reliability and failover.
-   Minor bug fixes (caught with ESLint) and improvements.
-   The [@tomphttp/bare-client](https://www.npmjs.com/package/@tomphttp/bare-client) package has been implemented, allowing users to use Ultraviolet with Bare server V2 and older versions of the Bare server.
-   In previous versions, the `uv.client.js` script was bundled with `uv.bundle.js`. In this version, `uv.client.js` is separate and needs to be included separately in any workflows that use it.

# v1.0.3

-   In previous versions, the `uvPath` export was the default export from the Ultraviolet module. In this version, `uvPath` is no longer the default export and needs to be imported explicitly.
-   Here is an example of how to import the library:

```js
import { uvPath } from '@titaniumnetwork-dev/ultraviolet';

v1.0.2

v1.0.1

+ importScripts('./uv/uv.bundle.js');
+ importScripts('./uv/uv.config.js');
importScripts('./uv/uv.sw.js');

const sw = new UVServiceWorker();

self.addEventListener('fetch', (event) => event.respondWith(sw.fetch(event)));

v1.0.0