fix empty resolver
This commit is contained in:
@@ -17,8 +17,11 @@ import {
|
|||||||
DESCRO_PROGRAM_ADDRESS,
|
DESCRO_PROGRAM_ADDRESS,
|
||||||
findResolverEntryPda,
|
findResolverEntryPda,
|
||||||
} from '@descro/sdk'
|
} from '@descro/sdk'
|
||||||
|
import { isSome } from '@solana/kit'
|
||||||
import type { Address } from '@solisting/sdk'
|
import type { Address } from '@solisting/sdk'
|
||||||
|
|
||||||
|
const SYSTEM_PROGRAM = '11111111111111111111111111111111' as Address
|
||||||
|
|
||||||
export default function OrderPage({ params }: { params: Promise<{ pk: string }> }) {
|
export default function OrderPage({ params }: { params: Promise<{ pk: string }> }) {
|
||||||
const { pk } = use(params)
|
const { pk } = use(params)
|
||||||
const { account } = useWallet()
|
const { account } = useWallet()
|
||||||
@@ -31,10 +34,14 @@ export default function OrderPage({ params }: { params: Promise<{ pk: string }>
|
|||||||
async function handleAccept() {
|
async function handleAccept() {
|
||||||
if (!signer || !data) return
|
if (!signer || !data) return
|
||||||
const od = data.order.data
|
const od = data.order.data
|
||||||
const [resolverEntry] = await findResolverEntryPda({ authority: od.resolver })
|
const resolverAddr = isSome(od.resolver) ? od.resolver.value : null
|
||||||
|
const resolverKey = resolverAddr ?? SYSTEM_PROGRAM
|
||||||
|
const [resolverEntry] = resolverAddr
|
||||||
|
? await findResolverEntryPda({ authority: resolverAddr })
|
||||||
|
: [SYSTEM_PROGRAM]
|
||||||
const ix = getAcceptOrderInstruction({
|
const ix = getAcceptOrderInstruction({
|
||||||
seller: signer,
|
seller: signer,
|
||||||
resolver: od.resolver,
|
resolver: resolverKey,
|
||||||
listingAccount: od.listing,
|
listingAccount: od.listing,
|
||||||
orderAccount: pk as Address,
|
orderAccount: pk as Address,
|
||||||
escrowAccount: od.escrowAccount,
|
escrowAccount: od.escrowAccount,
|
||||||
|
|||||||
Reference in New Issue
Block a user