fix: unexpected/ missing props

This commit is contained in:
Philipp Dormann 2024-11-21 17:05:06 +01:00
parent 5468766d87
commit d803f3d490
Signed by: philipp
GPG Key ID: 3BB9ADD52DCA4314
4 changed files with 52 additions and 57 deletions

View File

@ -2,7 +2,7 @@
import { _ } from "svelte-i18n"; import { _ } from "svelte-i18n";
import { clickOutside } from "../base/outsideclick"; import { clickOutside } from "../base/outsideclick";
export let modal_open; let modal_open = false;
(function () { (function () {
document.onkeydown = function (e) { document.onkeydown = function (e) {
e = e || window.event; e = e || window.event;

View File

@ -1,26 +1,26 @@
<script> <script>
import { _ } from "svelte-i18n"; import { _ } from "svelte-i18n";
export let detailsLink; export let detailsLink = null;
export let detailsAction; export let detailsAction = null;
export let deleteEnabled; export let deleteEnabled;
export let deleteAction; export let deleteAction;
</script> </script>
{#if detailsLink} {#if detailsLink}
<a href={detailsLink} class="text-indigo-600 hover:text-indigo-900" <a href={detailsLink} class="text-indigo-600 hover:text-indigo-900"
>{$_("details")}</a >{$_("details")}</a
> >
{:else if detailsAction} {:else if detailsAction}
<button on:click={detailsAction} class="text-indigo-600 hover:text-indigo-900" <button on:click={detailsAction} class="text-indigo-600 hover:text-indigo-900"
>{$_("details")}</button >{$_("details")}</button
> >
{/if} {/if}
{#if deleteEnabled} {#if deleteEnabled}
<button <button
tabindex="0" tabindex="0"
on:click={deleteAction} on:click={deleteAction}
class="ml-4 text-red-600 hover:text-red-900 cursor-pointer" class="ml-4 text-red-600 hover:text-red-900 cursor-pointer"
>{$_("delete")}</button >{$_("delete")}</button
> >
{/if} {/if}

View File

@ -5,14 +5,14 @@
import { createEventDispatcher } from "svelte"; import { createEventDispatcher } from "svelte";
import toast from "svelte-french-toast"; import toast from "svelte-french-toast";
export let modal_open; export let modal_open;
export let delete_station; export let delete_client;
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
function cancelDelete() { function cancelDelete() {
modal_open = false; modal_open = false;
dispatch("cancelDelete", { id: delete_station.id }); dispatch("cancelDelete", { id: delete_client.id });
} }
function deleteClient() { function deleteClient() {
StatsClientService.statsClientControllerRemove(delete_station.id, true) StatsClientService.statsClientControllerRemove(delete_client.id, true)
.then((resp) => { .then((resp) => {
toast($_("statsclient-deleted")); toast($_("statsclient-deleted"));
location.replace("./"); location.replace("./");

View File

@ -1,44 +1,39 @@
<script> <script>
import { _ } from "svelte-i18n"; import { _ } from "svelte-i18n";
import store from "../../store"; import store from "../../store";
import AddStatsClientModal from "./AddStatsClientModal.svelte"; import AddStatsClientModal from "./AddStatsClientModal.svelte";
import CopyStatsClientTokenModal from "./CopyStatsClientTokenModal.svelte"; import CopyStatsClientTokenModal from "./CopyStatsClientTokenModal.svelte";
import StatsClientsOverview from "./StatsClientsOverview.svelte"; import StatsClientsOverview from "./StatsClientsOverview.svelte";
export let modal_open = false; export let modal_open = false;
export let copy_modal_open = false; export let copy_modal_open = false;
export let new_client = {}; export let new_client = {};
let current_clients = []; let current_clients = [];
</script> </script>
<section class="container p-5"> <section class="container p-5">
<h4 class="mb-1 text-3xl font-extrabold leading-tight font-mono"> <h4 class="mb-1 text-3xl font-extrabold leading-tight font-mono">
{$_("statsclients")} {$_("statsclients")}
</h4> </h4>
{#if store.state.jwtinfo.userdetails.permissions.includes("STATSCLIENT:CREATE")} {#if store.state.jwtinfo.userdetails.permissions.includes("STATSCLIENT:CREATE")}
<button <button
on:click={() => { on:click={() => {
modal_open = true; modal_open = true;
}} }}
type="button" type="button"
class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-600 text-base font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 sm:w-auto sm:text-sm" class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-600 text-base font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 sm:w-auto sm:text-sm"
> >
{$_("create-a-new-statsclient")} {$_("create-a-new-statsclient")}
</button> </button>
{/if} {/if}
<StatsClientsOverview <StatsClientsOverview bind:current_clients />
bind:current_clients
bind:modal_open
bind:new_client
bind:copy_modal_open
/>
</section> </section>
{#if store.state.jwtinfo.userdetails.permissions.includes("STATSCLIENT:CREATE")} {#if store.state.jwtinfo.userdetails.permissions.includes("STATSCLIENT:CREATE")}
<AddStatsClientModal <AddStatsClientModal
bind:modal_open bind:modal_open
bind:current_clients bind:current_clients
bind:new_client bind:new_client
bind:copy_modal_open bind:copy_modal_open
/> />
<CopyStatsClientTokenModal bind:copy_modal_open bind:new_client /> <CopyStatsClientTokenModal bind:copy_modal_open bind:new_client />
{/if} {/if}