-
-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: download clients integration and widget #895
feat: download clients integration and widget #895
Conversation
…labs/homarr into feat/download-clients-integration-and-widget
33b5a85
to
fb8b15f
Compare
packages/integrations/src/download-client/deluge/deluge-integration.ts
Outdated
Show resolved
Hide resolved
packages/integrations/src/download-client/nzbget/nzbget-integration.ts
Outdated
Show resolved
Hide resolved
Forgot to put it as draft. |
0dde6e0
to
3ed7adc
Compare
…//github.com/homarr-labs/homarr into feat/download-clients-integration-and-widget
Here's the code health analysis summary for commits Analysis Summary
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most complex widget so far, yet the code is so readable.
I can bearly formulate words to describe how much this is an improvement from the previous Homarr code.
Thanks that you took over this PR. You did well.
I only have two complaints;
- We should add testing to ensure that we properly call the API methods. E2E testing with the actual download clients running is another topic which we must address after 1.0
- Can you reduce the size of the icons at the bottom of the widet, so it matches the size of the other icons? I feel that the difference is slightly distracting.
misc: Added maintainers usernames to workspace dictionary
add concatenation in function so it doesn't apply to "NaI" and "∞"
3c4e977
to
6f3c6b0
Compare
misc: documenting functions and remove dead code
… type for AtLeastOneOf
ba63f27
to
9ea0dc8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nicely documented & made PR. @Meierschlumpf is there anything missing or can you re-review?
There's still a little ToDo that I would like to clear quick first. It's a really small list though. |
If you want me to help you with the todo, just let me know 👍🏼 |
…//github.com/homarr-labs/homarr into feat/download-clients-integration-and-widget
I would suggest to merge this pull request (not squash) what do you think? |
I converted it back to a draft as there are pending todos, just that we don't merge it accidentally |
Would be beneficial for the extras that would be independent components. But keep in mind there's at least 30 commits and a lot of them are just corrections or merging things. Also, this PR is merging into another PR, so the issue should be raised there. This specific PR should be merged without squash. Main one could be debated |
Back to ready since I finished my ToDo list. anyone that wants to add anything is welcome to do so but we should be done now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm gonna fix those directly. The things from deepsource can be ignored IMO
Okay the radius thing with xl has only a size of 32px
(Screenshot only include test files and linux ISO, therefore safe to use)
Usenet and Torrent downloads in 1 widget.
sabNZBd, NzbGet, Deluge, qBitTorrent, and transmission support.
Columns can be reordered in Edit mode.
Sorting enabled.
Time uses Dayjs with auto translation.
Can pause/resume single items, clients, or all.
Can delete items (With option to delete assossiated files).
Clients list and details.
Include all filtering and processing for ratio from oldmarr torrent widget.
Invalidation of old data (older than 30 seconds) to show an integration is not responding anymore.
Misc (So many miscs):
Fixed validation error with multiText.
Fixed translation application for multiSelect to behave the same as select.
Added background to gitignore (I needed to add a background to visually test opacity, probably will in the future too)
Added setOptions to frontend components so potential updates made from the Dashboard can be saved.
Extracted background and border color to use in widgets.
humanFileSize function based on the si format (powers of 1024, not 1000).
Improved integrationCreatorByKind by @Meierschlumpf.
Added getIntegrationKindsByCategory to get a list of integrations sharing categories.
Added IntegrationKindByCategory type to get the types possible for a category (Great to cast on integration.kind that isn't already properly limited/typed but for which we know the limitation)
Added a common AtLeastOneOf type. Applied to TKind and IntegrationSecretKind[] where it was already being used and Added to the getIntegrationKindsByCategory's output to be more freely used.
Hook to get list of integration depending on permission level of user. (By @Meierschlumpf)