diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 0a42d03..05d254c 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -14,6 +14,7 @@ "@mantine/hooks": "^8.3.14", "@tabler/icons": "^3.36.1", "@tabler/icons-react": "^3.36.1", + "@tanstack/react-query": "^5.90.20", "capitalize": "^2.0.4", "dayjs": "^1.11.19", "i18next": "^25.8.4", @@ -1529,6 +1530,32 @@ "react": ">= 16" } }, + "node_modules/@tanstack/query-core": { + "version": "5.90.20", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.90.20.tgz", + "integrity": "sha512-OMD2HLpNouXEfZJWcKeVKUgQ5n+n3A2JFmBaScpNDUqSrQSjiveC7dKMe53uJUg1nDG16ttFPz2xfilz6i2uVg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/react-query": { + "version": "5.90.20", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.90.20.tgz", + "integrity": "sha512-vXBxa+qeyveVO7OA0jX1z+DeyCA4JKnThKv411jd5SORpBKgkcVnYKCiBgECvADvniBX7tobwBmg01qq9JmMJw==", + "license": "MIT", + "dependencies": { + "@tanstack/query-core": "5.90.20" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^18 || ^19" + } + }, "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", diff --git a/frontend/package.json b/frontend/package.json index 5180518..86ce633 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -16,6 +16,7 @@ "@mantine/hooks": "^8.3.14", "@tabler/icons": "^3.36.1", "@tabler/icons-react": "^3.36.1", + "@tanstack/react-query": "^5.90.20", "capitalize": "^2.0.4", "dayjs": "^1.11.19", "i18next": "^25.8.4", diff --git a/frontend/src/components/ShipmentCard/index.tsx b/frontend/src/components/ShipmentCard/index.tsx index 7d2f7ab..76def86 100644 --- a/frontend/src/components/ShipmentCard/index.tsx +++ b/frontend/src/components/ShipmentCard/index.tsx @@ -1,5 +1,5 @@ import { Group, NumberInput, Paper, Stack, Text } from "@mantine/core"; -import { useCallback, useState, type RefAttributes } from "react"; +import { useCallback, useState } from "react"; type Product = { name: string; @@ -17,7 +17,6 @@ export type ShipmentCardProps = { export default function ShipmentCard({title, date, product}: ShipmentCardProps) { const [ price, setPrice ] = useState(0) - const calculatePrice = useCallback((value: number | string ) => { const numberValue = Number(value) const price = numberValue * product.price diff --git a/frontend/src/main.tsx b/frontend/src/main.tsx index 5ce7a71..a3c7bb3 100644 --- a/frontend/src/main.tsx +++ b/frontend/src/main.tsx @@ -4,11 +4,16 @@ import { RouterProvider } from "react-router"; import { router } from "./router.tsx"; import { MantineProvider } from "@mantine/core"; import '@mantine/core/styles.css'; +import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; + +const queryClient = new QueryClient() createRoot(document.getElementById("root")!).render( - - - + + + + + ); diff --git a/frontend/src/pages/ContractForm/index.tsx b/frontend/src/pages/ContractForm/index.tsx index 96a7b56..197ad9e 100644 --- a/frontend/src/pages/ContractForm/index.tsx +++ b/frontend/src/pages/ContractForm/index.tsx @@ -2,8 +2,11 @@ import { Flex, Grid, Select, Stack, Text, TextInput, Title } from "@mantine/core import { t } from "../../config/i18n"; import { IconUser } from "@tabler/icons-react"; import ShipmentCard from "../../components/ShipmentCard"; +import { getForm } from "../../services/api"; export function ContractForm() { + const { isPending, error, data } = getForm(1); + console.log(isPending, error, data); return ( {t("products reccurent phase")} + {isPending ||