update dependencies
This commit is contained in:
parent
dc21366f7a
commit
05ddd05a5b
@ -4,6 +4,5 @@
|
|||||||
"trailingComma": "none",
|
"trailingComma": "none",
|
||||||
"printWidth": 100,
|
"printWidth": 100,
|
||||||
"plugins": ["prettier-plugin-svelte"],
|
"plugins": ["prettier-plugin-svelte"],
|
||||||
"pluginSearchDirs": ["."],
|
|
||||||
"overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
|
"overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
|
||||||
}
|
}
|
||||||
|
949
package-lock.json
generated
949
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
60
package.json
60
package.json
@ -9,45 +9,45 @@
|
|||||||
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
||||||
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
||||||
"test": "vitest",
|
"test": "vitest",
|
||||||
"lint": "prettier --plugin-search-dir . --check . && eslint .",
|
"lint": "prettier --check . && eslint .",
|
||||||
"format": "prettier --plugin-search-dir . --write ."
|
"format": "prettier --write ."
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@sveltejs/adapter-node": "^1.3.1",
|
"@sveltejs/adapter-node": "^1.3.1",
|
||||||
"@sveltejs/kit": "^1.20.4",
|
"@sveltejs/kit": "^1.27.6",
|
||||||
"@types/bcrypt": "^5.0.0",
|
"@types/bcrypt": "^5.0.2",
|
||||||
"@types/node": "^20.5.6",
|
"@types/node": "^20.10.0",
|
||||||
"@types/validator": "^13.11.1",
|
"@types/validator": "^13.11.7",
|
||||||
"@typescript-eslint/eslint-plugin": "^5.45.0",
|
"@typescript-eslint/eslint-plugin": "^6.13.1",
|
||||||
"@typescript-eslint/parser": "^5.45.0",
|
"@typescript-eslint/parser": "^6.13.1",
|
||||||
"autoprefixer": "^10.4.14",
|
"autoprefixer": "^10.4.16",
|
||||||
"daisyui": "^4.4.10",
|
"daisyui": "^4.4.14",
|
||||||
"eslint": "^8.28.0",
|
"eslint": "^8.54.0",
|
||||||
"eslint-config-prettier": "^8.5.0",
|
"eslint-config-prettier": "^9.0.0",
|
||||||
"eslint-plugin-svelte": "^2.30.0",
|
"eslint-plugin-svelte": "^2.35.1",
|
||||||
"postcss": "^8.4.27",
|
"postcss": "^8.4.31",
|
||||||
"prettier": "^2.8.8",
|
"prettier": "^3.1.0",
|
||||||
"prettier-plugin-svelte": "^2.10.1",
|
"prettier-plugin-svelte": "^3.1.2",
|
||||||
"sass": "^1.66.1",
|
"sass": "^1.69.5",
|
||||||
"svelte": "^4.0.5",
|
"svelte": "^4.2.7",
|
||||||
"svelte-check": "^3.4.3",
|
"svelte-check": "^3.6.2",
|
||||||
"svelte-heros-v2": "^0.9.3",
|
"svelte-heros-v2": "^0.10.12",
|
||||||
"svelte-local-storage-store": "^0.6.0",
|
"svelte-local-storage-store": "^0.6.4",
|
||||||
"svelte-multicssclass": "^2.1.1",
|
"svelte-multicssclass": "^2.1.1",
|
||||||
"svelte-preprocess": "^5.0.4",
|
"svelte-preprocess": "^5.1.1",
|
||||||
"tailwindcss": "^3.3.3",
|
"tailwindcss": "^3.3.5",
|
||||||
"tslib": "^2.4.1",
|
"tslib": "^2.6.2",
|
||||||
"typescript": "^5.0.0",
|
"typescript": "^5.3.2",
|
||||||
"vite": "^4.4.2",
|
"vite": "^4.5.0",
|
||||||
"vitest": "^0.34.1"
|
"vitest": "^0.34.6"
|
||||||
},
|
},
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"bcrypt": "^5.1.1",
|
"bcrypt": "^5.1.1",
|
||||||
"dotenv": "^16.3.1",
|
"dotenv": "^16.3.1",
|
||||||
"mariadb": "^3.2.0",
|
"mariadb": "^3.2.2",
|
||||||
"sequelize": "^6.32.1",
|
"sequelize": "^6.35.1",
|
||||||
"sequelize-typescript": "^2.1.5",
|
"sequelize-typescript": "^2.1.6",
|
||||||
"sqlite3": "^5.1.6"
|
"sqlite3": "^5.1.6"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { IconSolid } from 'svelte-heros-v2';
|
import { Eye, EyeSlash } from 'svelte-heros-v2';
|
||||||
import { createEventDispatcher } from 'svelte';
|
import { createEventDispatcher } from 'svelte';
|
||||||
|
|
||||||
export let id: string | null = null;
|
export let id: string | null = null;
|
||||||
@ -106,17 +106,9 @@
|
|||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{#if type === 'password'}
|
{#if type === 'password'}
|
||||||
<IconSolid
|
<EyeSlash variation="solid" size={passwordEyeSize[size]} />
|
||||||
name="eye-slash-solid"
|
|
||||||
width={passwordEyeSize[size]}
|
|
||||||
height={passwordEyeSize[size]}
|
|
||||||
/>
|
|
||||||
{:else}
|
{:else}
|
||||||
<IconSolid
|
<Eye variation="solid" size={passwordEyeSize[size]} />
|
||||||
name="eye-solid"
|
|
||||||
width={passwordEyeSize[size]}
|
|
||||||
height={passwordEyeSize[size]}
|
|
||||||
/>
|
|
||||||
{/if}
|
{/if}
|
||||||
</button>
|
</button>
|
||||||
{/if}
|
{/if}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { createEventDispatcher, getContext, onDestroy } from 'svelte';
|
import { createEventDispatcher, getContext, onDestroy } from 'svelte';
|
||||||
import type { Writable } from 'svelte/store';
|
import type { Writable } from 'svelte/store';
|
||||||
import { IconSolid } from 'svelte-heros-v2';
|
import { ChevronDown, ChevronUp } from 'svelte-heros-v2';
|
||||||
|
|
||||||
let id = crypto.randomUUID();
|
let id = crypto.randomUUID();
|
||||||
let asc = false;
|
let asc = false;
|
||||||
@ -26,10 +26,10 @@
|
|||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<span class="mr-1"><slot /></span>
|
<span class="mr-1"><slot /></span>
|
||||||
<IconSolid
|
{#if $ascHeader === id && asc}
|
||||||
name={$ascHeader === id && asc ? 'chevron-up-solid' : 'chevron-down-solid'}
|
<ChevronUp variation="solid" />
|
||||||
width="12"
|
{:else}
|
||||||
height="12"
|
<ChevronDown variation="solid" />
|
||||||
/>
|
{/if}
|
||||||
</button>
|
</button>
|
||||||
</th>
|
</th>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { ExclamationCircle } from 'svelte-heros-v2';
|
||||||
import { fly } from 'svelte/transition';
|
import { fly } from 'svelte/transition';
|
||||||
import { onDestroy } from 'svelte';
|
import { onDestroy } from 'svelte';
|
||||||
|
|
||||||
@ -45,7 +45,7 @@
|
|||||||
>
|
>
|
||||||
<div class="alert alert-error border-none relative text-gray-900 overflow-hidden">
|
<div class="alert alert-error border-none relative text-gray-900 overflow-hidden">
|
||||||
<div class="flex gap-2 z-10">
|
<div class="flex gap-2 z-10">
|
||||||
<IconOutline name="exclamation-circle-outline" />
|
<ExclamationCircle />
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
<progress
|
<progress
|
||||||
|
@ -25,13 +25,6 @@
|
|||||||
active: false
|
active: false
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
let footerLinks = [
|
|
||||||
{
|
|
||||||
name: 'Teamspeak',
|
|
||||||
icon: '<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 576 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M152.8 37.2c-32.2 38.1-56.1 82.6-69.9 130.5c0 .2-.1 .3-.1 .5C43.5 184.4 16 223 16 268c0 59.6 48.4 108 108 108s108-48.4 108-108c0-53.5-38.9-97.9-90-106.5c15.7-41.8 40.4-79.6 72.3-110.7c1.8-1.6 4-2.6 6.3-3.1c37.2-11.5 76.7-13.3 114.8-5.2C454.7 67.6 534 180.7 517.1 301.3c-8.4 62.6-38.6 112.7-87.7 151.4c-50.1 39.7-107.5 54.3-170.2 52.2l-24-1c12.4 2.8 25 4.9 37.6 6.3c40.7 4.2 81.4 2.1 120.1-12.5c94-35.5 149.3-102.3 162.9-202.5c4.8-52.6-5.8-105.4-30.8-152C454.6 11.3 290.8-38.4 159 32c-2.4 1.4-4.5 3.1-6.3 5.2zM309.4 433.9c-2.1 11.5-4.2 21.9-14.6 31.3c53.2-1 123.2-29.2 161.8-97.1c39.7-69.9 37.6-139.9-6.3-207.8C413.8 105 360.5 77.9 293.7 73.7c1.5 2.3 3.2 4.4 5.2 6.3l5.2 6.3c25.1 31.3 37.6 67.9 42.8 107.5c2.1 15.7-1 30.3-13.6 41.8c-4.2 3.1-5.2 6.3-4.2 10.4l7.3 17.7L365.7 318c5.2 11.5 4.2 19.8-6.3 28.2c-3.2 2.5-6.7 4.6-10.4 6.3l-18.8 8.4 3.1 13.6c3.1 6.3 1 12.5-3.1 17.7c-2.5 2.4-3.8 5.9-3.1 9.4c2.1 11.5-2.1 19.8-12.5 25.1c-2.1 1-4.2 5.2-5.2 7.3zm-133.6-3.1c16.7 11.5 34.5 20.9 53.2 26.1c24 5.2 41.8-6.3 44.9-30.3c1-8.4 5.2-14.6 12.5-17.7c7.3-4.2 8.4-7.3 2.1-13.6l-9.4-8.4 13.6-4.2c6.3-2.1 7.3-5.2 5.2-11.5c-1.4-3-2.4-6.2-3.1-9.4c-3.1-14.6-2.1-15.7 11.5-18.8c8.4-3.1 15.7-6.3 21.9-12.5c3.1-2.1 3.1-4.2 1-8.4l-16.7-30.3c-1-1.9-2.1-3.8-3.1-5.7c-6.4-11.7-13-23.6-15.7-37.1c-2.1-9.4-1-17.7 8.4-24c5.2-4.2 8.4-9.4 8.4-16.7c-.4-10.1-1.5-20.3-3.1-30.3c-6.3-37.6-23-68.9-51.2-95c-5.2-4.2-9.4-6.3-16.7-4.2L203.9 91.5c2 1.2 4 2.4 6 3.6l0 0c6.3 3.7 12.2 7.3 17 12.1c30.3 26.1 41.8 61.6 45.9 100.2c1 8.4 0 16.7-7.3 21.9c-8.4 5.2-10.4 12.5-7.3 20.9c4.9 13.2 10.4 26 16.7 38.6L291.6 318c-6.3 8.4-13.6 11.5-21.9 14.6c-12.5 3.1-14.6 7.3-10.4 20.9c.6 1.5 1.4 2.8 2.1 4.2c2.1 5.2 1 8.4-4.2 10.4l-12.5 3.1 5.2 4.2 4.2 4.2c4.2 5.2 4.2 8.4-2.1 10.4c-7.3 4.2-11.5 9.4-11.5 17.7c0 12.5-7.3 19.8-18.8 24c-3.8 1-7.6 1.5-11.5 1l-34.5-2.1z"/></svg>',
|
|
||||||
href: 'ts3server://mhsl.eu'
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
let showMenuPermanent = false;
|
let showMenuPermanent = false;
|
||||||
let menuButtonScrollIndex: number | null = null;
|
let menuButtonScrollIndex: number | null = null;
|
||||||
@ -81,7 +74,7 @@
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
<div class="min-h-screen w-full">
|
<div class="h-screen w-full">
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { env } from '$env/dynamic/public';
|
import { env } from '$env/dynamic/public';
|
||||||
import Countdown from '$lib/components/Countdown/Countdown.svelte';
|
import Countdown from '$lib/components/Countdown/Countdown.svelte';
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { User } from 'svelte-heros-v2';
|
||||||
|
|
||||||
let information = [
|
let information = [
|
||||||
{
|
{
|
||||||
@ -98,7 +98,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="stat">
|
<div class="stat">
|
||||||
<div class="stat-figure">
|
<div class="stat-figure">
|
||||||
<IconOutline name="user-outline" />
|
<User />
|
||||||
</div>
|
</div>
|
||||||
<div class="stat-title">Angemeldete Spieler</div>
|
<div class="stat-title">Angemeldete Spieler</div>
|
||||||
<div class="stat-value">156</div>
|
<div class="stat-value">156</div>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { page } from '$app/stores';
|
import { page } from '$app/stores';
|
||||||
import { env } from '$env/dynamic/public';
|
import { env } from '$env/dynamic/public';
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { ArrowLeftOnRectangle, Flag, UserGroup, Users } from 'svelte-heros-v2';
|
||||||
import { buttonTriggeredRequest } from '$lib/components/utils';
|
import { buttonTriggeredRequest } from '$lib/components/utils';
|
||||||
import { goto } from '$app/navigation';
|
import { goto } from '$app/navigation';
|
||||||
import type { LayoutData } from './$types';
|
import type { LayoutData } from './$types';
|
||||||
@ -26,21 +26,21 @@
|
|||||||
let tabs = [
|
let tabs = [
|
||||||
{
|
{
|
||||||
path: `${env.PUBLIC_BASE_PATH}/admin/users`,
|
path: `${env.PUBLIC_BASE_PATH}/admin/users`,
|
||||||
icon: 'user-group-outline',
|
icon: UserGroup,
|
||||||
name: 'Registrierte Nutzer',
|
name: 'Registrierte Nutzer',
|
||||||
badge: data.userCount,
|
badge: data.userCount,
|
||||||
enabled: data.userCount != null
|
enabled: data.userCount != null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: `${env.PUBLIC_BASE_PATH}/admin/reports`,
|
path: `${env.PUBLIC_BASE_PATH}/admin/reports`,
|
||||||
icon: 'flag-outline',
|
icon: Flag,
|
||||||
name: 'Reports',
|
name: 'Reports',
|
||||||
badge: $reportCount,
|
badge: $reportCount,
|
||||||
enabled: data.reportCount != null
|
enabled: data.reportCount != null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: `${env.PUBLIC_BASE_PATH}/admin/admin`,
|
path: `${env.PUBLIC_BASE_PATH}/admin/admin`,
|
||||||
icon: 'users-outline',
|
icon: Users,
|
||||||
name: 'Website Admins',
|
name: 'Website Admins',
|
||||||
badge: $adminCount,
|
badge: $adminCount,
|
||||||
enabled: data.adminCount != null
|
enabled: data.adminCount != null
|
||||||
@ -55,7 +55,7 @@
|
|||||||
{#if tab.enabled}
|
{#if tab.enabled}
|
||||||
<li>
|
<li>
|
||||||
<a href={tab.path}>
|
<a href={tab.path}>
|
||||||
<IconOutline name={tab.icon} />
|
<svelte:component this={tab.icon} />
|
||||||
<span class="mr-1" class:underline={$page.url.pathname === tab.path}>{tab.name}</span>
|
<span class="mr-1" class:underline={$page.url.pathname === tab.path}>{tab.name}</span>
|
||||||
<div class="badge">{tab.badge}</div>
|
<div class="badge">{tab.badge}</div>
|
||||||
</a>
|
</a>
|
||||||
@ -67,7 +67,7 @@
|
|||||||
<ul class="menu menu-vertical">
|
<ul class="menu menu-vertical">
|
||||||
<li>
|
<li>
|
||||||
<button on:click={(e) => buttonTriggeredRequest(e, logout())}>
|
<button on:click={(e) => buttonTriggeredRequest(e, logout())}>
|
||||||
<IconOutline name="arrow-left-on-rectangle-outline" />
|
<ArrowLeftOnRectangle />
|
||||||
<span>Ausloggen</span>
|
<span>Ausloggen</span>
|
||||||
</button>
|
</button>
|
||||||
</li>
|
</li>
|
||||||
|
@ -1,26 +1,26 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type { PageData } from './$types';
|
import type { PageData } from './$types';
|
||||||
import { env } from '$env/dynamic/public';
|
import { env } from '$env/dynamic/public';
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { Flag, UserGroup, Users } from 'svelte-heros-v2';
|
||||||
|
|
||||||
export let data: PageData;
|
export let data: PageData;
|
||||||
|
|
||||||
let tabs = [
|
let tabs = [
|
||||||
{
|
{
|
||||||
path: `${env.PUBLIC_BASE_PATH}/admin/users`,
|
path: `${env.PUBLIC_BASE_PATH}/admin/users`,
|
||||||
icon: 'user-group-outline',
|
icon: UserGroup,
|
||||||
name: 'Registrierte Nutzer',
|
name: 'Registrierte Nutzer',
|
||||||
enabled: data.userCount != null
|
enabled: data.userCount != null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: `${env.PUBLIC_BASE_PATH}/admin/reports`,
|
path: `${env.PUBLIC_BASE_PATH}/admin/reports`,
|
||||||
icon: 'flag-outline',
|
icon: Flag,
|
||||||
name: 'Reports',
|
name: 'Reports',
|
||||||
enabled: data.reportCount != null
|
enabled: data.reportCount != null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: `${env.PUBLIC_BASE_PATH}/admin/admin`,
|
path: `${env.PUBLIC_BASE_PATH}/admin/admin`,
|
||||||
icon: 'users-outline',
|
icon: Users,
|
||||||
name: 'Website Admins',
|
name: 'Website Admins',
|
||||||
enabled: data.adminCount != null
|
enabled: data.adminCount != null
|
||||||
}
|
}
|
||||||
@ -36,7 +36,7 @@
|
|||||||
href={tab.path}
|
href={tab.path}
|
||||||
title={tab.name}
|
title={tab.name}
|
||||||
>
|
>
|
||||||
<IconOutline width="5rem" height="5rem" name={tab.icon} />
|
<svelte:component this={tab.icon} width="5rem" height="5rem" />
|
||||||
</a>
|
</a>
|
||||||
<span>{tab.name}</span>
|
<span>{tab.name}</span>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type { PageData } from './$types';
|
import type { PageData } from './$types';
|
||||||
import Badges from '$lib/components/Input/Badges.svelte';
|
import Badges from '$lib/components/Input/Badges.svelte';
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { Check, NoSymbol, PencilSquare, Trash, UserPlus } from 'svelte-heros-v2';
|
||||||
import Input from '$lib/components/Input/Input.svelte';
|
import Input from '$lib/components/Input/Input.svelte';
|
||||||
import { Permissions } from '$lib/permissions';
|
import { Permissions } from '$lib/permissions';
|
||||||
import { env } from '$env/dynamic/public';
|
import { env } from '$env/dynamic/public';
|
||||||
@ -155,7 +155,7 @@
|
|||||||
admin.edit = false;
|
admin.edit = false;
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="check-outline" width="18" height="18" />
|
<Check size="18" />
|
||||||
</button>
|
</button>
|
||||||
</span>
|
</span>
|
||||||
<span class="w-min" class:cursor-not-allowed={!permissions.adminWrite()}>
|
<span class="w-min" class:cursor-not-allowed={!permissions.adminWrite()}>
|
||||||
@ -167,7 +167,7 @@
|
|||||||
admin = admin.before;
|
admin = admin.before;
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="no-symbol-outline" width="18" height="18" />
|
<NoSymbol size="18" />
|
||||||
</button>
|
</button>
|
||||||
</span>
|
</span>
|
||||||
{:else}
|
{:else}
|
||||||
@ -180,7 +180,7 @@
|
|||||||
admin.before = structuredClone(admin);
|
admin.before = structuredClone(admin);
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="pencil-square-outline" width="18" height="18" />
|
<PencilSquare size="18" />
|
||||||
</button>
|
</button>
|
||||||
</span>
|
</span>
|
||||||
<span class="w-min" class:cursor-not-allowed={!permissions.adminWrite()}>
|
<span class="w-min" class:cursor-not-allowed={!permissions.adminWrite()}>
|
||||||
@ -189,7 +189,7 @@
|
|||||||
disabled={!permissions.adminWrite()}
|
disabled={!permissions.adminWrite()}
|
||||||
on:click={(e) => buttonTriggeredRequest(e, deleteAdmin(admin.id))}
|
on:click={(e) => buttonTriggeredRequest(e, deleteAdmin(admin.id))}
|
||||||
>
|
>
|
||||||
<IconOutline name="trash-outline" width="18" height="18" />
|
<Trash size="18" />
|
||||||
</button>
|
</button>
|
||||||
</span>
|
</span>
|
||||||
{/if}
|
{/if}
|
||||||
@ -228,7 +228,7 @@
|
|||||||
newAdminPermissions = [];
|
newAdminPermissions = [];
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="user-plus-outline" width="18" height="18" />
|
<UserPlus size="18" />
|
||||||
</button>
|
</button>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
import Textarea from '$lib/components/Input/Textarea.svelte';
|
import Textarea from '$lib/components/Input/Textarea.svelte';
|
||||||
import { reportCount } from '$lib/stores';
|
import { reportCount } from '$lib/stores';
|
||||||
import HeaderBar from './HeaderBar.svelte';
|
import HeaderBar from './HeaderBar.svelte';
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { MagnifyingGlass, Plus, Share } from 'svelte-heros-v2';
|
||||||
import NewReportModal from './NewReportModal.svelte';
|
import NewReportModal from './NewReportModal.svelte';
|
||||||
import { onDestroy, onMount } from 'svelte';
|
import { onDestroy, onMount } from 'svelte';
|
||||||
import { goto } from '$app/navigation';
|
import { goto } from '$app/navigation';
|
||||||
@ -139,7 +139,7 @@
|
|||||||
title="Nach Ersteller filtern"
|
title="Nach Ersteller filtern"
|
||||||
on:click|stopPropagation={() => (reportFilter.reporter = report.reporter.username)}
|
on:click|stopPropagation={() => (reportFilter.reporter = report.reporter.username)}
|
||||||
>
|
>
|
||||||
<IconOutline name="magnifying-glass-outline" width="14" height="14" />
|
<MagnifyingGlass size="14" />
|
||||||
</button>
|
</button>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@ -151,7 +151,7 @@
|
|||||||
on:click|stopPropagation={() =>
|
on:click|stopPropagation={() =>
|
||||||
(reportFilter.reported = report.reported.username)}
|
(reportFilter.reported = report.reported.username)}
|
||||||
>
|
>
|
||||||
<IconOutline name="magnifying-glass-outline" width="14" height="14" />
|
<MagnifyingGlass size="14" />
|
||||||
</button>
|
</button>
|
||||||
{/if}
|
{/if}
|
||||||
</td>
|
</td>
|
||||||
@ -168,10 +168,10 @@
|
|||||||
{report.status === 'none'
|
{report.status === 'none'
|
||||||
? 'Unbearbeitet'
|
? 'Unbearbeitet'
|
||||||
: report.status === 'review'
|
: report.status === 'review'
|
||||||
? 'In Bearbeitung'
|
? 'In Bearbeitung'
|
||||||
: report.status === 'reviewed'
|
: report.status === 'reviewed'
|
||||||
? 'Bearbeitet'
|
? 'Bearbeitet'
|
||||||
: ''}
|
: ''}
|
||||||
</td>
|
</td>
|
||||||
<td>{report.draft ? 'Entwurf' : 'Erstellt'}</td>
|
<td>{report.draft ? 'Entwurf' : 'Erstellt'}</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -180,7 +180,7 @@
|
|||||||
<td colspan="100">
|
<td colspan="100">
|
||||||
<div class="flex justify-center items-center">
|
<div class="flex justify-center items-center">
|
||||||
<button class="btn btn-sm" on:click={() => newReportModal.show()}>
|
<button class="btn btn-sm" on:click={() => newReportModal.show()}>
|
||||||
<IconOutline name="plus-outline" />
|
<Plus />
|
||||||
<span>Neuer Report</span>
|
<span>Neuer Report</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@ -198,7 +198,7 @@
|
|||||||
<form class="dropdown dropdown-end">
|
<form class="dropdown dropdown-end">
|
||||||
<!-- svelte-ignore a11y-no-noninteractive-tabindex a11y-label-has-associated-control -->
|
<!-- svelte-ignore a11y-no-noninteractive-tabindex a11y-label-has-associated-control -->
|
||||||
<label tabindex="0" class="btn btn-sm btn-circle btn-ghost text-center">
|
<label tabindex="0" class="btn btn-sm btn-circle btn-ghost text-center">
|
||||||
<IconOutline name="share-outline" height="1rem" width="auto" />
|
<Share size="1rem" />
|
||||||
</label>
|
</label>
|
||||||
<!-- svelte-ignore a11y-no-noninteractive-tabindex -->
|
<!-- svelte-ignore a11y-no-noninteractive-tabindex -->
|
||||||
<ul
|
<ul
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type { PageData } from './$types';
|
import type { PageData } from './$types';
|
||||||
import { IconOutline } from 'svelte-heros-v2';
|
import { Check, NoSymbol, PencilSquare, Trash } from 'svelte-heros-v2';
|
||||||
import Input from '$lib/components/Input/Input.svelte';
|
import Input from '$lib/components/Input/Input.svelte';
|
||||||
import Select from '$lib/components/Input/Select.svelte';
|
import Select from '$lib/components/Input/Select.svelte';
|
||||||
import { env } from '$env/dynamic/public';
|
import { env } from '$env/dynamic/public';
|
||||||
@ -172,7 +172,7 @@
|
|||||||
user.edit = false;
|
user.edit = false;
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="check-outline" width="18" height="18" />
|
<Check size="18" />
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm btn-square"
|
class="btn btn-sm btn-square"
|
||||||
@ -181,7 +181,7 @@
|
|||||||
user = user.before;
|
user = user.before;
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="no-symbol-outline" width="18" height="18" />
|
<NoSymbol size="18" />
|
||||||
</button>
|
</button>
|
||||||
{:else}
|
{:else}
|
||||||
<button
|
<button
|
||||||
@ -191,13 +191,13 @@
|
|||||||
user.edit = true;
|
user.edit = true;
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<IconOutline name="pencil-square-outline" width="18" height="18" />
|
<PencilSquare size="18" />
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm btn-square"
|
class="btn btn-sm btn-square"
|
||||||
on:click={(e) => buttonTriggeredRequest(e, deleteUser(user.id))}
|
on:click={(e) => buttonTriggeredRequest(e, deleteUser(user.id))}
|
||||||
>
|
>
|
||||||
<IconOutline name="trash-outline" width="18" height="18" />
|
<Trash size="18" />
|
||||||
</button>
|
</button>
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { IconSolid } from 'svelte-heros-v2';
|
import { ChevronRight } from 'svelte-heros-v2';
|
||||||
import { createEventDispatcher } from 'svelte';
|
import { createEventDispatcher } from 'svelte';
|
||||||
import { env } from '$env/dynamic/public';
|
import { env } from '$env/dynamic/public';
|
||||||
|
|
||||||
@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
<div class="flex items-center h-12 mb-2">
|
<div class="flex items-center h-12 mb-2">
|
||||||
<button class="sm:absolute btn btn-sm btn-square" on:click={() => dispatch('close')}>
|
<button class="sm:absolute btn btn-sm btn-square" on:click={() => dispatch('close')}>
|
||||||
<IconSolid name="chevron-left-solid" />
|
<ChevronRight variation="outline" />
|
||||||
</button>
|
</button>
|
||||||
<h1 class="text-center text-xl sm:text-3xl m-auto">Registrierung erfolgreich</h1>
|
<h1 class="text-center text-xl sm:text-3xl m-auto">Registrierung erfolgreich</h1>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user