Commit Graph

39 Commits

Author SHA1 Message Date
Gauthier
7ec5123cd0 feat(overriderules): apply override rules to advanced requests
This PR apply the override rules to the Advanced Request Modal
2025-11-21 22:15:17 +01:00
Gauthier
4e48fdf2cb fix: rewrite avatarproxy and CachedImage (#1016)
* fix: rewrite avatarproxy and CachedImage

Avatar proxy was allowing every request to be proxied, no matter the original ressource's origin or
filetype. This PR fixes it be allowing only relevant resources to be cached, i.e. Jellyfin/Emby
images and TMDB images.

fix #1012, #1013

* fix: resolve CodeQL error

* fix: resolve CodeQL error

* fix: resolve review comments

* fix: resolve review comment

* fix: resolve CodeQL error

* fix: update imageproxy path
2024-10-17 21:24:15 +08:00
Joaquin Olivero
edfd80444c refactor: Proxy and cache avatar images (#907)
* refactor: proxy and cache user avatar images

* fix: extract keys

* fix: set avatar image URL

* fix: show the correct avatar in the list of available users in advanced request

* fix(s): set correct src URL for cached image

* fix: remove unexpired unused image when a user changes their avatar

* fix: requested changes

* refactor: use 'mime' package to detmerine file extension

* style: grammar

* refactor: checks if the default avatar is cached to avoid creating duplicates for different users

* fix: fix vulnerability

* fix: fix incomplete URL substring sanitization

* refactor: only cache avatar with http url protocol

* fix: remove log and correctly set the if statement for the cached image component

* fix: avatar images not showing on issues page

* style: formatting

---------

Co-authored-by: JoaquinOlivero <joaquin.olivero@hotmail.com>
2024-09-19 10:38:14 +08:00
Gauthier
989af67c0a refactor: update Next.js, React.js and Node.js (#815)
* refactor: update Next.js and React.js

* refactor: update Next.js images

* refactor: update ESLint rules and fix warnings/errors

* fix: remove old intl polyfill

* fix: add proper size to next/image components

* fix: adjust full-size for next/image components

* fix: temporary allow all domains for image optimization

* build: fixes an issue where dev env could lead to javascript heap out of memory

* fix: resolve webpack cache issue with country-flag-icons

* refactor: switch compiler from Babel to SWC

* fix: resize logo in sidebar

* fix: break word on long path to avoid text overflow

* chore: added sharp for production image optimisation

* fix: change extract script for i18n to a custom script

* fix: resolve GitHub CodeQL alert

* chore: temporarily remove builds for ARMv7

* fix: resize avatar images

* refactor: update Node.js to v20

* fix: resolve various UI issues

* build: migrate yarn to pnpm and restrict engine to node@^20.0.0

* ci: specify the pnpm version to use in workflow actions

* ci: fix typo in pnpm action-setup for cypress workflow

* test(cypress): use pnpm instead of yarn

* style: ran prettier on pnpm-lock

* ci(cypress): setup nodejs v20 in cypress workflow

* ci: pnpm cache to reduce install time

* ci: use sh shell to get pnpm store directory

* build(dockerfile): migrate to pnpm from yarn in docker builds

* build(dockerfile): copy the proper pnpm lockfile

* build: install pnpm for all platforms

* build(dockerfile): remove unnecessary `&&` on apk installation steps

* build: migrate pnpm 8 to 9

* build(dockerfile): add node-gyp back in

* build(dockerfile): install node-gyp through npm

* build(dockerfile): ignore scripts to not run husky install when devdependencies are pruned

* build: migrate to pnpm from yarn

* chore: remove a section that is no longer relevant

---------

Co-authored-by: fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
2024-06-23 23:43:54 +02:00
Danshil Kokil Mungur
eb5502a16f fix(ui): prevent title cards from flickering when quickly hovering across them (#3349)
* fix(ui): remove opacity classes from transition enter and leave props

The flickering was caused by the opacity classes in the `leave` prop to take effect as the
transition ends; when the `leaveTo` prop classes are no longer applied, but the `leave` prop classes
are still applied.

* fix(ui): resolve transition issues for all components

1. Remove opacity classes from `enter` and `leave` props
2. Fix some class name typos
3. Remove transform classes since those are automatically applied as from TailwindCSS v3.0
4. Narrow down `transition` classes to only the properties being transitioned in Transition components
2023-02-24 00:27:26 +09:00
renovate[bot]
dd48d59b20 fix(deps): update dependency @heroicons/react to v2 (#2970)
* fix(deps): update dependency @heroicons/react to v2

* fix: update imports and fix icon name changes for heroicons

* fix: also update MiniStatusBadge to use new check icon

* fix: update last place with old import

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: sct <ryan@sct.dev>
2023-01-04 01:06:02 +00:00
TheCatLady
dbdecb1e0a fix(frontend): only allow 'request as' users w/ request perms (#2991) 2022-08-29 10:33:17 +00:00
Ryan Cohen
889caaa733 refactor: modal redesign and fix for transitions (#2987) 2022-08-29 14:56:04 +09:00
Ryan Cohen
c6a133d4e5 refactor: absolute imports with path alias (#2960) [skip ci] 2022-08-22 11:02:46 +09:00
Ryan Cohen
16545eec22 feat: tooltip foundation (#2950)
* feat: add foundation for tooltips

* fix: add lang

* refactor: remove React import where no longer necessary
2022-08-19 19:35:50 +09:00
Ryan Cohen
e5d8c93ab8 chore(deps): update react to 18 (#2943) 2022-08-18 17:05:58 +09:00
Ryan Cohen
f5864b49de refactor: update a few dev deps and convert to using type imports where possible (#2886)
* build: bump deps and add some new eslint rules

* refactor: run eslint --fix on code to convert to type imports where possible
2022-08-03 12:57:51 +09:00
Samuel Bartík
db05172d8b fix(ui): rectangular avatars getting stretched (#2782) 2022-05-25 20:42:17 +04:00
Ryan Cohen
822ae9eec7 style: add new tailwind prettier plugin (#2465) 2022-01-25 21:09:41 +09:00
Danshil Kokil Mungur
5b2a8f682b build(deps): bump dependencies (#2454)
* build(deps): bump react-select from 4.3.1 to 5.2.2

* build(deps): bump axios from 0.21.4 to 0.25.0

* build(deps-dev): bump lint-staged from 12.2.1 to 12.2.2

Bumps [lint-staged](https://github.com/okonet/lint-staged) from 12.2.1 to 12.2.2.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Commits](https://github.com/okonet/lint-staged/compare/v12.2.1...v12.2.2)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps-dev): bump typescript from 4.5.4 to 4.5.5

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.5.4 to 4.5.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/commits)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps-dev): bump eslint-plugin-formatjs from 2.20.3 to 2.20.4

Bumps [eslint-plugin-formatjs](https://github.com/formatjs/formatjs) from 2.20.3 to 2.20.4.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/eslint-plugin-formatjs@2.20.3...eslint-plugin-formatjs@2.20.4)

---
updated-dependencies:
- dependency-name: eslint-plugin-formatjs
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps-dev): bump @commitlint/cli from 16.0.3 to 16.1.0

Bumps [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) from 16.0.3 to 16.1.0.
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v16.1.0/@commitlint/cli)

---
updated-dependencies:
- dependency-name: "@commitlint/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps): bump @tanem/react-nprogress from 4.0.3 to 4.0.4

Bumps [@tanem/react-nprogress](https://github.com/tanem/react-nprogress) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/tanem/react-nprogress/releases)
- [Changelog](https://github.com/tanem/react-nprogress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tanem/react-nprogress/compare/v4.0.3...v4.0.4)

---
updated-dependencies:
- dependency-name: "@tanem/react-nprogress"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: cleanup comments

* build(deps-dev): bump lint-staged from 12.2.1 to 12.3.1

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
2022-01-25 02:10:37 +00:00
TheCatLady
af40212a73 feat: add quotas, advanced options, and toggles to collection request modal (#1742)
* feat: add quotas, advanced options, and toggles to collection request modal

* fix: use correct requiredquota strings

* refactor: clean up collection part request status logic

* revert: undo changes to effect dependencies

* fix(lang): tweak TV request modal request button strings

* fix: don't try to fetch other users' quotas without MANAGE_USERS perm
2021-12-25 01:10:33 +00:00
TheCatLady
91bfff71b7 fix(requests): do not fail request edits if acting user lacks Manage Users permission (#2338)
* fix(api): fix requestedBy logic in request edits

* fix(frontend): do not display empty advanced request options box

* fix(frontend): set max height on modal backdrop
2021-12-10 19:14:14 +09:00
TheCatLady
50ce198471 fix: apply request overrides iff override & selected servers match (#2164) 2021-10-08 13:19:47 +00:00
TheCatLady
bb09f8eaf7 fix(ui): sort 'Request As' user dropdown by display name (#2099)
Co-authored-by: Ryan Cohen <ryan@sct.dev>
2021-09-19 09:18:17 +00:00
TheCatLady
310cdb36df fix(plex): do not fail to import Plex users when Plex Home has managed users (#1699)
* fix(plex): do not fail to import Plex users when Plex Home has managed users

* fix: default display name to email when user has no username

also, do not set username or plexUsername when it is the same as the user's email address

* fix(ui): user display name placeholder should reflect fallback logic if username is not set

* fix(ui): hide email addresses of other users if logged-in user does not have Manage Users permission

* fix: always set Plex username even if same as user's email

* fix: remove unnecessary permission check

* fix: transform email addresses to lowercase
2021-05-31 08:38:52 +09:00
sct
aa86809dc9 style: bump prettier and format app 2021-05-13 23:48:08 +09:00
TheCatLady
6b26188d88 fix(ui): hide advanced request options when there is only one choice (#1591)
* refactor: remove unnecessary elements/indentation

* fix(ui): hide advanced request options when there is only one choice
2021-05-07 02:33:11 +00:00
TheCatLady
802e40a5df fix(ui): explicitly specify width/height of Listbox dropdown icon (#1514) 2021-04-28 08:15:30 +09:00
TheCatLady
3e5e9c0ad1 refactor(css): add styles targeting SVG button/modal icons (#1464)
* refactor(css): add global classes for common icon types

* refactor(css): target child SVGs instead of creating new icon classes

* fix: fix ButtonWithDropdown style class spacing
2021-04-26 10:09:58 +00:00
TheCatLady
8fc71bea08 refactor(icons): install and use @heroicons/react (#1438) 2021-04-17 18:07:23 +09:00
TheCatLady
b4450a308c fix: various fixes for new tags feature (#1369)
* fix(backend): fix movie override tags check

* fix(lang): fix 'no tags' and 'anime tags' strings

* fix(logging): correct capitalization of Radarr/Sonarr

* fix(ui): consistently disable tag select / display loading placeholder
2021-04-06 07:56:21 +09:00
sct
a306ebc2d1 feat: radarr/sonarr tag support (#1366) 2021-04-05 21:16:55 +09:00
TheCatLady
e393b53b29 refactor(lang): use global strings where appropriate and remove unused strings (#1265) 2021-03-24 21:45:07 +09:00
TheCatLady
28a6a70e1e fix(ui): filter out server options that do not match request type (non-4K or 4K) (#1183) 2021-03-16 11:10:14 +09:00
TheCatLady
2f2e00237d feat: add tagline, episode runtime, genres list to media details & clean/refactor CSS into globals (#1160) 2021-03-15 09:16:39 +09:00
TheCatLady
b4bac6a915 fix(frontend): Update AdvancedRequester to reflect new /user API response (#970) 2021-02-19 07:48:06 +00:00
Jakob Ankarhem
53f6f59798 feat(requests): add language profile support (#860) 2021-02-08 00:33:18 +09:00
sct
033ba9d41b feat: new permission to allow users to see other users requests
closes #840
2021-02-04 12:40:00 +00:00
sct
06e941171a fix(ui): prevent names from getting squished in AdvancedRequester user selector 2021-02-04 06:51:24 +00:00
sct
b116281196 fix(ui): show request as option even if there are no radarr/sonarr servers 2021-02-03 23:31:22 +00:00
sct
59150f955f feat: request as another user 2021-02-04 01:38:32 +09:00
TheCatLady
e34fbf72fd fix(ui): uniform-size checkboxes, vertically-aligned form labels, and fixes for other UI imperfections/inconsistencies (#737) 2021-02-02 16:20:05 +09:00
sct
996bd9f14e feat(cache): add cache table and flush cache option to settings
also increases tmdb cache times to about 6 hours (12 hours for detail requests)
2021-01-31 13:11:12 +00:00
sct
bdb33722e6 feat(requests): Request Overrides & Request Editing (#653) 2021-01-17 22:52:50 +09:00