Some Code Cleanup
This commit is contained in:
@@ -22,7 +22,7 @@
|
||||
import wrap from "svelte-spa-router/wrap";
|
||||
import Router, {replace} from "svelte-spa-router";
|
||||
import {get} from "svelte/store";
|
||||
import {tokenStore} from "../repo/repo";
|
||||
import {tokenStore} from "@repo/repo";
|
||||
|
||||
const routes: RouteDefinition = {
|
||||
'/': wrap({asyncComponent: () => import('./pages/Home.svelte'), conditions: detail => get(tokenStore) != ""}),
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
<script lang="ts">
|
||||
import {Input, Label, Select} from "flowbite-svelte";
|
||||
import TypeAheadSearch from "./TypeAheadSearch.svelte";
|
||||
import {gamemodes, groups, maps, players} from "../../stores/stores";
|
||||
import type {Team} from '../../types/team.js';
|
||||
import {gamemodes, groups, maps, players} from "@stores/stores.ts";
|
||||
import type {Team} from "@type/team.ts";
|
||||
|
||||
export let teams: Team[] = [];
|
||||
export let blueTeam: string;
|
||||
@@ -29,8 +29,8 @@
|
||||
export let start = "";
|
||||
export let gamemode = "";
|
||||
export let map = "";
|
||||
export let kampfleiter = "";
|
||||
export let group = "";
|
||||
export let kampfleiter: string | undefined = "";
|
||||
export let group: string | null = "";
|
||||
export let groupSearch = "";
|
||||
|
||||
$: selectPlayers = $players.map(player => {
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {Button, Dropdown, DropdownItem, Search} from 'flowbite-svelte'
|
||||
import {Button, Dropdown, Search} from 'flowbite-svelte'
|
||||
|
||||
export let selected: string | null = null
|
||||
export let items: {name: string, value: string}[] = []
|
||||
|
||||
@@ -19,11 +19,11 @@
|
||||
|
||||
<script lang="ts">
|
||||
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
||||
import {Button, Card, Input, Label, Navbar, NavBrand, NavHamburger, NavUl, Spinner} from "flowbite-svelte";
|
||||
import {pageRepo} from "../../repo/repo";
|
||||
import {Button, Card, Navbar, NavBrand, Spinner} from "flowbite-svelte";
|
||||
import {pageRepo} from "@repo/repo.ts";
|
||||
import {mapToMap, nameRegex} from "../util.ts";
|
||||
import TypeAheadSearch from "../components/TypeAheadSearch.svelte";
|
||||
import {branches} from "../../stores/stores.ts";
|
||||
import {branches} from "@stores/stores.ts";
|
||||
import Editor from "./edit/Editor.svelte";
|
||||
|
||||
$: pagesFuture = $pageRepo.listPages(selectedBranch);
|
||||
|
||||
@@ -18,11 +18,11 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {Avatar, Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
||||
import {Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
||||
import EventEdit from "./event/EventEdit.svelte";
|
||||
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
||||
import FightList from "./event/FightList.svelte";
|
||||
import {eventRepo} from "../../repo/repo";
|
||||
import {eventRepo} from "@repo/repo.ts";
|
||||
import TeamList from "./event/TeamList.svelte";
|
||||
|
||||
export let params: { id: number };
|
||||
|
||||
@@ -18,15 +18,12 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {Avatar, Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
||||
import EventEdit from "./event/EventEdit.svelte";
|
||||
import {Navbar, NavBrand, Spinner, TabItem, Tabs} from "flowbite-svelte";
|
||||
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
||||
import FightList from "./event/FightList.svelte";
|
||||
import {eventRepo} from "../../repo/repo";
|
||||
import TeamList from "./event/TeamList.svelte";
|
||||
import {eventRepo} from "@repo/repo.ts";
|
||||
import GroupGenerator from "./generate/GroupGenerator.svelte";
|
||||
|
||||
export let params: { id: number } = {};
|
||||
export let params: { id: number };
|
||||
|
||||
let id = params.id;
|
||||
let event = $eventRepo.getEvent(id.toString());
|
||||
|
||||
@@ -18,13 +18,12 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
|
||||
import {Button, Modal, Navbar, NavBrand, NavHamburger, NavLi, NavUl, Spinner} from "flowbite-svelte";
|
||||
import {replace} from "svelte-spa-router";
|
||||
import {PlusSolid} from "flowbite-svelte-icons";
|
||||
import EventCard from "./home/EventCard.svelte";
|
||||
import CreateEventModal from "./home/CreateEventModal.svelte";
|
||||
import {eventRepo, tokenStore} from "../../repo/repo";
|
||||
import {eventRepo, tokenStore} from "@repo/repo.ts";
|
||||
|
||||
let events = $eventRepo.listEvents()
|
||||
let showAdd = false
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
import {Button, Input, Label, Spinner, Toast} from "flowbite-svelte";
|
||||
import {fly} from "svelte/transition";
|
||||
import {replace} from "svelte-spa-router";
|
||||
import {EyeOutline, EyeSlashOutline, EyeSolid} from "flowbite-svelte-icons";
|
||||
import {fetchWithToken, tokenStore} from "../../repo/repo";
|
||||
import {EyeOutline, EyeSlashOutline} from "flowbite-svelte-icons";
|
||||
import {fetchWithToken, tokenStore} from "@repo/repo.ts";
|
||||
|
||||
let show = false;
|
||||
let loading = false;
|
||||
|
||||
@@ -20,10 +20,9 @@
|
||||
<script lang="ts">
|
||||
import {Button, Card, Checkbox, Input, Label, Navbar, NavBrand, Radio, Spinner} from "flowbite-svelte";
|
||||
import {ArrowLeftSolid} from "flowbite-svelte-icons";
|
||||
import {players} from "../../stores/stores.ts";
|
||||
import {permsRepo} from "../../repo/repo.ts";
|
||||
import {players} from "@stores/stores.ts";
|
||||
import {permsRepo} from "@repo/repo.ts";
|
||||
import {capitalize} from "../util.ts";
|
||||
import type {Player} from "../../types/data.ts";
|
||||
|
||||
let search = "";
|
||||
$: lowerCaseSearch = search.toLowerCase();
|
||||
|
||||
@@ -18,12 +18,12 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {Spinner, Toolbar, ToolbarButton, ToolbarGroup, Tooltip} from "flowbite-svelte";
|
||||
import {Spinner, Toolbar, ToolbarButton, ToolbarGroup} from "flowbite-svelte";
|
||||
import {json} from "@codemirror/lang-json";
|
||||
import CodeMirror from "svelte-codemirror-editor";
|
||||
import {pageRepo} from "../../../repo/repo.ts";
|
||||
import {pageRepo} from "@repo/repo.ts";
|
||||
import {base64ToBytes} from "../../util.ts";
|
||||
import type {Page} from "../../../types/page.ts";
|
||||
import type {Page} from "@type/page.ts";
|
||||
import {materialDark} from '@ddietr/codemirror-themes/material-dark.js'
|
||||
import {createEventDispatcher} from "svelte";
|
||||
import MDEMarkdownEditor from "./MDEMarkdownEditor.svelte";
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import type {ExtendedEvent} from "../../../types/event.js";
|
||||
import {Button, Heading, Input, Label, Modal, Range, Select, Toast, Toggle} from "flowbite-svelte";
|
||||
import {schemTypes} from "../../../stores/stores";
|
||||
import type {ExtendedEvent} from "@type/event.ts";
|
||||
import {Button, Input, Label, Modal, Range, Select, Toast, Toggle} from "flowbite-svelte";
|
||||
import {schemTypes} from "@stores/stores.ts";
|
||||
import dayjs from "dayjs";
|
||||
import utc from "dayjs/plugin/utc"
|
||||
import type {UpdateEvent} from "../../../repo/event.js";
|
||||
import {eventRepo} from "../../../repo/repo";
|
||||
import type {UpdateEvent} from "@repo/event.ts";
|
||||
import {eventRepo} from "@repo/repo.ts";
|
||||
import ErrorModal from "../../components/ErrorModal.svelte";
|
||||
import {replace} from "svelte-spa-router";
|
||||
import {CheckCircleOutline} from "flowbite-svelte-icons";
|
||||
@@ -43,7 +43,7 @@
|
||||
let spectateSystem = event.spectateSystem;
|
||||
|
||||
let errorOpen = false;
|
||||
let error: Error = undefined;
|
||||
let error: any = undefined;
|
||||
let deleteOpen = false;
|
||||
|
||||
$: deadlineDate = dayjs(deadline);
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {EditOutline, InboxSolid, TrashBinOutline} from "flowbite-svelte-icons";
|
||||
import {Button, Checkbox, Modal, Toolbar, ToolbarButton} from "flowbite-svelte";
|
||||
import type {EventFight, ExtendedEvent} from "../../../types/event.js";
|
||||
import {EditOutline, TrashBinOutline} from "flowbite-svelte-icons";
|
||||
import {Button, Modal, Toolbar, ToolbarButton} from "flowbite-svelte";
|
||||
import type {EventFight, ExtendedEvent} from "@type/event.ts";
|
||||
import FightEditModal from "./modals/FightEditModal.svelte";
|
||||
import {createEventDispatcher, onMount} from "svelte";
|
||||
import {fightRepo} from "../../../repo/repo";
|
||||
import {isWide} from "../../../stores/stores";
|
||||
import {createEventDispatcher} from "svelte";
|
||||
import {fightRepo} from "@repo/repo.ts";
|
||||
import {isWide} from "@stores/stores.ts";
|
||||
|
||||
export let fight: EventFight;
|
||||
export let data: ExtendedEvent;
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import type {EventFight, ExtendedEvent} from "../../../types/event.js";
|
||||
import type {EventFight, ExtendedEvent} from "@type/event.ts";
|
||||
import {
|
||||
Button,
|
||||
Checkbox, Input, Label,
|
||||
@@ -36,12 +36,12 @@
|
||||
} from "flowbite-svelte-icons";
|
||||
import FightCard from "./FightCard.svelte";
|
||||
import CreateFightModal from "./modals/CreateFightModal.svelte";
|
||||
import {fightRepo} from "../../../repo/repo";
|
||||
import {groups, players} from "../../../stores/stores";
|
||||
import {fightRepo} from "@repo/repo.ts";
|
||||
import {groups, players} from "@stores/stores.ts";
|
||||
import TypeAheadSearch from "../../components/TypeAheadSearch.svelte";
|
||||
import type {UpdateFight} from "../../../repo/fight.js";
|
||||
import type {UpdateFight} from "@repo/fight.ts";
|
||||
import dayjs from "dayjs";
|
||||
import * as duration from "dayjs/plugin/duration"
|
||||
import duration from "dayjs/plugin/duration"
|
||||
dayjs.extend(duration)
|
||||
|
||||
export let data: ExtendedEvent;
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {Avatar, Button, Modal} from "flowbite-svelte";
|
||||
import type {ExtendedEvent} from "../../../types/event.js";
|
||||
import {Avatar} from "flowbite-svelte";
|
||||
import type {ExtendedEvent} from "@type/event.ts";
|
||||
|
||||
export let data: ExtendedEvent;
|
||||
</script>
|
||||
|
||||
@@ -19,10 +19,9 @@
|
||||
|
||||
<script lang="ts">
|
||||
import {Button, Modal} from "flowbite-svelte";
|
||||
import type {ExtendedEvent} from "../../../../types/event.js";
|
||||
import type {ExtendedEvent} from "@type/event.ts";
|
||||
import FightEditPart from "../../../components/FightEditPart.svelte";
|
||||
import {fightRepo} from "../../../../repo/repo";
|
||||
import type {CreateFight} from "../../../../repo/fight.ts";
|
||||
import {fightRepo} from "@repo/repo.ts";
|
||||
import ErrorModal from "../../../components/ErrorModal.svelte";
|
||||
import {createEventDispatcher} from "svelte";
|
||||
import dayjs from "dayjs";
|
||||
@@ -40,12 +39,12 @@
|
||||
let gamemode: string = "";
|
||||
let map: string = "";
|
||||
|
||||
let kampfleiter: string | null = null;
|
||||
let kampfleiter: string | undefined = undefined;
|
||||
let group: string | null = null;
|
||||
let groupSearch = "";
|
||||
|
||||
let errorOpen = false;
|
||||
let error: Error | null = null;
|
||||
let error: any = undefined;
|
||||
|
||||
$: canCreate = blueTeam !== "" && redTeam !== "" && start !== "" && gamemode !== "" && map !== "";
|
||||
|
||||
|
||||
@@ -18,11 +18,11 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import {Button, Input, Label, Modal, Select} from "flowbite-svelte";
|
||||
import type {EventFight, ExtendedEvent} from "../../../../types/event.js";
|
||||
import {Button, Modal} from "flowbite-svelte";
|
||||
import type {EventFight, ExtendedEvent} from "@type/event.ts";
|
||||
import FightEditPart from "../../../components/FightEditPart.svelte";
|
||||
import type {UpdateFight} from "../../../../repo/fight.js";
|
||||
import {fightRepo} from "../../../../repo/repo";
|
||||
import type {UpdateFight} from "@repo/fight.ts";
|
||||
import {fightRepo} from "@repo/repo.ts";
|
||||
import ErrorModal from "../../../components/ErrorModal.svelte";
|
||||
import {createEventDispatcher} from "svelte";
|
||||
import dayjs from "dayjs";
|
||||
@@ -37,14 +37,14 @@
|
||||
let redTeam = fight.redTeam.id.toString();
|
||||
let blueTeam = fight.blueTeam.id.toString();
|
||||
let start = dayjs(fight.start).utc(true).toISOString().slice(0, -1);
|
||||
let kampfleiter = fight.kampfleiter.id.toString();
|
||||
let kampfleiter = fight.kampfleiter?.id.toString();
|
||||
let gamemode = fight.spielmodus
|
||||
let map = fight.map;
|
||||
let group = fight.group;
|
||||
let groupSearch = fight.group ?? "";
|
||||
|
||||
let errorOpen = false;
|
||||
let error = undefined;
|
||||
let error: any = undefined;
|
||||
|
||||
let dispatch = createEventDispatcher();
|
||||
function save() {
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<div class="w-56 bg-gray-800 p-4 rounded" class:border={dragover} class:m-px={!dragover} on:drop={handleDrop} on:dragover={handleDragOver} on:dragleave={() => dragover = false}>
|
||||
<div class="w-56 bg-gray-800 p-4 rounded" class:border={dragover} class:m-px={!dragover} on:drop={handleDrop} on:dragover={handleDragOver} on:dragleave={() => dragover = false} role="none">
|
||||
<slot></slot>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -18,14 +18,14 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import type {ExtendedEvent} from "../../../types/event.js";
|
||||
import type {ExtendedEvent} from "@type/event.ts";
|
||||
import TeamChip from "./TeamChip.svelte";
|
||||
import type {Team} from "../../../types/team.js";
|
||||
import type {Team} from "@type/team.ts";
|
||||
import DragAcceptor from "./DragAcceptor.svelte";
|
||||
import {Button, Input, Label, Modal, Range, Select} from "flowbite-svelte";
|
||||
import {gamemodes, maps} from "../../../stores/stores";
|
||||
import {gamemodes, maps} from "@stores/stores.ts";
|
||||
import {PlusSolid} from "flowbite-svelte-icons";
|
||||
import {fightRepo} from "../../../repo/repo";
|
||||
import {fightRepo} from "@repo/repo.ts";
|
||||
import {replace} from "svelte-spa-router";
|
||||
import dayjs from "dayjs";
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import type {Team} from "../../../types/team.js";
|
||||
import type {Team} from "@type/team.ts";
|
||||
import {brightness, colorFromTeam, lighten} from "../../util";
|
||||
|
||||
export let team: Team;
|
||||
@@ -30,7 +30,8 @@
|
||||
style:background-color={hover ? lighten(colorFromTeam(team)) : colorFromTeam(team)} class:text-black={brightness(colorFromTeam(team))} draggable="true"
|
||||
on:dragstart
|
||||
on:mouseenter={() => hover = true}
|
||||
on:mouseleave={() => hover = false}>
|
||||
on:mouseleave={() => hover = false}
|
||||
role="figure">
|
||||
<span>{team.name}</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -21,14 +21,14 @@
|
||||
import {Button, Input, Label, Modal} from "flowbite-svelte";
|
||||
import {createEventDispatcher} from "svelte";
|
||||
import ErrorModal from "../../components/ErrorModal.svelte";
|
||||
import {eventRepo} from "../../../repo/repo";
|
||||
import {eventRepo} from "@repo/repo.ts";
|
||||
import dayjs from "dayjs";
|
||||
|
||||
export let open = false;
|
||||
const dispatch = createEventDispatcher();
|
||||
|
||||
let errorOpen = false;
|
||||
let error = undefined;
|
||||
let error: any = undefined;
|
||||
|
||||
let eventName = "";
|
||||
let start = "";
|
||||
@@ -47,7 +47,7 @@
|
||||
})
|
||||
dispatch("create");
|
||||
open = false;
|
||||
} catch (e) {
|
||||
} catch (e: any) {
|
||||
error = e;
|
||||
errorOpen = true;
|
||||
open = false;
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<script lang="ts">
|
||||
import {Card} from "flowbite-svelte";
|
||||
import {link} from 'svelte-spa-router'
|
||||
import type {ShortEvent} from "../../../types/event.js";
|
||||
import type {ShortEvent} from "@type/event.ts";
|
||||
|
||||
export let event: ShortEvent;
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
*/
|
||||
|
||||
import Color from "color";
|
||||
import type {Team} from "../types/team.js";
|
||||
import type {ListPage, PageList} from "../types/page.ts";
|
||||
import type {Team} from "@type/team.js";
|
||||
import type {ListPage, PageList} from "@type/page.ts";
|
||||
|
||||
export const capitalize = (str: string) => str.charAt(0).toUpperCase() + str.slice(1);
|
||||
|
||||
@@ -28,7 +28,7 @@ export const nameRegex = new RegExp("(?!.*\/).+(?=\\.(md|json))");
|
||||
export function mapToMap(pages: PageList): Map<string, ListPage[]> {
|
||||
const map = new Map();
|
||||
for (const page of pages) {
|
||||
let folder = page.path.substring(0, page.path.indexOf(nameRegex.exec(page.path)!![0]));
|
||||
const folder = page.path.substring(0, page.path.indexOf(nameRegex.exec(page.path)![0]));
|
||||
if (!map.has(folder)) {
|
||||
map.set(folder, []);
|
||||
}
|
||||
@@ -39,47 +39,47 @@ export function mapToMap(pages: PageList): Map<string, ListPage[]> {
|
||||
|
||||
export function colorFromTeam(team: Team): string {
|
||||
switch (team.color) {
|
||||
case "1":
|
||||
return "#0000AA";
|
||||
case "2":
|
||||
return "#00AA00";
|
||||
case "3":
|
||||
return "#00AAAA";
|
||||
case "4":
|
||||
return "#AA0000";
|
||||
case "5":
|
||||
return "#AA00AA";
|
||||
case "6":
|
||||
return "#FFAA00";
|
||||
case "7":
|
||||
return "#AAAAAA";
|
||||
case "8":
|
||||
return "#555555";
|
||||
case "9":
|
||||
return "#5555FF";
|
||||
case "a":
|
||||
return "#55FF55";
|
||||
case "b":
|
||||
return "#55FFFF";
|
||||
case "c":
|
||||
return "#FF5555";
|
||||
case "d":
|
||||
return "#FF55FF";
|
||||
case "e":
|
||||
return "#FFFF55";
|
||||
case "f":
|
||||
return "#FFFFFF";
|
||||
default:
|
||||
return "#000000";
|
||||
case "1":
|
||||
return "#0000AA";
|
||||
case "2":
|
||||
return "#00AA00";
|
||||
case "3":
|
||||
return "#00AAAA";
|
||||
case "4":
|
||||
return "#AA0000";
|
||||
case "5":
|
||||
return "#AA00AA";
|
||||
case "6":
|
||||
return "#FFAA00";
|
||||
case "7":
|
||||
return "#AAAAAA";
|
||||
case "8":
|
||||
return "#555555";
|
||||
case "9":
|
||||
return "#5555FF";
|
||||
case "a":
|
||||
return "#55FF55";
|
||||
case "b":
|
||||
return "#55FFFF";
|
||||
case "c":
|
||||
return "#FF5555";
|
||||
case "d":
|
||||
return "#FF55FF";
|
||||
case "e":
|
||||
return "#FFFF55";
|
||||
case "f":
|
||||
return "#FFFFFF";
|
||||
default:
|
||||
return "#000000";
|
||||
}
|
||||
}
|
||||
|
||||
export function lighten(color: string) {
|
||||
return brightness(color) ? Color(color).lighten(0.2).hex() : Color(color).darken(0.2).hex()
|
||||
return brightness(color) ? Color(color).lighten(0.2).hex() : Color(color).darken(0.2).hex();
|
||||
}
|
||||
|
||||
export function brightness(color: string) {
|
||||
return Color(color).isLight()
|
||||
return Color(color).isLight();
|
||||
}
|
||||
|
||||
export function base64ToBytes(base64: string) {
|
||||
|
||||
Reference in New Issue
Block a user