This implements a simple terminal frontend using Xterm and backend using portable_pty. It will not yet record, but it should keep a separate terminal per project, resize properly, change directories to the project, etc.
https://docs.rs/portable-pty/latest/portable_pty/
- Update packages and add new features to the project search page
- Add 1000ms delay to search query
- Add functions to apply deltas to a text string and diff a paragraph with a query
- Add a code viewer with syntax highlighting for search results
[pnpm-lock.yaml]
- Add `diff` package (version 5.1.0)
- Update `date-fns` to version 2.29.3
- Update `@typescript-eslint/parser` to version 5.45.0
- Update `autoprefixer` to version 10.4.7
- Update `eslint` to version 8.28.0
- Update `eslint-config-prettier` to version
[package.json]
- Add `diff` package to `package.json`
[src/routes/projects/[projectId]/search/+page.svelte]
- Add 1000ms delay to search query
- Add a function to apply deltas to a text string
- Add a function to diff a paragraph with a query
- Add a timestamp to the file path in the search results
- Add a span to the file path with the date of the delta
- Add a code viewer with highlighting for the search results
- Add a pre tag with highlighting for the search results
- Update the `pnpm-lock.yaml` file
- Add `fluent-svelte` as a dependency
- Change `dev` flag to `false` for multiple packages
[pnpm-lock.yaml]
- Add `fluent-svelte` as a dependency
- Change `dev` flag from `true` to `false` for `focus-trap` and `for-each` packages
- Change `dev` flag from `true` to `false` for `tabbable` package
- Change `dev` flag from `true` to `false` for `tailwindcss` package
- 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
- Upgrade CodeViewer component to use MergeView
- Add collapseUnchanged option to MergeView
- Update @codemirror/state and @codemirror/view to latest version
- Add @codemirror/merge to dependencies and packages list
[package.json]
- Add @codemirror/merge dependency to package.json
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.svelte]
- Change the `CodeViewer` value from `contentWithDeltasApplied` to `contentAtSessionStart` and `newValue` to `contentWithDeltasApplied`
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.ts]
- Remove `console.log` line in `src/routes/projects/[projectId]/sessions/[sessionId]/+page.ts`
- Change type of `files` from `Record<string, string>` to `any`
[src/lib/components/CodeViewer.svelte]
- Change the code viewer from an EditorView to a MergeView
- Add a newValue prop to the CodeViewer component
- Update the update function to use the new MergeView
- Add collapseUnchanged option to the MergeView
- Remove unused code related to coloring the last edit
[pnpm-lock.yaml]
- Add `@codemirror/merge` to the dependencies and specifiers
- Update `@codemirror/state` to version `6.2.0`
- Update `@codemirror/view` to version `6.7.3`
- Add `@codemirror/merge` to the packages list with the specified resolution and dependencies