73fc67955d
* Add components for CPM landing and charity pages * Remove misc.ts to fix build * Set up cloud function for writing txns * More plumbing for txns * Fix up API call * Use Date.now() to keep timestamps simple * Some styles for charity list page * Hard code charities data * Pass charity data to charity page * Update txn type * Listen for charity txns * Handle txn to non-user by burning it * Read txns for charity card and charity page. * Set images to object contain * Clean up txn types * Move pic to top of card. Other misc styling. * Update charity short & long descriptions * Add `token` and `category` to Txn * Fix breakages * Show Charity link in the sidebar * Fix typing issues * Fix not reading from the right type * Switch out icon * Also show Charity icon on mobile * Update copy Co-authored-by: Austin Chen <akrolsmir@gmail.com> Co-authored-by: James Grugett <jahooma@gmail.com>
22 lines
529 B
TypeScript
22 lines
529 B
TypeScript
// A txn (pronounced "texan") respresents a payment between two ids on Manifold
|
|
// Shortened from "transaction" to distinguish from Firebase transactions (and save chars)
|
|
export type Txn = {
|
|
id: string
|
|
createdTime: number
|
|
|
|
fromId: string
|
|
fromType: SourceType
|
|
|
|
toId: string
|
|
toType: SourceType
|
|
|
|
amount: number
|
|
token: 'M$' // | 'USD' | MarketOutcome
|
|
|
|
category: 'CHARITY' // | 'BET' | 'TIP'
|
|
// Human-readable description
|
|
description?: string
|
|
}
|
|
|
|
export type SourceType = 'USER' | 'CONTRACT' | 'CHARITY' | 'BANK'
|