Convert common imports in web to be absolute

This commit is contained in:
Marshall Polaris 2022-05-08 23:51:45 -07:00
parent c03518e906
commit 4392faa47a
86 changed files with 199 additions and 221 deletions

View File

@ -1,8 +1,8 @@
import clsx from 'clsx' import clsx from 'clsx'
import { useState } from 'react' import { useState } from 'react'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { formatMoney } from '../../common/util/format' import { formatMoney } from 'common/util/format'
import { useUser } from '../hooks/use-user' import { useUser } from '../hooks/use-user'
import { addLiquidity } from '../lib/firebase/api-call' import { addLiquidity } from '../lib/firebase/api-call'
import { AmountInput } from './amount-input' import { AmountInput } from './amount-input'

View File

@ -1,13 +1,13 @@
import clsx from 'clsx' import clsx from 'clsx'
import _ from 'lodash' import _ from 'lodash'
import { useUser } from '../hooks/use-user' import { useUser } from '../hooks/use-user'
import { formatMoney, formatWithCommas } from '../../common/util/format' import { formatMoney, formatWithCommas } from 'common/util/format'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Row } from './layout/row' import { Row } from './layout/row'
import { Bet } from '../../common/bet' import { Bet } from 'common/bet'
import { Spacer } from './layout/spacer' import { Spacer } from './layout/spacer'
import { calculateCpmmSale } from '../../common/calculate-cpmm' import { calculateCpmmSale } from 'common/calculate-cpmm'
import { Binary, CPMM, FullContract } from '../../common/contract' import { Binary, CPMM, FullContract } from 'common/contract'
import { SiteLink } from './site-link' import { SiteLink } from './site-link'
export function AmountInput(props: { export function AmountInput(props: {

View File

@ -3,8 +3,8 @@ import _ from 'lodash'
import { useEffect, useRef, useState } from 'react' import { useEffect, useRef, useState } from 'react'
import { XIcon } from '@heroicons/react/solid' import { XIcon } from '@heroicons/react/solid'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { BuyAmountInput } from '../amount-input' import { BuyAmountInput } from '../amount-input'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { placeBet } from '../../lib/firebase/api-call' import { placeBet } from '../../lib/firebase/api-call'
@ -14,7 +14,7 @@ import {
formatMoney, formatMoney,
formatPercent, formatPercent,
formatWithCommas, formatWithCommas,
} from '../../../common/util/format' } from 'common/util/format'
import { InfoTooltip } from '../info-tooltip' import { InfoTooltip } from '../info-tooltip'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { import {
@ -22,9 +22,9 @@ import {
calculateDpmShares, calculateDpmShares,
calculateDpmPayoutAfterCorrectBet, calculateDpmPayoutAfterCorrectBet,
getDpmOutcomeProbabilityAfterBet, getDpmOutcomeProbabilityAfterBet,
} from '../../../common/calculate-dpm' } from 'common/calculate-dpm'
import { firebaseLogin } from '../../lib/firebase/users' import { firebaseLogin } from '../../lib/firebase/users'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
export function AnswerBetPanel(props: { export function AnswerBetPanel(props: {
answer: Answer answer: Answer

View File

@ -1,14 +1,14 @@
import clsx from 'clsx' import clsx from 'clsx'
import _ from 'lodash' import _ from 'lodash'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { Row } from '../layout/row' import { Row } from '../layout/row'
import { Avatar } from '../avatar' import { Avatar } from '../avatar'
import { SiteLink } from '../site-link' import { SiteLink } from '../site-link'
import { formatPercent } from '../../../common/util/format' import { formatPercent } from 'common/util/format'
import { getDpmOutcomeProbability } from '../../../common/calculate-dpm' import { getDpmOutcomeProbability } from 'common/calculate-dpm'
import { tradingAllowed } from '../../lib/firebase/contracts' import { tradingAllowed } from '../../lib/firebase/contracts'
import { Linkify } from '../linkify' import { Linkify } from '../linkify'

View File

@ -2,13 +2,13 @@ import clsx from 'clsx'
import _ from 'lodash' import _ from 'lodash'
import { useState } from 'react' import { useState } from 'react'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { resolveMarket } from '../../lib/firebase/api-call' import { resolveMarket } from '../../lib/firebase/api-call'
import { Row } from '../layout/row' import { Row } from '../layout/row'
import { ChooseCancelSelector } from '../yes-no-selector' import { ChooseCancelSelector } from '../yes-no-selector'
import { ResolveConfirmationButton } from '../confirmation-button' import { ResolveConfirmationButton } from '../confirmation-button'
import { removeUndefinedProps } from '../../../common/util/object' import { removeUndefinedProps } from 'common/util/object'
export function AnswerResolvePanel(props: { export function AnswerResolvePanel(props: {
contract: FullContract<DPM, FreeResponse> contract: FullContract<DPM, FreeResponse>

View File

@ -4,9 +4,9 @@ import dayjs from 'dayjs'
import _ from 'lodash' import _ from 'lodash'
import { memo } from 'react' import { memo } from 'react'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { getOutcomeProbability } from '../../../common/calculate' import { getOutcomeProbability } from 'common/calculate'
import { useBets } from '../../hooks/use-bets' import { useBets } from '../../hooks/use-bets'
import { useWindowSize } from '../../hooks/use-window-size' import { useWindowSize } from '../../hooks/use-window-size'

View File

@ -1,10 +1,10 @@
import _ from 'lodash' import _ from 'lodash'
import { useLayoutEffect, useState } from 'react' import { useLayoutEffect, useState } from 'react'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { getDpmOutcomeProbability } from '../../../common/calculate-dpm' import { getDpmOutcomeProbability } from 'common/calculate-dpm'
import { useAnswers } from '../../hooks/use-answers' import { useAnswers } from '../../hooks/use-answers'
import { tradingAllowed } from '../../lib/firebase/contracts' import { tradingAllowed } from '../../lib/firebase/contracts'
import { AnswerItem } from './answer-item' import { AnswerItem } from './answer-item'
@ -13,9 +13,9 @@ import { AnswerResolvePanel } from './answer-resolve-panel'
import { Spacer } from '../layout/spacer' import { Spacer } from '../layout/spacer'
import { FeedItems } from '../feed/feed-items' import { FeedItems } from '../feed/feed-items'
import { ActivityItem } from '../feed/activity-items' import { ActivityItem } from '../feed/activity-items'
import { User } from '../../../common/user' import { User } from 'common/user'
import { getOutcomeProbability } from '../../../common/calculate' import { getOutcomeProbability } from 'common/calculate'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
export function AnswersPanel(props: { export function AnswersPanel(props: {
contract: FullContract<DPM, FreeResponse> contract: FullContract<DPM, FreeResponse>

View File

@ -3,7 +3,7 @@ import _ from 'lodash'
import { useState } from 'react' import { useState } from 'react'
import Textarea from 'react-expanding-textarea' import Textarea from 'react-expanding-textarea'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { BuyAmountInput } from '../amount-input' import { BuyAmountInput } from '../amount-input'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { createAnswer } from '../../lib/firebase/api-call' import { createAnswer } from '../../lib/firebase/api-call'
@ -12,17 +12,17 @@ import {
formatMoney, formatMoney,
formatPercent, formatPercent,
formatWithCommas, formatWithCommas,
} from '../../../common/util/format' } from 'common/util/format'
import { InfoTooltip } from '../info-tooltip' import { InfoTooltip } from '../info-tooltip'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { import {
calculateDpmShares, calculateDpmShares,
calculateDpmPayoutAfterCorrectBet, calculateDpmPayoutAfterCorrectBet,
getDpmOutcomeProbabilityAfterBet, getDpmOutcomeProbabilityAfterBet,
} from '../../../common/calculate-dpm' } from 'common/calculate-dpm'
import { firebaseLogin } from '../../lib/firebase/users' import { firebaseLogin } from '../../lib/firebase/users'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { MAX_ANSWER_LENGTH } from '../../../common/answer' import { MAX_ANSWER_LENGTH } from 'common/answer'
export function CreateAnswerPanel(props: { export function CreateAnswerPanel(props: {
contract: FullContract<DPM, FreeResponse> contract: FullContract<DPM, FreeResponse>

View File

@ -2,7 +2,7 @@ import clsx from 'clsx'
import React, { useEffect, useState } from 'react' import React, { useEffect, useState } from 'react'
import { useUser } from '../hooks/use-user' import { useUser } from '../hooks/use-user'
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Row } from './layout/row' import { Row } from './layout/row'
import { Spacer } from './layout/spacer' import { Spacer } from './layout/spacer'
@ -11,10 +11,10 @@ import {
formatMoney, formatMoney,
formatPercent, formatPercent,
formatWithCommas, formatWithCommas,
} from '../../common/util/format' } from 'common/util/format'
import { Title } from './title' import { Title } from './title'
import { firebaseLogin, User } from '../lib/firebase/users' import { firebaseLogin, User } from '../lib/firebase/users'
import { Bet } from '../../common/bet' import { Bet } from 'common/bet'
import { placeBet, sellShares } from '../lib/firebase/api-call' import { placeBet, sellShares } from '../lib/firebase/api-call'
import { BuyAmountInput, SellAmountInput } from './amount-input' import { BuyAmountInput, SellAmountInput } from './amount-input'
import { InfoTooltip } from './info-tooltip' import { InfoTooltip } from './info-tooltip'
@ -24,13 +24,10 @@ import {
calculateShares, calculateShares,
getProbability, getProbability,
getOutcomeProbabilityAfterBet, getOutcomeProbabilityAfterBet,
} from '../../common/calculate' } from 'common/calculate'
import { useFocus } from '../hooks/use-focus' import { useFocus } from '../hooks/use-focus'
import { useUserContractBets } from '../hooks/use-user-bets' import { useUserContractBets } from '../hooks/use-user-bets'
import { import { calculateCpmmSale, getCpmmProbability } from 'common/calculate-cpmm'
calculateCpmmSale,
getCpmmProbability,
} from '../../common/calculate-cpmm'
import { SellRow } from './sell-row' import { SellRow } from './sell-row'
import { useSaveShares } from './use-save-shares' import { useSaveShares } from './use-save-shares'

View File

@ -3,7 +3,7 @@ import { useState } from 'react'
import { BetPanelSwitcher } from './bet-panel' import { BetPanelSwitcher } from './bet-panel'
import { Row } from './layout/row' import { Row } from './layout/row'
import { YesNoSelector } from './yes-no-selector' import { YesNoSelector } from './yes-no-selector'
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { Modal } from './layout/modal' import { Modal } from './layout/modal'
import { SellButton } from './sell-button' import { SellButton } from './sell-button'
import { useUser } from '../hooks/use-user' import { useUser } from '../hooks/use-user'

View File

@ -11,7 +11,7 @@ import {
formatMoney, formatMoney,
formatPercent, formatPercent,
formatWithCommas, formatWithCommas,
} from '../../common/util/format' } from 'common/util/format'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Spacer } from './layout/spacer' import { Spacer } from './layout/spacer'
import { import {
@ -25,7 +25,7 @@ import { UserLink } from './user-page'
import { sellBet } from '../lib/firebase/api-call' import { sellBet } from '../lib/firebase/api-call'
import { ConfirmationButton } from './confirmation-button' import { ConfirmationButton } from './confirmation-button'
import { OutcomeLabel, YesLabel, NoLabel } from './outcome-label' import { OutcomeLabel, YesLabel, NoLabel } from './outcome-label'
import { filterDefined } from '../../common/util/array' import { filterDefined } from 'common/util/array'
import { LoadingIndicator } from './loading-indicator' import { LoadingIndicator } from './loading-indicator'
import { SiteLink } from './site-link' import { SiteLink } from './site-link'
import { import {
@ -36,7 +36,7 @@ import {
getContractBetMetrics, getContractBetMetrics,
resolvedPayout, resolvedPayout,
getContractBetNullMetrics, getContractBetNullMetrics,
} from '../../common/calculate' } from 'common/calculate'
import { useTimeSinceFirstRender } from '../hooks/use-time-since-first-render' import { useTimeSinceFirstRender } from '../hooks/use-time-since-first-render'
import { trackLatency } from '../lib/firebase/tracking' import { trackLatency } from '../lib/firebase/tracking'

View File

@ -2,7 +2,7 @@ import { StarIcon } from '@heroicons/react/solid'
import _ from 'lodash' import _ from 'lodash'
import Link from 'next/link' import Link from 'next/link'
import Image from 'next/image' import Image from 'next/image'
import { Charity } from '../../../common/charity' import { Charity } from 'common/charity'
import { useCharityTxns } from '../../hooks/use-charity-txns' import { useCharityTxns } from '../../hooks/use-charity-txns'
import { manaToUSD } from '../../pages/charity/[charitySlug]' import { manaToUSD } from '../../pages/charity/[charitySlug]'
import { Row } from '../layout/row' import { Row } from '../layout/row'

View File

@ -1,4 +1,4 @@
import { Txn } from '../../../common/txn' import { Txn } from 'common/txn'
import { Avatar } from '../avatar' import { Avatar } from '../avatar'
import { useUserById } from '../../hooks/use-users' import { useUserById } from '../../hooks/use-users'
import { UserLink } from '../user-page' import { UserLink } from '../user-page'

View File

@ -1,12 +1,12 @@
import { Comment } from '../../common/comment' import { Comment } from 'common/comment'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { contractPath } from '../lib/firebase/contracts' import { contractPath } from '../lib/firebase/contracts'
import { SiteLink } from './site-link' import { SiteLink } from './site-link'
import { Row } from './layout/row' import { Row } from './layout/row'
import { Avatar } from './avatar' import { Avatar } from './avatar'
import { RelativeTimestamp } from './relative-timestamp' import { RelativeTimestamp } from './relative-timestamp'
import { UserLink } from './user-page' import { UserLink } from './user-page'
import { User } from '../../common/user' import { User } from 'common/user'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Linkify } from './linkify' import { Linkify } from './linkify'

View File

@ -2,7 +2,7 @@ import clsx from 'clsx'
import Link from 'next/link' import Link from 'next/link'
import _ from 'lodash' import _ from 'lodash'
import { Row } from '../layout/row' import { Row } from '../layout/row'
import { formatPercent } from '../../../common/util/format' import { formatPercent } from 'common/util/format'
import { import {
Contract, Contract,
contractPath, contractPath,
@ -17,13 +17,13 @@ import {
FreeResponse, FreeResponse,
FreeResponseContract, FreeResponseContract,
FullContract, FullContract,
} from '../../../common/contract' } from 'common/contract'
import { import {
AnswerLabel, AnswerLabel,
BinaryContractOutcomeLabel, BinaryContractOutcomeLabel,
FreeResponseOutcomeLabel, FreeResponseOutcomeLabel,
} from '../outcome-label' } from '../outcome-label'
import { getOutcomeProbability, getTopAnswer } from '../../../common/calculate' import { getOutcomeProbability, getTopAnswer } from 'common/calculate'
import { AbbrContractDetails } from './contract-details' import { AbbrContractDetails } from './contract-details'
export function ContractCard(props: { export function ContractCard(props: {

View File

@ -3,8 +3,8 @@ import dayjs from 'dayjs'
import { useState } from 'react' import { useState } from 'react'
import Textarea from 'react-expanding-textarea' import Textarea from 'react-expanding-textarea'
import { Contract } from '../../../common/contract' import { Contract } from 'common/contract'
import { parseTags } from '../../../common/util/parse' import { parseTags } from 'common/util/parse'
import { useAdmin } from '../../hooks/use-admin' import { useAdmin } from '../../hooks/use-admin'
import { updateContract } from '../../lib/firebase/contracts' import { updateContract } from '../../lib/firebase/contracts'
import { Row } from '../layout/row' import { Row } from '../layout/row'

View File

@ -3,7 +3,7 @@ import _ from 'lodash'
import { ClockIcon, DatabaseIcon, PencilIcon } from '@heroicons/react/outline' import { ClockIcon, DatabaseIcon, PencilIcon } from '@heroicons/react/outline'
import { TrendingUpIcon } from '@heroicons/react/solid' import { TrendingUpIcon } from '@heroicons/react/solid'
import { Row } from '../layout/row' import { Row } from '../layout/row'
import { formatMoney } from '../../../common/util/format' import { formatMoney } from 'common/util/format'
import { UserLink } from '../user-page' import { UserLink } from '../user-page'
import { import {
Contract, Contract,
@ -17,7 +17,7 @@ import { fromNow } from '../../lib/util/time'
import { Avatar } from '../avatar' import { Avatar } from '../avatar'
import { useState } from 'react' import { useState } from 'react'
import { ContractInfoDialog } from './contract-info-dialog' import { ContractInfoDialog } from './contract-info-dialog'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import NewContractBadge from '../new-contract-badge' import NewContractBadge from '../new-contract-badge'
export function AbbrContractDetails(props: { export function AbbrContractDetails(props: {

View File

@ -3,10 +3,10 @@ import clsx from 'clsx'
import dayjs from 'dayjs' import dayjs from 'dayjs'
import _ from 'lodash' import _ from 'lodash'
import { useState } from 'react' import { useState } from 'react'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { Contract } from '../../../common/contract' import { Contract } from 'common/contract'
import { formatMoney } from '../../../common/util/format' import { formatMoney } from 'common/util/format'
import { import {
contractPath, contractPath,
getBinaryProbPercent, getBinaryProbPercent,

View File

@ -10,11 +10,11 @@ import {
FreeResponseResolutionOrChance, FreeResponseResolutionOrChance,
BinaryResolutionOrChance, BinaryResolutionOrChance,
} from './contract-card' } from './contract-card'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { Comment } from '../../../common/comment' import { Comment } from 'common/comment'
import BetRow from '../bet-row' import BetRow from '../bet-row'
import { AnswersGraph } from '../answers/answers-graph' import { AnswersGraph } from '../answers/answers-graph'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { ContractDescription } from './contract-description' import { ContractDescription } from './contract-description'
import { ContractDetails } from './contract-details' import { ContractDetails } from './contract-details'
import { ShareMarket } from '../share-market' import { ShareMarket } from '../share-market'

View File

@ -2,9 +2,9 @@ import { DatumValue } from '@nivo/core'
import { ResponsiveLine } from '@nivo/line' import { ResponsiveLine } from '@nivo/line'
import dayjs from 'dayjs' import dayjs from 'dayjs'
import { memo } from 'react' import { memo } from 'react'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { getInitialProbability } from '../../../common/calculate' import { getInitialProbability } from 'common/calculate'
import { Binary, CPMM, DPM, FullContract } from '../../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { useBetsWithoutAntes } from '../../hooks/use-bets' import { useBetsWithoutAntes } from '../../hooks/use-bets'
import { useWindowSize } from '../../hooks/use-window-size' import { useWindowSize } from '../../hooks/use-window-size'

View File

@ -1,7 +1,7 @@
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { Contract } from '../../../common/contract' import { Contract } from 'common/contract'
import { Comment } from '../../lib/firebase/comments' import { Comment } from '../../lib/firebase/comments'
import { User } from '../../../common/user' import { User } from 'common/user'
import { useBets } from '../../hooks/use-bets' import { useBets } from '../../hooks/use-bets'
import { ContractActivity } from '../feed/contract-activity' import { ContractActivity } from '../feed/contract-activity'
import { ContractBetsTable, MyBetsSummary } from '../bets-list' import { ContractBetsTable, MyBetsSummary } from '../bets-list'

View File

@ -17,7 +17,7 @@ import {
Sort, Sort,
useQueryAndSortParams, useQueryAndSortParams,
} from '../../hooks/use-sort-and-query-params' } from '../../hooks/use-sort-and-query-params'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
import { LoadingIndicator } from '../loading-indicator' import { LoadingIndicator } from '../loading-indicator'
export function ContractsGrid(props: { export function ContractsGrid(props: {

View File

@ -2,10 +2,10 @@ import { Fragment } from 'react'
import { LinkIcon } from '@heroicons/react/outline' import { LinkIcon } from '@heroicons/react/outline'
import { Menu, Transition } from '@headlessui/react' import { Menu, Transition } from '@headlessui/react'
import clsx from 'clsx' import clsx from 'clsx'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { copyToClipboard } from '../lib/util/copy' import { copyToClipboard } from '../lib/util/copy'
import { contractPath } from '../lib/firebase/contracts' import { contractPath } from '../lib/firebase/contracts'
import { ENV_CONFIG } from '../../common/envs/constants' import { ENV_CONFIG } from 'common/envs/constants'
function copyContractUrl(contract: Contract) { function copyContractUrl(contract: Contract) {
copyToClipboard(`https://${ENV_CONFIG.domain}${contractPath(contract)}`) copyToClipboard(`https://${ENV_CONFIG.domain}${contractPath(contract)}`)

View File

@ -5,11 +5,11 @@ import { Spacer } from './layout/spacer'
import { NewContract } from '../pages/create' import { NewContract } from '../pages/create'
import { firebaseLogin, User } from '../lib/firebase/users' import { firebaseLogin, User } from '../lib/firebase/users'
import { ContractsGrid } from './contract/contracts-list' import { ContractsGrid } from './contract/contracts-list'
import { Contract, MAX_QUESTION_LENGTH } from '../../common/contract' import { Contract, MAX_QUESTION_LENGTH } from 'common/contract'
import { Col } from './layout/col' import { Col } from './layout/col'
import clsx from 'clsx' import clsx from 'clsx'
import { Row } from './layout/row' import { Row } from './layout/row'
import { ENV_CONFIG } from '../../common/envs/constants' import { ENV_CONFIG } from 'common/envs/constants'
import _ from 'lodash' import _ from 'lodash'
import { SiteLink } from './site-link' import { SiteLink } from './site-link'

View File

@ -3,7 +3,7 @@ import _ from 'lodash'
import { Contract } from '../../lib/firebase/contracts' import { Contract } from '../../lib/firebase/contracts'
import { Comment } from '../../lib/firebase/comments' import { Comment } from '../../lib/firebase/comments'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { ContractActivity } from './contract-activity' import { ContractActivity } from './contract-activity'

View File

@ -1,16 +1,11 @@
import _ from 'lodash' import _ from 'lodash'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { getOutcomeProbability } from '../../../common/calculate' import { getOutcomeProbability } from 'common/calculate'
import { Comment } from '../../../common/comment' import { Comment } from 'common/comment'
import { import { Contract, DPM, FreeResponse, FullContract } from 'common/contract'
Contract, import { User } from 'common/user'
DPM,
FreeResponse,
FullContract,
} from '../../../common/contract'
import { User } from '../../../common/user'
import { mapCommentsByBetId } from '../../lib/firebase/comments' import { mapCommentsByBetId } from '../../lib/firebase/comments'
export type ActivityItem = export type ActivityItem =

View File

@ -1,6 +1,6 @@
import { Contract } from '../../lib/firebase/contracts' import { Contract } from '../../lib/firebase/contracts'
import { Comment } from '../../lib/firebase/comments' import { Comment } from '../../lib/firebase/comments'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { useBets } from '../../hooks/use-bets' import { useBets } from '../../hooks/use-bets'
import { useComments } from '../../hooks/use-comments' import { useComments } from '../../hooks/use-comments'
import { import {
@ -9,7 +9,7 @@ import {
getSpecificContractActivityItems, getSpecificContractActivityItems,
} from './activity-items' } from './activity-items'
import { FeedItems } from './feed-items' import { FeedItems } from './feed-items'
import { User } from '../../../common/user' import { User } from 'common/user'
export function ContractActivity(props: { export function ContractActivity(props: {
contract: Contract contract: Contract

View File

@ -24,8 +24,8 @@ import { useUser } from '../../hooks/use-user'
import { Linkify } from '../linkify' import { Linkify } from '../linkify'
import { Row } from '../layout/row' import { Row } from '../layout/row'
import { createComment, MAX_COMMENT_LENGTH } from '../../lib/firebase/comments' import { createComment, MAX_COMMENT_LENGTH } from '../../lib/firebase/comments'
import { formatMoney, formatPercent } from '../../../common/util/format' import { formatMoney, formatPercent } from 'common/util/format'
import { Comment } from '../../../common/comment' import { Comment } from 'common/comment'
import { BinaryResolutionOrChance } from '../contract/contract-card' import { BinaryResolutionOrChance } from '../contract/contract-card'
import { SiteLink } from '../site-link' import { SiteLink } from '../site-link'
import { Col } from '../layout/col' import { Col } from '../layout/col'
@ -36,27 +36,21 @@ import { JoinSpans } from '../join-spans'
import { fromNow } from '../../lib/util/time' import { fromNow } from '../../lib/util/time'
import BetRow from '../bet-row' import BetRow from '../bet-row'
import { Avatar } from '../avatar' import { Avatar } from '../avatar'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
import { ActivityItem, GENERAL_COMMENTS_OUTCOME_ID } from './activity-items' import { ActivityItem, GENERAL_COMMENTS_OUTCOME_ID } from './activity-items'
import { import { Binary, CPMM, DPM, FreeResponse, FullContract } from 'common/contract'
Binary,
CPMM,
DPM,
FreeResponse,
FullContract,
} from '../../../common/contract'
import { BuyButton } from '../yes-no-selector' import { BuyButton } from '../yes-no-selector'
import { getDpmOutcomeProbability } from '../../../common/calculate-dpm' import { getDpmOutcomeProbability } from 'common/calculate-dpm'
import { AnswerBetPanel } from '../answers/answer-bet-panel' import { AnswerBetPanel } from '../answers/answer-bet-panel'
import { useSaveSeenContract } from '../../hooks/use-seen-contracts' import { useSaveSeenContract } from '../../hooks/use-seen-contracts'
import { User } from '../../../common/user' import { User } from 'common/user'
import { Modal } from '../layout/modal' import { Modal } from '../layout/modal'
import { trackClick } from '../../lib/firebase/tracking' import { trackClick } from '../../lib/firebase/tracking'
import { firebaseLogin } from '../../lib/firebase/users' import { firebaseLogin } from '../../lib/firebase/users'
import { DAY_MS } from '../../../common/util/time' import { DAY_MS } from 'common/util/time'
import NewContractBadge from '../new-contract-badge' import NewContractBadge from '../new-contract-badge'
import { RelativeTimestamp } from '../relative-timestamp' import { RelativeTimestamp } from '../relative-timestamp'
import { calculateCpmmSale } from '../../../common/calculate-cpmm' import { calculateCpmmSale } from 'common/calculate-cpmm'
export function FeedItems(props: { export function FeedItems(props: {
contract: Contract contract: Contract

View File

@ -1,7 +1,7 @@
import _ from 'lodash' import _ from 'lodash'
import { Contract } from '../../lib/firebase/contracts' import { Contract } from '../../lib/firebase/contracts'
import { Comment } from '../../lib/firebase/comments' import { Comment } from '../../lib/firebase/comments'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
const MAX_ACTIVE_CONTRACTS = 75 const MAX_ACTIVE_CONTRACTS = 75

View File

@ -2,10 +2,10 @@ import clsx from 'clsx'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'
import { useState } from 'react' import { useState } from 'react'
import { PlusCircleIcon } from '@heroicons/react/solid' import { PlusCircleIcon } from '@heroicons/react/solid'
import { parseWordsAsTags } from '../../../common/util/parse' import { parseWordsAsTags } from 'common/util/parse'
import { createFold } from '../../lib/firebase/api-call' import { createFold } from '../../lib/firebase/api-call'
import { foldPath } from '../../lib/firebase/folds' import { foldPath } from '../../lib/firebase/folds'
import { toCamelCase } from '../../../common/util/format' import { toCamelCase } from 'common/util/format'
import { ConfirmationButton } from '../confirmation-button' import { ConfirmationButton } from '../confirmation-button'
import { Col } from '../layout/col' import { Col } from '../layout/col'
import { Spacer } from '../layout/spacer' import { Spacer } from '../layout/spacer'

View File

@ -3,10 +3,10 @@ import _ from 'lodash'
import clsx from 'clsx' import clsx from 'clsx'
import { PencilIcon } from '@heroicons/react/outline' import { PencilIcon } from '@heroicons/react/outline'
import { Fold } from '../../../common/fold' import { Fold } from 'common/fold'
import { parseWordsAsTags } from '../../../common/util/parse' import { parseWordsAsTags } from 'common/util/parse'
import { deleteFold, updateFold } from '../../lib/firebase/folds' import { deleteFold, updateFold } from '../../lib/firebase/folds'
import { toCamelCase } from '../../../common/util/format' import { toCamelCase } from 'common/util/format'
import { Spacer } from '../layout/spacer' import { Spacer } from '../layout/spacer'
import { TagsList } from '../tags-list' import { TagsList } from '../tags-list'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'

View File

@ -2,7 +2,7 @@ import clsx from 'clsx'
import { useState } from 'react' import { useState } from 'react'
import { SearchIcon } from '@heroicons/react/outline' import { SearchIcon } from '@heroicons/react/outline'
import { User } from '../../../common/user' import { User } from 'common/user'
import { import {
followFoldFromSlug, followFoldFromSlug,
unfollowFoldFromSlug, unfollowFoldFromSlug,

View File

@ -1,5 +1,5 @@
import clsx from 'clsx' import clsx from 'clsx'
import { Fold } from '../../../common/fold' import { Fold } from 'common/fold'
export function FoldTag(props: { fold: Fold }) { export function FoldTag(props: { fold: Fold }) {
const { fold } = props const { fold } = props

View File

@ -1,5 +1,5 @@
import clsx from 'clsx' import clsx from 'clsx'
import { Fold } from '../../../common/fold' import { Fold } from 'common/fold'
import { useFollowedFoldIds } from '../../hooks/use-fold' import { useFollowedFoldIds } from '../../hooks/use-fold'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { followFold, unfollowFold } from '../../lib/firebase/folds' import { followFold, unfollowFold } from '../../lib/firebase/folds'

View File

@ -1,5 +1,5 @@
import clsx from 'clsx' import clsx from 'clsx'
import { User } from '../../common/user' import { User } from 'common/user'
import { Avatar } from './avatar' import { Avatar } from './avatar'
import { Row } from './layout/row' import { Row } from './layout/row'
import { SiteLink } from './site-link' import { SiteLink } from './site-link'

View File

@ -2,7 +2,7 @@ import Link from 'next/link'
import clsx from 'clsx' import clsx from 'clsx'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { ENV_CONFIG } from '../../../common/envs/constants' import { ENV_CONFIG } from 'common/envs/constants'
export function ManifoldLogo(props: { export function ManifoldLogo(props: {
className?: string className?: string

View File

@ -11,7 +11,7 @@ import { Transition, Dialog } from '@headlessui/react'
import { useState, Fragment } from 'react' import { useState, Fragment } from 'react'
import Sidebar from './sidebar' import Sidebar from './sidebar'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { formatMoney } from '../../../common/util/format' import { formatMoney } from 'common/util/format'
import { Avatar } from '../avatar' import { Avatar } from '../avatar'
// From https://codepen.io/chris__sev/pen/QWGvYbL // From https://codepen.io/chris__sev/pen/QWGvYbL

View File

@ -1,7 +1,7 @@
import { firebaseLogout, User } from '../../lib/firebase/users' import { firebaseLogout, User } from '../../lib/firebase/users'
import { formatMoney } from '../../../common/util/format' import { formatMoney } from 'common/util/format'
import { Avatar } from '../avatar' import { Avatar } from '../avatar'
import { IS_PRIVATE_MANIFOLD } from '../../../common/envs/constants' import { IS_PRIVATE_MANIFOLD } from 'common/envs/constants'
import { Row } from '../layout/row' import { Row } from '../layout/row'
export function getNavigationOptions(user?: User | null) { export function getNavigationOptions(user?: User | null) {

View File

@ -1,6 +1,6 @@
import clsx from 'clsx' import clsx from 'clsx'
import { Answer } from '../../common/answer' import { Answer } from 'common/answer'
import { getProbability } from '../../common/calculate' import { getProbability } from 'common/calculate'
import { import {
Binary, Binary,
Contract, Contract,
@ -9,8 +9,8 @@ import {
FreeResponse, FreeResponse,
FreeResponseContract, FreeResponseContract,
FullContract, FullContract,
} from '../../common/contract' } from 'common/contract'
import { formatPercent } from '../../common/util/format' import { formatPercent } from 'common/util/format'
import { ClientRender } from './client-render' import { ClientRender } from './client-render'
export function OutcomeLabel(props: { export function OutcomeLabel(props: {

View File

@ -9,10 +9,10 @@ import { Spacer } from './layout/spacer'
import { ResolveConfirmationButton } from './confirmation-button' import { ResolveConfirmationButton } from './confirmation-button'
import { resolveMarket } from '../lib/firebase/api-call' import { resolveMarket } from '../lib/firebase/api-call'
import { ProbabilitySelector } from './probability-selector' import { ProbabilitySelector } from './probability-selector'
import { DPM_CREATOR_FEE } from '../../common/fees' import { DPM_CREATOR_FEE } from 'common/fees'
import { getProbability } from '../../common/calculate' import { getProbability } from 'common/calculate'
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { formatMoney } from '../../common/util/format' import { formatMoney } from 'common/util/format'
export function ResolutionPanel(props: { export function ResolutionPanel(props: {
creator: User creator: User

View File

@ -1,5 +1,5 @@
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { User } from '../../common/user' import { User } from 'common/user'
import { useUserContractBets } from '../hooks/use-user-bets' import { useUserContractBets } from '../hooks/use-user-bets'
import { useState } from 'react' import { useState } from 'react'
import { Col } from './layout/col' import { Col } from './layout/col'

View File

@ -1,10 +1,10 @@
import { Binary, CPMM, FullContract } from '../../common/contract' import { Binary, CPMM, FullContract } from 'common/contract'
import { Bet } from '../../common/bet' import { Bet } from 'common/bet'
import { User } from '../../common/user' import { User } from 'common/user'
import { Modal } from './layout/modal' import { Modal } from './layout/modal'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Title } from './title' import { Title } from './title'
import { formatWithCommas } from '../../common/util/format' import { formatWithCommas } from 'common/util/format'
import { OutcomeLabel } from './outcome-label' import { OutcomeLabel } from './outcome-label'
import { SellPanel } from './bet-panel' import { SellPanel } from './bet-panel'

View File

@ -1,9 +1,9 @@
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { User } from '../../common/user' import { User } from 'common/user'
import { useState } from 'react' import { useState } from 'react'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Row } from './layout/row' import { Row } from './layout/row'
import { formatWithCommas } from '../../common/util/format' import { formatWithCommas } from 'common/util/format'
import { OutcomeLabel } from './outcome-label' import { OutcomeLabel } from './outcome-label'
import { useUserContractBets } from '../hooks/use-user-bets' import { useUserContractBets } from '../hooks/use-user-bets'
import { useSaveShares } from './use-save-shares' import { useSaveShares } from './use-save-shares'

View File

@ -1,9 +1,9 @@
import { Fragment } from 'react' import { Fragment } from 'react'
import { CodeIcon } from '@heroicons/react/outline' import { CodeIcon } from '@heroicons/react/outline'
import { Menu, Transition } from '@headlessui/react' import { Menu, Transition } from '@headlessui/react'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { contractPath } from '../lib/firebase/contracts' import { contractPath } from '../lib/firebase/contracts'
import { DOMAIN } from '../../common/envs/constants' import { DOMAIN } from 'common/envs/constants'
import { copyToClipboard } from '../lib/util/copy' import { copyToClipboard } from '../lib/util/copy'
function copyEmbedCode(contract: Contract) { function copyEmbedCode(contract: Contract) {

View File

@ -1,6 +1,6 @@
import clsx from 'clsx' import clsx from 'clsx'
import { useState } from 'react' import { useState } from 'react'
import { parseWordsAsTags } from '../../common/util/parse' import { parseWordsAsTags } from 'common/util/parse'
import { Contract, updateContract } from '../lib/firebase/contracts' import { Contract, updateContract } from '../lib/firebase/contracts'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Row } from './layout/row' import { Row } from './layout/row'

View File

@ -1,5 +1,5 @@
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { Bet } from '../../common/bet' import { Bet } from 'common/bet'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import _ from 'lodash' import _ from 'lodash'

View File

@ -10,13 +10,13 @@ import { Linkify } from './linkify'
import { Spacer } from './layout/spacer' import { Spacer } from './layout/spacer'
import { Row } from './layout/row' import { Row } from './layout/row'
import { LinkIcon } from '@heroicons/react/solid' import { LinkIcon } from '@heroicons/react/solid'
import { genHash } from '../../common/util/random' import { genHash } from 'common/util/random'
import { PencilIcon } from '@heroicons/react/outline' import { PencilIcon } from '@heroicons/react/outline'
import { Tabs } from './layout/tabs' import { Tabs } from './layout/tabs'
import { UserCommentsList } from './comments-list' import { UserCommentsList } from './comments-list'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Comment, getUsersComments } from '../lib/firebase/comments' import { Comment, getUsersComments } from '../lib/firebase/comments'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { getContractFromId, listContracts } from '../lib/firebase/contracts' import { getContractFromId, listContracts } from '../lib/firebase/contracts'
import { LoadingIndicator } from './loading-indicator' import { LoadingIndicator } from './loading-indicator'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'

View File

@ -1,6 +1,6 @@
import clsx from 'clsx' import clsx from 'clsx'
import React from 'react' import React from 'react'
import { formatMoney } from '../../common/util/format' import { formatMoney } from 'common/util/format'
import { Col } from './layout/col' import { Col } from './layout/col'
import { Row } from './layout/row' import { Row } from './layout/row'

View File

@ -1,4 +1,4 @@
import { isAdmin } from '../../common/envs/constants' import { isAdmin } from 'common/envs/constants'
import { usePrivateUser, useUser } from './use-user' import { usePrivateUser, useUser } from './use-user'
export const useAdmin = () => { export const useAdmin = () => {

View File

@ -1,11 +1,11 @@
import _ from 'lodash' import _ from 'lodash'
import { useState, useEffect } from 'react' import { useState, useEffect } from 'react'
import { Bet } from '../../common/bet' import { Bet } from 'common/bet'
import { Comment } from '../../common/comment' import { Comment } from 'common/comment'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { useTimeSinceFirstRender } from './use-time-since-first-render' import { useTimeSinceFirstRender } from './use-time-since-first-render'
import { trackLatency } from '../lib/firebase/tracking' import { trackLatency } from '../lib/firebase/tracking'
import { User } from '../../common/user' import { User } from 'common/user'
import { getUserFeed } from '../lib/firebase/users' import { getUserFeed } from '../lib/firebase/users'
import { useUpdatedContracts } from './use-contracts' import { useUpdatedContracts } from './use-contracts'
import { import {

View File

@ -1,5 +1,5 @@
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Answer } from '../../common/answer' import { Answer } from 'common/answer'
import { listenForAnswers } from '../lib/firebase/answers' import { listenForAnswers } from '../lib/firebase/answers'
export const useAnswers = (contractId: string) => { export const useAnswers = (contractId: string) => {

View File

@ -1,5 +1,5 @@
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { import {
Bet, Bet,
listenForBets, listenForBets,

View File

@ -1,5 +1,5 @@
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Txn } from '../../common/txn' import { Txn } from 'common/txn'
import { listenForCharityTxns } from '../lib/firebase/txns' import { listenForCharityTxns } from '../lib/firebase/txns'
export const useCharityTxns = (charityId: string) => { export const useCharityTxns = (charityId: string) => {

View File

@ -1,7 +1,7 @@
import _ from 'lodash' import _ from 'lodash'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Fold } from '../../common/fold' import { Fold } from 'common/fold'
import { User } from '../../common/user' import { User } from 'common/user'
import { import {
listAllFolds, listAllFolds,
listenForFold, listenForFold,

View File

@ -1,6 +1,6 @@
import { listContracts } from '../lib/firebase/contracts' import { listContracts } from '../lib/firebase/contracts'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { User } from '../../common/user' import { User } from 'common/user'
export const useHasCreatedContractToday = (user: User | null | undefined) => { export const useHasCreatedContractToday = (user: User | null | undefined) => {
const [hasCreatedContractToday, setHasCreatedContractToday] = useState(true) const [hasCreatedContractToday, setHasCreatedContractToday] = useState(true)

View File

@ -1,7 +1,7 @@
import _ from 'lodash' import _ from 'lodash'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'
import { useState, useEffect } from 'react' import { useState, useEffect } from 'react'
import { IS_PRIVATE_MANIFOLD } from '../../common/envs/constants' import { IS_PRIVATE_MANIFOLD } from 'common/envs/constants'
type PropzProps = { type PropzProps = {
// Params from the router query // Params from the router query

View File

@ -1,6 +1,6 @@
import _ from 'lodash' import _ from 'lodash'
import { useEffect, RefObject, useState } from 'react' import { useEffect, RefObject, useState } from 'react'
import { Contract } from '../../common/contract' import { Contract } from 'common/contract'
import { trackView } from '../lib/firebase/tracking' import { trackView } from '../lib/firebase/tracking'
import { useIsVisible } from './use-is-visible' import { useIsVisible } from './use-is-visible'

View File

@ -1,6 +1,6 @@
import _ from 'lodash' import _ from 'lodash'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { PrivateUser } from '../../common/user' import { PrivateUser } from 'common/user'
import { import {
listenForLogin, listenForLogin,
listenForPrivateUser, listenForPrivateUser,

View File

@ -1,5 +1,5 @@
import { useState, useEffect } from 'react' import { useState, useEffect } from 'react'
import { PrivateUser, User } from '../../common/user' import { PrivateUser, User } from 'common/user'
import { import {
getUser, getUser,
listenForAllUsers, listenForAllUsers,

View File

@ -2,7 +2,7 @@ import { collection } from 'firebase/firestore'
import { getValues, listenForValues } from './utils' import { getValues, listenForValues } from './utils'
import { db } from './init' import { db } from './init'
import { Answer } from '../../../common/answer' import { Answer } from 'common/answer'
function getAnswersCollection(contractId: string) { function getAnswersCollection(contractId: string) {
return collection(db, 'contracts', contractId, 'answers') return collection(db, 'contracts', contractId, 'answers')

View File

@ -1,8 +1,8 @@
import { httpsCallable } from 'firebase/functions' import { httpsCallable } from 'firebase/functions'
import { Fold } from '../../../common/fold' import { Fold } from 'common/fold'
import { Txn } from '../../../common/txn' import { Txn } from 'common/txn'
import { User } from '../../../common/user' import { User } from 'common/user'
import { randomString } from '../../../common/util/random' import { randomString } from 'common/util/random'
import './init' import './init'
import { functions } from './init' import { functions } from './init'

View File

@ -8,8 +8,8 @@ import {
import _ from 'lodash' import _ from 'lodash'
import { db } from './init' import { db } from './init'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { Contract } from '../../../common/contract' import { Contract } from 'common/contract'
import { getValues, listenForValues } from './utils' import { getValues, listenForValues } from './utils'
export type { Bet } export type { Bet }

View File

@ -11,8 +11,8 @@ import _ from 'lodash'
import { getValues, listenForValues } from './utils' import { getValues, listenForValues } from './utils'
import { db } from './init' import { db } from './init'
import { User } from '../../../common/user' import { User } from 'common/user'
import { Comment } from '../../../common/comment' import { Comment } from 'common/comment'
export type { Comment } export type { Comment }

View File

@ -17,16 +17,16 @@ import _ from 'lodash'
import { app } from './init' import { app } from './init'
import { getValues, listenForValue, listenForValues } from './utils' import { getValues, listenForValue, listenForValues } from './utils'
import { Binary, Contract, FullContract } from '../../../common/contract' import { Binary, Contract, FullContract } from 'common/contract'
import { getDpmProbability } from '../../../common/calculate-dpm' import { getDpmProbability } from 'common/calculate-dpm'
import { createRNG, shuffle } from '../../../common/util/random' import { createRNG, shuffle } from 'common/util/random'
import { getCpmmProbability } from '../../../common/calculate-cpmm' import { getCpmmProbability } from 'common/calculate-cpmm'
import { formatMoney, formatPercent } from '../../../common/util/format' import { formatMoney, formatPercent } from 'common/util/format'
import { DAY_MS } from '../../../common/util/time' import { DAY_MS } from 'common/util/time'
import { MAX_FEED_CONTRACTS } from '../../../common/recommended-contracts' import { MAX_FEED_CONTRACTS } from 'common/recommended-contracts'
import { Bet } from '../../../common/bet' import { Bet } from 'common/bet'
import { Comment } from '../../../common/comment' import { Comment } from 'common/comment'
import { ENV_CONFIG } from '../../../common/envs/constants' import { ENV_CONFIG } from 'common/envs/constants'
export type { Contract } export type { Contract }
export function contractPath(contract: Contract) { export function contractPath(contract: Contract) {

View File

@ -11,7 +11,7 @@ import {
where, where,
} from 'firebase/firestore' } from 'firebase/firestore'
import _ from 'lodash' import _ from 'lodash'
import { Fold } from '../../../common/fold' import { Fold } from 'common/fold'
import { Contract, contractCollection } from './contracts' import { Contract, contractCollection } from './contracts'
import { db } from './init' import { db } from './init'
import { User } from './users' import { User } from './users'

View File

@ -1,6 +1,6 @@
import { getFirestore } from '@firebase/firestore' import { getFirestore } from '@firebase/firestore'
import { initializeApp, getApps, getApp } from 'firebase/app' import { initializeApp, getApps, getApp } from 'firebase/app'
import { FIREBASE_CONFIG } from '../../../common/envs/constants' import { FIREBASE_CONFIG } from 'common/envs/constants'
import { connectFirestoreEmulator } from 'firebase/firestore' import { connectFirestoreEmulator } from 'firebase/firestore'
import { connectFunctionsEmulator, getFunctions } from 'firebase/functions' import { connectFunctionsEmulator, getFunctions } from 'firebase/functions'

View File

@ -2,7 +2,7 @@ import { doc, collection, setDoc } from 'firebase/firestore'
import _ from 'lodash' import _ from 'lodash'
import { db } from './init' import { db } from './init'
import { ClickEvent, LatencyEvent, View } from '../../../common/tracking' import { ClickEvent, LatencyEvent, View } from 'common/tracking'
import { listenForLogin, User } from './users' import { listenForLogin, User } from './users'
let user: User | null = null let user: User | null = null

View File

@ -1,6 +1,6 @@
import { collection, query, where, orderBy } from 'firebase/firestore' import { collection, query, where, orderBy } from 'firebase/firestore'
import _ from 'lodash' import _ from 'lodash'
import { Txn } from '../../../common/txn' import { Txn } from 'common/txn'
import { db } from './init' import { db } from './init'
import { getValues, listenForValues } from './utils' import { getValues, listenForValues } from './utils'

View File

@ -21,10 +21,10 @@ import {
import _ from 'lodash' import _ from 'lodash'
import { app } from './init' import { app } from './init'
import { PrivateUser, User } from '../../../common/user' import { PrivateUser, User } from 'common/user'
import { createUser } from './api-call' import { createUser } from './api-call'
import { getValue, getValues, listenForValue, listenForValues } from './utils' import { getValue, getValues, listenForValue, listenForValues } from './utils'
import { DAY_MS } from '../../../common/util/time' import { DAY_MS } from 'common/util/time'
import { Contract } from './contracts' import { Contract } from './contracts'
import { Bet } from './bets' import { Bet } from './bets'
import { Comment } from './comments' import { Comment } from './comments'

View File

@ -1,4 +1,4 @@
import { PROJECT_ID } from '../../../common/envs/constants' import { PROJECT_ID } from 'common/envs/constants'
export const checkoutURL = ( export const checkoutURL = (
userId: string, userId: string,

View File

@ -1,4 +1,4 @@
import { IS_PRIVATE_MANIFOLD } from '../../common/envs/constants' import { IS_PRIVATE_MANIFOLD } from 'common/envs/constants'
import { Page } from '../components/page' import { Page } from '../components/page'
import { Title } from '../components/title' import { Title } from '../components/title'

View File

@ -25,13 +25,13 @@ import { AnswersPanel } from '../../components/answers/answers-panel'
import { fromPropz, usePropz } from '../../hooks/use-propz' import { fromPropz, usePropz } from '../../hooks/use-propz'
import { Leaderboard } from '../../components/leaderboard' import { Leaderboard } from '../../components/leaderboard'
import _ from 'lodash' import _ from 'lodash'
import { resolvedPayout } from '../../../common/calculate' import { resolvedPayout } from 'common/calculate'
import { formatMoney } from '../../../common/util/format' import { formatMoney } from 'common/util/format'
import { FeedBet, FeedComment } from '../../components/feed/feed-items' import { FeedBet, FeedComment } from '../../components/feed/feed-items'
import { useUserById } from '../../hooks/use-users' import { useUserById } from '../../hooks/use-users'
import { ContractTabs } from '../../components/contract/contract-tabs' import { ContractTabs } from '../../components/contract/contract-tabs'
import { FirstArgument } from '../../../common/util/types' import { FirstArgument } from 'common/util/types'
import { DPM, FreeResponse, FullContract } from '../../../common/contract' import { DPM, FreeResponse, FullContract } from 'common/contract'
import { contractTextDetails } from '../../components/contract/contract-details' import { contractTextDetails } from '../../components/contract/contract-details'
import { useWindowSize } from '../../hooks/use-window-size' import { useWindowSize } from '../../hooks/use-window-size'
import Confetti from 'react-confetti' import Confetti from 'react-confetti'

View File

@ -1,5 +1,5 @@
import { Html, Head, Main, NextScript } from 'next/document' import { Html, Head, Main, NextScript } from 'next/document'
import { ENV_CONFIG } from '../../common/envs/constants' import { ENV_CONFIG } from 'common/envs/constants'
export default function Document() { export default function Document() {
return ( return (

View File

@ -1,5 +1,5 @@
import { cloneElement } from 'react' import { cloneElement } from 'react'
import { CREATOR_FEE } from '../../common/fees' import { CREATOR_FEE } from 'common/fees'
import { Page } from '../components/page' import { Page } from '../components/page'
import { SEO } from '../components/SEO' import { SEO } from '../components/SEO'
import styles from './about.module.css' import styles from './about.module.css'

View File

@ -1,6 +1,6 @@
import dayjs from 'dayjs' import dayjs from 'dayjs'
import _ from 'lodash' import _ from 'lodash'
import { IS_PRIVATE_MANIFOLD } from '../../common/envs/constants' import { IS_PRIVATE_MANIFOLD } from 'common/envs/constants'
import { import {
DailyCountChart, DailyCountChart,
DailyPercentChart, DailyPercentChart,

View File

@ -7,11 +7,11 @@ import { Page } from '../../components/page'
import { Title } from '../../components/title' import { Title } from '../../components/title'
import { BuyAmountInput } from '../../components/amount-input' import { BuyAmountInput } from '../../components/amount-input'
import { Spacer } from '../../components/layout/spacer' import { Spacer } from '../../components/layout/spacer'
import { User } from '../../../common/user' import { User } from 'common/user'
import { useUser } from '../../hooks/use-user' import { useUser } from '../../hooks/use-user'
import { Linkify } from '../../components/linkify' import { Linkify } from '../../components/linkify'
import { transact } from '../../lib/firebase/api-call' import { transact } from '../../lib/firebase/api-call'
import { charities, Charity } from '../../../common/charity' import { charities, Charity } from 'common/charity'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'
import Custom404 from '../404' import Custom404 from '../404'
import { useCharityTxns } from '../../hooks/use-charity-txns' import { useCharityTxns } from '../../hooks/use-charity-txns'

View File

@ -1,6 +1,6 @@
import _ from 'lodash' import _ from 'lodash'
import { useState, useMemo } from 'react' import { useState, useMemo } from 'react'
import { charities, Charity as CharityType } from '../../../common/charity' import { charities, Charity as CharityType } from 'common/charity'
import { CharityCard } from '../../components/charity/charity-card' import { CharityCard } from '../../components/charity/charity-card'
import { Col } from '../../components/layout/col' import { Col } from '../../components/layout/col'
import { Spacer } from '../../components/layout/spacer' import { Spacer } from '../../components/layout/spacer'

View File

@ -8,16 +8,16 @@ import { Spacer } from '../components/layout/spacer'
import { useUser } from '../hooks/use-user' import { useUser } from '../hooks/use-user'
import { Contract, contractPath } from '../lib/firebase/contracts' import { Contract, contractPath } from '../lib/firebase/contracts'
import { createContract } from '../lib/firebase/api-call' import { createContract } from '../lib/firebase/api-call'
import { FIXED_ANTE, MINIMUM_ANTE } from '../../common/antes' import { FIXED_ANTE, MINIMUM_ANTE } from 'common/antes'
import { InfoTooltip } from '../components/info-tooltip' import { InfoTooltip } from '../components/info-tooltip'
import { Page } from '../components/page' import { Page } from '../components/page'
import { Title } from '../components/title' import { Title } from '../components/title'
import { ProbabilitySelector } from '../components/probability-selector' import { ProbabilitySelector } from '../components/probability-selector'
import { parseWordsAsTags } from '../../common/util/parse' import { parseWordsAsTags } from 'common/util/parse'
import { TagsList } from '../components/tags-list' import { TagsList } from '../components/tags-list'
import { Row } from '../components/layout/row' import { Row } from '../components/layout/row'
import { MAX_DESCRIPTION_LENGTH, outcomeType } from '../../common/contract' import { MAX_DESCRIPTION_LENGTH, outcomeType } from 'common/contract'
import { formatMoney } from '../../common/util/format' import { formatMoney } from 'common/util/format'
import { useHasCreatedContractToday } from '../hooks/use-has-created-contract-today' import { useHasCreatedContractToday } from '../hooks/use-has-created-contract-today'
export default function Create() { export default function Create() {

View File

@ -1,11 +1,6 @@
import { Bet } from '../../../../common/bet' import { Bet } from 'common/bet'
import { import { Contract, DPM, FreeResponse, FullContract } from 'common/contract'
Contract, import { DOMAIN } from 'common/envs/constants'
DPM,
FreeResponse,
FullContract,
} from '../../../../common/contract'
import { DOMAIN } from '../../../../common/envs/constants'
import { AnswersGraph } from '../../../components/answers/answers-graph' import { AnswersGraph } from '../../../components/answers/answers-graph'
import { import {
BinaryResolutionOrChance, BinaryResolutionOrChance,

View File

@ -1,4 +1,4 @@
import { FirstArgument } from '../../../common/util/types' import { FirstArgument } from 'common/util/types'
import { Col } from '../../components/layout/col' import { Col } from '../../components/layout/col'
import { Spacer } from '../../components/layout/spacer' import { Spacer } from '../../components/layout/spacer'
import { fromPropz } from '../../hooks/use-propz' import { fromPropz } from '../../hooks/use-propz'
@ -12,7 +12,7 @@ export const getStaticProps = fromPropz(getStaticPropz)
export default function AnalyticsEmbed(props: FirstArgument<typeof Analytics>) { export default function AnalyticsEmbed(props: FirstArgument<typeof Analytics>) {
return ( return (
<Col className="w-full px-2 bg-white"> <Col className="w-full bg-white px-2">
<CustomAnalytics {...props} /> <CustomAnalytics {...props} />
<Spacer h={8} /> <Spacer h={8} />
<FirebaseAnalytics /> <FirebaseAnalytics />

View File

@ -1,7 +1,7 @@
import _ from 'lodash' import _ from 'lodash'
import { Fold } from '../../../../common/fold' import { Fold } from 'common/fold'
import { Comment } from '../../../../common/comment' import { Comment } from 'common/comment'
import { Page } from '../../../components/page' import { Page } from '../../../components/page'
import { Title } from '../../../components/title' import { Title } from '../../../components/title'
import { Bet, listAllBets } from '../../../lib/firebase/bets' import { Bet, listAllBets } from '../../../lib/firebase/bets'
@ -22,9 +22,9 @@ import { useUser } from '../../../hooks/use-user'
import { useFold } from '../../../hooks/use-fold' import { useFold } from '../../../hooks/use-fold'
import { SearchableGrid } from '../../../components/contract/contracts-list' import { SearchableGrid } from '../../../components/contract/contracts-list'
import { useRouter } from 'next/router' import { useRouter } from 'next/router'
import { scoreCreators, scoreTraders } from '../../../../common/scoring' import { scoreCreators, scoreTraders } from 'common/scoring'
import { Leaderboard } from '../../../components/leaderboard' import { Leaderboard } from '../../../components/leaderboard'
import { formatMoney } from '../../../../common/util/format' import { formatMoney } from 'common/util/format'
import { EditFoldButton } from '../../../components/folds/edit-fold-button' import { EditFoldButton } from '../../../components/folds/edit-fold-button'
import Custom404 from '../../404' import Custom404 from '../../404'
import { FollowFoldButton } from '../../../components/folds/follow-fold-button' import { FollowFoldButton } from '../../../components/folds/follow-fold-button'
@ -32,7 +32,7 @@ import { SEO } from '../../../components/SEO'
import { useTaggedContracts } from '../../../hooks/use-contracts' import { useTaggedContracts } from '../../../hooks/use-contracts'
import { Linkify } from '../../../components/linkify' import { Linkify } from '../../../components/linkify'
import { fromPropz, usePropz } from '../../../hooks/use-propz' import { fromPropz, usePropz } from '../../../hooks/use-propz'
import { filterDefined } from '../../../../common/util/array' import { filterDefined } from 'common/util/array'
import { findActiveContracts } from '../../../components/feed/find-active-contracts' import { findActiveContracts } from '../../../components/feed/find-active-contracts'
import { Tabs } from '../../../components/layout/tabs' import { Tabs } from '../../../components/layout/tabs'

View File

@ -1,7 +1,7 @@
import _ from 'lodash' import _ from 'lodash'
import Link from 'next/link' import Link from 'next/link'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Fold } from '../../common/fold' import { Fold } from 'common/fold'
import { CreateFoldButton } from '../components/folds/create-fold-button' import { CreateFoldButton } from '../components/folds/create-fold-button'
import { FollowFoldButton } from '../components/folds/follow-fold-button' import { FollowFoldButton } from '../components/folds/follow-fold-button'
import { Col } from '../components/layout/col' import { Col } from '../components/layout/col'

View File

@ -4,7 +4,7 @@ import { Col } from '../components/layout/col'
import { Leaderboard } from '../components/leaderboard' import { Leaderboard } from '../components/leaderboard'
import { Page } from '../components/page' import { Page } from '../components/page'
import { getTopCreators, getTopTraders, User } from '../lib/firebase/users' import { getTopCreators, getTopTraders, User } from '../lib/firebase/users'
import { formatMoney } from '../../common/util/format' import { formatMoney } from 'common/util/format'
import { fromPropz, usePropz } from '../hooks/use-propz' import { fromPropz, usePropz } from '../hooks/use-propz'
export const getStaticProps = fromPropz(getStaticPropz) export const getStaticProps = fromPropz(getStaticPropz)

View File

@ -4,9 +4,9 @@ import Link from 'next/link'
import { useState } from 'react' import { useState } from 'react'
import Textarea from 'react-expanding-textarea' import Textarea from 'react-expanding-textarea'
import { getProbability } from '../../common/calculate' import { getProbability } from 'common/calculate'
import { Binary, CPMM, DPM, FullContract } from '../../common/contract' import { Binary, CPMM, DPM, FullContract } from 'common/contract'
import { parseWordsAsTags } from '../../common/util/parse' import { parseWordsAsTags } from 'common/util/parse'
import { BuyAmountInput } from '../components/amount-input' import { BuyAmountInput } from '../components/amount-input'
import { InfoTooltip } from '../components/info-tooltip' import { InfoTooltip } from '../components/info-tooltip'
import { Col } from '../components/layout/col' import { Col } from '../components/layout/col'

View File

@ -7,16 +7,13 @@ import { Page } from '../components/page'
import { SEO } from '../components/SEO' import { SEO } from '../components/SEO'
import { Title } from '../components/title' import { Title } from '../components/title'
import { usePrivateUser, useUser } from '../hooks/use-user' import { usePrivateUser, useUser } from '../hooks/use-user'
import { formatMoney } from '../../common/util/format' import { formatMoney } from 'common/util/format'
import { import { cleanDisplayName, cleanUsername } from 'common/util/clean-username'
cleanDisplayName,
cleanUsername,
} from '../../common/util/clean-username'
import { changeUserInfo } from '../lib/firebase/api-call' import { changeUserInfo } from '../lib/firebase/api-call'
import { uploadImage } from '../lib/firebase/storage' import { uploadImage } from '../lib/firebase/storage'
import { Col } from '../components/layout/col' import { Col } from '../components/layout/col'
import { Row } from '../components/layout/row' import { Row } from '../components/layout/row'
import { User } from '../../common/user' import { User } from 'common/user'
import { updateUser } from '../lib/firebase/users' import { updateUser } from '../lib/firebase/users'
import { defaultBannerUrl } from '../components/user-page' import { defaultBannerUrl } from '../components/user-page'
import { SiteLink } from '../components/site-link' import { SiteLink } from '../components/site-link'

View File

@ -2,7 +2,7 @@ import _ from 'lodash'
import { GetServerSideProps } from 'next' import { GetServerSideProps } from 'next'
import { getServerSideSitemap, ISitemapField } from 'next-sitemap' import { getServerSideSitemap, ISitemapField } from 'next-sitemap'
import { DOMAIN } from '../../common/envs/constants' import { DOMAIN } from 'common/envs/constants'
import { LiteMarket } from './api/v0/_types' import { LiteMarket } from './api/v0/_types'
export const getServerSideProps: GetServerSideProps = async (ctx) => { export const getServerSideProps: GetServerSideProps = async (ctx) => {