Commit Graph

1356 Commits

Author SHA1 Message Date
seanmcbroom
d658969c8c feat: implement useFont compostable 2024-09-12 03:32:14 +02:00
Sean McBroom
3a43fa9c48 refactor: fix sonarcloud issues 2024-09-12 03:32:14 +02:00
Sean McBroom
3fb8c197fe refactor(playback-manager): reduce shared code 2024-09-12 03:32:14 +02:00
Sean McBroom
9435f46dfd refactor(player-element): cleanup & standardize applying subtitles 2024-09-12 03:32:14 +02:00
Sean McBroom
c5058a823a fix: handle cases where ssa sub dialogue include newline character 2024-09-12 03:32:14 +02:00
Fernando Fernández
5c5526aaab style: automatic eslint fix 2024-09-12 03:32:14 +02:00
Sean McBroom
99a250e597 feat(font-settings): query font from document css 2024-09-12 03:32:14 +02:00
Sean McBroom
ac424696e8 feat(FontSelector): refactor font selector logic and move to component 2024-09-12 03:32:14 +02:00
Sean McBroom
84dcbe2260 refactor: link fontsize & position sliders directly to client settings 2024-09-12 03:32:14 +02:00
Sean McBroom
d7db912380 refactor: add logic for basic sass subtitles 2024-09-12 03:32:14 +02:00
Sean McBroom
458fde7de2 refactor: check if useFullscreen is supported to apply custom subtitle track 2024-09-12 03:32:14 +02:00
Sean McBroom
03e3ac5fb7 refactor: use uno css for subtitle track styles 2024-09-12 03:32:14 +02:00
Sean McBroom
a1e3b044c7 fix: general tag formatting changes for rendering as html 2024-09-12 03:32:14 +02:00
Sean McBroom
f48138f721 refactor: update replaceTags method to replace entire tags 2024-09-12 03:32:14 +02:00
Sean McBroom
89f992e2ee refactor: reuse SubtitleTrack element in subtitle settings page 2024-09-12 03:32:14 +02:00
Sean McBroom
18bd0b16d4 refactor(subtitles): make SSA file parsing more reliable and add multi-line dialogue together 2024-09-12 03:32:14 +02:00
Sean McBroom
5ea69b10e6 fix(locale): general fixes regarding subtitles 2024-09-12 03:32:14 +02:00
Sean McBroom
a063f0fab2 refactor(subtitles): use computed value for current subtitle variable 2024-09-12 03:32:14 +02:00
Sean McBroom
caad390fe9 fix(settings): refactor subtitle page to await loading and general legibility fixes 2024-09-12 03:32:14 +02:00
Sean McBroom
c165569d0a fix: change subtitle stroke css properties to work with chromium browsers 2024-09-12 03:32:14 +02:00
Sean McBroom
0126bd3a23 feat(subtitles): settings & custom element for external subtitles 2024-09-12 03:32:14 +02:00
renovate[bot]
048e80e78c
chore(deps): update npm (runtime) (#2453)
Some checks failed
Push & Release 🌍 / Label conflicted PRs 🏷️⛔ (push) Failing after 0s
Push & Release 🌍 / ${{ github.event_name == 'push' && 'Unstable 🚀⚠️' || 'Stable 🏷️✅' }} (push) Failing after 33s
Push & Release 🌍 / Deploy 🚀 (push) Has been skipped
Push & Release 🌍 / GitHub CodeQL 🔬 (push) Failing after 32s
2024-09-10 21:16:16 +02:00
Fernando Fernández
fcd3c8f4de
style: automatic eslint fix
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-09 20:53:06 +02:00
renovate[bot]
19cc094ac8
chore(deps): update npm (development) (#2454) 2024-09-09 20:45:28 +02:00
Fernando Fernández
cf82a146ae
perf: code-split the application (#2456)
Code-split the application (but without lazy loading, aka dynamic imports aka async modules, so all the assets are loaded on app load, not when requested: this is needed for ensuring an smooth experience over slow networks)

Lighthouse performance score went from 66 to 77

There's still a lot of work to do, but this is a good start.

Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-09 17:59:46 +00:00
Fernando Fernández
ef55e263f5
style: automatic eslint fix
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-09 18:04:37 +02:00
Fernando Fernández
3c592fd667
feat(a11y): add no transparency setting detection (#2455)
Also refactored styles to use UnoCSS and fixed some type issues

Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-08 19:22:56 +00:00
Fernando Fernández
92c702c434
fix(types): global components not defined
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:31:00 +02:00
Fernando Fernández
c9583c9327 chore: install devtools inside Vite
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
Fernando Fernández
661107bbf1 fix(PlayerElement): WebAudio concurrency and cracks when switching tracks
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
Fernando Fernández
248afe0ac1 refactor: remove withDefaults, use destructure everywhere
Use reactive props destructure (https://blog.vuejs.org/posts/vue-3-5#reactive-props-destructure)
to simplify the prop declaration.

Also, finding unused props is far easier with destructure
(a lot of unused props were removed in fact),
so all the defineProps statements have been migrated as well.

Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
Fernando Fernández
400b33fed6 refactor: use the new useTemplateRef utility
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
Fernando Fernández
b34e36390b perf: pause DOM patching while transitioning
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
Fernando Fernández
312897e31d feat: use deferred teleport, update old comments
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
Fernando Fernández
6bf9d8471e refactor(lib): fallthrough attrs as props are no longer needed
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-07 11:22:52 +02:00
renovate[bot]
db7dcdffa1
chore(deps): update npm (development) (#2452) 2024-09-07 01:58:05 +02:00
Fernando Fernández
851b0c796b
fix: dependency cycle
Blurhashes are going to be cached soon, so it's simpler to just remove the watcher for now and call it a day

Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-06 23:02:07 +02:00
Fernando Fernández
8984a2d639
fix(types): some errors
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-06 22:40:37 +02:00
Fernando Fernández
c6a4b2266a fix: items changing on navigation, library page reactivity
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-06 16:08:19 +02:00
Fernando Fernández
b609bfabae refactor: non working watchers in all branches
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-06 16:08:19 +02:00
Fernando Fernández
f3260d9225
chore(typecheck): prepare for fallthrough attributes type-checking
vue-tsc add supports for fallthrough attributes type-checking,
but we need to enable it.

See release notes: https://github.com/vuejs/language-tools/releases/tag/v2.1.0

Signed-off-by: GitHub <noreply@github.com>
2024-09-06 15:57:33 +02:00
Fernando Fernández
a60a0c1259
refactor: remove dpdm, npm commands, bundle analysis (#2447)
* The dpdm dependency was used just for checking circular dependencies in the bundle. However, it was not perfect, not analyzing the real bundle, but the source files. We were just leveraging Rollup's (Vite internal bundler) warnings for that already when analyzing the bundle, which always gave us the real information. Now, `analyze` consists in 2 different commands (analyze:bundle for the bundle and analyze:cycles for finding cycles)

* The npm commands have been grouped by scope

* Extracted analyze Vite commands to a plugin, so the main config is cleaner.

Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-06 12:47:56 +02:00
renovate[bot]
bec180e18d
chore(deps): update dependency vue to v3.5.3 (#2444) 2024-09-06 10:24:47 +00:00
renovate[bot]
46c25be1b6
chore(deps): update npm development dependencies (#2422) 2024-09-06 10:14:40 +00:00
Fernando Fernández
a498375f5a
chore(deps): update dependency eslint-plugin-import-x to v4.2.1
This dependency is updated independently from #2434 for
avoiding the duplicate `node_modules` directory that `eslint-plugin-sonarjs` creates
in the `frontend` directory.

That issue will be solved until `eslint-plugin-sonarjs` updates to typescript-eslint v8

This commit also allows us to unblock other dependency updates, like #2422, which was blocked because it contained the old `eslint-plugin-import-x` that still relied on `typescript-eslint` v7,
causing the same issue as `eslint-plugin-sonarjs` is causing now.

Signed-off-by: GitHub <noreply@github.com>
2024-09-06 10:03:45 +00:00
Fernando Fernández
5f9e35533f
refactor(JImg): provide default fallbacks
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-04 17:33:57 +02:00
Fernando Fernández
29eb74250f
style: automatic eslint fix
Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-04 17:19:16 +02:00
renovate[bot]
859cbfeae3
chore(deps): update npm dependencies (#2439) 2024-09-04 14:55:54 +00:00
Fernando Fernández
3f51a3aab9 feat: upgrade to ESNext
We should pin to an specific version but, in the meantime, this is needed for type-checking `Object.groupBy`

Signed-off-by: Fernando Fernández <ferferga@hotmail.com>
2024-09-04 14:06:17 +02:00
Fernando Fernández
6ee554d150 refactor: remove lodash
Signed-off-by: GitHub <noreply@github.com>
2024-09-04 14:06:17 +02:00