Commit Graph

837 Commits

Author SHA1 Message Date
Blackspirits c4f01bf0e9 Translated using Weblate (Portuguese)
Currently translated at 40.3% (304 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:18:12 +00:00
Daniel c3066a17ac Translated using Weblate (Portuguese)
Currently translated at 40.3% (304 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:18:12 +00:00
Daniel 91363a9330 Translated using Weblate (Portuguese)
Currently translated at 39.0% (294 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:14:17 +00:00
Blackspirits 3ac1fca9e2 Translated using Weblate (Portuguese)
Currently translated at 39.0% (294 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:14:17 +00:00
Blackspirits ec31ecd8b7 Translated using Weblate (Portuguese)
Currently translated at 38.1% (287 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:11:28 +00:00
Daniel 788b61f775 Translated using Weblate (Portuguese)
Currently translated at 38.1% (287 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:11:28 +00:00
Blackspirits cfe45495ce Translated using Weblate (Portuguese)
Currently translated at 37.1% (280 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:07:46 +00:00
Daniel bf59966485 Translated using Weblate (Portuguese)
Currently translated at 37.1% (280 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:07:45 +00:00
Blackspirits d76034755a Translated using Weblate (Portuguese)
Currently translated at 36.3% (274 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:04:39 +00:00
Daniel 11644852fe Translated using Weblate (Portuguese)
Currently translated at 36.3% (274 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:04:39 +00:00
Rasko f673d9b1f5 Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (753 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/nb_NO/
2025-04-28 19:00:40 +00:00
Daniel 2cf8fa5c2c Translated using Weblate (Portuguese)
Currently translated at 35.7% (269 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt/
2025-04-28 19:00:40 +00:00
RikyR 3094e380c6 Translated using Weblate (Italian)
Currently translated at 34.1% (257 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/it/
2025-04-27 14:29:14 +00:00
Gabriel Souza 6da61f8b7b Translated using Weblate (Portuguese (Brazil))
Currently translated at 58.3% (439 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-27 04:11:26 +00:00
Gabriel Souza 063ee11e88 Translated using Weblate (Portuguese (Brazil))
Currently translated at 54.3% (409 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-26 03:20:21 +00:00
Mauricio Paez 62a2d0cc5d Translated using Weblate (Spanish)
Currently translated at 66.9% (504 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/es/
2025-04-26 03:20:19 +00:00
Crea cef7bf6bda Translated using Weblate (French)
Currently translated at 62.9% (474 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/fr/
2025-04-25 12:29:50 +00:00
lenoxys e247ff0575 Translated using Weblate (French)
Currently translated at 62.9% (474 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/fr/
2025-04-25 12:29:50 +00:00
Joe Kribs a3dab2e165
[iOS & tvOS] Cleanup Permission Validation (#1499)
* Move permissions to centralized spot

* Move `identifiableTypes` to `BaseItemKind`. Use `showEditMenu`

* Cleanup showMenu options for iOS and tvOS. Metadata allows Subtitle, Lyrics, and Collection edits as well.

* Comment out Lyrics and Subtitles with a TODO for when they are available.

* Update BaseItemKind.swift

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>

* Review Revisions

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-04-24 12:06:18 -04:00
Gabriel Souza 8194057d40 Translated using Weblate (Portuguese (Brazil))
Currently translated at 51.6% (389 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-24 08:17:38 +00:00
myrad2267 273bcc7b79 Translated using Weblate (French)
Currently translated at 62.4% (470 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/fr/
2025-04-24 08:17:37 +00:00
Gabriel Souza 10fb1b9c31 Translated using Weblate (Portuguese (Brazil))
Currently translated at 47.8% (360 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-23 22:55:57 +00:00
Rasko f590fdc7da Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (753 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/nb_NO/
2025-04-23 22:55:57 +00:00
Gabriel Souza 7140f9b96a Translated using Weblate (Portuguese (Brazil))
Currently translated at 45.9% (346 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-23 09:02:01 +00:00
Gabriel Souza 69f879be47 Translated using Weblate (Portuguese (Brazil))
Currently translated at 43.2% (326 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-22 23:22:16 +00:00
Zoltan Meszaros 38fb78128d Translated using Weblate (Hungarian)
Currently translated at 85.5% (644 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/hu/
2025-04-22 23:22:15 +00:00
bartfaik04 2d761f7eeb Translated using Weblate (Hungarian)
Currently translated at 85.5% (644 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/hu/
2025-04-22 23:22:15 +00:00
Robin Hahn 0300221e12 Translated using Weblate (Hungarian)
Currently translated at 85.5% (644 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/hu/
2025-04-22 23:22:15 +00:00
Gabriel Souza da40f17c7d Translated using Weblate (Portuguese (Brazil))
Currently translated at 30.4% (229 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pt_BR/
2025-04-22 01:45:34 +00:00
Rasko a655f05326 Translated using Weblate (Norwegian Bokmål)
Currently translated at 98.9% (745 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/nb_NO/
2025-04-21 22:35:35 +00:00
leoreinmann b16035c241 Translated using Weblate (German)
Currently translated at 95.7% (721 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-21 22:35:33 +00:00
xsiviso 7bce43c699 Translated using Weblate (German)
Currently translated at 95.7% (721 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-21 22:35:33 +00:00
leoreinmann a2bf466780 Translated using Weblate (German)
Currently translated at 84.9% (640 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-21 14:56:32 +00:00
leoreinmann e6fc2cfcb0 Translated using Weblate (German)
Currently translated at 71.8% (541 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-21 13:32:53 +00:00
Gallyam Biktashev 86b36479a3 Translated using Weblate (Russian)
Currently translated at 36.2% (273 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/ru/
2025-04-21 11:02:32 +00:00
Tunu 6a70bda499 Translated using Weblate (German)
Currently translated at 69.7% (525 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-20 20:07:35 +00:00
xsiviso f622a037d7 Translated using Weblate (German)
Currently translated at 69.7% (525 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-20 20:07:35 +00:00
xsiviso d6d6f8ab10 Translated using Weblate (German)
Currently translated at 68.5% (516 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-20 19:31:48 +00:00
xsiviso 70b85edd84 Translated using Weblate (German)
Currently translated at 60.9% (459 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-20 17:56:52 +00:00
xsiviso fb88c2c17f Translated using Weblate (German)
Currently translated at 54.1% (408 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-20 08:52:00 +00:00
Nero 8b58c52a87 Translated using Weblate (Spanish)
Currently translated at 48.0% (362 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/es/
2025-04-19 20:47:07 +00:00
xsiviso 9576470683 Translated using Weblate (German)
Currently translated at 51.7% (390 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-19 12:34:08 +00:00
Kityn 7779e8e5a5 Translated using Weblate (Polish)
Currently translated at 100.0% (753 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-19 06:25:18 +00:00
Kityn a26c9b18a0 Translated using Weblate (Polish)
Currently translated at 94.8% (714 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-19 06:07:55 +00:00
Nero a2cf44d82c Translated using Weblate (Spanish)
Currently translated at 47.8% (360 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/es/
2025-04-19 04:08:05 +00:00
Kityn bbe52fd175 Translated using Weblate (Polish)
Currently translated at 93.3% (703 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-18 20:21:24 +00:00
xsiviso bcfa9dfc48 Translated using Weblate (German)
Currently translated at 48.2% (363 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-18 20:21:23 +00:00
Kityn 4498fdfbf6 Translated using Weblate (Polish)
Currently translated at 89.5% (674 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-18 13:14:48 +00:00
Kityn 40b80124db Translated using Weblate (Polish)
Currently translated at 88.3% (665 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-18 12:55:49 +00:00
Levi d5c27889d1 Translated using Weblate (Swedish)
Currently translated at 53.2% (401 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/sv/
2025-04-18 12:29:08 +00:00
VOLO Digital Agency c2bae3cf56 Translated using Weblate (Swedish)
Currently translated at 53.1% (400 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/sv/
2025-04-18 12:08:51 +00:00
Levi cd9682f323 Translated using Weblate (Swedish)
Currently translated at 53.1% (400 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/sv/
2025-04-18 12:08:51 +00:00
Kityn 6ffbfec341 Translated using Weblate (Polish)
Currently translated at 87.3% (658 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-17 18:01:30 +00:00
Zoltan Meszaros d406537703 Translated using Weblate (Hungarian)
Currently translated at 41.3% (311 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/hu/
2025-04-17 00:22:21 +00:00
jameskimmel 848feaf5ff Translated using Weblate (German)
Currently translated at 46.3% (349 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-17 00:22:20 +00:00
format_ssd 098e56972b Translated using Weblate (German)
Currently translated at 46.3% (349 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-17 00:22:20 +00:00
Kityn 0de82249da Translated using Weblate (Polish)
Currently translated at 80.7% (608 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-16 17:35:45 +00:00
bartfaik04 d7186df66f Translated using Weblate (Hungarian)
Currently translated at 35.1% (265 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/hu/
2025-04-16 03:51:09 +00:00
Zoltan Meszaros 3c6615f5d2 Translated using Weblate (Hungarian)
Currently translated at 35.1% (265 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/hu/
2025-04-16 03:51:09 +00:00
Gabriel S 8c9fa78f45 Translated using Weblate (Romanian)
Currently translated at 16.9% (128 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/ro/
2025-04-15 19:12:43 +00:00
Kityn 99afa860c5 Translated using Weblate (Polish)
Currently translated at 73.5% (554 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-15 19:12:43 +00:00
Gallyam Biktashev bd63487dda Translated using Weblate (Russian)
Currently translated at 35.7% (269 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/ru/
2025-04-15 19:12:41 +00:00
myrad2267 d55f049b3b Translated using Weblate (French)
Currently translated at 62.2% (469 of 753 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/fr/
2025-04-15 19:12:40 +00:00
Joe Kribs 8c4fde87f1
[iOS] Admin Dashboard - QuickConnect Other User (#1488)
* Allow other user authorization.

* Show user being logged in.

* Fix localizations & update screenshot

* Cleanup Locales

* mirror lable changes on tvOS

* cleanup

* fix strings

* adjust sizes

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-04-14 17:19:32 -04:00
Kityn 5c9c062ba2 Translated using Weblate (Polish)
Currently translated at 66.7% (502 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-14 17:46:27 +00:00
Kityn d993db35ca Translated using Weblate (Polish)
Currently translated at 61.4% (462 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-14 13:36:07 +00:00
Lukasvdzwaluw f13c752787 Translated using Weblate (Dutch)
Currently translated at 36.1% (272 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/nl/
2025-04-14 12:32:59 +00:00
Gallyam Biktashev ad0ecd0abc Translated using Weblate (Russian)
Currently translated at 33.9% (255 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/ru/
2025-04-14 12:32:58 +00:00
Maticula 68407019b1 Translated using Weblate (Slovenian)
Currently translated at 36.0% (271 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/sl/
2025-04-14 12:32:58 +00:00
tobylibo 0fecb750ae Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 35.5% (267 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/zh_Hans/
2025-04-14 07:37:36 +00:00
Kityn 269276a9f6 Translated using Weblate (Polish)
Currently translated at 53.4% (402 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/pl/
2025-04-13 20:11:58 +00:00
Altiera Moreau 4262f806b4 Translated using Weblate (Slovak)
Currently translated at 33.6% (253 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/sk/
2025-04-13 20:11:58 +00:00
myrad2267 efc7b9f4b9 Translated using Weblate (French)
Currently translated at 62.3% (469 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/fr/
2025-04-13 20:11:58 +00:00
Crea 7978fc27bd Translated using Weblate (French)
Currently translated at 62.3% (469 of 752 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/fr/
2025-04-13 20:11:57 +00:00
format_ssd 4bca4d3ac5 Translated using Weblate (German)
Currently translated at 44.5% (333 of 748 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/de/
2025-04-13 04:42:51 +00:00
Joe Kribs d4330f130b
[iOS] Admin Dashboard - User Activity (#1485)
* Very Very WIP

* Details page.

TODOs:

- Duplicate ViewModels are initialized.
- Routing Cleanup
- Localizations for fields
- Get Played Item Details (See ActiveSessionDetails)
- Move all details to ActivityDetailsViewModel for Users & Items
- Localizations for enums
- Enum the types if possible

* Details View complete. TODO:

- Filters
- Default with No Filters

* Ready

* Fix localization

* cleanup

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-04-13 00:42:48 -04:00
Adnan Sönmez 715ddca793 Translated using Weblate (Turkish)
Currently translated at 34.0% (255 of 748 strings)

Translation: Swiftfin/Swiftfin
Translate-URL: https://translate.jellyfin.org/projects/swiftfin/swiftfin/tr/
2025-04-13 03:01:10 +00:00
Joe 07e23e6ab6 Use .utf16 instead of .utf8 / ascii 2025-04-11 19:40:37 -06:00
Joe Kribs 0025422634
[iOS & tvOS] Upgrade SDK to 10.10 (#1463)
* Buildable!

* Update file names.

* Default sort to sort name NOT name.

* SessionInfoDto vs SessionInfo

* Targetting

* Fix many invalid `ItemSortBy` existing. Will need to revisit later to see which can still be used!

* ExtraTypes Patch.

* Move from Binding to OnChange. Tested and Working.

* Update README.md

Update README to use 10.10.6. Bumped up from 10.8.13

* Update to Main on https://github.com/jellyfin/jellyfin-sdk-swift.git

* Now using https://github.com/jellyfin/jellyfin-sdk-swift.git again!

* Paths.getUserViews() userId moved to parameters

* Fix ViewModels where -Dto suffixes were removed by https://github.com/jellyfin/Swiftfin/pull/1465 auto-merge.

* SupportedCaseIterable

* tvOS supportedCases fixes for build issue.

* cleanup

* update API to 0.5.1 and correct VideoRangeTypes.

* Remove deviceProfile.responseProfiles = videoPlayer.responseProfiles

* Second to last adjustment:
Resolved: // TODO: 10.10 - Filter to only valid SortBy's for each BaseItemKind.
Last outstanding item: // TODO: 10.10 - What should authenticationProviderID & passwordResetProviderID be?

* Trailers itemID must precede userID

* Force User Policy to exist.

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-04-06 23:42:47 -04:00
Joe Kribs c0b875ed2a
[tvOS] Various Setting Cleanup (#1473)
* Various setting cleanup

* Remove Double headers

* My gradient did nothing... So resetting back to less.

* Reduce unnecessary formatting changes.

* Revisions https://github.com/jellyfin/Swiftfin/pull/1473#pullrequestreview-2745279339

* Subtitles was missing brightness. Subtitle shouldn't mirror title but image.

* Remove TODO.
2025-04-06 18:05:33 -04:00
Joe Kribs 216375905c
[iOS & tvOS] Trailers (#1456)
* ItemViewModel Trailers

* iOS done.

* Sections >>> Divider

* tvOS kind of.

* Button/Menu cleanup

* Huge ActionButton overhaul

* Error Handling, ActionButton/Menu standardization, and ActionButtonLayout cleanup part 1.

* cleanup

* cleanup

* Combine ActionButton logic. Complete ActionButton rework and animation/style rework. Should this be 3 files??

* Dumb sizing error. Get size from WIDTH not HEIGHT! Height is always 100 and Width is larger.

* Pressed buttons are but focused buttons but slight less. Pressed buttons are still bigger than default, unfocused buttons. TIL.

* Cleanup / Structure

* Remove Test.

* New Setting. Version on PlayButton Row. Complete TrailerMenu revamp. Make ActionButtonLayout a single row.

* Spacing & remove test logic

* VERY WIP

* Fix the compact-ness

* Linting.

* Remove Testing logic.

* Pre-Cleanup - WIP

* Finalized. Moved ScrollingText to tvOS Only.

* MediaURL? = nil but it's already nil by default.

* Error on the View not the button. This was NOT showing for the button since it lived on the Menu. This resolves this.

* wip

* Update VersionMenu.swift

* Remove scrollingText from this PR.

* Remove labels & iOS Action Button cleanup / no foregroundStyle on de-selected.

* ActionButtonScaling

* .card all buttons in ActionButton

* Slow and less bounce-i-fy the menu animations. Also, slight padding

* Wait, don't add this padding this isn't needed.

* localize

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-04-05 01:13:20 -04:00
Joe Kribs c113c341bf
[tvOS] Mirror iOS Ratings + Attribute Settings (#1422)
* Copy + Paste + Settings

* Much bigger changes to allow attribute customization.

* wip

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-02-15 15:27:34 -07:00
Daniel Chick 07c895ddba
[tvOS] App Settings & Splashscreen (#1419)
* Bring over iOS app settings

* Re-enable advanced settings menu option

* Conditionally show splash screen

* Disable app appearance setting

* cleanup

* File rename

* Change how version is displayed

* Disable app icon option due to not working

* comment

* Bring over signout interval section

* Enforce sign-out on close

* Revert change

* localizations

* wip

---------

Co-authored-by: chickdan <=>
Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-02-06 20:59:18 -07:00
Joe Kribs 4ca788338d
[tvOS] PagingLibraryView - Mirror iOS "Hot Reload" Functionality (#1408)
* Update missing strings. Mirror iOS setting changes to make sure tvOS PagingLIbraryView updates with changes as well. Lay the groundwork for filtering.

* Revert back to rows over offset

* Reorder a bit.

* Move default layout to no values in closure. For whatever reason, I cannot do this to the non-defaults.

* 95% there

* Move `onChange`s to the `innerContent` to alleviate Type Checker issues

* All Value-less closures are moved with teh exception of viewModel.filterViewModel?.currentFilters

* Prepare for future letter picker location
2025-01-24 16:14:34 -05:00
Joe Kribs b0b604c4ad
[tvOS] Login Flow Cleanup - Second Pass (#1403)
* Background on Server User Signin. Button Sizing. More visible deletion notice. Menu ListView insets.

* wip

* Change Highlight. Move Add User Button. Remove Add User inline option.

* Take 2

* Undo user changes.

* Remove all changes.

* "selectServer" = "Select Server";

* Recommendations

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>

* Update ServerDetailView.swift

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>

* Update ServerDetailView.swift

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>

* build strings

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-01-23 22:25:08 -05:00
Joe Kribs 553441d83e
[iOS] Media Item Menu - Edit Item Images (#1345)
* Good start but some missing items:

- Upload image isn't working
- Only a single image is shown per section. Need to make this the HCollection of all images for the group

* Upload still failing but now update and set are 2 different processes because I think that's better. Spacing on the add screen is still all wrong but we're getting closer

* ~70% Complete

TODO:

- Spacing for remote portrait images is wrong & cramped
- Upload image from file browser never works & produces 400 error
- Show all images for an item.imageType opposed to just the first
- Setting image works but produces a 400 error
- Error alert looks bad

* Merge with Main

* URL Changes

* Updating logic and confirmation screen

* Lots of changes:

Selecting a Remote image is now working without error and works consistently!

Upload a local file is still broken

Item types with multiple images is working as intended now!

Overriding an image on index doesn't seem to work but it doesn't work for Web either so........

UI is way more jank but the hard parts are getting solved!

* Breaking this even more with the hopes of a better tomorrow.

* Getting better?

* Refreshing is working but I might need to make this work mroe effiently...

* 90% There!

* Ability to cancel the update

* Still no luck uploading images?

* Stop reordering on deletion/addition

* 2025 disclaimers

* Uploading finally works!

* Functional but messy.

TODO:
- Figure out better resizing if too big?
- Upload from Photos
- Move upload logic to imageViewModel and make RemtoeImageViewModel PagingLibraryViewModel conformant
- Create a ImageInfoView for Selection & Deletion.

* Now conforms to PagingLIbraryViewModel but everything else is a mess

* Close!

* First no all appears

* Fix double pop/routerdismiss

* Uploading from Photos is (Finally) Ready!

* wip

* Reuse PhotoPicker and Crop code.

* 4/6 of the codefactor changes

* Pass around the URL NOT the UIImage

* Clean up ItemImageDetails types.

* Make sure the ImageView mirrors the real shape of the image. Posters should be uniform but this is the selection for the image so the dimensions are important to demonstrate.

* Rating Type label.

* Delete confirmation dialog.

* Remove double sizing. Remove Unused ViewModel. Change PhotoPicker to a checkmark instead a 1. Since there is only ever one picture selected, no need to count the images.

* Get the image URL as needed. No more Truples.  Localize ImageTypes.

* Remove attempt at ImageInfo Poster Comformance.

* Even more cleanup

* Delete vs Save flip

* Hide delete button

* Even more cleanup

* Fix tvOS build issues.

* Reduce delay & remove unused comment. Should finally be ready again.

* wip

* Update ItemImagesView.swift

* Event Only on upload failures.

* Remove unnecessary ViewModel's from tvOS.

* Add dismiss action to RemoteSearchResultView. While I am doing this here, fix it there.

* Move From Coordinator -> .Sheet. This fixes the popping issue / delay requirement!

* wip

* wip

* wip

* wip

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-01-20 16:17:35 -05:00
Joe Kribs a13f604be0
[iOS] Admin Dashboard - User Access Tags (#1377)
* Edit View. Still need to make an Add View

* Finished with EditPage. Need labels tho

* Deletion deletes TOO many records. Also, need to search existing tags

* Fin

* Fix merge issues

* Check for exisitng Access Tags before allowing saving

* 2025 Disclaimer / Build Fixes

* update

* Update EditServerUserAccessTagsView.swift

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2025-01-02 23:47:20 -07:00
Joe Kribs 486995b0cf
[iOS] Media Item Menu - Identify Media Item (#1369)
* WIP

* All item types.

* V2: Functionally better. UI still weird

* Rework!

* Organization, new LoadingIcon, remove unnecessary components, and standardize: CancellableLoadingButton

* Organization & Static Method Re-Use.

* wip

* fix tvOS

* wip

* localize

* Update RemoteSearchResultRow.swift

* Update Localizable.strings

* Update RemoteSearchResultRow.swift

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-31 14:16:34 -07:00
Joe Kribs 23beb088da
[iOS] Admin Dashboard - User Profiles (#1328)
* Make user profile more generic. Still need to make it work for the reset image / other stuff like delete & username.

* Username Changing and PFP deletion.

* Functional, refreshing, and good to go!

* Clean up localizations

* Migrate [UserDto] -> IdentifiedArrayOf<UserDto>

* Solve "Username should probably be at the top of this section."

* allow notification filter

* WIP:

Created `UserProfileHeroImage` but I haven't used it anywhere.

* Centralize UserProfileHeroImages

* Rename UserProfileImages

* Fix Merge Issue?

* Move to UserProfileImage

* Merge with Main

* Fix Merge?

* Clear the cache on update.

* Delete duplicate `UserProfileImage`

* wip

* wip

* Update ImagePipeline.swift

* fix tvOS build issue and update comment to be more accurate

* clean up

* fix string

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-28 22:35:10 -07:00
Joe Kribs af602d3d98
[Meta] Automatic String Organization (#1372)
* Automate String Organization.

* Comment the script so it's easier to maintain? Or messier?

* Linting post comments

* Rename ShellScript -> Alphabetize Strings for tvOS

* use swift regex, add error messages, clean up separators

* Only search for ./Translations/en.lproj/Localizable.strings

* Purge Unused Strings Script

* Organize Translation Scripts into a Folder. Update references at the project level.

* clean up

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-21 00:01:11 -07:00
Joe Kribs a6bd093960
[iOS & tvOS] Unused Localization Cleanup (#1362) 2024-12-20 13:05:57 -07:00
Joe Kribs d001a96d6c
[iOS] Admin Dashboard - User Access Schedules (#1358)
* Initial layout. No Add functionality yet.

* Cleanup ServerTasks. Get Access Schedules Fixed

* duplicate schedule warning, cleanup

* localize

* cleanup

* don't move to Title Case

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-12 13:24:34 -07:00
Joe Kribs ba5c037ece
[iOS] Admin Dashboard - Parental Ratings (#1353)
* Labels and Max Parental Rating

* Parental Ratings

* UnratedItem.displayTitle

* Linting Fixes

* Localizations, LearnMore, & cleaner grouping

* Strings.swift

* Review changes + Age Groups change

* cleanup, use SeparatorVStack in LearnMoreButton

* fix colors

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-11 13:33:44 -07:00
Joe Kribs 8f05169097
[iOS & tvOS] Error Cleanup (#1357)
* Error Cleanup

* Localize everything!

* cleanup

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-10 23:23:05 -07:00
Joe Kribs 174487a220
[iOS] Admin Dashboard - User Device & TV Access (#1342) 2024-12-09 16:33:10 -07:00
Joe Kribs a3d84a958f
[iOS] Media Item Menu - Edit Arrays (People, Genres, Studios, & Tags) (#1336)
* Cleanup / Genre & Tag Management

* Move searching to a backgroundState. Fix the font Color when bulk editing tags / genres should be secondary when editing & not selected

* Cleanup

* Now that cancelling is handled better this should prevent the issue where the suggestions fails to update on a letter entry

* Change from using an event for searchResults to using a published searchResults var

* Moved all logic to a local list where all genres/tags are populated on refresh then filterd locally instead of calling the server for changes.

* Inheritance

* Split metadata from components then alphabetize. Also, fix but where you can't add a people

* People & Permissions

* Functional but dirty. TODO: Cleanup + Trie? Trei?

* nil coalescing operator is only evaluated if the lhs is nil, coalescing operator with nil as rhs is redundant

* TODO: Search improvements & Delay search on name change

* Cleanup & reordering

* Debouncing

* Trie implementation

* Permissions Cleanup Squeezing in: https://github.com/jellyfin/jellyfin-web/issues/6361

* enhance Trie

* cleanup

* cleanup

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-06 15:22:11 -07:00
Joe Kribs 2ac9283dfa
[iOS] Admin Dashboard - Media Access / Deletion Settings (#1333)
* ServerUserAdminViewModel cleanup & testing. ServerUserAccessView.

* Change the enableAllLibraries to use the binding extensions

* Use coalesce for enableAllFolders & enableContentDeletion

* use contains binding

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-12-02 22:54:33 -07:00
Joe Kribs da40f6a3b5
[iOS] Media Item Menu | Edit Metadata (#1323)
* Playback Quality - Learn More

* TODO: Fix leading not working on second line.

* Remove layoutDirection.

* Implement for tvOS. Slightly different spacing.

* VStack

* WIP - tvOS Implementaiton. SUBJECT TO CHANGE / ELIMINATION.

* Background Icon & formatting

* wip

* Review Changes. Remove unused Strings, clean up comments.

* Remove duplicate items used for testing

* Remove tvOS scrollIfLargerThanContainer for now.

* Edit Text-based Metadata

* ViewModel Cleanup

* use binding extensions

* Huge overhaul:

- Fix the notification when metadata was updated to work with 100% consistency
- Flip the locking to be true -> lock like server
- Redo the whole itemEditorViewModel to be more in-line with other viewModels | also fixes iPad weirdness
- Use itemViewModel for the edit view so I can just reuse those existing notifications instead of recreating the wheel
- More human dates for people - Date of death instead of "End date" (yikes)

* String fixes & overview size

* Fix build issues & String cleanup

* fix overview sizing, cleanup

* itemMetadataWasEdited -> temMetadataDidChange

* Creation of the NavigationBarMenuButtonModifier for an "ellipsis.circle" menu object in the toolbar. Makes it easier to ensure that this format looks the same throughout.

* Custom vs Official Rating + Menu Button Label change

* Menu button spacing and groundwork for other menu items (canDownload) since we already have the bool available. Currently disabled.

* Linting

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-11-30 23:56:49 -07:00
Joe Kribs b9ac50c164
[iOS] Admin Dashboard - User Permissions (#1313)
* WIP

* WIP

* Localization and better planning. Remove the Username as this will end up in another section. Updated planning here: https://github.com/jellyfin/Swiftfin/discussions/1283 | 5 more views required!

* Initializing an optional variable with nil is redundant line

* Remove Live TV since that will go in another section

* Cleanup Coordinator / Merge with Main

* Remove all 'Allows' from strings

* Fix Merge Issues

* Use CaseIterablePicker, Binding.map

* BackgroundState == updating, change all of the buttons to visible when custom by process of elimination opposed to the default custom value. Make all of the input fields use temp values to make it less jarring.

* Update SessionsSection.swift

* Learn more!

* Validate > 0, don't allow inputs to be less than 1 and reset tempValues when the enum is updated.

* use new binding extensions

* String fixes

* Don't test against adminDefault for users or userDefault for admins.

* Linting indentation

* Default vs UserDefault + no more reason to have temporary variables.

* cleanup

* format

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-11-27 11:22:37 -07:00
Joe Kribs 994e99d141
[iOS] Playback Quality - Learn More (#1316)
* Playback Quality - Learn More

* TODO: Fix leading not working on second line.

* Remove layoutDirection.

* Implement for tvOS. Slightly different spacing.

* VStack

* WIP - tvOS Implementaiton. SUBJECT TO CHANGE / ELIMINATION.

* Background Icon & formatting

* wip

* Review Changes. Remove unused Strings, clean up comments.

* Remove duplicate items used for testing

* Remove tvOS scrollIfLargerThanContainer for now.

---------

Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com>
2024-11-21 13:47:11 -07:00