Skip to content

Commit

Permalink
Add routing 🧭
Browse files Browse the repository at this point in the history
  • Loading branch information
yannikinniger committed Oct 28, 2023
1 parent 57e3526 commit 1afe7dc
Show file tree
Hide file tree
Showing 7 changed files with 61 additions and 7 deletions.
7 changes: 7 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Expand Up @@ -14,6 +14,7 @@
"@tsconfig/svelte": "^5.0.0",
"svelte": "^4.0.5",
"svelte-check": "^3.4.6",
"svelte-routing": "^2.5.0",
"tslib": "^2.6.0",
"typescript": "^5.0.2",
"vite": "^4.4.5"
Expand Down
20 changes: 13 additions & 7 deletions src/App.svelte
@@ -1,10 +1,16 @@
<script lang="ts">
import Datepicker from './lib/Datepicker.svelte';
let pickedDate: Date;
import { Link, Route, Router } from 'svelte-routing';
import Calendar from './routes/calendar/Calendar.svelte';
import LostAndFound from './routes/lost-and-found/LostAndFound.svelte';
</script>

<main>
<p>{pickedDate}</p>
<Datepicker bind:date={pickedDate} />
</main>
<Router>
<nav>
<Link to="/">Calendar</Link>
<Link to="/lost-and-found">Blog</Link>
</nav>
<main>
<Route path="/lost-and-found" component={LostAndFound} />
<Route path="/"><Calendar /></Route>
</main>
</Router>
8 changes: 8 additions & 0 deletions src/model/reservation.model.ts
@@ -0,0 +1,8 @@
export interface Reservation {
id: string;
owner: string;
startTime: number; //timestamp
endTime: number; //timestamp
}

export type ReservationStoreData = Reservation[] | null;
23 changes: 23 additions & 0 deletions src/model/reservation.store.ts
@@ -0,0 +1,23 @@
import { writable } from 'svelte/store';
import type { Reservation, ReservationStoreData } from './reservation.model';

const mockedReservations: Reservation[] = [
{
id: '1',
owner: '1',
startTime: 1698667200,
endTime: 1698670800,
},
{
id: '2',
owner: '2',
startTime: 1698678000,
endTime: 1698681600,
},
];

const reservations$ = writable<ReservationStoreData>(null);

export const loadSlots = (): Reservation[] => {
return mockedReservations;
};
8 changes: 8 additions & 0 deletions src/routes/calendar/Calendar.svelte
@@ -0,0 +1,8 @@
<script lang="ts">
import Datepicker from '../../lib/Datepicker.svelte';
let pickedDate: Date;
</script>

<p>{pickedDate}</p>
<Datepicker bind:date={pickedDate} />
1 change: 1 addition & 0 deletions src/routes/lost-and-found/LostAndFound.svelte
@@ -0,0 +1 @@
<p>Hello Ariane!</p>

0 comments on commit 1afe7dc

Please sign in to comment.