From 0386d4e88ab57457fa981399627b2b61f38bb1ae Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Thu, 18 Mar 2021 15:35:39 +0100 Subject: [PATCH] =?UTF-8?q?Applied=20the=20select=20fix=20to=20all=20thing?= =?UTF-8?q?s=20runner=20=F0=9F=8F=83=E2=80=8D=E2=99=80=EF=B8=8F?= =?UTF-8?q?=F0=9F=8F=83=E2=80=8D=E2=99=82=EF=B8=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ref #98 --- src/components/runners/AddRunnerModal.svelte | 25 ++++------- src/components/runners/RunnerDetail.svelte | 44 ++++++++++---------- 2 files changed, 30 insertions(+), 39 deletions(-) diff --git a/src/components/runners/AddRunnerModal.svelte b/src/components/runners/AddRunnerModal.svelte index b84d425c..2ee98810 100644 --- a/src/components/runners/AddRunnerModal.svelte +++ b/src/components/runners/AddRunnerModal.svelte @@ -11,7 +11,6 @@ import isMobilePhone from "validator/es/lib/isMobilePhone"; import Toastify from "toastify-js"; import Select from "svelte-select"; - import AddDonationModal from "../donations/AddDonationModal.svelte"; export let modal_open; export let current_runners; $: selected_team = undefined; @@ -22,11 +21,15 @@ let email_input; let teams = []; RunnerTeamService.runnerTeamControllerGetAll().then((val) => { - teams = val; + teams = val.map((r) => { + return { label: `${r.parentGroup.name} > ${r.name}`, value: r }; + }); }); let orgs = []; RunnerOrganizationService.runnerOrganizationControllerGetAll().then((val) => { - orgs = val; + orgs = val.map((r) => { + return { label: r.name, value: r }; + }); }); function focus(el) { el.focus(); @@ -230,30 +233,18 @@ class="block text-sm font-medium text-gray-700">{$_('team')} { - if (option.responseType == 'RUNNERORGANIZATION') { - return option.name; - } - return `${option.parentGroup.name} > ${option.name}`; - }} - getOptionLabel={(option) => { - if (option.responseType == 'RUNNERORGANIZATION') { - return option.name; - } - return `${option.parentGroup.name} > ${option.name}`; - }} itemFilter={(label, filterText, option) => label .toLowerCase() .includes( filterText.toLowerCase() - ) || option.id.toString().startsWith(filterText.toLowerCase())} - items={orgs.concat(orgs, teams)} + ) || option.id.value.toString().startsWith(filterText.toLowerCase())} + items={groups} showChevron={true} placeholder={$_('search-for-an-organization-or-team-by-name-or-id')} noOptionsMessage={$_('no-organization-or-team-found')} - bind:selectedValue={editable.group} + bind:selectedValue={group} + on:select={(selectedValue) => {editable.group = selectedValue.detail.value}} on:clear={() => (editable.group = null)} />