From 9bce02cd0402ccc0d0aaa8af7ab0d484d9d7274d Mon Sep 17 00:00:00 2001 From: Gurkenglas Date: Wed, 10 Aug 2022 19:21:54 +0200 Subject: [PATCH] use Dictionary type alias --- web/components/contract/contract-tabs.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/web/components/contract/contract-tabs.tsx b/web/components/contract/contract-tabs.tsx index a4a5e89c..f90891a0 100644 --- a/web/components/contract/contract-tabs.tsx +++ b/web/components/contract/contract-tabs.tsx @@ -16,7 +16,7 @@ import { Avatar } from 'web/components/avatar' import { Grid, _ } from 'gridjs-react' import 'gridjs/dist/theme/mermaid.css' import { useState, useEffect, useRef } from 'react' -import { maxBy } from 'lodash' +import { maxBy, Dictionary } from 'lodash' export function ContractTabs(props: { contract: Contract @@ -100,7 +100,7 @@ export function ContractTabs(props: { ) - const [users, setUsers] = useState({} as {[key: string]: User}) + const [users, setUsers] = useState({} as Dictionary) const asked = useRef(new Set()) useEffect(() => { @@ -135,13 +135,13 @@ export function ContractTabs(props: { const gridjsstyle = {th: {padding: 0}, td: {padding: 0}} - const userpositions = {} as {[key: string]: any} + const userpositions = {} as Dictionary bets.forEach(({ userId, outcome, shares, amount }) => { const {id, position, mana} = userpositions[userId] || {id: userId, position: {}, mana: 0} position[outcome] = (position[outcome] || 0) + shares userpositions[userId] = {id:id, position:position, mana:(mana + amount)} }) - const argmax = (obj:{[key:string]:number}) => maxBy(Object.keys(obj), (k:string) => obj[k]) + const argmax = (obj:Dictionary) => maxBy(Object.keys(obj), (k:string) => obj[k]) const gridjsusers = Object.values(userpositions).map((row:any) => ({...row , topout: argmax(row.position) , topshr: row.position[argmax(row.position) || ""]