Commit Graph

116 Commits

Author SHA1 Message Date
Nikita Galaiko
782a814245
change app title depending on dev/release 2023-02-14 16:20:43 +01:00
Kiril Videlov
8958246536 Improve code viewer display of deltas
- Add support for displaying files with deltas applied in the code viewer
- Add a type alias for `Delta` and a function to apply deltas to a string

[src/routes/projects/[projectId]/sessions/[sessionId]/+page.svelte]
- Add a type alias for `Delta`
- Add a function to apply deltas to a string
- Display files with deltas applied in the code viewer
2023-02-14 16:10:24 +01:00
Nikita Galaiko
b653965e2e
try to fix release product name 2023-02-14 16:00:04 +01:00
Nikita Galaiko
ea7e293673
update readme 2023-02-14 15:59:48 +01:00
Nikita Galaiko
a3c7704026
fix path to release cfg 2023-02-14 15:46:22 +01:00
Nikita Galaiko
9d4b3216ce
use release tauri config for publishing 2023-02-14 15:39:16 +01:00
Nikita Galaiko
dad31ae858
change dev app identifier 2023-02-14 15:37:05 +01:00
Kiril Videlov
8f010298a3 Increase recordings and internal API completions
- Add console log to the `load` function for debug purposes
- Add `listFiles` function from `$lib/sessions`
- Render list of files in `<div id="files">` with file name only

[src/routes/projects/[projectId]/sessions/[sessionId]/+page.ts]
- Add console log to the `load` function for debug purposes
[src/lib/components/timeline/TimelineDaySession.svelte]
- Add `listFiles` function from `$lib/sessions`
- Render list of files in `<div id="files">` with file name only
2023-02-14 15:32:53 +01:00
Nikita Galaiko
798a17d739
vendor libgit2 and openssl 2023-02-14 15:20:00 +01:00
Nikita Galaiko
cb90c84413
use anyhow lib for error context 2023-02-14 13:11:41 +01:00
Nikita Galaiko
9e457ec40c
display user email when logged in 2023-02-14 12:41:37 +01:00
Nikita Galaiko
db8ed8e58f
remove extensive error descriptions 2023-02-14 12:41:37 +01:00
Scott Chacon
51e981a54e make the whole directory before writing the delta file 2023-02-14 11:17:52 +01:00
Nikita Galaiko
0dda0afc90
open login page only once in the browser 2023-02-14 10:58:10 +01:00
Kiril Videlov
ebbcf38487 Update TimelineDaySessionActivities for internal API
- Update `TimelineDaySessionActivities` component to include activity message in the `title` attribute
- Update `TimelineDaySession` component to use `session.meta.startTs` and `session.meta.lastTs` for `session.startTime` and `session.endTime` respectively
- Uncomment `TimelineDaySessionActivities` component
- Change `session.activities` to `session.activity` in the `TimelineDaySession

[src/lib/components/timeline/TimelineDaySessionActivities.svelte]
- Change `title` attribute to include activity message
[src/lib/components/timeline/TimelineDaySession.svelte]
- Change `session.startTime` to `session.meta.startTs` in the `TimelineDaySessionActivities` component
- Change `session.endTime` to `session.meta.lastTs` in the `TimelineDaySessionActivities` component
- Uncomment the `TimelineDaySessionActivities` component
- Change `session.activities` to `session.activity` in the `TimelineDaySessionActivities` component
- Change
2023-02-14 10:52:13 +01:00
Nikita Galaiko
7d86eb365e
user login page and storage 2023-02-14 10:32:31 +01:00
Nikita Galaiko
51bae9bf36
change list_files logic
now list_files will always return files state on the beginning of a
session
2023-02-14 09:35:09 +01:00
Kiril Videlov
4a48ec5160 Improve project layout navigation
- Add link to last session in the project layout
- Change "Session" link to an anchor if there is a last session

[src/routes/projects/[projectId]/+layout.svelte]
- Add a `sessions` variable to the layout
- Add a link to the last session in the layout
- Change the "Session" link to an anchor if there is a last session
2023-02-14 09:13:56 +01:00
Kiril Videlov
54037e0dad Refactor layout and styling for projects
- Update layout to use flexbox
- Add draggable header, dropdown for project selection, and up-to-date indicator in the footer
- Add overflow-auto to sidebar and overflow-hidden to main content area
- Remove `position: fixed; width: 100%; height: 100%; overflow: hidden;` from the `<style>` tag
- Replace `flex` with `flex w-full h-full overflow-hidden`
- Wrap `

[src/routes/+layout.svelte]
- Change header to be draggable
- Change layout to use flexbox
- Add overflow-auto to sidebar
- Add border to sidebar
- Add dropdown for project selection
- Add footer with up-to-date indicator
- Add overflow-hidden to main content area
[src/app.html]
- Remove `position: fixed; width: 100%; height: 100%; overflow: hidden;` from the `<style>` tag
- Add `class="fixed h-full w-full overflow-hidden"` to the `<body>` tag
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.svelte]
- Replace `flex` with `flex w-full h-full overflow-hidden`
- Wrap `CodeViewer` in a `details` tag
- Add `Timeline` div
[src/routes/projects/[projectId]/+layout.svelte]
- Remove `<div class="">` and `</div>` from the layout
- Change link from `Week` to `Day`
- Remove the closing tag for the script section
2023-02-13 22:35:09 +01:00
Kiril Videlov
661f77de41 Refactor session navigation and deltas API
- Refactor SessionNavBlock, SessionNav, and sessions.ts to improve UX and performance
- Add CodeViewer component for all file paths
- Update type definitions in deltas.ts
- Add links to previous and next session if they exist

