1
0
Fork 0
mirror of https://github.com/seanmorley15/AdventureLog.git synced 2025-07-22 06:19:38 +02:00

refactor: Add user prop to TransportationCard component for conditional rendering of actions

This commit is contained in:
Sean Morley 2024-07-29 19:19:24 -04:00
parent d5c5551ce1
commit 103500b5e1
3 changed files with 24 additions and 13 deletions

View file

@ -56,10 +56,16 @@
let id = data[1]; let id = data[1];
let user_id = data[2]; let user_id = data[2];
console.log(newCollection); if (id !== undefined && user_id !== undefined) {
dispatch('create', newCollection); newCollection.id = id;
addToast('success', 'Collection created successfully!'); newCollection.user_id = user_id;
close(); console.log(newCollection);
dispatch('create', newCollection);
addToast('success', 'Collection created successfully!');
close();
} else {
addToast('error', 'Error creating collection');
}
} }
} }
} }

View file

@ -7,7 +7,7 @@
import FileDocumentEdit from '~icons/mdi/file-document-edit'; import FileDocumentEdit from '~icons/mdi/file-document-edit';
import { goto } from '$app/navigation'; import { goto } from '$app/navigation';
import type { Collection, Transportation } from '$lib/types'; import type { Collection, Transportation, User } from '$lib/types';
import { addToast } from '$lib/toasts'; import { addToast } from '$lib/toasts';
import Plus from '~icons/mdi/plus'; import Plus from '~icons/mdi/plus';
@ -15,6 +15,7 @@
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
export let transportation: Transportation; export let transportation: Transportation;
export let user: User | null = null;
function editTransportation() { function editTransportation() {
dispatch('edit', transportation); dispatch('edit', transportation);
@ -51,13 +52,15 @@
{#if transportation.date} {#if transportation.date}
{new Date(transportation.date).toLocaleString()} {new Date(transportation.date).toLocaleString()}
{/if} {/if}
<div class="card-actions justify-end"> {#if user}
<button on:click={deleteTransportation} class="btn btn-secondary" <div class="card-actions justify-end">
><TrashCanOutline class="w-5 h-5 mr-1" /></button <button on:click={deleteTransportation} class="btn btn-secondary"
> ><TrashCanOutline class="w-5 h-5 mr-1" /></button
<button class="btn btn-primary" on:click={editTransportation}> >
<FileDocumentEdit class="w-6 h-6" /> <button class="btn btn-primary" on:click={editTransportation}>
</button> <FileDocumentEdit class="w-6 h-6" />
</div> </button>
</div>
{/if}
</div> </div>
</div> </div>

View file

@ -374,6 +374,7 @@
{#each transportations as transportation} {#each transportations as transportation}
<TransportationCard <TransportationCard
{transportation} {transportation}
user={data?.user}
on:delete={(event) => { on:delete={(event) => {
transportations = transportations.filter((t) => t.id != event.detail); transportations = transportations.filter((t) => t.id != event.detail);
}} }}
@ -430,6 +431,7 @@
{#each dayTransportations as transportation} {#each dayTransportations as transportation}
<TransportationCard <TransportationCard
{transportation} {transportation}
user={data?.user}
on:delete={(event) => { on:delete={(event) => {
transportations = transportations.filter((t) => t.id != event.detail); transportations = transportations.filter((t) => t.id != event.detail);
}} }}