- Add a new page for sessionv2 with features to load session data, deltas, list of files, prerender flag, and navigation to previous and next session
- Add a sticky header for the timeline and a list of files and entries for the timeline
- Add a link to the v2 page for project session page
[src/routes/projects/[projectId]/sessionv2/[sessionId]/+page.svelte]
- Add a new file for the session page
- Add a function to convert timestamp to column index
- Add a sticky header for the timeline
- Add a list of files for the timeline
- Add a list of entries for the timeline
[src/routes/projects/[projectId]/sessionv2/[sessionId]/+page.ts]
- Add a new page for sessionv2 with the following features:
- Load session data
- Load deltas from the backend
- Load list of files from the backend
- Add a prerender flag
- Add a navigation to the previous and next session if available
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.svelte]
- Add link to v2 page for project session page
- Update ping animation colors in TimelineDaySession component
- Change `bg-orange-400` to `bg-orange-200` for ping animation
- Change `bg-orange-600` to `bg-zinc-200` and add `border-orange-200` for ping animation
[src/lib/components/timeline/TimelineDaySession.svelte]
- Change `bg-orange-400` to `bg-orange-200` for the ping animation
- Change `bg-orange-600` to `bg-zinc-200` and add a `border-orange-200` for the ping animation
- Add an indicator for the current session
- Change styling and title of the branch name link
- Add duration display in minutes
[src/lib/components/timeline/TimelineDaySession.svelte]
- Add an indicator for the current session
- Change the styling and title of the branch name link
- Add a duration display in minutes
- Fix a calculation bug in the duration display
- Change timestamp multiplier from `1000` to `1` in `toHumanReadableTime` and `toHumanReadableDate`
- Change date style to `short` in `toHumanReadableDate`
- Update date filter and `startTime` and `endTime` in `WeekBlockEntry` to use the `startTimestampMs` without multiplying by 1000
- Change condition for filtering the sessions from milliseconds to seconds
[src/routes/projects/[projectId]/week/+page.svelte]
- Change the date filter in `sessionsInWeek` to use the `startTimestampMs` without multiplying by 1000
- Change the `startTime` and `endTime` in `WeekBlockEntry` to use the `startTimestampMs` without multiplying by 1000
[src/lib/time.ts]
- Change timestamp multiplier from `1000` to `1` in `toHumanReadableTime`
- Change timestamp multiplier from `1000` to `1` in `toHumanReadableDate`
- Change date style to `short` in `toHumanReadableDate`
[src/routes/projects/[projectId]/day/+page.svelte]
- Change the condition for filtering the sessions from milliseconds to seconds
- Update types and imports across multiple files
- Add derived store for ordered sessions
- Add default session function to sessions import
- Sort sessions based on their `startTs` property
- Add `next` and `previous` functions to the Week namespace
- Add `nThDay` function to the Week namespace
- Change the import statement from `import { ... } from 'date-fns';` to `import { ... } from "date-fns";`
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.ts]
- Change the type of `load` from `PageLoad` to `PageLoad & Delta`
- Remove the `writable` store from the imports
- Remove the `orderedSessions` store
- Change the `session` store from `orderedSessions` to `sessions`
- Change the `previousSession` store from `orderedSessions` to `sessions`
- Change the `nextSession` store from `orderedSessions` to `s
[src/routes/projects/[projectId]/+layout.ts]
- Import `derived` store from `svelte/store`
- Add a derived store for ordered sessions
- Add a default session function to the `sessions` import
- Sort sessions based on their `startTs` property
[src/lib/week.ts]
- Change the import statement from `import { ... } from 'date-fns';` to `import { ... } from "date-fns";`
- Add the `next` and `previous` functions to the Week namespace
- Add the `nThDay` function to the Week namespace
- Add date-fns package to project
- Update dependencies in pnpm-lock.yaml
- Replace manual date calculations with date-fns functions
- Add functions to Week class for getting the next/previous week and the nth day of the week
[pnpm-lock.yaml]
- Add `date-fns` dependency to `pnpm-lock.yaml`
- Update `@codemirror/state`, `@codemirror/view`, `@tauri-apps/api`, `idb-keyval`, `mm-jsr`, and `seti-icons` dependencies in `pnpm-lock.yaml`
- Add `date-fns` package to `pnpm-lock.yaml`
[src/lib/week.ts]
- Replace manual date calculations with `date-fns` functions
- Make `Week.from` use `weekStartsOn` to set the start of the week
- Add `Week.next`, `Week.previous` and `Week.nThDay` functions
[package.json]
- Add date-fns package
- Order sessions by start timestamp
- Update derived states to use ordered sessions state
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.ts]
- Add a derived state to order the sessions by start timestamp
- Update the `session` derived state to use the new ordered sessions state
- Update the `previousSession` and `nextSession` derived states to use the new ordered sessions state
- Change the display of the project page from a timeline view to a weekly/daily view
- Change the page title to the project name
- Add two links for the weekly/daily view
- Change the hover color of the Week, Day, and Session links from `text-zinc-300` to `text-zinc-200`
[src/routes/projects/[projectId]/+page.svelte]
- Change the page display from a timeline view to a weekly/daily view
- Change the page title to the project name
- Add two links for the weekly/daily view
[src/routes/projects/[projectId]/+layout.svelte]
- Change the hover color of the Week, Day, and Session links from `text-zinc-300` to `text-zinc-200`
- Add a new page for viewing sessions in a day
- Change the link of the 'Day' page
- Change `toHumanReadableTime` to accept a timestamp in seconds
- Add an additional option to `toHumanReadableDate`
[src/app.html]
- Wrap `%sveltekit.body%` in a `<div>` with `display: contents`
[src/routes/projects/[projectId]/day/+page.svelte]
- Add a new page for viewing sessions in a day
- Add navigation buttons to the page header
- Add logic to format the date and display the sessions in the day
- Add logic to determine the display width of each session
- Add an error message if the project is not found
[src/routes/projects/[projectId]/+layout.svelte]
- Change the link of the 'Day' page to `/projects/{$project?.id}/day`
[src/routes/projects/[projectId]/week/+page.svelte]
- Remove `onMount` and `onDestroy` imports from `+page.svelte`
- Add `WeekBlockEntry` import from `$lib/components/week`
[src/lib/time.ts]
- Change `toHumanReadableTime` to accept a timestamp in seconds instead of milliseconds
- Add an additional option to `toHumanReadableDate`