Commit Graph
68 Commits
Author SHA1 Message Date
Sebastian Martinez e0ae5b5501 Add source browsing 2025-07-16 09:41:46 +02:00
Sebastian Martinez a9bfcd47a1 Move Version into radicle-types 2025-07-10 11:31:29 +02:00
Sebastian Martinez f69c90785c Limit embed file size to 10MB 2025-07-03 15:15:28 +02:00
Thomas Scholtes 17586953bb Draft reviews before publishing
Reviews are locally persisted but only published to the network by an
explicit user action.

- [ ] Delete line comments on draft reviews

[squash] Sort imports, separate type imports into own section
2025-07-01 14:31:55 +02:00
Sebastian Martinez 499a0983ea Add rebuild cache functionality to issue and patch listing
In case of an outdated cobs cache we display a banner on top of the
patch or issue listing, to allow users to rebuild the cobs cache of a
repo similar to running `rad patch cache`
After rebuilding we fetch the issues or patches from the start.

Small caveat with patches:
The banner can only be shown after a user fetched all patches from the
backend, so we are sure we tried to fetch all of them.
2025-06-11 18:24:27 +02:00
Sebastian Martinez 1e1810b78a Remove unnecessary filter map 2025-06-11 18:24:27 +02:00
Rūdolfs Ošiņš 299adcaccb Implement repo seeding 2025-06-11 14:32:58 +02:00
Sebastian Martinez 8e683cf7ce Provide a full window error if something goes wrong 2025-06-06 15:22:08 +02:00
Sebastian Martinez e6db48b69d Update heartwood crates 2025-06-05 11:17:48 +02:00
Sebastian Martinez 9c12f3ae7f Add diff syntax highlighting 2025-05-21 08:31:27 +02:00
Rūdolfs Ošiņš 71069ef19e Move inbox to a global popover 2025-05-20 15:46:00 +02:00
Sebastian Martinez ce18d024a0 Add check_radicle_cli command
We can check the Radicle home directory to see if the radicle binaries
are installed in the `RAD_HOME` folder
2025-05-08 11:55:54 +02:00
Rūdolfs Ošiņš 01d4c0c5b7 Fix wrong inbox notification counters
Avoid counting grouped notifications separately and omit notifications
for deleted objects.
2025-05-08 11:17:36 +02:00
Rūdolfs Ošiņš bb38192b7e Implement repo home page
- by default open repos on the home view
- show a rendered README on the repo home page
- show repo metadata: visibility, canonical branch, threshold, delegates
  and allow list with aliases
- make layout responsive on repo home
- add copy button to code blocks in markdown
2025-05-06 10:11:01 +02:00
Sebastian Martinez 74bb631381 Fix inbox pagination cursor and sorting 2025-04-08 17:53:04 +02:00
Rūdolfs OšiņšandFintan Halpenny 0702896ea3 Optimise patch list command
So we don't materialize the whole list multiple times especially when
paginating. Mostly written by Finto, I was just driving.

Co-authored-by: Fintan Halpenny <fintan.halpenny@gmail.com>
2025-04-07 18:35:15 +02:00
Rūdolfs Ošiņš 1a4dba2065 Deduplicate the diff/cob Stats type 2025-04-01 17:16:03 +02:00
Rūdolfs Ošiņš 7c0da906a8 Cache content-addressed API calls on the frontend 2025-04-01 17:16:03 +02:00
Rūdolfs Ošiņš 5c5685d560 Sort projects by name on the home screen 2025-03-27 15:41:36 +01:00
Sebastian Martinez efe3c51d05 Add identity and repo creation flow 2025-03-18 23:01:07 +01:00
Sebastian Martinez c730e82187 Convert cob actions into customized desktop actions
This commit allows us to e.g. convert the Set of DIDs we obtain from
assignee actions on cobs into a Set of Authors with their Aliases.

Also it introduces the `FromRadicleAction` trait which can be
implemented for any type of enum we get from the `radicle` create to
convert into a type which is better suited for us.

Removes also any calling the `alias` command in the `PatchTimeline` or
`IssueTimeline` since we already get the alias from the backend the
first time now.
2025-03-18 13:10:26 -06:00
Sebastian Martinez b1bf3c510d Change some eprintln statements for log::error 2025-03-18 13:06:59 -06:00
Sebastian Martinez 038457ea60 Remove unused logging statements 2025-03-18 13:06:59 -06:00
Rūdolfs Ošiņš 2274a9c79b Refactor patch loading 2025-03-17 21:49:11 -06:00
Sebastian Martinez 7cf21972cd Set replyTo and location fields in Comment to null 2025-03-13 08:02:02 +01:00
Sebastian Martinez e82e333cc5 Refactor the tauri setup hook into individual commands
This allows us for onboarding to e.g. fail if there is no profile around
and guide new users through identity creation.

