Files
TREK/client/src/help/contexts/tripFiles.ts
T
Maurice 0ed0d98c32 feat(help): ten more screens of a trip, registered with their guide scripts
Place details, Day details, Map, Transports, Bookings, Lists, Costs, Files,
Collab and Road Trip: 77 guides over 360 steps, each one a task a reader can
follow, with the Playwright script that will photograph it. The fixtures they
need go in beside ensureDaysFixtures, and every screen is a child of the trip,
so the panel folds them under it.

The capture now pins the browser's clock to the day the seeded trip ends. A
picture has to look the same whoever takes it and whenever: a day later the
trip is over, My Trips moves it out of the boarding pass, What's Next has
nothing left to list, and a forecast for a day in the past is not a forecast.
Only `Date` is pinned, so timers keep running.

trip-days is green end to end after its locators were checked against the
running app; its route guides read day 6, whose two stops sit next to each
other, because day 1's are separated by the flight and have no leg of their own.
2026-09-24 14:05:44 +02:00

29 lines
1.4 KiB
TypeScript

import { defineScreen } from '../defineScreen'
/**
* Help for the Files tab of a trip: getting documents in, giving them a note
* and links into the plan, finding them again, reading them on the spot and
* getting them back out of the trash.
* A screen under `trip`; the step actions live in `e2e/help/trip-files.guide.ts`.
*/
const FILES = 'Documents-and-Files'
const LINKING = { slug: FILES, anchor: 'linking-files-to-places-reservations-or-assignments' }
export const { context: tripFilesContext, guides: tripFilesGuides } = defineScreen({
id: 'trip-files',
parent: 'trip',
route: '/trips/:id?tab=dateien',
icon: 'folder',
bullets: 6,
docs: [{ slug: FILES }, { slug: 'Document-Sync' }],
guides: [
['files-upload', 'upload', 'guide', 4, 3, { slug: FILES, anchor: 'uploading' }, ['files-link', 'files-trash'], true],
['files-link', 'link', 'guide', 5, 3, LINKING, ['files-upload', 'place-files', 'link-booking'], true],
['files-star', 'star', 'quick', 3, 2, { slug: FILES, anchor: 'starring' }, ['files-filter', 'files-preview'], true],
['files-filter', 'filter', 'quick', 4, 2, { slug: FILES, anchor: 'browsing-and-filtering' }, ['files-star', 'files-preview']],
['files-preview', 'eye', 'guide', 5, 3, { slug: FILES, anchor: 'previewing-files' }, ['files-filter', 'files-upload']],
['files-trash', 'trash', 'guide', 5, 3, { slug: FILES, anchor: 'trash' }, ['files-upload', 'files-star'], true],
],
})