From c0326644ad28306851eb6b75ae926d0ea146b57a Mon Sep 17 00:00:00 2001 From: Bill Date: Sun, 14 Aug 2022 00:28:02 -0400 Subject: [PATCH] Reset trade quantity, fix template --- .../views/furniture/InventoryTradeView.tsx | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/src/components/inventory/views/furniture/InventoryTradeView.tsx b/src/components/inventory/views/furniture/InventoryTradeView.tsx index 9825dc28..77337fcd 100644 --- a/src/components/inventory/views/furniture/InventoryTradeView.tsx +++ b/src/components/inventory/views/furniture/InventoryTradeView.tsx @@ -12,7 +12,6 @@ interface InventoryTradeViewProps } const MAX_ITEMS_TO_TRADE: number = 9; -const MIN_VALUE: number = 1; export const InventoryTradeView: FC = props => { @@ -22,7 +21,7 @@ export const InventoryTradeView: FC = props => const [ otherGroupItem, setOtherGroupItem ] = useState(null); const [ filteredGroupItems, setFilteredGroupItems ] = useState(null); const [ countdownTick, setCountdownTick ] = useState(3); - const [ quantity, setQuantity ] = useState(1); + const [ quantity, setQuantity ] = useState(1); const { ownUser = null, otherUser = null, groupItems = [], tradeState = TradeState.TRADING_STATE_READY, progressTrade = null, removeItem = null, setTradeState = null } = useInventoryTrade(); const { simpleAlert = null } = useNotification(); @@ -120,11 +119,11 @@ export const InventoryTradeView: FC = props => return } - const updateQuantity = (value: number | string, totalItemCount: number) => + const updateQuantity = (value: number, totalItemCount: number) => { - if(isNaN(Number(value)) || Number(value) < 0 || value == '') value = 1; + if(isNaN(Number(value)) || Number(value) < 0 || !value) value = 1; - value = Math.max(Number(value), MIN_VALUE); + value = Math.max(Number(value), 1); value = Math.min(Number(value), totalItemCount); if(value === quantity) return; @@ -134,10 +133,15 @@ export const InventoryTradeView: FC = props => const changeCount = (totalItemCount: number) => { - updateQuantity(Number(quantity), totalItemCount); - attemptItemOffer(Number(quantity)); + updateQuantity(quantity, totalItemCount); + attemptItemOffer(quantity); } + useEffect(() => + { + setQuantity(1); + }, [ groupItem ]); + useEffect(() => { if(tradeState !== TradeState.TRADING_STATE_COUNTDOWN) return; @@ -192,7 +196,7 @@ export const InventoryTradeView: FC = props => - setQuantity(event.target.value == '' || isNaN(event.target.valueAsNumber) || event.target.valueAsNumber < 0 ? '' : event.target.valueAsNumber) } /> + setQuantity(event.target.valueAsNumber) } /> @@ -219,11 +223,11 @@ export const InventoryTradeView: FC = props => if(!item) return ; return ( - setOwnGroupItem(item) } onDoubleClick={ event => removeItem(item)> + setOwnGroupItem(item) } onDoubleClick={ event => removeItem(item) }> { (ownGroupItem === item) && - } + } ); }) }