Commit Graph

4335 Commits

Author SHA1 Message Date
Fernando Fernández
364ac10ed6 refactor: browser Intl API, resolve langs at build
Beforehand, we used https://github.com/ihmpavel/all-iso-language-codes
to get translations of the languages we need. That module generated the locale
names using Node.JS Intl API, as seen here: 5a2cdb56d2/scripts/generate.ts (L66)

The Intl.DisplayNames API is widely supported according to MDN docs: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames
Thus, it made sense to get the info we need at runtime. Also, all the language code translation
is probably going to be miles better and up-to-date to Unicode standards than whatever library we use,
which will always rely on updates. This movement also reduces bundle size by a lot!

Additionally, to reduce the burden the locale mismatch between our locales and date-fns pose,
I added some build-time logic to get into the bundle the date-fns locales that match our own locales **ONLY**.
This way, we avoid the huge import that `import * as datefnslocales from 'date-fns/locale'` posed
and we replace it with `import * as datefnslocales from 'virtual:date-fns/locales'` which is
guaranteed to:
- Only include the locales we have
- Be always up to date with our source code

All of this reduced bundle size from 4,626.04 kB to 2,737.94 kB according to Vite's stats
2023-04-15 21:26:46 +02:00
renovate[bot]
e0751a1bb3 chore(deps): update dependencies to v10 2023-04-14 15:41:02 +02:00
Aiman
3ad3426a01
fix: load attached fonts properly (#1953)
Co-authored-by: Fernando Fernández <ferferga@hotmail.com>
2023-04-14 15:09:21 +02:00
renovate[bot]
4a8e8e05f6
chore(deps): update CI dependencies 2023-04-14 11:35:55 +02:00
Fernando Fernández
16955dd870 chore: remove unnecessary TODO
We're already pinned on ES2022, so we don't need the TODO comment
2023-04-13 07:50:20 +02:00
Fernando Fernández
531449278e fix: unplugin-vue-router type generation for route names
unplugin-vue-router uses a different name generation for its routes, so the names didn't overlap beforehand
2023-04-13 07:50:20 +02:00
Fernando Fernández
8e620a5a28 fix: remaining type errors
Locales are fully typed now. Keep track of https://github.com/intlify/vue-i18n-next/issues/1116 for better TS support for them

- The rest of them are waiting for PRs at Vuetify's side, an SDK upgrade and a further investigation of our typed routes setup.
- Deep type instantiation is also fixed.
2023-04-13 07:50:20 +02:00
Eryk Michalak
6f533b5fca chore(i18n): translate terms (Polish)
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/pl/
2023-04-12 17:39:35 -04:00
renovate[bot]
503c4f7049 chore(deps): update actions/checkout action to v3.5.1 2023-04-12 18:51:14 +02:00
renovate[bot]
aaefb01411 chore(deps): update dependency eslint-plugin-jsdoc to v41 2023-04-11 19:20:17 +02:00
Thibault Nocchi
a4e43b85c6 feat: working video version picker 2023-04-11 09:34:32 +02:00
Adam
0e628ad7a1
refactor: more cleanups, fix app bar and search sizing (#1928) 2023-04-11 09:31:32 +02:00
Fernando Fernández
73fc1c328a fix: login of public users without password 2023-04-11 07:29:49 +02:00
renovate[bot]
0566790fcf chore(deps): update development dependencies 2023-04-10 23:42:20 +02:00
Fernando Fernández
22e7127038 fix: always cache bust index.html
We can always reintroduce Vite PWA once we iron out the
rest of the things and our app is more ready to work offline
(by properly using stores, for example)

The status of workbox support is unclear, once it's clear we can
think about supporting it again: https://github.com/vite-pwa/vite-plugin-pwa/issues/452
2023-04-10 23:28:35 +02:00
Fernando Fernández
83d2af171a fix: Tauri category
This prevented building on MacOS since the categories were incorrect

Possible categories here: 62182383de
2023-04-10 23:28:35 +02:00
Thibault Nocchi
284d770e3e feat: refresh user on page load 2023-04-10 20:02:54 +02:00
Thibault Nocchi
7f180c47b6 fix: properly disconnect user when server is unreachable 2023-04-10 14:29:58 +02:00
renovate[bot]
64907d0ffa
chore(deps): update development dependencies 2023-04-10 11:48:22 +02:00
Thibault Nocchi
7f4e9f767b refactor: no negative condition 2023-04-07 17:41:27 +02:00
Thibault Nocchi
f703de8850 fix: locale with dashes in it used to get a locale name didn't work + linter errors 2023-04-07 17:41:27 +02:00
renovate[bot]
6d64724f0c chore(deps): update dependencies 2023-04-07 15:57:46 +02:00
renovate[bot]
9eb0c6ac50 chore(deps): update dawidd6/action-download-artifact action to v2.26.1 2023-04-07 15:46:10 +02:00
renovate[bot]
a949a2685a chore(deps): update development dependencies 2023-04-07 15:45:37 +02:00
Thibault Nocchi
b6f3fd465d ui: only use episode name as subtitle 2023-04-07 15:41:28 +02:00
Hazil Mohamed
6b3c7ef23a fix: reset stream selectors on version change
Signed-off-by: Hazil Mohamed <mohamedhazil14@yahoo.in>
2023-04-07 15:07:35 +02:00
Hazil Mohamed
8d107ad90d fix: version selector not working
Signed-off-by: Hazil Mohamed <mohamedhazil14@yahoo.in>
2023-04-07 15:07:35 +02:00
gebohh
ba1a357062 chore(i18n): translate terms (Spanish)
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/es/
2023-04-06 20:39:32 -04:00
Winski
d4c2877e1f chore(i18n): translate terms (Finnish)
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/fi/
2023-04-06 20:39:31 -04:00
Thibault
bd45990d73 chore(i18n): translate terms (French)
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/fr/
2023-04-06 20:39:31 -04:00
Oskari Lavinto
f74c310d12 chore(i18n): translate terms (Finnish)
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/fi/
2023-04-06 04:39:31 -04:00
3x!1
cffe7ecf42 chore(i18n): translate terms (Arabic)
Currently translated at 32.9% (136 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/ar/
2023-04-04 09:39:32 -04:00
Lukáš Kucharczyk
5f13d036a9 chore(i18n): translate terms (Czech)
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/cs/
2023-04-04 09:39:31 -04:00
小造xu_zh
f8029ffb3c chore(i18n): translate terms (Chinese (Simplified))
Currently translated at 100.0% (413 of 413 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/zh_Hans/
2023-04-04 09:39:30 -04:00
3x!1
1974d13a2e chore(i18n): translate terms (Arabic)
Currently translated at 20.3% (82 of 403 strings)

Translation: Jellyfin Vue/Jellyfin Vue
Translate-URL: https://translate.jellyfin.org/projects/jellyfin-vue/jellyfin-vue/ar/
2023-04-03 21:52:20 -04:00
renovate[bot]
25484eb166 chore(deps): update dependency @types/dompurify to v3.0.1 2023-04-04 01:37:36 +02:00
renovate[bot]
7d747ece9b chore(deps): update development dependencies to v5.57.1 2023-04-04 01:34:49 +02:00
Fernando Fernández
a1d1990ff9
chore: fix vulnerability alerts
* Enable vulnerability PRs for Renovate
* Update lockfiles
2023-04-03 16:38:07 +02:00
Fernando Fernández
8dce0e2df3
chore: update generated types and tag v0.3.1 2023-04-03 14:59:07 +02:00
renovate[bot]
772dd65737 chore(deps): lock file maintenance 2023-04-03 14:49:17 +02:00
renovate[bot]
01edbb598d chore(deps): update dependencies 2023-04-03 14:44:28 +02:00
renovate[bot]
99911c3394 chore(deps): update dependencies 2023-04-03 14:41:45 +02:00
renovate[bot]
ed026313ce chore(deps): update development dependencies 2023-04-03 14:37:19 +02:00
renovate[bot]
3114d58cb5 chore(deps): update development dependencies 2023-04-03 14:31:27 +02:00
renovate[bot]
574806bfab chore(deps): update ci dependencies 2023-04-03 14:21:08 +02:00
Fernando Fernández
c86a4ad948 chore: tag v0.3.0 2023-04-03 12:52:57 +02:00
Fernando Fernández
6917a2519d chore: pre-merge cleanup
* Update renovate config
* Commit component.d.ts file
* Upgrade @jellyfin/sdk to 0.8.1
2023-04-03 12:52:57 +02:00
Fernando Fernández
1988e95c26 refactor: search page
* Memoize previous search queries
* Use computed for data filters
* Fix old results temporarily appearing when clearing the query
2023-04-03 12:52:57 +02:00
Thibault Nocchi
9f51567512 fix: nextup can have undefined parent id
Next up was called for each library, while the function itself overwrote the whole state. This resulted in nextUp being populated by the latest library fetched.
I reduced it to a single call cause removing the parentId gets us the classic Next Up experience from web.

Other improvements:

- Merge promises together
- Better function names and null checks
2023-04-03 12:52:57 +02:00
Thibault Nocchi
92f7a545aa fix: collection browsing in libraries
- Edge case where array is empty and hasViewTypes shouldn't be true
- Boxsets (collections) can be browsed now
- Better mapping of collection types
2023-04-03 12:52:57 +02:00