Also it makes the tauri run function easier to understand
2025-02-20 09:06:35 +01:00
Sebastian Martinez e7f0c4921d Update rust toolchain to 1.84 2025-02-20 09:06:35 +01:00
Rūdolfs Ošiņš 5e6fd19a6d Add discussion section to reviews 2025-02-19 15:25:50 -06:00
Rūdolfs Ošiņš 4add00d682 Add review page 2025-02-18 12:06:03 -06:00
Sebastian Martinez 365674bc58 Provide a sync_status store
The `sync_status` would update every 10 seconds with the latest state of
all repos, to be displayed in the repo where needed.
2025-02-10 11:55:14 -06:00
Sebastian Martinez 450f6d6f0c Remove usage of DraftStore
@fintan:
The API of the DraftStore needs some improvement and it can be easy to
do the wrong thing when trying to publish the changes to the published
cob reference

Based on this PSA we should apply any changes to the patch revisions
directly, instead of using the `DraftStore`
2025-02-06 13:14:23 +01:00
Sebastian Martinez 9c021345dd Delete cobs/patch module 2025-02-06 13:08:31 +01:00
Rūdolfs Ošiņš 014a3e9eee Add revision commit list 2025-02-04 15:49:00 -06:00
Sebastian Martinez f34522b689 Implement a custom list_patches method to read directly from cache 2025-02-03 14:25:39 +01:00
Sebastian Martinez 19fdd17f99 Fix repo listing not displaying all repos
`Show::All` which is the default value should return all values obtained
from `storage.repositories()`.
This commit adds a `Show::Contributor` enum variant to only get repos
that the user has forked, initialized or contributed in some way.
2025-01-27 13:19:42 +01:00
Sebastian Martinez d5632ed534 Add global inbox 2025-01-23 22:28:00 +01:00
Sebastian Martinez dc87d3fa84 Adding Service and Storage traits for the inbox logic
To start making the backend codebase more future proof, I started
introducing the hexagonal architecture concept, of having `Service`
traits that is the public API and inner traits like `Storage`,
`Metrics`, etc. that can be implemented by different adapters like
`Sqlite`.

This is a first development in this direction.
2025-01-23 22:23:44 +01:00
Sebastian Martinez 62bdbc37d9 Fix creation of draft review in tauri command 2025-01-23 15:00:12 -06:00
Sebastian Martinez 84572389a9 Fix function param for creating reviews 2025-01-23 15:00:12 -06:00
Sebastian Martinez 6da4ffe344 Remove optional argument from review comments 2025-01-23 20:03:00 +01:00
Sebastian Martinez 3419b62194 Strongly type patch review verdict
Instead of typing a review verdict as `string | null` we should do
`"accept" | "reject" | null`
2025-01-23 20:02:42 +01:00
Sebastian Martinez 432db1ce5b Make Operation generic, and handle patch operations
So far we only supported issue operations on the `activity_by_id`
command.

With this commit we separate the commands into a `activity_by_issue` and
`activity_by_patch` command that calls a generic `activity_by_id` trait
implementation.

`Operation` now takes as a generic either `cob/issue/Action.ts` or
`cob/patch/Action.ts`.

Also `Operation` now stores the array of all `Action` that happened on
said operation. I'm not entirely sure if this will help us in the
future, but it represents more closely the state of the relation between
an `Operation` and the cob `Actions`.
2025-01-10 10:33:32 -06:00
Sebastian Martinez 2ac0c54a85 Add heartwood stream module
Introducing the `stream` module from the `heartwood` repo from patch
`40a8d72`, for our global inbox
2025-01-09 11:10:07 +01:00
Sebastian Martinez 153331f2e3 Infer file type for embeds for previews 2024-12-19 20:55:30 +01:00
Sebastian Martinez 4647cea062 Fix syntax highlighting for languages with multiple injections 2024-12-19 13:54:25 +01:00
Sebastian Martinez ca4d9d13fd Add embeds to the Textarea 2024-12-13 12:26:51 +01:00
Sebastian Martinez 3b0daefec4 Add alias tauri command
Returns either `null` or `string` for a lookup of an alias.
2024-12-09 16:20:37 +01:00
Sebastian Martinez 4f046343f3 Add syntax highlighting for diffs 2024-12-09 14:53:17 +01:00
Sebastian Martinez ece9ee1eb0 Avoid announcing changes when node is stopped
Also in the edge case that the front-end didn't update and the node just
stopped in between we fallback gracefully instead of returning an error
on the back-end.
2024-12-06 10:06:45 +01:00
Sebastian Martinez 653cf9a48d Sort repos by activity 2024-12-05 13:56:12 +01:00