* Configure functions module to allow absolute imports
* Convert common imports in functions to be absolute
* Convert common imports in web to be absolute
* Convert lib imports in web to be absolute
* Convert hooks imports in web to be absolute
* Convert components imports in web to be absolute
* WIP - got comments on the user page
* Remove number from chosen FR answer
* Distinguish wining and losing FR answers
* Show no answers text
* Simplify get answer items logic
* Show answer number
* Show answer # when resolving
* Fix import path
* Add user's collated comments onto profile
* Allow linking to comments/markets in profile
* Allow preload of users contracts in profile
* Remove unused check
* Small code improvements
* Store view counts & last viewed time
* Schedule updating user recommendations. Compute using tf-idf.
* Update contract's lastBetTime and lastCommentTime on new bets and comments.
* Remove contract's lastUpdatedTime
* Remove folds activity feed
* Implement getFeed cloud function
* Hook up client to use getFeed
* Script to cache viewCounts and lastViewTime
* Batched wait all userRecommendations
* Cache view script runs on all users
* Update user feed each hour and get feed from cache doc.
* Delete view cache script
* Update feed script
* Tweak feed algorithm
* Compute recommendation scores from updateUserFeed
* Disable lastViewedScore factor
* Update lastCommentTime script
* Comment out console.log
* Fix timeout issue by calling new cloud functions with part of the work.
* Listen for contract updates to feed.
* Handle new user: use default feed of top markets this week
* Track lastUpdatedTime
* Tweak logic of calling cloud functions in batches
* Tweak cloud function batching
* Truncate image preview to 120 chars
* Try 100 chars instead
* Pass along creatorAvatarUrl
Hoping nothing breaks if the avatarUrl is empty
* Thread through avatarUrl all the way
* Fix typescript
* 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>
* Add betting activity back to feed
* Show position in bin. markets, no comments on bets
* Degroup bets on Bets tab
* Show users position or recent bet with comments
* Add tooltip on answer to FR comments
* Style improvements
* Only use bets by current user for comment input
* Allow users a free daily market
* Show confetti on recent created market
* remove unused import
* remove comment
* Did create market -> hook, capitalize buttons
* Check for confetti with interval
* Just check once
* Capitalize create market button on feed
* Allow free comments with optional bets
* Send emails for comments without bets
* Refactor to share logic
* No free comments on free response questions
* Minor fixes
* Condense line