Type annotation, linter fixes and cleanup
This commit is contained in:
parent
f371f5795c
commit
d5750e69fa
|
@ -1,5 +1,4 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import os, sys, shutil
|
|
||||||
from remi import start
|
from remi import start
|
||||||
from threading import Timer
|
from threading import Timer
|
||||||
import typer
|
import typer
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import requests, json
|
import requests, json
|
||||||
from urllib.parse import urlencode
|
from urllib.parse import urlencode
|
||||||
from functools import wraps
|
from functools import wraps
|
||||||
from . import api
|
|
||||||
|
|
||||||
# This must be set to be able to use it on remote hosts
|
# This must be set to be able to use it on remote hosts
|
||||||
BASE_URL = "http://localhost:8080/api"
|
BASE_URL = "http://localhost:8080/api"
|
||||||
|
@ -52,82 +51,82 @@ def request_get(func):
|
||||||
# methods:
|
# methods:
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def load_path(path:str, data:dict=None):
|
def load_path(path:str, data: dict = None):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"load?{args}", data
|
return f"load?{args}", data
|
||||||
|
|
||||||
@request_get
|
@request_get
|
||||||
def is_playing():
|
def is_playing():
|
||||||
return f"play"
|
return "play"
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def set_playing(play:bool):
|
def set_playing(play: bool):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"play?{args}", None
|
return f"play?{args}", None
|
||||||
|
|
||||||
@request_get
|
@request_get
|
||||||
def get_volume():
|
def get_volume():
|
||||||
return f"volume"
|
return "volume"
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def set_volume(volume:int):# between 0 and 100 (you may also exceed 100)
|
def set_volume(volume: int): # between 0 and 100 (you may also exceed 100)
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"volume?{args}", None
|
return f"volume?{args}", None
|
||||||
|
|
||||||
@request_get
|
@request_get
|
||||||
def get_playlist():
|
def get_playlist():
|
||||||
return f"playlist"
|
return "playlist"
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def playlist_next():
|
def playlist_next():
|
||||||
return f"playlist/next", None
|
return "playlist/next", None
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def playlist_goto(index:int):
|
def playlist_goto(index: int):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"playlist/goto?{args}", None
|
return f"playlist/goto?{args}", None
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def playlist_previous():
|
def playlist_previous():
|
||||||
return f"playlist/previous", None
|
return "playlist/previous", None
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def playlist_shuffle():
|
def playlist_shuffle():
|
||||||
return f"playlist/shuffle", None
|
return "playlist/shuffle", None
|
||||||
|
|
||||||
@request_delete
|
@request_delete
|
||||||
def playlist_clear():
|
def playlist_clear():
|
||||||
return f"playlist", None
|
return "playlist", None
|
||||||
|
|
||||||
@request_delete
|
@request_delete
|
||||||
def playlist_remove(index:int):
|
def playlist_remove(index: int):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"playlist?{args}", None
|
return f"playlist?{args}", None
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def playlist_move(index1:int, index2:int):
|
def playlist_move(index1: int, index2: int):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"playlist/move?{args}", None
|
return f"playlist/move?{args}", None
|
||||||
|
|
||||||
@request_get
|
@request_get
|
||||||
def get_playlist_looping():
|
def get_playlist_looping():
|
||||||
return f"playlist/loop"
|
return "playlist/loop"
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def playlist_set_looping(looping:bool):
|
def playlist_set_looping(looping: bool):
|
||||||
return f"playlist/loop?loop={str(bool(looping)).lower()}", None
|
return f"playlist/loop?loop={str(bool(looping)).lower()}", None
|
||||||
|
|
||||||
|
|
||||||
@request_get
|
@request_get
|
||||||
def get_playback_pos():
|
def get_playback_pos():
|
||||||
return f"time"
|
return "time"
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def seek_absolute(pos:float):
|
def seek_absolute(pos: float):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"time?{args}", None
|
return f"time?{args}", None
|
||||||
|
|
||||||
@request_post
|
@request_post
|
||||||
def seek_percent(percent:int):
|
def seek_percent(percent: int):
|
||||||
args = urlencode(locals())
|
args = urlencode(locals())
|
||||||
return f"time?{args}", None
|
return f"time?{args}", None
|
||||||
|
|
|
@ -2,7 +2,8 @@ import os
|
||||||
from threading import Timer
|
from threading import Timer
|
||||||
import remi.gui as gui
|
import remi.gui as gui
|
||||||
from remi import App
|
from remi import App
|
||||||
from .utils import Namespace, call_as_thread, seconds_to_timestamp
|
from argparse import Namespace
|
||||||
|
from .utils import call_as_thread, seconds_to_timestamp
|
||||||
from . import api
|
from . import api
|
||||||
from .constants import colors, icons
|
from .constants import colors, icons
|
||||||
|
|
||||||
|
@ -71,7 +72,7 @@ class RemiApp(App):
|
||||||
|
|
||||||
def make_gui_container(self):#placement and styling
|
def make_gui_container(self):#placement and styling
|
||||||
# Logo image:
|
# Logo image:
|
||||||
self.logo_image.style["width"] = f"100%"
|
self.logo_image.style["width"] = "100%"
|
||||||
for i in (self.playback.previous, self.playback.play, self.playback.next, self.playback.party):
|
for i in (self.playback.previous, self.playback.play, self.playback.next, self.playback.party):
|
||||||
i.style["margin"] = "3px"
|
i.style["margin"] = "3px"
|
||||||
i.style["width"] = "2.8em"
|
i.style["width"] = "2.8em"
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
from functools import wraps
|
from functools import wraps
|
||||||
from urllib.parse import urlsplit, urlunsplit, parse_qs, urlencode
|
|
||||||
import threading
|
import threading
|
||||||
import youtube_dl
|
|
||||||
|
|
||||||
class Namespace(object): pass
|
|
||||||
|
|
||||||
def seconds_to_timestamp(s):
|
def seconds_to_timestamp(s):
|
||||||
return "%i:%.2i" % (s//60, s%60)
|
return "%i:%.2i" % (s//60, s%60)
|
||||||
|
|
Loading…
Reference in New Issue