[src/lib/components/session/SessionNavBlock.svelte]
- Change border padding for SessionNavBlock from `p-2` to `px-2 py-1`
- Add hover effect to SessionNavBlock border when hovered
[src/routes/projects/[projectId]/sessions/[sessionId]/+page.svelte]
- Move initialization of `octokit` to a separate file
- Replace `toHumanReadableTime` with `writable` store
- Replace hardcoded navigation links with `SessionNav` component
- Add `CodeViewer` component for all file paths
- Add `derived` store for `docs`
- Replace `data` with `$deltas` in `derived` store
- Replace hardcoded `debug` with `session hash`
- Add
[src/lib/deltas.ts]
- Fix typo in the parameters type definition of the `list_deltas` function
- Update type definition of the `export default` function to match the `list_deltas` function
[src/lib/components/session/SessionNav.svelte]
- Change the class of the `session-nav` div from `my-2` to `text-sm`
- Change the `extraClasses` of the `SessionNavBlock` from `p-4` to `py-2`
- Add a link to the previous session if it exists
- Add a link to the next session if it exists
[src/lib/sessions.ts]
- Change `id` type in `Session` from `string` to `string;`
2023-02-13 21:17:36 +01:00
Kiril Videlov
2a2f8bc7fe Refactor list_files() to use session base commit
- Ensure files are always listed from the session base commit
- Simplify the `list_files()` function by removing the `match` statement
2023-02-13 20:44:25 +01:00
Kiril Videlov
aa1518ac73 Increase precision of timestamps in human readable format
- Change the timestamp to milliseconds before converting to human readable time
2023-02-13 19:52:37 +01:00
Kiril Videlov
6daf016c44 Increase reliability of session recordings and completions
- Refactored session handling code
- Improved performance and scalability
- Fixed several bugs related to session handling
- Updated documentation
2023-02-13 19:49:32 +01:00
Nikita Galaiko
62f0a4e914
treat current session just like any other session 2023-02-13 16:46:26 +01:00
Kiril Videlov
a29210e81a Update session navigation layout and styling
- Update session navigation for projects
- Add navigation for previous and next sessions
- Update navigation layout for sessions
- Add a `hover` and `extraClasses` export variable to `SessionNavBlock` component
2023-02-13 16:40:51 +01:00
Kiril Videlov
2e8fafb22d Improve navigation and time formatting for sessions
- Add a `SessionNavBlock` component for navigating between sessions
- Add a `toHumanReadableTime` helper function
- Store the current session in a `session` variable
- Add `previousSession` and `nextSession` variables to store the previous and next session in the list
- Add logic to handle edge cases when the current session is the first or last in the list
- Add a link for the Day label in the Projects layout
2023-02-13 15:51:14 +01:00
Nikita Galaiko
e38a062dfa
is dev_mode in rust part 2023-02-13 12:36:56 +01:00
Nikita Galaiko
57ad560900
store complete logs directory inside session 2023-02-13 10:47:43 +01:00
Nikita Galaiko
fc4ba28317
do not parse reflog types into enums, just expose it directly 2023-02-13 09:55:50 +01:00
Nikita Galaiko
3f2657e0d1
try sturdy mac dev certificate 2023-02-13 09:09:00 +01:00
Nikita Galaiko
9ea6419909
do not use github macos runners for now 2023-02-13 08:55:56 +01:00
Kiril Videlov
fbb7a93564 add some linting config 2023-02-12 21:14:41 +01:00
Nikita Galaiko
2843be38a7
update tray text when app is closed via red button 2023-02-10 15:46:44 +01:00
Nikita Galaiko
bcc93167c0
make app run in background 2023-02-10 15:39:57 +01:00
Kiril Videlov
add94e6559 fix issue where app needs refresh after navigate
https://gitbutler.sentry.io/issues/3927170646/?query=is%3Aunresolved&referrer=issue-stream
2023-02-10 15:26:59 +01:00
Nikita Galaiko
35e2059a2f
use reflog for session activity 2023-02-10 15:10:30 +01:00
Nikita Galaiko
4c5f52ee6d
store empty deltas anyway 2023-02-10 13:23:04 +01:00
Nikita Galaiko
7fcf60a735
skip non-blobs 2023-02-10 13:19:34 +01:00
Kiril Videlov
5dc73f7981 partly unbreak session page 2023-02-10 11:40:14 +01:00
Kiril Videlov
0cc64b2fb6 fix layout issues 2023-02-10 11:15:16 +01:00
Nikita Galaiko
7400dbe9bf
deltas, session apis working 2023-02-10 11:03:57 +01:00
Kiril Videlov
a7974c3b6f things from the airplane 2023-02-09 19:32:54 +01:00
Nikita Galaiko
ab352b0e4e
frontend successfully lists sessions !! 2023-02-09 15:53:12 +01:00
Nikita Galaiko
e75863135f
rm projects.json 2023-02-09 13:55:42 +01:00
Nikita Galaiko
006682dc68
looks like flushing to git works !!! 2023-02-09 13:42:25 +01:00
Kiril Videlov
57d6ff3e06 welcome to the dark side 2023-02-09 13:26:51 +01:00
Nikita Galaiko
bc11efbae8
setup sentry 2023-02-09 12:14:49 +01:00
Nikita Galaiko
3c678bd248
error refactor 2023-02-09 11:05:54 +01:00
Nikita Galaiko
e35580dcdd
refactor & fixes for file watching 2023-02-09 10:52:00 +01:00
Kiril Videlov
bed187a605 remove dummy sessions 2023-02-08 22:17:27 +01:00