diff --git a/src/components/runners/AddRunnerModal.svelte b/src/components/runners/AddRunnerModal.svelte index 1d16a7d1..2d7b3fec 100644 --- a/src/components/runners/AddRunnerModal.svelte +++ b/src/components/runners/AddRunnerModal.svelte @@ -11,6 +11,9 @@ import isMobilePhone from "validator/es/lib/isMobilePhone"; import Toastify from "toastify-js"; import Select from "svelte-select"; + import { createEventDispatcher } from "svelte"; + const dispatch = createEventDispatcher(); + export let modal_open; export let current_runners; $: selected_team = undefined; @@ -107,8 +110,7 @@ duration: 500, backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)", }).showToast(); - current_runners.push(result); - current_runners = current_runners; + dispatch("created", { runners: [result] }); }) .catch((err) => { // diff --git a/src/components/runners/Runners.svelte b/src/components/runners/Runners.svelte index f1684cd4..8f209e88 100644 --- a/src/components/runners/Runners.svelte +++ b/src/components/runners/Runners.svelte @@ -7,35 +7,43 @@ $: current_runners = []; export let modal_open = false; export let import_modal_open = false; + let addRunners;
- {$_('runners')} - {#if store.state.jwtinfo.userdetails.permissions.includes('RUNNER:CREATE')} + {$_("runners")} + {#if store.state.jwtinfo.userdetails.permissions.includes("RUNNER:CREATE")} {/if} - +
-{#if store.state.jwtinfo.userdetails.permissions.includes('RUNNER:CREATE')} - +{#if store.state.jwtinfo.userdetails.permissions.includes("RUNNER:CREATE")} + { + addRunners(event.detail.runners); + }} + /> { import_modal_open = false; @@ -43,7 +51,7 @@ passed_team={{}} passed_orgs={[]} passed_org={{}} - bind:current_runners opened_from="RunnerOverview" - bind:import_modal_open /> + bind:import_modal_open + /> {/if} diff --git a/src/components/runners/RunnersOverview.svelte b/src/components/runners/RunnersOverview.svelte index d4a3bf36..3c2cf750 100644 --- a/src/components/runners/RunnersOverview.svelte +++ b/src/components/runners/RunnersOverview.svelte @@ -42,6 +42,15 @@ $: teams = []; $: orgs = []; + export const addRunners = (runners) => { + current_runners = current_runners.concat(...runners); + options.update((options) => ({ + ...options, + data: current_runners, + })); + }; + + //Section table const columns = [ {