27 lines
773 B
JavaScript
27 lines
773 B
JavaScript
|
// XXX we don't use this yet ...
|
||
|
// it's just showing that even buying credits
|
||
|
// can eventually be a paid action
|
||
|
|
||
|
import { USER_ID } from '@/lib/constants'
|
||
|
import { satsToMsats } from '@/lib/format'
|
||
|
|
||
|
export const anonable = false
|
||
|
export const supportsPessimism = false
|
||
|
export const supportsOptimism = true
|
||
|
|
||
|
export async function getCost ({ amount }) {
|
||
|
return satsToMsats(amount)
|
||
|
}
|
||
|
|
||
|
export async function onPaid ({ invoice }, { tx }) {
|
||
|
return await tx.users.update({
|
||
|
where: { id: invoice.userId },
|
||
|
data: { balance: { increment: invoice.msatsReceived } }
|
||
|
})
|
||
|
}
|
||
|
|
||
|
export async function describe ({ amount }, { models, me }) {
|
||
|
const user = await models.user.findUnique({ where: { id: me?.id ?? USER_ID.anon } })
|
||
|
return `SN: buying credits for @${user.name}`
|
||
|
}
|