feat: add mutations
This commit is contained in:
@@ -7,7 +7,7 @@ import { useMemo } from 'react';
|
||||
import { authDataSchema } from '@/shared/src/auth';
|
||||
import { Platform } from 'react-native';
|
||||
import type { ZeroOptions } from '@rocicorp/zero';
|
||||
import { schema, type Schema } from '@/shared/src';
|
||||
import { schema, type Schema, createMutators, type Mutators } from '@/shared/src';
|
||||
import { expoSQLiteStoreProvider } from "@rocicorp/zero/react-native";
|
||||
|
||||
export const unstable_settings = {
|
||||
@@ -35,9 +35,9 @@ export default function RootLayout() {
|
||||
server: 'http://localhost:4848',
|
||||
userID: authData?.user.id ?? "anon",
|
||||
schema,
|
||||
// mutators: createMutators(),
|
||||
mutators: createMutators(authData),
|
||||
auth: cookie,
|
||||
} as const satisfies ZeroOptions<Schema>;
|
||||
} as const satisfies ZeroOptions<Schema, Mutators>;
|
||||
}, [authData, cookie]);
|
||||
|
||||
return (
|
||||
|
||||
@@ -2,20 +2,30 @@ import { SafeAreaView } from 'react-native-safe-area-context';
|
||||
import { authClient } from '@/lib/auth-client';
|
||||
import { Button, Text } from 'react-native';
|
||||
import { useQuery, useZero } from "@rocicorp/zero/react";
|
||||
import { queries } from '@money/shared';
|
||||
import { queries, type Mutators, type Schema } from '@money/shared';
|
||||
|
||||
export default function HomeScreen() {
|
||||
const { data: session } = authClient.useSession();
|
||||
|
||||
const onLogout = () => {
|
||||
authClient.signOut();
|
||||
}
|
||||
const z = useZero<Schema, Mutators>();
|
||||
const [transactions] = useQuery(queries.allTransactions(session));
|
||||
|
||||
const onNew = () => {
|
||||
z.mutate.transaction.create({
|
||||
name: "Uber",
|
||||
amount: 100,
|
||||
})
|
||||
};
|
||||
|
||||
return (
|
||||
<SafeAreaView>
|
||||
<Text>Hello {session?.user.name}</Text>
|
||||
<Button onPress={onLogout} title="Logout" />
|
||||
<Text>Transactions: {JSON.stringify(transactions, null, 4)}</Text>
|
||||
<Button onPress={onNew} title="New" />
|
||||
</SafeAreaView>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user