frontend/composables/Client.ts
2024-12-01 17:20:21 +01:00

25 lines
708 B
TypeScript

import { Client, type Token } from "@versia/client";
import { toast } from "vue-sonner";
export const useClient = (
customToken: MaybeRef<Token | null> = null,
): Ref<Client> => {
return computed(
() =>
new Client(
new URL(useBaseUrl().value),
toValue(customToken)?.access_token ??
identity.value?.tokens.access_token ??
undefined,
(error) => {
toast.error(
error.response.data.error ??
"No error message provided",
);
},
),
);
};
export const client = useClient();