Commit Graph

25 Commits

Author SHA1 Message Date
topsinoty
e5fc209203 fix(router,i18n): harden links, loading, and localized content
Make the custom router follow browser link conventions: resolve clicks from nested elements, preserve query strings and hashes, ignore modified, download, targeted, external, and in-page links, synchronize navigation listeners, and prevent stale lazy imports from replacing the newest route.

Keep language selection authoritative during translated navigation, reject unsupported stored locales, prevent stale translation requests from winning races, and synchronize the document language with standards-based et-EE and en-GB locale identifiers.

Route every YAML-backed page through one loader that checks HTTP responses, validates the parsed data shape against its fallback, and returns safe defaults. Render locale-neutral workshop months with Intl.DateTimeFormat and localize the embedded calendar URL from the active locale.

Replace HTML-bearing Helpdesk and workshop translations with structured plain-text segments rendered through escaped Vue bindings. This preserves emphasis and spacing without v-html, while direct MapLibre markers now build fixed DOM nodes through textContent and clean up safely after asynchronous loading.
2026-07-04 15:55:05 +03:00
topsinoty
13322e11cb refactor(vue): migrate app, routes, and tooling from Svelte
Replace the Svelte runtime, Vite plugin, Storybook adapter, and component files with Vue 3 equivalents while preserving the existing route table, page markup, styling, assets, deployment shape, and npm workflows.

Move shared and page-level state onto Vue refs, computed values, lifecycle hooks, and script setup components. Recreate the custom async router and translation composable as Vue-native modules so navigation and bilingual content continue to work without introducing a router or state-management dependency.

Adopt the maintained @lucide/vue package, remove the Svelte icon and map wrappers, and initialize MapLibre directly on the Helpdesk page. Replace the Svelte CSF story with a Vue Storybook story, remove obsolete aliases and generation/config files, and update the audited lockfile with no known vulnerabilities.
2026-07-04 15:51:11 +03:00
Henri
63c4960062 updated image optimisation, updated readme accrodingly. fixed image issues, fixed navbar on mobile view + more 2026-04-23 15:48:34 +03:00
Henri
08d6e08c4d updated and fixed most pages + navbar update on home page 2026-04-22 20:59:29 +03:00
Henri
83e090ef8f workshops template 2026-04-21 20:17:59 +03:00
Henri
2ef643d15f transfer 2026-04-21 19:41:01 +03:00
Henri
f5f737b790 fixes 2026-04-16 18:40:52 +03:00
Henri
85f44980e2 mentors update + navbar bug fixes 2026-04-16 16:54:06 +03:00
Henri
0a31f0aa91 for student page done 2026-04-16 15:58:19 +03:00
Henri
b09ed9795b cname + nav about page name change 2026-04-09 10:00:32 +03:00
Henri
438aa957a1 updated language loading changes on all pages 2026-04-08 00:13:42 +03:00
Henri
3d27217769 fixed language issues, updated routing, completed first version of managment page 2026-04-07 23:55:38 +03:00
Henri
99ad293289 temporary push, with testing changes for nav and Juhatus 2026-04-06 15:12:14 +03:00
Henri
78f70458e2 small fixes, hero and navbar 2026-04-06 02:55:39 +03:00
Henri
837057a976 initial home page ready 2026-04-06 01:44:17 +03:00
Henri
884281bd58 about us section ready 2026-04-05 22:54:23 +03:00
Henri
f73f73767f new home page design (Hero only right now) 2026-03-27 23:00:35 +02:00
Henri
e7162a8d0e external links go to _blank 2026-02-24 05:30:28 +02:00
Henri
54dcc26cc9 fixed error 2026-02-12 05:39:34 +02:00
Henri
9d13b57d2e lang changes, new pages, data changes 2026-02-12 05:27:53 +02:00
Henri
8839dcdc93 more components 2025-11-24 19:25:14 +02:00
Henri
8c18827dc5 initial stuff 2025-11-21 08:15:07 +02:00
Henri
e8651f6557 custom router now working 2025-11-21 03:15:09 +02:00
Henri
7dfb5adda1 transfer to PC 2025-11-21 01:58:01 +02:00
cbbe43a691 New sveltekit version of page 2025-07-11 20:38:06 +03:00