Merge branch 'dev' into movie-time

This commit is contained in:
mrjvs 2023-04-20 20:54:42 +02:00 committed by GitHub
commit 2650707d2c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 27 additions and 9 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "movie-web", "name": "movie-web",
"version": "3.0.9", "version": "3.0.10",
"private": true, "private": true,
"homepage": "https://movie.squeezebox.dev", "homepage": "https://movie.squeezebox.dev",
"dependencies": { "dependencies": {

View File

@ -22,6 +22,7 @@ registerProvider({
displayName: "NetFilm", displayName: "NetFilm",
rank: 15, rank: 15,
type: [MWMediaType.MOVIE, MWMediaType.SERIES], type: [MWMediaType.MOVIE, MWMediaType.SERIES],
disabled: true, // The creator has asked us (very nicely) to leave him alone. Until (if) we self-host, netfilm should remain disabled
async scrape({ media, episode, progress }) { async scrape({ media, episode, progress }) {
if (!this.type.includes(media.meta.type)) { if (!this.type.includes(media.meta.type)) {

View File

@ -229,9 +229,7 @@ registerProvider({
(subtitle: any): MWCaption | null => { (subtitle: any): MWCaption | null => {
const sub = subtitle; const sub = subtitle;
sub.subtitles = subtitle.subtitles.filter((subFile: any) => { sub.subtitles = subtitle.subtitles.filter((subFile: any) => {
const extension = subFile.file_path.substring( const extension = subFile.file_path.slice(-3);
sub.file_path.length - 3
);
return [MWCaptionType.SRT, MWCaptionType.VTT].includes(extension); return [MWCaptionType.SRT, MWCaptionType.VTT].includes(extension);
}); });
return { return {

View File

@ -29,6 +29,7 @@ export function FloatingView(props: Props) {
data-floating-page={props.show ? "true" : undefined} data-floating-page={props.show ? "true" : undefined}
style={{ style={{
height: props.height ? `${props.height}px` : undefined, height: props.height ? `${props.height}px` : undefined,
maxHeight: "70vh",
width: props.width ? width : undefined, width: props.width ? width : undefined,
}} }}
> >

View File

@ -21,8 +21,20 @@ export function FloatingCardMobilePosition(props: MobilePositionProps) {
})); }));
const bind = useDrag( const bind = useDrag(
({ last, velocity: [, vy], direction: [, dy], movement: [, my] }) => { ({
last,
velocity: [, vy],
direction: [, dy],
movement: [, my],
...event
}) => {
if (closing.current) return; if (closing.current) return;
const isInScrollable = (event.target as HTMLDivElement).closest(
".overflow-y-auto"
);
if (isInScrollable) return; // Don't attempt to swipe the thing away if it's a scroll area unless the scroll area is at the top and the user is swiping down
const height = cardRect?.height ?? 0; const height = cardRect?.height ?? 0;
if (last) { if (last) {
// if past half height downwards // if past half height downwards
@ -69,7 +81,7 @@ export function FloatingCardMobilePosition(props: MobilePositionProps) {
return ( return (
<div <div
className="absolute inset-x-0 mx-auto max-w-[400px] origin-bottom-left touch-none" className="is-mobile-view absolute inset-x-0 mx-auto max-w-[400px] origin-bottom-left touch-none"
style={{ style={{
transform: `translateY(${ transform: `translateY(${
window.innerHeight - (cardRect?.height ?? 0) + 200 window.innerHeight - (cardRect?.height ?? 0) + 200

View File

@ -38,6 +38,7 @@ body[data-no-select] {
from { from {
transform: rotate(0deg); transform: rotate(0deg);
} }
to { to {
transform: rotate(360deg); transform: rotate(360deg);
} }
@ -55,6 +56,10 @@ body[data-no-select] {
@apply brightness-[500]; @apply brightness-[500];
} }
.is-mobile-view .overflow-y-auto {
height: 60vh;
}
/*generated with Input range slider CSS style generator (version 20211225) /*generated with Input range slider CSS style generator (version 20211225)
https://toughengineer.github.io/demo/slider-styler*/ https://toughengineer.github.io/demo/slider-styler*/
:root { :root {
@ -62,6 +67,7 @@ https://toughengineer.github.io/demo/slider-styler*/
--slider-border-radius: 1em; --slider-border-radius: 1em;
--slider-progress-background: #8652bb; --slider-progress-background: #8652bb;
} }
input[type=range].styled-slider { input[type=range].styled-slider {
height: var(--slider-height); height: var(--slider-height);
-webkit-appearance: none; -webkit-appearance: none;