From a7ddad4c67093ae03a1c94d5fd157d41fce70a7b Mon Sep 17 00:00:00 2001 From: Override-6 Date: Wed, 8 Nov 2023 22:45:43 +0100 Subject: [PATCH] fix basket court --- front/assets/basketball_court.svg | 81 +++++++++++++------------ front/components/editor/BasketCourt.tsx | 46 +++++++------- front/style/basket_court.css | 12 +++- vite.config.ts | 4 ++ 4 files changed, 78 insertions(+), 65 deletions(-) diff --git a/front/assets/basketball_court.svg b/front/assets/basketball_court.svg index c5378b9..25b6f6c 100644 --- a/front/assets/basketball_court.svg +++ b/front/assets/basketball_court.svg @@ -1,39 +1,44 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/front/components/editor/BasketCourt.tsx b/front/components/editor/BasketCourt.tsx index 768d4a5..394f403 100644 --- a/front/components/editor/BasketCourt.tsx +++ b/front/components/editor/BasketCourt.tsx @@ -1,7 +1,8 @@ -import courtSvg from '../../assets/basketball_court.svg'; +import CourtSvg from '../../assets/basketball_court.svg'; import '../../style/basket_court.css'; import React, {MouseEvent, ReactElement, useRef, useState} from "react"; import Player from "./Player"; +import Draggable from "react-draggable"; const TEAM_MAX_PLAYER = 5; @@ -10,31 +11,28 @@ export function BasketCourt() { const divRef = useRef(null); return ( -
{ - if (e.target != divRef.current) - return - let bounds = divRef.current!.getBoundingClientRect(); - let playerCount = players.length; +
+ { + console.log(e.target) + let bounds = divRef.current!.getBoundingClientRect(); + let playerCount = players.length; - if (playerCount >= TEAM_MAX_PLAYER) { - return; - } + if (playerCount >= TEAM_MAX_PLAYER) { + return; + } - const player = ( - - ); - setPlayers([...players, player]) - }}> + const player = ( + + ); + setPlayers([...players, player]) + }}/> {players}
) diff --git a/front/style/basket_court.css b/front/style/basket_court.css index b1a3e10..2e60cfd 100644 --- a/front/style/basket_court.css +++ b/front/style/basket_court.css @@ -1,8 +1,14 @@ #court-container { - background-color: rebeccapurple; display: flex; - width: 1000px; - height: 500px; +} + +#court-svg { + user-select: none; + -webkit-user-drag: none; +} + +#court-svg * { + stroke: var(--selected-team-secondarycolor); } \ No newline at end of file diff --git a/vite.config.ts b/vite.config.ts index 34cb651..bb04351 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -2,6 +2,7 @@ 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][] { @@ -39,5 +40,8 @@ export default defineConfig({ cssInjectedByJsPlugin({ relativeCSSInjection: true, }), + svgr({ + include: "**/*.svg" + }) ] })