modernized APIClient, removed Notification type collision
enhancement: APIClient now follows the recent RFC3986 (this wasn't the case previously)
enhancement: improved APIClient DX by adding a queryString parameter (avoiding URLSearchParameters)
fix: changed Notification type to ServiceNotification (collision with built-in browser API https://developer.mozilla.org/en-US/docs/Web/API/Notification -- so TS checks wouldn't function as necessary)
* add react suspense, fix broken stuff, clean up code, improve DX
enhancement: added react suspense + spinner to show loading (still can be added in certain places)
chore: cleaned up Header/NavBar code
chore: cleaned up DeleteModal code
chore: cleaned up other relevant code
enhancement: changed remove button style to be much more pleasant (see e.g. filter tabs)
fix: made active tab on filters page to be blue (as it should've been) when active
fix: fixed ghost delimiter which was only visible when DeleteModal was active in FormButtonGroup
chore: removed most of linter warnings/errors
fix: fixed incorrect/double modal transition in FilterExternalItem
fix: fixed incorrect z-height on Options popover in Settings/IRC (would've been visible when Add new was clicked)
enhancement: improved robustness of all Context classes to support seamless new-feature expansion (#866)
enhancement: improved expand logic (see #994 comments)
* reverted irc expand view to previous design
* forgot to propagate previous z-height fix
* jinxed it
* add license header to new files
---------
Co-authored-by: martylukyy <35452459+martylukyy@users.noreply.github.com>
Co-authored-by: Kyle Sanderson <kyle.leet@gmail.com>
* delete manifest (vite-plugin-pwa generates it)
* fix upper case letter on screen components
* fix imports of screens components missing upper case
* remove default export from Base.tsx
* move RegexPlayground to settings import
* replace some relative path imports
* remove React and ununsed imports
* small alignments on vite.config.ts
* move Dashboard and Releases to screens
* move filters/index.tsx to filters/index.ts
* remove default export from APIKeyAddForm
* remove default export from FilterAddForm
* organize imports and exports for the router
* add .vscode workspace to gitignore
* some touchs on .gitignore file
* fix some eslint rules
* feat(notification): send Telegram messages to a specific topic of a group
* Convert settings.Topic to integer once and reuse it as part of the
telegramSender struct.
* feat(notifications): add migrations for topic
* fix(notifications): find null string
* fix(notifications): form initial values
---------
Co-authored-by: ze0s <ze0s@riseup.net>
* feat: wrap rtorrent client with custom transport
* refactor: move to autobrr/go-rtorrent
* feat: wrap rtorrent client with custom transport
* refactor: move to autobrr/go-rtorrent
* feat(web): update forms
* feat(notifications): add pushover
* add db migration
* fix lint error
* some small corrections
* fixed README
* added missing columns to postgres_migrate.go
* use token for user_key
* refactor(notifications): change priority to int
* fix: only test selected events
---------
Co-authored-by: soup <soup@r4tio.dev>
Co-authored-by: ze0s <ze0s@riseup.net>
* refactor: move to tanstack/react-query and fix cache
* refactor(releases): move to tanstack/react-query
* refactor(logs): move to tanstack/react-query
* refactor(base): move to tanstack/react-query
* refactor(base): move to tanstack/react-query
* refactor(dashboard): move to tanstack/react-query
* refactor(auth): move to tanstack/react-query
* refactor(filters): move to tanstack/react-query
* refactor(settings): move to tanstack/react-query
* chore(pkg): add tanstack/react-query
* refactor(filters): move to tanstack/react-query
* refactor: move to tanstack/react-query
* refactor: invalidate queries
* chore(pkg): remove old react-query
* chore: change imports to root prefixes
* build: remove needs web from test
* set enableReinitialize to true to fix formik caching issues
* fix all property for apiKeys const
* fix toast when enabling/disabling feed
---------
Co-authored-by: martylukyy <35452459+martylukyy@users.noreply.github.com>
* refactor(indexers): test api clients
* feat(indexers): test api connection
* fix(indexers): api client tests
* refactor: indexer api clients
* feat: add Toasts for indexer api tests
* fix: failing red tests
* feat(releases): support magnet links
* feat(feeds): support magnet links
* feat(actions): log messages
* fix: component warning
* fix: check hasprefix instead of hassuffix for magnet
* feat(release): resolve magnet uri from link
* fix(actions): deluge use magnet uri
* fix(macros): add `MagnetURI` var
* fix(actions): run magnet resolving before macros
* feat(feeds): set download type on creation
* Fixed button border in settings/download-clients
Button border for "Add new" is now uniform with other "Add new"-buttons
* enhancement(docs) add helper tooltips
- Add helper tooltips for inputs and link them to docs #161
* fix build error
* tooltips: changed positition
* hide tooltip below 640 width
* made tooltips better
now attaching to TextField names
* Added icon variation for MultiSelect and CheckboxField
* cleaned up old code
* refactor
Co-authored-by: ze0s <zze0s@users.noreply.github.com>
* added tooltips for DownloadClientForms
* added tooltips for indexerforms
* div for passwordfieldwide
* tooltips for details.tsx
* added tooltips to actions.tsx
* added tooltips to indexerforms.tsx
* replaced info icon with a more rudimentary one
* linting, removed duplicate tailwind display properties
* remove margin for flex centering
* fixed tooltip alignment on all fields
* add tooltip to PwFieldWide in indexer edit window
* refactor: simplify tooltips
* refactor: scope tooltip css
* refactor: tooltip default clickable
---------
Co-authored-by: martylukyy <35452459+martylukyy@users.noreply.github.com>
Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
* Add support for the 'Test' button to work
* Make Porla show up in filter actions select
* Add an empty Porla action
* Make Porla action find download client
* Make implementation actually add torrent to Porla
* Fix qBittorrent import
* Finish up Porla action
* Check length on commitish before slicing
* Move Porla to the other DL clients
* Add Porla to type name map
* Move Porla to beneath the other download clients
* added red background to "Enabled" switch button when disabled for IRC update form
created const SwitchGroupWideRed in web/src/components/inputs/input_wide.tsx
added const SwitchGroupWideRed in web/src/components/inputs/index.ts
changed SwitchGroupWide to SwitchGroupWideRed in IrcNetworkUpdateForm in web/src/forms/settings/IrcForms.tsx
* added red background to SwitchGroupWideRed for default/white mode too
* made white and dark mode red one shade lighter (red-600 -> red-500)
* feat(irc): support SASL and NickServ auth
* feat(irc): add missing fields
* feat(irc): support SASL and NickServ auth
* feat(irc): add missing fields
* feat(irc): add validation
* feat(indexers): unify and set required values
* feat(irc): add postgres migrations
* feat(irc): use nick as handlerkey
* feat(irc): use account for nickserv
* fix(irc): pg db migration
* - fix: changed all {text,bg}-{teal,indigo}-* color properties to {text,bg}-{blue}-* so there is only one dominant primary color in the UI -- blue
- enhancement: added `cursor: pointer` to the PageButton component (used in pagination)
- enhancement: modified TitleCell to use the new Tooltip component and modified the width selectors to a more sane default value, now instead of scrolling one just has to tap the cell to see it's untruncated value
- enhancement: modified the Tooltip component to use react-popper-tooltip (which in turn uses popper.js) which is a much better alternative, since it uses auto-positioning in case there's not enough space and some things aren't as broken as in the previous version (e.g. there was a problem with forcing the previous tooltip to use a specific width)
- enhancement: added a useMedia hook selector from the react-use repository, which might come in handy in the future for better/easier decoupling of Desktop and Mobile UI/UX patterns via JS (versus CSS-only)
- enhancement: made the mobile navbar more visible and clear. also fixed previous path === "/" bug which was fixed on desktop.
- fix: fixed table headers/footers so they're rounded
- enhancement: made pagination components more compact (buttons and show N result selector)
* changed {ring, border}-indigo-* to ring-blue-*
* build: add yarn.lock
* fix: formatting warnings
* fix: formatting warnings
* fix: more formatting warnings
* fix: more formatting
* feat(irc): add irc status examples
* feat(irc): add dropdown menu to list
* feat(irc): update heroicons and add expand button
* feat(irc): update heroicons and add expand button
* enhancement: improved alerts component contrast
enhancement: simplified and improved radio switch group look
fix: fixed inconsistent spacing in input components (there's still some work left to be done)
fix: made slideover panel display on full width on mobile devices
enhancement: made forms more accessible to mobile users, adapter changes in accordance with the previous input components fix
fix: fixed misspelling in NotificationForms filename
chore: cleaned up code
fix: made filter table top edges less round and improved look
fix: fixed a bug where when a modal/slideover component was opened, a 1px white bar would be shown in one of the modal parent elements (for the fix see L89 in screens/settings/DwonloadClient.tsx)
enhancement: improved responsiveness for irc network list
* Fixed 2 small comma warnings from ESLint
Co-authored-by: anonymous <anonymous>
- fix(ErrorPage): add padding to the page for mobile devices
- chore(react-query): wrap APIClient calls in anonymous functions to avoid passing react-query context variables by accident
- fix incorrect ordering of ErrorBoundary and QueryClientProvider (ErrorBoundary is now the parent)