evercatch
TypeScript icon, indicating that this package has built-in type declarations

0.3.1 • Public • Published

Evercatch

Version Downloads Minzipped size

No more uncaught errors!

npm install evercatch
# or
yarn add evercatch
# or
pnpm add evercatch
import { auth } from "auth";
import { err, ok, safeAsync } from "evercatch";

const fetchUserData = async () => {
  const [authError, user] = await safeAsync(auth(), "AUTH_ERROR");
  if (authError) {
    return err(authError);
  }
  const response = await fetch(`https://api.example.com/user/${user.id}`);
  if (!response.ok) {
    return err("FETCH_ERROR", "Failed to fetch user data");
  }
  const data = await response.json();
  return ok(data);
};

const [error, data] = await fetchUserData();
if (error) {
  console.error(error.message);
} else {
  console.log(data);
}

Documentation

Readme

Keywords

none

Package Sidebar

Install

npm i evercatch

Weekly Downloads

12

Version

0.3.1

License

MIT

Unpacked Size

55.4 kB

Total Files

34

Last publish

Collaborators

  • fransek