Compare commits

..

No commits in common. "c68157013431eeb1150e37fea87da02d5f7b032e" and "5662c3b6da67c00c94254bf39f8820e531fc93ef" have entirely different histories.

2 changed files with 20 additions and 26 deletions

View File

@ -7,6 +7,7 @@
import Toastify from "toastify-js"; import Toastify from "toastify-js";
import { createEventDispatcher } from "svelte"; import { createEventDispatcher } from "svelte";
export let edit_modal_open; export let edit_modal_open;
export let current_cards;
export let runner = {}; export let runner = {};
export let editable = {}; export let editable = {};
export let original_data = {}; export let original_data = {};
@ -29,6 +30,9 @@
$: enabled = true; $: enabled = true;
$: processed_last_submit = true; $: processed_last_submit = true;
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
function dataUpdated() {
dispatch('dataUpdated',);
}
RunnerService.runnerControllerGetAll().then((val) => { RunnerService.runnerControllerGetAll().then((val) => {
runners = val.map((r) => { runners = val.map((r) => {
return { label: getRunnerLabel(r), value: r }; return { label: getRunnerLabel(r), value: r };
@ -71,7 +75,9 @@
duration: 500, duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)", backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast(); }).showToast();
dispatch('dataUpdated', {card: result}); current_cards[current_cards.findIndex((c) => c.id === id)] = result;
current_cards = current_cards;
dataUpdated();
}) })
.catch((err) => { .catch((err) => {
// //

View File

@ -47,12 +47,18 @@
})); }));
} }
); );
const getRunnerLabel = (option) =>
option?.firstname +
" " +
(option?.middlename || "") +
" " +
(option?.lastname || "{$_('non-blanko')}");
const columns = [ const columns = [
{ {
accessorKey: "code", accessorKey: "id",
header: () => $_("code"), header: () => "id",
filterFn: `includesString`, filterFn: `equalsString`,
}, },
{ {
accessorKey: "runner", accessorKey: "runner",
@ -75,13 +81,7 @@
header: () => $_("action"), header: () => $_("action"),
cell: (info) => { cell: (info) => {
return renderComponent(TableActions, { return renderComponent(TableActions, {
detailsAction: () => { detailsLink: `./${info.row.original.id}`,
open_edit_modal(
current_cards[
current_cards.findIndex((r) => r.id == info.row.original.id)
]
);
},
deleteAction: () => { deleteAction: () => {
active_delete = active_delete =
current_cards[ current_cards[
@ -116,12 +116,6 @@
const table = createSvelteTable(options); const table = createSvelteTable(options);
function open_edit_modal(card) { function open_edit_modal(card) {
const getRunnerLabel = (option) =>
option.firstname +
" " +
(option.middlename || "") +
" " +
option.lastname;
if (card.runner?.id) { if (card.runner?.id) {
runner = Object.assign( runner = Object.assign(
{ runner }, { runner },
@ -140,19 +134,13 @@
{#if store.state.jwtinfo.userdetails.permissions.includes("CARD:UPDATE")} {#if store.state.jwtinfo.userdetails.permissions.includes("CARD:UPDATE")}
<CardDetailModal <CardDetailModal
bind:current_cards
bind:edit_modal_open bind:edit_modal_open
bind:runner bind:runner
bind:editable bind:editable
bind:original_data bind:original_data
on:dataUpdated={(event) => { on:dataUpdated={() => {
current_cards[ //TODO:
current_cards.findIndex((c) => c.id === event.detail.card.id)
] = event.detail.card;
current_cards = current_cards;
options.update((options) => ({
...options,
data: current_cards,
}));
}} }}
/> />
{/if} {/if}