* Factor out section header
* Remove daily balance change
* Remove dead code
* Layout, add streak
* Fix visibility observer to work on server
* Tweak
* Search perserved by url
* Add pill query param
* Add search page
* Extract component for ProbChangeRow
* Explore groups page
* Add search row
* Add trending groups section
* Add unfollow option for group
* Experimental home: accommodate old saved sections.
* Tweaks to search layout
* Rearrange layout
* Daily movers page
* Add streak grayed out indicator
* Use firebase query instead of algolia search for groups
* Replace trending group card with pills
* Hide streak if you turned off that notification
* Listen for group updates
* Better UI for adding / removing groups
* Toast feedback for join/leave group. Customize button moved to bottom.
* Remove Home title
* Refactor arrange home
* Add new for you section
* Add prefetch
* Move home out of experimental!
* Remove unused import
* Show non-public markets from group
* Revert "Revert "Use %mention to embed a contract card in rich text editor (#869)""
This reverts commit e0634cea6d.
* Overwrite name to prevent breakages
* Fix '%' mentioning if you escape out
* Cleanup: merge render functions
* Bring up a list of contracts with @
* Fix hot reload for RichContent
* Render contracts as half-size cards
* Use % as the prompt; allow for spaces
* WIP: When there's no matching question, create a new contract
* Revert "WIP: When there's no matching question, create a new contract"
This reverts commit efae1bf715.
* Rename to contract-mention
* WIP: Try to merge in @ and % side by side
* Add a different pluginKey
* Track the prosemirror-state dep
* Factor out section header
* Remove daily balance change
* Remove dead code
* Layout, add streak
* Fix visibility observer to work on server
* Tweak
* Formatting
* Line clamp question in prob change table
* Tweaks
* Expand option for daily movers
* Snap scrolling for carousel
* Add arrows to section headers
* Remove carousel from experimental/home
* React querify fetching your groups
* Edit home is its own page
* Add daily profit and balance
* Merge branch 'main' into new-home
* Make experimental search by your followed groups/creators
* Just submit, allow xs on pills
* Weigh in
* Use next/future/image component to optimize avatar images
* Inga/challenge icon (#857)
* changed challenge icon to custom icon
* fixed tip button alignment
* weighing in and trading "weigh in" for "trade"
Co-authored-by: Ian Philips <iansphilips@gmail.com>
Co-authored-by: Austin Chen <akrolsmir@gmail.com>
Co-authored-by: ingawei <46611122+ingawei@users.noreply.github.com>
Co-authored-by: mantikoros <sgrugett@gmail.com>
* Make tournament page efficient
* Fix URL to Salem contract
* Use totalMembers instead of deprecated field
* Increase page size to 12
Co-authored-by: Austin Chen <akrolsmir@gmail.com>
* Members and contracts now documents
* undo loans change?
* Handle closed group
* Slight refactoring
* Don't allow modification of private groups contracts
* Add back in numMembers
* Update group field names
* Update firestore rules
* Update firestore rules
* Handle updated groups
* update start numbers
* Lint
* Lint
* WIP liking markets with tip
* Refactor Userlink, add MultiUserLink
* Lint
* Lint
* Fix merge
* Fix imports
* wip liked contracts list
* Cache likes and liked by user ids on contract
* Refactor tip amount, reduce to M
* Move back to M
* Change positioning for large screens
* WIP persistence work
* Fix up close date filter, kill custom scroll restoration
* Use built-in Next.js scroll restoration machinery
* Tweaking stuff
* Implement 'history state' idea
* Clean up and unify persistent state stores
* Respect options for persisting contract search
* Fix typing in common lib
* Clean up console logging
* Convert useUserBets to react query
* Fix duplicate key warnings
* Fix react-query workaround to use refetchOnMount: always'
* Use react query for portfolio history
* Fix useUserBet workaround
* Script to back fill unique bettors in all contracts
* React query for user bet contracts, using uniqueBettorsId!
* Prefetch user bets / portfolio data
* Allow to follow/unfollow markets, backfill as well
* remove yarn script edit
* add decrement comment
* Lint
* Decrement follow count on unfollow
* Follow/unfollow button logic
* Unfollow/follow => heart
* Add user to followers in place-bet and sell-shares
* Add tracking
* Show contract follow modal for first time following
* Increment follower count as well
* Remove add follow from bet trigger
* restore on-create-bet
* Add pubsub to dev.sh, show heart on FR, remove from answer trigger
* Remove some old loan code
* Almost complete implementation of updateLoans cloud function
* Merge fixes
* Use invested instead of sale value, check if eligible, perform payouts
* Run monday 12am
* Implement loan income notification
* Fix imports
* Loan update fixes / debug
* Handle NaN and negative loan calcs
* Working loan notification
* Loan modal!
* Move loans calculation to /common
* Better layout
* Pay back loan on sell shares
* Pay back fraction of loan on redeem
* Sell bet loan: negate buy bet's loan
* Modal tweaks
* Compute and store nextLoanCached for all users
* lint
* Update loans with newest portfolio
* Filter loans to only unresolved contracts
* Tweak spacing
* Increase memory
* Rewrite useQueryAndSortParams machinery to be faster/simpler/better
* Politely debounce Algolia querying
* Tidy some stuff up
* Style changes suggested by James
* Return both user and privateUser from `createuser`
* Make `useStateCheckEquality` more flexible
* Make `AuthContext` track the private user doc
* Change `usePrivateUser` hook to use the auth context data
* Pass both user and private user through SSR to auth context
* Fix bug in create user flow
* Embed markets using the "add markets" template
* Override dev domain
* Improve market modal style
- contract searchbar now sticky
- entire card clickable to select (if quickbet is hidden)
- adjust selected card styles
* remove extra export
* Hide pills
* Fix browser redirect warning
* Insert all markets instead of just one
* fix type error
* fixup "Insert all markets instead of just one"
Co-authored-by: Sinclair Chen <abc.sinclair@gmail.com>
* Fix problems with visibility checking code
* Tear out old contract tracking stuff per James
* Use `useEvent` in VisibilityObserver per James suggestion