feat: daybreak finale turns the contact arrival into a sunrise with a dawn chord
This commit is contained in:
@@ -24,6 +24,7 @@ import { useMotionPreferences } from '@/composables/useMotionPreferences';
|
||||
import { useRouteMemory } from '@/composables/useRouteMemory';
|
||||
import { assetUrl } from '@/content/asset-url';
|
||||
import { signRouteFor } from '@/journey/sign-routes';
|
||||
import { END_OF_SHIFT_SUBLINE } from '@/journey/dawn';
|
||||
import type { PortfolioContent, PublicAssetManifest, SectionId, SectionLayout } from '@/content/types';
|
||||
import type { SceneHostState } from '@/composables/useSceneController';
|
||||
import type { MotionPolicy } from '@/journey/motion-policy';
|
||||
@@ -129,6 +130,11 @@ const audio = useAudioEngine({
|
||||
const sceneState = shallowRef<SceneHostState>('idle');
|
||||
const pageLifecycle = shallowRef<'active' | 'frozen' | 'disposed'>('active');
|
||||
const controlsReady = shallowRef(false);
|
||||
/* END OF SHIFT: parked at the destination the plate's sub-line reads the
|
||||
shift's end. Client-only, like the 03:12 window, so the server HTML hydrates
|
||||
unchanged. */
|
||||
const hudSubline = computed(() => maintenanceSubline.value
|
||||
|| (controlsReady.value && journey.value.arrived ? END_OF_SHIFT_SUBLINE : ''));
|
||||
const adaptive = useAdaptiveQuality({
|
||||
maximum: computed(() => motion.policy.value.maximumTier),
|
||||
sceneState,
|
||||
@@ -270,7 +276,7 @@ onUnmounted(() => removePageListeners());
|
||||
:exit="exitFor(journey.activeSectionId)"
|
||||
:next-label="nextLabelFor(journey.activeSectionId)"
|
||||
:next-exit="nextExitFor(journey.activeSectionId)"
|
||||
:subline="maintenanceSubline"
|
||||
:subline="hudSubline"
|
||||
/>
|
||||
<header class="site-header">
|
||||
<SiteNavigation
|
||||
|
||||
Reference in New Issue
Block a user