diff --git a/pages/items/[itemId].tsx b/pages/items/[itemId]/index.tsx similarity index 53% rename from pages/items/[itemId].tsx rename to pages/items/[itemId]/index.tsx index c50244e..9b7971d 100644 --- a/pages/items/[itemId].tsx +++ b/pages/items/[itemId]/index.tsx @@ -1,7 +1,7 @@ -import ItemSearchPageToolbar from "../../src/app/components/ItemSearchPageToolbar"; -import ItemPage from "../../src/app/ItemPage"; -import PageLayout from "../../src/app/PageLayout"; -import type { NextPageWithLayout } from "../_app"; +import ItemSearchPageToolbar from "../../../src/app/components/ItemSearchPageToolbar"; +import ItemPage from "../../../src/app/ItemPage"; +import PageLayout from "../../../src/app/PageLayout"; +import type { NextPageWithLayout } from "../../_app"; const ItemPageWrapper: NextPageWithLayout = () => { return ; diff --git a/pages/items/[itemId]/trades/offering.tsx b/pages/items/[itemId]/trades/offering.tsx new file mode 100644 index 0000000..1fb16a6 --- /dev/null +++ b/pages/items/[itemId]/trades/offering.tsx @@ -0,0 +1,5 @@ +import { ItemTradesOfferingPage } from "../../../../src/app/ItemTradesPage"; + +export default function ItemTradesOfferingPageWrapper() { + return ; +} diff --git a/pages/items/[itemId]/trades/seeking.tsx b/pages/items/[itemId]/trades/seeking.tsx new file mode 100644 index 0000000..d6d7c5e --- /dev/null +++ b/pages/items/[itemId]/trades/seeking.tsx @@ -0,0 +1,5 @@ +import { ItemTradesSeekingPage } from "../../../../src/app/ItemTradesPage"; + +export default function ItemTradesSeekingPageWrapper() { + return ; +} diff --git a/src/app/App.js b/src/app/App.js index 57fa4e3..3bc961c 100644 --- a/src/app/App.js +++ b/src/app/App.js @@ -11,12 +11,6 @@ import WardrobePageLayout from "./WardrobePage/WardrobePageLayout"; import { loadable } from "./util"; const HomePage = loadable(() => import("./HomePage")); -const ItemTradesOfferingPage = loadable(() => - import("./ItemTradesPage").then((m) => m.ItemTradesOfferingPage) -); -const ItemTradesSeekingPage = loadable(() => - import("./ItemTradesPage").then((m) => m.ItemTradesSeekingPage) -); const UserItemListsIndexPage = loadable(() => import("./UserItemListsIndexPage") ); @@ -37,16 +31,6 @@ function App() { - - - - - - - - - - diff --git a/src/app/ItemTradesPage.js b/src/app/ItemTradesPage.js index c3c8359..db1a74f 100644 --- a/src/app/ItemTradesPage.js +++ b/src/app/ItemTradesPage.js @@ -10,7 +10,8 @@ import { } from "@chakra-ui/react"; import gql from "graphql-tag"; import { useQuery } from "@apollo/client"; -import { Link, useHistory, useParams } from "react-router-dom"; +import Link from "next/link"; +import { useRouter } from "next/router"; import { Heading2, usePageTitle } from "./util"; import ItemPageLayout from "./ItemPageLayout"; @@ -89,7 +90,8 @@ function ItemTradesPage({ compareColumnLabel, tradesQuery, }) { - const { itemId } = useParams(); + const { query } = useRouter(); + const { itemId } = query; const { error, data } = useQuery( gql` @@ -310,8 +312,11 @@ function ItemTradesTableRow({ matchingItems, shouldShowCompareColumn, }) { - const history = useHistory(); - const onClick = React.useCallback(() => history.push(href), [history, href]); + const { push: pushHistory } = useRouter(); + const onClick = React.useCallback(() => pushHistory(href), [ + pushHistory, + href, + ]); const focusBackground = useColorModeValue("gray.100", "gray.600"); const sortedMatchingItems = [...matchingItems].sort((a, b) => @@ -362,20 +367,21 @@ function ItemTradesTableRow({ )} {username} - - {listName} - + + + {listName} + + )}