From 57db0e094a6817db1adf5f72495e6d1103315238 Mon Sep 17 00:00:00 2001 From: Override-6 Date: Wed, 8 Nov 2023 19:48:18 +0100 Subject: [PATCH] WIP --- front/components/editor/BasketCourt.tsx | 14 +++++++++++--- front/components/editor/Player.tsx | 12 ++++++------ package.json | 1 - vite.config.ts | 4 ---- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/front/components/editor/BasketCourt.tsx b/front/components/editor/BasketCourt.tsx index bc19f9e..768d4a5 100644 --- a/front/components/editor/BasketCourt.tsx +++ b/front/components/editor/BasketCourt.tsx @@ -3,6 +3,7 @@ import '../../style/basket_court.css'; import React, {MouseEvent, ReactElement, useRef, useState} from "react"; import Player from "./Player"; +const TEAM_MAX_PLAYER = 5; export function BasketCourt() { const [players, setPlayers] = useState([]) @@ -15,11 +16,18 @@ export function BasketCourt() { backgroundImage: `url(${courtSvg})` }} onClick={(e: MouseEvent) => { - let bounds = divRef.current.getBoundingClientRect(); + if (e.target != divRef.current) + return + let bounds = divRef.current!.getBoundingClientRect(); + let playerCount = players.length; + + if (playerCount >= TEAM_MAX_PLAYER) { + return; + } const player = ( - (); + const ref = useRef(null); useEffect(() => { - const playerRect = ref.current?.getBoundingClientRect(); - bounds.bottom -= playerRect.height / 2; - bounds.right -= playerRect.width / 2; + const playerRect = ref.current!.getBoundingClientRect(); + bounds.bottom! -= playerRect.height / 2; + bounds.right! -= playerRect.width / 2; }, [ref]) return ( diff --git a/package.json b/package.json index 90209d0..97f0039 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,6 @@ ] }, "devDependencies": { - "@svgr/webpack": "^8.1.0", "@vitejs/plugin-react": "^4.1.0", "vite-plugin-svgr": "^4.1.0" } diff --git a/vite.config.ts b/vite.config.ts index b81e587..34cb651 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -2,7 +2,6 @@ import {defineConfig} from "vite"; import react from '@vitejs/plugin-react'; import fs from "fs"; import cssInjectedByJsPlugin from 'vite-plugin-css-injected-by-js'; -import svgr from 'vite-plugin-svgr'; function resolve_entries(dirname: string): [string, string][] { @@ -40,8 +39,5 @@ export default defineConfig({ cssInjectedByJsPlugin({ relativeCSSInjection: true, }), - svgr({ - include: "**/*.svg", - }) ] })