1- import { useRouter } from 'next/router'
2-
1+ 'use client'
2+ import { type Usable , use } from 'react'
3+ import { useRouter } from 'next/navigation'
34import { Button } from '@keystar/ui/button'
45import { VStack } from '@keystar/ui/layout'
56
67import { Fields } from '../../../../admin-ui/utils'
78import { PageContainer } from '../../../../admin-ui/components/PageContainer'
8- import { useList } from '../../../../admin-ui'
9+ import { useKeystone , useList } from '../../../../admin-ui'
910import { GraphQLErrorNotice } from '../../../../admin-ui/components'
1011import { useCreateItem } from '../../../../admin-ui/utils/useCreateItem'
1112import { BaseToolbar , ColumnLayout , ItemPageHeader } from '../ItemPage/common'
@@ -14,10 +15,13 @@ export const getCreateItemPage = (props: Parameters<typeof CreateItemPage>[0]) =
1415 < CreateItemPage { ...props } />
1516)
1617
17- function CreateItemPage ( { listKey } : { listKey : string } ) {
18- const list = useList ( listKey )
18+ export function CreateItemPage ( { params } : { params : Usable < { listKey : string } > } ) {
19+ const { listsKeyByPath } = useKeystone ( )
20+ const _params = use < { listKey : string } > ( params )
21+ const list = useList ( listsKeyByPath [ _params . listKey ] )
1922 const createItem = useCreateItem ( list )
2023 const router = useRouter ( )
24+ const { adminPath } = useKeystone ( )
2125
2226 return (
2327 < PageContainer
@@ -33,7 +37,7 @@ function CreateItemPage({ listKey }: { listKey: string }) {
3337 const item = await createItem . create ( )
3438 if ( ! item ) return
3539
36- router . push ( `/${ list . path } /${ item . id } ` )
40+ router . push ( `${ adminPath } /${ list . path } /${ item . id } ` )
3741 } }
3842 style = { { display : 'contents' } }
3943 >
0 commit comments