From 1c1a709b0329bafff65e1f60fc4767b33bb136a0 Mon Sep 17 00:00:00 2001 From: "Damon L. Montague Jr." Date: Mon, 12 Aug 2024 19:45:16 -0400 Subject: [PATCH] POOF --- ui/package-lock.json | 34 +++- ui/package.json | 2 +- ui/src/components/display-card.tsx | 5 +- ui/src/components/ui/label.tsx | 19 ++ ui/src/components/ui/radio-group.tsx | 73 +++++++ ui/src/constants.ts | 72 +++++++ ui/src/pages/History.tsx | 275 +++++++++++++++++++-------- 7 files changed, 391 insertions(+), 89 deletions(-) create mode 100644 ui/src/components/ui/label.tsx create mode 100644 ui/src/components/ui/radio-group.tsx create mode 100644 ui/src/constants.ts diff --git a/ui/package-lock.json b/ui/package-lock.json index 35d38c3..e517165 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -8,7 +8,7 @@ "name": "@accuribet/ui", "version": "0.0.1", "dependencies": { - "@kobalte/core": "^0.12.6", + "@kobalte/core": "^0.13.4", "@solidjs/router": "^0.10.9", "axios": "^1.6.8", "class-variance-authority": "^0.7.0", @@ -862,15 +862,17 @@ } }, "node_modules/@kobalte/core": { - "version": "0.12.6", - "resolved": "https://registry.npmjs.org/@kobalte/core/-/core-0.12.6.tgz", - "integrity": "sha512-+Ta2o2wEqZ2fCqLMkvjT40VHNmcFKdGe8TNDVQbbMPk66qoU6g/DDRFR/Ib7eAjb+C95VoIyk6zaafos2VOo0w==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/@kobalte/core/-/core-0.13.4.tgz", + "integrity": "sha512-ElvazoxoQU/z5pQUdHtXAzjiZA60J+Fo36WgO+j8sMvycIGwrlv+Fdr+uXcLSm1onYOYoSG1+vumD3Ce5OYzzw==", "license": "MIT", "dependencies": { "@floating-ui/dom": "^1.5.1", "@internationalized/date": "^3.4.0", "@internationalized/number": "^3.2.1", "@kobalte/utils": "^0.9.0", + "@solid-primitives/props": "^3.1.8", + "solid-presence": "^0.1.6", "solid-prevent-scroll": "^0.1.4" }, "peerDependencies": { @@ -3142,6 +3144,30 @@ "solid-js": "^1.8.0" } }, + "node_modules/solid-presence": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/solid-presence/-/solid-presence-0.1.8.tgz", + "integrity": "sha512-pWGtXUFWYYUZNbg5YpG5vkQJyOtzn2KXhxYaMx/4I+lylTLYkITOLevaCwMRN+liCVk0pqB6EayLWojNqBFECA==", + "license": "MIT", + "dependencies": { + "@corvu/utils": "~0.4.0" + }, + "peerDependencies": { + "solid-js": "^1.8" + } + }, + "node_modules/solid-presence/node_modules/@corvu/utils": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@corvu/utils/-/utils-0.4.0.tgz", + "integrity": "sha512-LTjH/gSf4t/slzGoQdFYWrAykHp3A7JZYH+KjM5KCppVjDEY7pLjZkMTHU/vPF7gvjiXDYgA+6q68eiHRiJ8wA==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.6.7" + }, + "peerDependencies": { + "solid-js": "^1.8" + } + }, "node_modules/solid-prevent-scroll": { "version": "0.1.9", "resolved": "https://registry.npmjs.org/solid-prevent-scroll/-/solid-prevent-scroll-0.1.9.tgz", diff --git a/ui/package.json b/ui/package.json index cf83bef..075ea81 100644 --- a/ui/package.json +++ b/ui/package.json @@ -5,7 +5,7 @@ "type": "module", "description": "Web UI for Accuribet", "dependencies": { - "@kobalte/core": "^0.12.6", + "@kobalte/core": "^0.13.4", "@solidjs/router": "^0.10.9", "axios": "^1.6.8", "class-variance-authority": "^0.7.0", diff --git a/ui/src/components/display-card.tsx b/ui/src/components/display-card.tsx index 08a3cc7..9e07f11 100644 --- a/ui/src/components/display-card.tsx +++ b/ui/src/components/display-card.tsx @@ -30,7 +30,10 @@ import { DialogModal } from "~/components/dialog-modal.tsx"; const logos = import.meta.glob("../assets/teams/*.svg", { eager: true }); -const getLogo = (team: string) => { +export const getLogo = (team: string) => { + // if team is not all lower make it lower + if (team !== team.toLowerCase()) team = team.toLowerCase() + let strIndex = `../assets/teams/${team}.svg`; // @ts-ignore return logos[strIndex].default; diff --git a/ui/src/components/ui/label.tsx b/ui/src/components/ui/label.tsx new file mode 100644 index 0000000..0b0d9d2 --- /dev/null +++ b/ui/src/components/ui/label.tsx @@ -0,0 +1,19 @@ +import type { Component, ComponentProps } from "solid-js" +import { splitProps } from "solid-js" + +import { cn } from "~/lib/utils" + +const Label: Component> = (props) => { + const [local, others] = splitProps(props, ["class"]) + return ( +