Skip to content

Commit b85f6e0

Browse files
Merge pull request #31 from spektrumrf/dev
Dev
2 parents d526a87 + 444f570 commit b85f6e0

32 files changed

Lines changed: 3341 additions & 672 deletions

deno.lock

Lines changed: 2139 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package-lock.json

Lines changed: 0 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,36 +13,35 @@
1313
"format": "prettier --write ."
1414
},
1515
"devDependencies": {
16-
"@playwright/test": "^1.58.1",
17-
"@sveltejs/adapter-node": "^5.5.2",
18-
"@sveltejs/kit": "^2.50.2",
19-
"@sveltejs/vite-plugin-svelte": "^6.2.4",
20-
"@tailwindcss/vite": "^4.1.18",
16+
"@playwright/test": "^1.58.2",
17+
"@sveltejs/adapter-node": "^5.5.4",
18+
"@sveltejs/kit": "^2.55.0",
19+
"@sveltejs/vite-plugin-svelte": "^7.0.0",
20+
"@tailwindcss/vite": "^4.2.2",
2121
"@types/leaflet": "^1.9.21",
22-
"@types/node": "^25.2.0",
23-
"effect": "^3.12.0",
22+
"@types/node": "^25.5.0",
23+
"effect": "^3.20.0",
2424
"prettier": "^3.8.1",
25-
"prettier-plugin-svelte": "^3.4.1",
25+
"prettier-plugin-svelte": "^3.5.1",
2626
"prettier-plugin-tailwindcss": "^0.7.2",
27-
"svelte": "^5.49.1",
28-
"svelte-check": "^4.3.6",
27+
"svelte": "^5.54.0",
28+
"svelte-check": "^4.4.5",
2929
"svelte-preprocess": "^6.0.3",
30-
"tailwindcss": "^4.1.18",
30+
"tailwindcss": "^4.2.2",
3131
"tslib": "^2.8.1",
3232
"typescript": "^5.9.3",
33-
"vite": "^7.3.1",
33+
"vite": "^8.0.1",
3434
"zod": "^4.3.6"
3535
},
3636
"type": "module",
3737
"dependencies": {
38-
"@sentry/sveltekit": "^10.38.0",
38+
"@sentry/sveltekit": "^10.45.0",
3939
"@tailwindcss/typography": "^0.5.19",
4040
"chart.js": "^4.5.1",
4141
"chartjs-adapter-dayjs-4": "^1.0.4",
42-
"daisyui": "^5.5.17",
4342
"date-fns": "^4.1.0",
44-
"dayjs": "^1.11.19",
45-
"dotenv": "^17.2.3",
43+
"dayjs": "^1.11.20",
44+
"dotenv": "^17.3.1",
4645
"leaflet": "^1.9.4",
4746
"pocketbase": "^0.26.8",
4847
"svelte-table": "^0.6.5"

src/app.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
<!doctype html>
2-
<html lang="sv" data-theme="cupcake">
2+
<html lang="sv">
33
<head>
44
<meta charset="utf-8" />
55
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
66
<meta name="viewport" content="width=device-width" />
77
%sveltekit.head%
88
</head>
99

10-
<body>
11-
<div>%sveltekit.body%</div>
10+
<body class="min-h-screen bg-stone-50 font-sans text-stone-900 antialiased">
11+
<div class="flex min-h-screen flex-col">%sveltekit.body%</div>
1212
</body>
1313
</html>

src/lib/components/AddFeat.svelte

Lines changed: 70 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -11,69 +11,82 @@
1111
<div class="flex">
1212
<label
1313
for="addFeat"
14-
class="btn btn-primary border border-black text-xl mb-8 w-full max-w-sm mx-auto"
14+
class="mx-auto mb-8 btn-primary w-full max-w-sm cursor-pointer px-6 py-3 text-center text-lg shadow-md transition-all hover:shadow-lg sm:text-xl"
1515
>Ny prestation</label
1616
>
1717
</div>
18-
<input type="checkbox" id="addFeat" class="modal-toggle" />
19-
<div class="modal modal-bottom sm:modal-middle">
20-
<div class="modal-box flex">
21-
<div class="mx-auto">
22-
<h3 class="font-bold text-xl">Ny prestation</h3>
23-
<form
24-
on:submit={() => (loading = true)}
25-
method="POST"
26-
id="add-form"
27-
enctype="multipart/form-data"
28-
action={formActionPath}
29-
>
30-
<Input
31-
name="points"
32-
type="number"
33-
label="Poäng"
34-
required={true}
35-
min={0}
36-
max={15}
37-
step="0.01"
38-
altLabel="0-15, 0 om osäker"
39-
/>
4018

41-
<div class="form-control w-full max-w-xs">
42-
<label class="label" for="location">
43-
<span class="label-text">Plats</span>
44-
<span class="label-text-alt">Specialkrogar märkta med *</span>
45-
</label>
46-
<select name="location" required bind:value={locationId} class="select select-bordered">
47-
<option disabled selected value="">Välj plats</option>
48-
{#each $locations as location}
49-
<option value={location.id}>{location.name}</option>
50-
{/each}
51-
</select>
52-
</div>
19+
<!-- Add Feat Modal -->
20+
<input type="checkbox" id="addFeat" class="peer hidden" />
21+
<div
22+
class="pointer-events-none fixed inset-0 z-50 flex items-center justify-center bg-stone-900/50 p-4 opacity-0 backdrop-blur-sm transition-opacity duration-200 peer-checked:pointer-events-auto peer-checked:opacity-100"
23+
>
24+
<label for="addFeat" class="absolute inset-0 cursor-default"></label>
25+
<div
26+
class="relative mx-auto max-h-[90vh] w-full max-w-lg scale-95 transform overflow-y-auto rounded-xl bg-white p-6 shadow-xl transition-transform duration-200 peer-checked:scale-100 sm:p-8"
27+
>
28+
<h3 class="mb-6 font-serif text-2xl font-bold text-brand-900">Ny prestation</h3>
29+
<form
30+
on:submit={() => (loading = true)}
31+
method="POST"
32+
id="add-form"
33+
enctype="multipart/form-data"
34+
action={formActionPath}
35+
class="space-y-5"
36+
>
37+
<Input
38+
name="points"
39+
type="number"
40+
label="Poäng"
41+
required={true}
42+
min={0}
43+
max={15}
44+
step="0.01"
45+
altLabel="0-15, 0 om osäker"
46+
/>
5347

54-
<div class="form-control w-full max-w-xs">
55-
<label class="label" for="proofs">
56-
<span class="label-text">Välj bildbevis</span>
57-
</label>
58-
<input
59-
type="file"
60-
name="proofs"
61-
required
62-
multiple
63-
class="file-input file-input-secondary file-input-sm file-input-bordered w-full max-w-xs"
64-
/>
48+
<div class="w-full">
49+
<div class="mb-1 flex items-end justify-between">
50+
<label class="block text-sm font-medium text-stone-700" for="location"> Plats </label>
51+
<span class="text-xs text-stone-500">Specialkrogar märkta med *</span>
6552
</div>
53+
<select name="location" required bind:value={locationId} class="input-field">
54+
<option disabled selected value="">Välj plats</option>
55+
{#each $locations as location}
56+
<option value={location.id}>{location.name}</option>
57+
{/each}
58+
</select>
59+
</div>
6660

67-
<Input name="teamComment" type="text" label="Kommentar" altLabel="" />
68-
<input hidden value={$event?.id} name="event" />
69-
<input hidden value={locationName} name="locationName" />
70-
<div class="flex gap-3 mt-3">
71-
<button class="btn btn-primary">
72-
<Loading {loading}>Spara</Loading>
73-
</button>
74-
<label for="addFeat" class="btn">Stäng</label>
75-
</div>
76-
</form>
77-
</div>
61+
<div class="w-full">
62+
<label class="mb-2 block text-sm font-medium text-stone-700" for="proofs">
63+
Välj bildbevis
64+
</label>
65+
<input
66+
type="file"
67+
name="proofs"
68+
id="proofs"
69+
required
70+
multiple
71+
class="block w-full rounded-md border
72+
border-stone-300 p-1 text-sm
73+
text-stone-500 transition-colors
74+
file:mr-4 file:rounded-md
75+
file:border-0 file:bg-brand-50
76+
file:px-4 file:py-2 file:text-sm file:font-semibold file:text-brand-700 hover:file:bg-brand-100"
77+
/>
78+
</div>
79+
80+
<Input name="teamComment" type="text" label="Kommentar" altLabel="" />
81+
<input hidden value={$event?.id} name="event" />
82+
<input hidden value={locationName} name="locationName" />
83+
84+
<div class="mt-6 flex gap-3 border-t border-stone-100 pt-6">
85+
<button class="btn-primary flex-1">
86+
<Loading {loading}>Spara</Loading>
87+
</button>
88+
<label for="addFeat" class="btn-secondary flex-1 cursor-pointer text-center">Stäng</label>
89+
</div>
90+
</form>
7891
</div>
7992
</div>

src/lib/components/AddLocation.svelte

Lines changed: 35 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,41 @@
55
let loading = false;
66
</script>
77

8-
<div class="">
9-
<label for="addLocation" class="btn btn-success my-5 max-w-xs">Ny plats</label>
8+
<div class="my-5">
9+
<label
10+
for="addLocation"
11+
class="btn-primary inline-block cursor-pointer bg-green-600 hover:bg-green-700">Ny plats</label
12+
>
1013
</div>
11-
<input type="checkbox" id="addLocation" class="modal-toggle" />
12-
<div class="modal modal-bottom sm:modal-middle">
13-
<div class="modal-box flex">
14-
<div class="mx-auto">
15-
<h3 class="font-bold text-2xl">Ny plats</h3>
16-
<form
17-
method="POST"
18-
enctype="multipart/form-data"
19-
action="?/addLocation"
20-
on:submit={() => (loading = true)}
21-
>
22-
<Input name="name" type="text" label="Platsens namn" />
23-
<input hidden name="event" value={$event?.id} />
24-
<div class="flex gap-3 my-3">
25-
<button class="btn btn-primary">
26-
<Loading {loading}>Spara</Loading>
27-
</button>
28-
<label for="addLocation" class="btn">Stäng</label>
29-
</div>
30-
</form>
31-
</div>
14+
15+
<!-- Add Location Modal -->
16+
<input type="checkbox" id="addLocation" class="peer hidden" />
17+
<div
18+
class="pointer-events-none fixed inset-0 z-50 flex items-center justify-center bg-stone-900/50 opacity-0 backdrop-blur-sm transition-opacity duration-200 peer-checked:pointer-events-auto peer-checked:opacity-100"
19+
>
20+
<label for="addLocation" class="absolute inset-0 cursor-default"></label>
21+
<div
22+
class="relative mx-4 max-h-[90vh] w-full max-w-md scale-95 transform overflow-y-auto rounded-xl bg-white p-6 shadow-xl transition-transform duration-200 peer-checked:scale-100 sm:p-8"
23+
>
24+
<h3 class="mb-6 font-serif text-2xl font-bold text-brand-900">Ny plats</h3>
25+
<form
26+
method="POST"
27+
enctype="multipart/form-data"
28+
action="?/addLocation"
29+
on:submit={() => (loading = true)}
30+
class="space-y-4"
31+
>
32+
<Input name="name" type="text" label="Platsens namn" />
33+
<input hidden name="event" value={$event?.id} />
34+
35+
<div class="mt-6 flex gap-3 border-t border-stone-100 pt-4">
36+
<button class="btn-primary flex-1">
37+
<Loading {loading}>Spara</Loading>
38+
</button>
39+
<label for="addLocation" class="btn-secondary flex-1 cursor-pointer text-center"
40+
>Stäng</label
41+
>
42+
</div>
43+
</form>
3244
</div>
3345
</div>

src/lib/components/AddLocationToYear.svelte

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,11 @@
1111
enctype="multipart/form-data"
1212
action="?/addLocationToYear"
1313
on:submit={() => (loading = true)}
14+
class="my-5"
1415
>
1516
<input hidden name="locationId" value={selectedLocationToAddToYear?.id} />
1617
<input hidden name="eventId" value={$event?.id} />
17-
<button class="btn btn-primary my-5">
18+
<button class="btn-primary w-full sm:w-auto">
1819
<Loading {loading}>
1920
Koppla plats till år {$event?.year}
2021
</Loading>

0 commit comments

Comments
 (0)