From 190ac1ce628952e118a45b03c3eb9c4ac734e5fb Mon Sep 17 00:00:00 2001 From: LucaP Date: Wed, 2 Sep 2026 05:07:24 +0300 Subject: [PATCH] feat: integrate accessible journey world and controls --- src/App.vue | 1 + src/components/AppShell.vue | 105 +++++++++++++++- src/components/DriveControls.vue | 64 ++++++++++ src/components/JourneyHud.vue | 23 ++++ src/components/SceneCanvas.vue | 42 +++++++ src/components/SiteNavigation.vue | 18 +-- src/composables/useSceneController.ts | 141 +++++++++++++++++++++ src/styles/world.css | 158 ++++++++++++++++++++++++ tests/browser/scene-controls.spec.ts | 50 ++++++++ tests/unit/SceneCanvas.test.ts | 168 ++++++++++++++++++++++++++ 10 files changed, 755 insertions(+), 15 deletions(-) create mode 100644 src/components/DriveControls.vue create mode 100644 src/components/JourneyHud.vue create mode 100644 src/components/SceneCanvas.vue create mode 100644 src/composables/useSceneController.ts create mode 100644 src/styles/world.css create mode 100644 tests/browser/scene-controls.spec.ts create mode 100644 tests/unit/SceneCanvas.test.ts diff --git a/src/App.vue b/src/App.vue index 173f838..d417eed 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,6 +5,7 @@ import './styles/tokens.css'; import './styles/base.css'; import './styles/layout.css'; import './styles/components.css'; +import './styles/world.css'; import './styles/print.css'; defineProps<{ inputs: Readonly }>(); diff --git a/src/components/AppShell.vue b/src/components/AppShell.vue index ddc5e24..381d65b 100644 --- a/src/components/AppShell.vue +++ b/src/components/AppShell.vue @@ -1,14 +1,23 @@ diff --git a/src/components/DriveControls.vue b/src/components/DriveControls.vue new file mode 100644 index 0000000..2cfc5d8 --- /dev/null +++ b/src/components/DriveControls.vue @@ -0,0 +1,64 @@ + + + diff --git a/src/components/JourneyHud.vue b/src/components/JourneyHud.vue new file mode 100644 index 0000000..8c750d0 --- /dev/null +++ b/src/components/JourneyHud.vue @@ -0,0 +1,23 @@ + + + diff --git a/src/components/SceneCanvas.vue b/src/components/SceneCanvas.vue new file mode 100644 index 0000000..83bc681 --- /dev/null +++ b/src/components/SceneCanvas.vue @@ -0,0 +1,42 @@ + + + diff --git a/src/components/SiteNavigation.vue b/src/components/SiteNavigation.vue index d9f2534..d881686 100644 --- a/src/components/SiteNavigation.vue +++ b/src/components/SiteNavigation.vue @@ -1,20 +1,12 @@