import { useEcho, useFindUser, useRenameUser, useUpdateProfile, useUserContext, useWhoami, type ContextState, } from '../src/composables/vue' import type { UserContextData, UserContextParams } from '../src/index' export async function everyVueComposable(): Promise { const params: UserContextParams = { user_id: 1 } const user = useUserContext(params) const state: ContextState = user.state.value const orders = user.userOrders.value const profile = user.userProfile.value const loading: boolean = user.loading.value const failure: Error | null = user.error.value const echoed = await useEcho().mutate({ text: 'hello' }) const found = await useFindUser().mutate({ user_id: 1 }) const renamed = await useRenameUser().mutate({ user_id: 1, name: 'renamed' }) const updated = await useUpdateProfile().mutate({ user_id: 1, name: 'renamed' }) const identity = await useWhoami().mutate() console.log( state.status, orders?.length ?? 0, profile?.name ?? '', loading, failure?.message ?? '', echoed.message, found.name, renamed.name, updated.ok, identity.authenticated, ) }