From a2cd54fba4a987f7f7dbab22cc958f9aea2817ff Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Fri, 28 Mar 2025 11:16:44 +0100 Subject: [PATCH] feat: improve ConfirmTeamDeletionModal --- .../teams/ConfirmTeamDeletion.svelte | 103 ------------------ .../teams/ConfirmTeamDeletionModal.svelte | 103 ++++++++++++++++++ src/components/teams/TeamDetail.svelte | 8 +- src/components/teams/Teams.svelte | 70 +++--------- 4 files changed, 124 insertions(+), 160 deletions(-) delete mode 100644 src/components/teams/ConfirmTeamDeletion.svelte create mode 100644 src/components/teams/ConfirmTeamDeletionModal.svelte diff --git a/src/components/teams/ConfirmTeamDeletion.svelte b/src/components/teams/ConfirmTeamDeletion.svelte deleted file mode 100644 index d9d64b4e..00000000 --- a/src/components/teams/ConfirmTeamDeletion.svelte +++ /dev/null @@ -1,103 +0,0 @@ - - -{#if modal_open} -
-
- -
-{/if} diff --git a/src/components/teams/ConfirmTeamDeletionModal.svelte b/src/components/teams/ConfirmTeamDeletionModal.svelte new file mode 100644 index 00000000..a22f0dd2 --- /dev/null +++ b/src/components/teams/ConfirmTeamDeletionModal.svelte @@ -0,0 +1,103 @@ + + +{#if modal_open} +
+
+ +
+{/if} diff --git a/src/components/teams/TeamDetail.svelte b/src/components/teams/TeamDetail.svelte index 90201041..0de640e7 100644 --- a/src/components/teams/TeamDetail.svelte +++ b/src/components/teams/TeamDetail.svelte @@ -4,15 +4,13 @@ RunnerOrganizationService, RunnerTeamService, } from "@odit/lfk-client-js"; - import { getLocaleFromNavigator, _ } from "svelte-i18n"; + import { _ } from "svelte-i18n"; import toast from "svelte-french-toast"; - import store from "../../store"; import Select from "svelte-select"; import ImportRunnerModal from "../runners/ImportRunnerModal.svelte"; import PromiseError from "../base/PromiseError.svelte"; - import ConfirmTeamDeletion from "./ConfirmTeamDeletion.svelte"; - import Teams from "./Teams.svelte"; + import ConfirmTeamDeletionModal from "./ConfirmTeamDeletionModal.svelte"; import GenerateSponsoringContracts from "../pdf_generation/GenerateSponsoringContracts.svelte"; import GenerateRunnerCards from "../pdf_generation/GenerateRunnerCards.svelte"; import GenerateRunnerCertificates from "../pdf_generation/GenerateRunnerCertificates.svelte"; @@ -105,7 +103,7 @@ opened_from="TeamDetail" bind:import_modal_open /> - + {#if data_loaded}
diff --git a/src/components/teams/Teams.svelte b/src/components/teams/Teams.svelte index 81d0a508..af9e08a5 100644 --- a/src/components/teams/Teams.svelte +++ b/src/components/teams/Teams.svelte @@ -6,11 +6,10 @@ const teams_promise = RunnerTeamService.runnerTeamControllerGetAll(); import store, { users as usersstore } from "../../store.js"; import TeamsEmptyState from "./TeamsEmptyState.svelte"; - import ConfirmTeamDeletion from "./ConfirmTeamDeletion.svelte"; + import ConfirmTeamDeletionModal from "./ConfirmTeamDeletionModal.svelte"; import GenerateSponsoringContracts from "../pdf_generation/GenerateSponsoringContracts.svelte"; import GenerateRunnerCards from "../pdf_generation/GenerateRunnerCards.svelte"; import GenerateRunnerCertificates from "../pdf_generation/GenerateRunnerCertificates.svelte"; - import toast from "svelte-french-toast"; $: searchvalue = ""; $: active_deletes = []; $: sponsoring_contracts_show = current_teams.some( @@ -19,6 +18,7 @@ $: cards_show = current_teams.some((r) => r.is_selected === true); $: certificates_show = current_teams.some((r) => r.is_selected === true); $: generate_teams = current_teams.filter((r) => r.is_selected === true); + let delete_modal_open = false; let modal_open = false; let delete_team = {}; usersstore.subscribe((val) => { @@ -44,12 +44,12 @@ {$_("create-team")} {/if} - { modal_open = false; active_deletes[event.detail.id] = false; }} - bind:modal_open + bind:modal_open={delete_modal_open} bind:delete_team /> {#if store.state.jwtinfo.userdetails.permissions.includes("TEAM:GET")} @@ -182,61 +182,27 @@
- {#if active_deletes[t.id] === true} - + {$_("details")} + {#if store.state.jwtinfo.userdetails.permissions.includes("TEAM:DELETE")} - {$_("delete")} - - {:else} - - {$_("details")} - {#if store.state.jwtinfo.userdetails.permissions.includes("TEAM:DELETE")} - - {/if} - - {/if} + {/if} + {/if} {/each}