import { readFileSync, writeFileSync } from 'fs'
const path = '/vercel/share/v0-project/app/(app)/dashboard/page.tsx'
let content = readFileSync(path, 'utf8')
// 1. Fix the payments query
content = content.replace(
`.is('linked_member_id', null)`,
`.eq('link_status', 'unlinked')`
)
// 2. Add ClaimButton import after the redirect import
if (!content.includes('ClaimButton')) {
content = content.replace(
"import { redirect } from 'next/navigation'",
"import { redirect } from 'next/navigation'\nimport { ClaimButton } from '@/components/task-claim-button'"
)
}
// 3. Replace the static CLAIM link with ClaimButton
content = content.replace(
/CLAIM<\/Link>/,
'{task.status === \'open\' && }'
)
// 4. Fix project.name -> project.title
content = content.replace(/project\.name\b/g, 'project.title')
writeFileSync(path, content, 'utf8')
console.log('[v0] Dashboard patched successfully')
console.log('[v0] Content preview (lines 1-10):')
content.split('\n').slice(0, 10).forEach((line, i) => console.log(`${i+1}: ${line}`))
console.log('[v0] Check linked_member_id still present:', content.includes('linked_member_id'))
console.log('[v0] Check link_status present:', content.includes('link_status'))
console.log('[v0] Check ClaimButton import:', content.includes('ClaimButton'))