From 2ae7a2d39e31b01a16cc24185bac53c767827c7b Mon Sep 17 00:00:00 2001 From: ForgQi <34411314+ForgQi@users.noreply.github.com> Date: Tue, 28 May 2024 01:48:50 +0800 Subject: [PATCH] Bumping version --- .github/workflows/pyinstaller-publish.yml | 1 + biliup.spec | 12 +- biliup/{plugins => }/Danmaku/__init__.py | 12 +- biliup/{plugins => }/Danmaku/bilibili.py | 0 biliup/{plugins => }/Danmaku/douyin.py | 2 +- .../Danmaku/douyin_util/__init__.py | 0 .../Danmaku/douyin_util/dy.proto | 0 .../Danmaku/douyin_util/dy_pb2.py | 0 .../Danmaku/douyin_util/dy_pb2.pyi | 0 biliup/{plugins => }/Danmaku/douyu.py | 0 biliup/{plugins => }/Danmaku/huya.py | 2 +- .../Danmaku/paramgen/__init__.py | 0 .../Danmaku/paramgen/arcparam.py | 0 biliup/{plugins => }/Danmaku/paramgen/enc.py | 0 .../Danmaku/paramgen/liveparam.py | 0 .../{plugins => }/Danmaku/tars/EndpointF.py | 2 +- biliup/{plugins => }/Danmaku/tars/QueryF.py | 0 .../Danmaku/tars/__TimeoutQueue.py | 0 .../Danmaku/tars/__adapterproxy.py | 0 biliup/{plugins => }/Danmaku/tars/__async.py | 6 +- biliup/{plugins => }/Danmaku/tars/__init__.py | 0 biliup/{plugins => }/Danmaku/tars/__logger.py | 0 biliup/{plugins => }/Danmaku/tars/__packet.py | 0 biliup/{plugins => }/Danmaku/tars/__rpc.py | 0 .../Danmaku/tars/__servantproxy.py | 12 +- biliup/{plugins => }/Danmaku/tars/__tars.py | 0 biliup/{plugins => }/Danmaku/tars/__trans.py | 0 biliup/{plugins => }/Danmaku/tars/__tup.py | 0 biliup/{plugins => }/Danmaku/tars/__util.py | 0 biliup/{plugins => }/Danmaku/tars/core.py | 8 +- .../{plugins => }/Danmaku/tars/exception.py | 0 .../Danmaku/tars/tars/EndpointF.tars | 0 .../Danmaku/tars/tars/QueryF.tars | 0 .../Danmaku/tars/tars/__init__.py | 0 biliup/{plugins => }/Danmaku/twitcasting.py | 0 biliup/{plugins => }/Danmaku/twitch.py | 0 biliup/{plugins => }/Danmaku/youtube.py | 4 +- biliup/__init__.py | 2 +- biliup/engine/download.py | 3 +- biliup/plugins/bilibili.py | 4 +- biliup/plugins/douyin.py | 3 +- biliup/plugins/douyu.py | 25 +- biliup/plugins/huya.py | 3 +- biliup/plugins/twitcasting.py | 3 +- biliup/plugins/twitch.py | 2 +- package-lock.json | 355 ++++++++++-------- package.json | 12 +- 47 files changed, 247 insertions(+), 226 deletions(-) rename biliup/{plugins => }/Danmaku/__init__.py (97%) rename biliup/{plugins => }/Danmaku/bilibili.py (100%) rename biliup/{plugins => }/Danmaku/douyin.py (98%) rename biliup/{plugins => }/Danmaku/douyin_util/__init__.py (100%) rename biliup/{plugins => }/Danmaku/douyin_util/dy.proto (100%) rename biliup/{plugins => }/Danmaku/douyin_util/dy_pb2.py (100%) rename biliup/{plugins => }/Danmaku/douyin_util/dy_pb2.pyi (100%) rename biliup/{plugins => }/Danmaku/douyu.py (100%) rename biliup/{plugins => }/Danmaku/huya.py (98%) rename biliup/{plugins => }/Danmaku/paramgen/__init__.py (100%) rename biliup/{plugins => }/Danmaku/paramgen/arcparam.py (100%) rename biliup/{plugins => }/Danmaku/paramgen/enc.py (100%) rename biliup/{plugins => }/Danmaku/paramgen/liveparam.py (100%) rename biliup/{plugins => }/Danmaku/tars/EndpointF.py (98%) rename biliup/{plugins => }/Danmaku/tars/QueryF.py (100%) rename biliup/{plugins => }/Danmaku/tars/__TimeoutQueue.py (100%) rename biliup/{plugins => }/Danmaku/tars/__adapterproxy.py (100%) rename biliup/{plugins => }/Danmaku/tars/__async.py (96%) rename biliup/{plugins => }/Danmaku/tars/__init__.py (100%) rename biliup/{plugins => }/Danmaku/tars/__logger.py (100%) rename biliup/{plugins => }/Danmaku/tars/__packet.py (100%) rename biliup/{plugins => }/Danmaku/tars/__rpc.py (100%) rename biliup/{plugins => }/Danmaku/tars/__servantproxy.py (97%) rename biliup/{plugins => }/Danmaku/tars/__tars.py (100%) rename biliup/{plugins => }/Danmaku/tars/__trans.py (100%) rename biliup/{plugins => }/Danmaku/tars/__tup.py (100%) rename biliup/{plugins => }/Danmaku/tars/__util.py (100%) rename biliup/{plugins => }/Danmaku/tars/core.py (88%) rename biliup/{plugins => }/Danmaku/tars/exception.py (100%) rename biliup/{plugins => }/Danmaku/tars/tars/EndpointF.tars (100%) rename biliup/{plugins => }/Danmaku/tars/tars/QueryF.tars (100%) rename biliup/{plugins => }/Danmaku/tars/tars/__init__.py (100%) rename biliup/{plugins => }/Danmaku/twitcasting.py (100%) rename biliup/{plugins => }/Danmaku/twitch.py (100%) rename biliup/{plugins => }/Danmaku/youtube.py (98%) diff --git a/.github/workflows/pyinstaller-publish.yml b/.github/workflows/pyinstaller-publish.yml index 2ac6bec..e51930f 100644 --- a/.github/workflows/pyinstaller-publish.yml +++ b/.github/workflows/pyinstaller-publish.yml @@ -3,6 +3,7 @@ name: Upload Windows Python Package on: release: types: [created] + workflow_dispatch: jobs: build: diff --git a/biliup.spec b/biliup.spec index 43c222c..4454e39 100644 --- a/biliup.spec +++ b/biliup.spec @@ -1,12 +1,18 @@ # -*- mode: python ; coding: utf-8 -*- +from PyInstaller.utils.hooks import collect_all +datas = [('biliup/database/migration/', 'biliup/database/migration/'), ('biliup/web/public/', 'biliup/web/public/')] +binaries = [] +hiddenimports = [] +tmp_ret = collect_all('biliup.plugins') +datas += tmp_ret[0]; binaries += tmp_ret[1]; hiddenimports += tmp_ret[2] a = Analysis( ['biliup\\__main__.py'], pathex=[], - binaries=[], - datas=[('biliup/database/migration/', 'biliup/database/migration/'), ('biliup/web/public/', 'biliup/web/public/')], - hiddenimports=[], + binaries=binaries, + datas=datas, + hiddenimports=hiddenimports, hookspath=[], hooksconfig={}, runtime_hooks=[], diff --git a/biliup/plugins/Danmaku/__init__.py b/biliup/Danmaku/__init__.py similarity index 97% rename from biliup/plugins/Danmaku/__init__.py rename to biliup/Danmaku/__init__.py index bc76268..909ea99 100644 --- a/biliup/plugins/Danmaku/__init__.py +++ b/biliup/Danmaku/__init__.py @@ -16,12 +16,12 @@ from typing import Optional import aiohttp import lxml.etree as etree -from biliup.plugins.Danmaku.bilibili import Bilibili -from biliup.plugins.Danmaku.douyin import Douyin -from biliup.plugins.Danmaku.douyu import Douyu -from biliup.plugins.Danmaku.huya import Huya -from biliup.plugins.Danmaku.twitcasting import Twitcasting -from biliup.plugins.Danmaku.twitch import Twitch +from biliup.Danmaku.bilibili import Bilibili +from biliup.Danmaku.douyin import Douyin +from biliup.Danmaku.douyu import Douyu +from biliup.Danmaku.huya import Huya +from biliup.Danmaku.twitcasting import Twitcasting +from biliup.Danmaku.twitch import Twitch logger = logging.getLogger('biliup') diff --git a/biliup/plugins/Danmaku/bilibili.py b/biliup/Danmaku/bilibili.py similarity index 100% rename from biliup/plugins/Danmaku/bilibili.py rename to biliup/Danmaku/bilibili.py diff --git a/biliup/plugins/Danmaku/douyin.py b/biliup/Danmaku/douyin.py similarity index 98% rename from biliup/plugins/Danmaku/douyin.py rename to biliup/Danmaku/douyin.py index 45c7dd2..6e3c445 100644 --- a/biliup/plugins/Danmaku/douyin.py +++ b/biliup/Danmaku/douyin.py @@ -8,7 +8,7 @@ import json from urllib.parse import unquote from biliup.config import config from .douyin_util.dy_pb2 import ChatMessage, PushFrame, Response -from .. import match1, random_user_agent +from biliup.plugins import match1, random_user_agent from google.protobuf import json_format diff --git a/biliup/plugins/Danmaku/douyin_util/__init__.py b/biliup/Danmaku/douyin_util/__init__.py similarity index 100% rename from biliup/plugins/Danmaku/douyin_util/__init__.py rename to biliup/Danmaku/douyin_util/__init__.py diff --git a/biliup/plugins/Danmaku/douyin_util/dy.proto b/biliup/Danmaku/douyin_util/dy.proto similarity index 100% rename from biliup/plugins/Danmaku/douyin_util/dy.proto rename to biliup/Danmaku/douyin_util/dy.proto diff --git a/biliup/plugins/Danmaku/douyin_util/dy_pb2.py b/biliup/Danmaku/douyin_util/dy_pb2.py similarity index 100% rename from biliup/plugins/Danmaku/douyin_util/dy_pb2.py rename to biliup/Danmaku/douyin_util/dy_pb2.py diff --git a/biliup/plugins/Danmaku/douyin_util/dy_pb2.pyi b/biliup/Danmaku/douyin_util/dy_pb2.pyi similarity index 100% rename from biliup/plugins/Danmaku/douyin_util/dy_pb2.pyi rename to biliup/Danmaku/douyin_util/dy_pb2.pyi diff --git a/biliup/plugins/Danmaku/douyu.py b/biliup/Danmaku/douyu.py similarity index 100% rename from biliup/plugins/Danmaku/douyu.py rename to biliup/Danmaku/douyu.py diff --git a/biliup/plugins/Danmaku/huya.py b/biliup/Danmaku/huya.py similarity index 98% rename from biliup/plugins/Danmaku/huya.py rename to biliup/Danmaku/huya.py index acf28e4..f58a320 100644 --- a/biliup/plugins/Danmaku/huya.py +++ b/biliup/Danmaku/huya.py @@ -2,7 +2,7 @@ import aiohttp from biliup.plugins import random_user_agent from .tars import tarscore -from .. import match1 +from biliup.plugins import match1 class Huya: diff --git a/biliup/plugins/Danmaku/paramgen/__init__.py b/biliup/Danmaku/paramgen/__init__.py similarity index 100% rename from biliup/plugins/Danmaku/paramgen/__init__.py rename to biliup/Danmaku/paramgen/__init__.py diff --git a/biliup/plugins/Danmaku/paramgen/arcparam.py b/biliup/Danmaku/paramgen/arcparam.py similarity index 100% rename from biliup/plugins/Danmaku/paramgen/arcparam.py rename to biliup/Danmaku/paramgen/arcparam.py diff --git a/biliup/plugins/Danmaku/paramgen/enc.py b/biliup/Danmaku/paramgen/enc.py similarity index 100% rename from biliup/plugins/Danmaku/paramgen/enc.py rename to biliup/Danmaku/paramgen/enc.py diff --git a/biliup/plugins/Danmaku/paramgen/liveparam.py b/biliup/Danmaku/paramgen/liveparam.py similarity index 100% rename from biliup/plugins/Danmaku/paramgen/liveparam.py rename to biliup/Danmaku/paramgen/liveparam.py diff --git a/biliup/plugins/Danmaku/tars/EndpointF.py b/biliup/Danmaku/tars/EndpointF.py similarity index 98% rename from biliup/plugins/Danmaku/tars/EndpointF.py rename to biliup/Danmaku/tars/EndpointF.py index 4d61b12..fe27dec 100644 --- a/biliup/plugins/Danmaku/tars/EndpointF.py +++ b/biliup/Danmaku/tars/EndpointF.py @@ -13,7 +13,7 @@ # specific language governing permissions and limitations under the License. # -from biliup.plugins.Danmaku.tars.core import tarscore +from biliup.Danmaku.tars.core import tarscore class EndpointF(tarscore.struct): diff --git a/biliup/plugins/Danmaku/tars/QueryF.py b/biliup/Danmaku/tars/QueryF.py similarity index 100% rename from biliup/plugins/Danmaku/tars/QueryF.py rename to biliup/Danmaku/tars/QueryF.py diff --git a/biliup/plugins/Danmaku/tars/__TimeoutQueue.py b/biliup/Danmaku/tars/__TimeoutQueue.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__TimeoutQueue.py rename to biliup/Danmaku/tars/__TimeoutQueue.py diff --git a/biliup/plugins/Danmaku/tars/__adapterproxy.py b/biliup/Danmaku/tars/__adapterproxy.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__adapterproxy.py rename to biliup/Danmaku/tars/__adapterproxy.py diff --git a/biliup/plugins/Danmaku/tars/__async.py b/biliup/Danmaku/tars/__async.py similarity index 96% rename from biliup/plugins/Danmaku/tars/__async.py rename to biliup/Danmaku/tars/__async.py index fb6d6c3..dfd315a 100644 --- a/biliup/plugins/Danmaku/tars/__async.py +++ b/biliup/Danmaku/tars/__async.py @@ -25,9 +25,9 @@ import queue import threading -from biliup.plugins.Danmaku.tars.__logger import tarsLogger -from biliup.plugins.Danmaku.tars.__packet import ResponsePacket -from biliup.plugins.Danmaku.tars.__servantproxy import ServantProxy +from biliup.Danmaku.tars.__logger import tarsLogger +from biliup.Danmaku.tars.__packet import ResponsePacket +from biliup.Danmaku.tars.__servantproxy import ServantProxy class AsyncProcThread: diff --git a/biliup/plugins/Danmaku/tars/__init__.py b/biliup/Danmaku/tars/__init__.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__init__.py rename to biliup/Danmaku/tars/__init__.py diff --git a/biliup/plugins/Danmaku/tars/__logger.py b/biliup/Danmaku/tars/__logger.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__logger.py rename to biliup/Danmaku/tars/__logger.py diff --git a/biliup/plugins/Danmaku/tars/__packet.py b/biliup/Danmaku/tars/__packet.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__packet.py rename to biliup/Danmaku/tars/__packet.py diff --git a/biliup/plugins/Danmaku/tars/__rpc.py b/biliup/Danmaku/tars/__rpc.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__rpc.py rename to biliup/Danmaku/tars/__rpc.py diff --git a/biliup/plugins/Danmaku/tars/__servantproxy.py b/biliup/Danmaku/tars/__servantproxy.py similarity index 97% rename from biliup/plugins/Danmaku/tars/__servantproxy.py rename to biliup/Danmaku/tars/__servantproxy.py index fa22c99..92b5481 100644 --- a/biliup/plugins/Danmaku/tars/__servantproxy.py +++ b/biliup/Danmaku/tars/__servantproxy.py @@ -26,12 +26,12 @@ import threading import time # from __packet import ResponsePacket -from biliup.plugins.Danmaku.tars.__TimeoutQueue import ReqMessage -from biliup.plugins.Danmaku.tars.__logger import tarsLogger -from biliup.plugins.Danmaku.tars.__packet import RequestPacket -from biliup.plugins.Danmaku.tars.__util import util -from biliup.plugins.Danmaku.tars import exception -from biliup.plugins.Danmaku.tars.exception import TarsException +from biliup.Danmaku.tars.__TimeoutQueue import ReqMessage +from biliup.Danmaku.tars.__logger import tarsLogger +from biliup.Danmaku.tars.__packet import RequestPacket +from biliup.Danmaku.tars.__util import util +from biliup.Danmaku.tars import exception +from biliup.Danmaku.tars.exception import TarsException class ServantProxy(object): diff --git a/biliup/plugins/Danmaku/tars/__tars.py b/biliup/Danmaku/tars/__tars.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__tars.py rename to biliup/Danmaku/tars/__tars.py diff --git a/biliup/plugins/Danmaku/tars/__trans.py b/biliup/Danmaku/tars/__trans.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__trans.py rename to biliup/Danmaku/tars/__trans.py diff --git a/biliup/plugins/Danmaku/tars/__tup.py b/biliup/Danmaku/tars/__tup.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__tup.py rename to biliup/Danmaku/tars/__tup.py diff --git a/biliup/plugins/Danmaku/tars/__util.py b/biliup/Danmaku/tars/__util.py similarity index 100% rename from biliup/plugins/Danmaku/tars/__util.py rename to biliup/Danmaku/tars/__util.py diff --git a/biliup/plugins/Danmaku/tars/core.py b/biliup/Danmaku/tars/core.py similarity index 88% rename from biliup/plugins/Danmaku/tars/core.py rename to biliup/Danmaku/tars/core.py index 09c1e12..0fe0fd1 100644 --- a/biliup/plugins/Danmaku/tars/core.py +++ b/biliup/Danmaku/tars/core.py @@ -19,10 +19,10 @@ __version__ = "0.0.1" -from biliup.plugins.Danmaku.tars.__tars import TarsInputStream -from biliup.plugins.Danmaku.tars.__tars import TarsOutputStream -from biliup.plugins.Danmaku.tars.__tup import TarsUniPacket -from biliup.plugins.Danmaku.tars.__util import util +from biliup.Danmaku.tars.__tars import TarsInputStream +from biliup.Danmaku.tars.__tars import TarsOutputStream +from biliup.Danmaku.tars.__tup import TarsUniPacket +from biliup.Danmaku.tars.__util import util class tarscore: diff --git a/biliup/plugins/Danmaku/tars/exception.py b/biliup/Danmaku/tars/exception.py similarity index 100% rename from biliup/plugins/Danmaku/tars/exception.py rename to biliup/Danmaku/tars/exception.py diff --git a/biliup/plugins/Danmaku/tars/tars/EndpointF.tars b/biliup/Danmaku/tars/tars/EndpointF.tars similarity index 100% rename from biliup/plugins/Danmaku/tars/tars/EndpointF.tars rename to biliup/Danmaku/tars/tars/EndpointF.tars diff --git a/biliup/plugins/Danmaku/tars/tars/QueryF.tars b/biliup/Danmaku/tars/tars/QueryF.tars similarity index 100% rename from biliup/plugins/Danmaku/tars/tars/QueryF.tars rename to biliup/Danmaku/tars/tars/QueryF.tars diff --git a/biliup/plugins/Danmaku/tars/tars/__init__.py b/biliup/Danmaku/tars/tars/__init__.py similarity index 100% rename from biliup/plugins/Danmaku/tars/tars/__init__.py rename to biliup/Danmaku/tars/tars/__init__.py diff --git a/biliup/plugins/Danmaku/twitcasting.py b/biliup/Danmaku/twitcasting.py similarity index 100% rename from biliup/plugins/Danmaku/twitcasting.py rename to biliup/Danmaku/twitcasting.py diff --git a/biliup/plugins/Danmaku/twitch.py b/biliup/Danmaku/twitch.py similarity index 100% rename from biliup/plugins/Danmaku/twitch.py rename to biliup/Danmaku/twitch.py diff --git a/biliup/plugins/Danmaku/youtube.py b/biliup/Danmaku/youtube.py similarity index 98% rename from biliup/plugins/Danmaku/youtube.py rename to biliup/Danmaku/youtube.py index ee5fa1a..2297904 100644 --- a/biliup/plugins/Danmaku/youtube.py +++ b/biliup/Danmaku/youtube.py @@ -1,5 +1,5 @@ -import json, re, select, random, traceback, urllib, datetime, base64 -import asyncio, aiohttp +import re, traceback, datetime, base64 +import asyncio from biliup.plugins import random_user_agent # The core codes for YouTube support are basically from taizan-hokuto/pytchat diff --git a/biliup/__init__.py b/biliup/__init__.py index daef286..2139526 100644 --- a/biliup/__init__.py +++ b/biliup/__init__.py @@ -2,7 +2,7 @@ import logging import platform import sys -__version__ = "0.4.65" +__version__ = "0.4.66" LOG_CONF = { 'version': 1, diff --git a/biliup/engine/download.py b/biliup/engine/download.py index efcf2dd..3ae7f71 100644 --- a/biliup/engine/download.py +++ b/biliup/engine/download.py @@ -15,14 +15,13 @@ from requests.utils import DEFAULT_ACCEPT_ENCODING from httpx import HTTPStatusError from biliup.common.util import client, loop -from biliup.common import tools from biliup.database.db import add_stream_info, SessionLocal, update_cover_path, update_room_title, update_file_list from biliup.plugins import random_user_agent import stream_gears from PIL import Image from biliup.config import config -from biliup.plugins.Danmaku import IDanmakuClient +from biliup.Danmaku import IDanmakuClient logger = logging.getLogger('biliup') diff --git a/biliup/plugins/bilibili.py b/biliup/plugins/bilibili.py index 068effd..17a2cb8 100644 --- a/biliup/plugins/bilibili.py +++ b/biliup/plugins/bilibili.py @@ -1,13 +1,11 @@ import time -import requests import json import re from biliup.common.util import client from biliup.config import config from . import match1, logger -from biliup.plugins.Danmaku import DanmakuClient -from ..common import tools +from biliup.Danmaku import DanmakuClient from ..engine.decorators import Plugin from ..engine.download import DownloadBase diff --git a/biliup/plugins/douyin.py b/biliup/plugins/douyin.py index 509a022..9fc5573 100644 --- a/biliup/plugins/douyin.py +++ b/biliup/plugins/douyin.py @@ -7,8 +7,7 @@ import requests import biliup.common.util from . import logger, match1 from biliup.config import config -from .Danmaku import DanmakuClient -from ..common import tools +from biliup.Danmaku import DanmakuClient from ..common.tools import NamedLock from ..engine.decorators import Plugin from ..engine.download import DownloadBase diff --git a/biliup/plugins/douyu.py b/biliup/plugins/douyu.py index 01183e1..c31d41c 100644 --- a/biliup/plugins/douyu.py +++ b/biliup/plugins/douyu.py @@ -4,12 +4,10 @@ from urllib.parse import parse_qs from biliup.common.util import client from biliup.config import config -from biliup.plugins.Danmaku import DanmakuClient -from ..common import tools +from biliup.Danmaku import DanmakuClient from ..engine.decorators import Plugin from ..engine.download import DownloadBase from ..plugins import logger, match1 -from httpx._exceptions import * @Plugin.download(regexp=r'(?:https?://)?(?:(?:www|m)\.)?douyu\.com') @@ -40,7 +38,7 @@ class Douyu(DownloadBase): room_info = ( await client.get(f"https://www.douyu.com/betard/{room_id}", headers=self.fake_headers, timeout=5) - ).json()['room'] + ).json()['room'] except: logger.exception(f"{self.plugin_msg}: 获取直播间信息错误") return False @@ -53,7 +51,7 @@ class Douyu(DownloadBase): return False if config.get('douyu_disable_interactive_game', False): gift_info = (await client.get(f"https://www.douyu.com/api/interactive/web/v2/list?rid={room_id}", - headers=self.fake_headers, timeout=5)).json().get('data', {}) + headers=self.fake_headers, timeout=5)).json().get('data', {}) if gift_info: logger.debug(f"{self.plugin_msg}: 正在运行互动游戏") return False @@ -77,8 +75,8 @@ class Douyu(DownloadBase): ctx = jsengine.jsengine() js_enc = ( await client.get(f'https://www.douyu.com/swf_api/homeH5Enc?rids={room_id}', - headers=self.fake_headers, timeout=5) - ).json()['data'][f'room{room_id}'] + headers=self.fake_headers, timeout=5) + ).json()['data'][f'room{room_id}'] js_enc = js_enc.replace('return eval', 'return [strc, vdwdae325w_64we];') sign_fun, sign_v = ctx.eval(f'{js_enc};ub98484234();') @@ -114,14 +112,15 @@ class Douyu(DownloadBase): async def get_play_info(self, room_id, params): __cdn_check = lambda _name, _list: any(_name in _item['cdn'] for _item in _list) - live_data = ( - await client.post(f'https://www.douyu.com/lapi/live/getH5Play/{room_id}', - headers=self.fake_headers, params=params, timeout=5) - ).json().get('data') + live_data = await client.post(f'https://www.douyu.com/lapi/live/getH5Play/{room_id}', + headers=self.fake_headers, params=params, timeout=5) + if not live_data.is_success: + raise RuntimeError(live_data.text) + live_data = live_data.json().get('data') if isinstance(live_data, dict): if not live_data['rtmp_cdn'].endswith('h5') or 'akm' in live_data['rtmp_cdn']: params['cdn'] = 'tct-h5' if __cdn_check('tct-h5', live_data['cdnsWithName']) \ - else live_data['cdnsWithName'][-1]['cdn'] + else live_data['cdnsWithName'][-1]['cdn'] return await self.get_play_info(room_id, params) return live_data - return None + raise RuntimeError(live_data) diff --git a/biliup/plugins/huya.py b/biliup/plugins/huya.py index 008074b..577bd7b 100644 --- a/biliup/plugins/huya.py +++ b/biliup/plugins/huya.py @@ -7,8 +7,7 @@ from urllib.parse import parse_qs, unquote from biliup.common.util import client from biliup.config import config -from biliup.plugins.Danmaku import DanmakuClient -from ..common import tools +from biliup.Danmaku import DanmakuClient from ..engine.decorators import Plugin from ..engine.download import DownloadBase from ..plugins import logger diff --git a/biliup/plugins/twitcasting.py b/biliup/plugins/twitcasting.py index 5f1e1a3..b33ed5f 100644 --- a/biliup/plugins/twitcasting.py +++ b/biliup/plugins/twitcasting.py @@ -2,8 +2,7 @@ import hashlib import biliup.common.util from biliup.config import config -from .Danmaku import DanmakuClient -from ..common import tools +from biliup.Danmaku import DanmakuClient from ..engine.decorators import Plugin from ..engine.download import DownloadBase from ..plugins import logger, match1 diff --git a/biliup/plugins/twitch.py b/biliup/plugins/twitch.py index 21d60d7..a3b62f8 100644 --- a/biliup/plugins/twitch.py +++ b/biliup/plugins/twitch.py @@ -11,7 +11,7 @@ import yt_dlp from biliup.common.util import client from biliup.config import config -from biliup.plugins.Danmaku import DanmakuClient +from biliup.Danmaku import DanmakuClient from . import logger from ..engine.decorators import Plugin from ..engine.download import DownloadBase, BatchCheck diff --git a/package-lock.json b/package-lock.json index 4a51041..de2cd39 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,22 +8,22 @@ "name": "my-app", "version": "0.1.0", "dependencies": { - "@douyinfe/semi-ui": "^2.58.0", + "@douyinfe/semi-ui": "^2.59.0", "ncp": "^2.0.0", "next": "^14.2.3", "qrcode.react": "^3.1.0", "react": "^18.3.1", "react-dom": "^18.3.1", "react-json-tree": "^0.19.0", - "sass": "^1.77.1", + "sass": "^1.77.2", "swr": "^2.2.5", "xgplayer": "^3.0.14", - "xgplayer-flv": "^3.0.17", - "xgplayer-flv.js": "^3.0.17" + "xgplayer-flv": "^3.0.18", + "xgplayer-flv.js": "^3.0.18" }, "devDependencies": { - "@types/node": "^20.12.11", - "@types/react": "^18.3.2", + "@types/node": "^20.12.12", + "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "eslint": "^8.57.0", "eslint-config-next": "^14.2.3", @@ -31,9 +31,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", - "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.6.tgz", + "integrity": "sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -91,34 +91,34 @@ } }, "node_modules/@douyinfe/semi-animation": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-animation/-/semi-animation-2.58.0.tgz", - "integrity": "sha512-ks1v8xqTV/YkXO/9HKr7yooWgtvfKvAWJ0nhsZOUi9xL04PbTjjvbD80FMOvemHFY320PZpurIXwIPrx72xtUQ==", + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-animation/-/semi-animation-2.59.0.tgz", + "integrity": "sha512-ad+87vIQMYJdVdJgoME1Eip+D9p1EYQk/2q7aFnMm4EmaXOxNBd48tt1NVyX49tJs259UpSTa2MSM9ajMMqbDA==", "dependencies": { "bezier-easing": "^2.1.0" } }, "node_modules/@douyinfe/semi-animation-react": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-animation-react/-/semi-animation-react-2.58.0.tgz", - "integrity": "sha512-0dJD5+cRCrwIqxVK4Ywj/Wt1tmkslX6QNd9vODZO8MKQcgQh1MD+dFi14WKZxjzJhR8FZIMY08DmRBDtyXY3jQ==", + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-animation-react/-/semi-animation-react-2.59.0.tgz", + "integrity": "sha512-EPZbKLGH0vguKgS6RBrHp9zTGyyVtdadGK3OPWuyCDxr6J+ET5M8EwLn7BylmE951hCw/j5nDYVjblD7R6gEEA==", "dependencies": { - "@douyinfe/semi-animation": "2.58.0", - "@douyinfe/semi-animation-styled": "2.58.0", + "@douyinfe/semi-animation": "2.59.0", + "@douyinfe/semi-animation-styled": "2.59.0", "classnames": "^2.2.6" } }, "node_modules/@douyinfe/semi-animation-styled": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-animation-styled/-/semi-animation-styled-2.58.0.tgz", - "integrity": "sha512-PqWUfRn4q0BDkPt5hxYYDEZwokiIpNa4S+7F5mP4nYyVJppkkylnpJcktSDy25YMfSdkXYcF7wrPAIsGfoZQ8g==" + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-animation-styled/-/semi-animation-styled-2.59.0.tgz", + "integrity": "sha512-KgIpTgQjnEVfZKIgwgvI8r7UoHhFEtp1cMgYXTG9TnI7fapJ9Rcd+qE5taWFbuGjANWXY3dL9NM1D6RMf9f2rw==" }, "node_modules/@douyinfe/semi-foundation": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-foundation/-/semi-foundation-2.58.0.tgz", - "integrity": "sha512-jMmaTuGHG/MUW5d1CvEmWuxMI+vdLUElM2ol1B4pglDx0lOHBCyGRk9j78H1rZg15fxXXxByOD/CZmNNv1l7Cg==", + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-foundation/-/semi-foundation-2.59.0.tgz", + "integrity": "sha512-YF8blKhVFcCNrLoo1gqtrPZev15Briz3f7/mx/SfPq6m3v5PeIw3aKwvi9PdcxrHbdj7WEmUtMtsMmfy8b61tg==", "dependencies": { - "@douyinfe/semi-animation": "2.58.0", + "@douyinfe/semi-animation": "2.59.0", "async-validator": "^3.5.0", "classnames": "^2.2.6", "date-fns": "^2.29.3", @@ -130,9 +130,9 @@ } }, "node_modules/@douyinfe/semi-icons": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-icons/-/semi-icons-2.58.0.tgz", - "integrity": "sha512-DV9hhAbvTahwx5XsTiLrW5TBW8c3TDnrHIDr79Pe83am+0RFVm+PkugwqtRrA1ETVcbrSu6VBpNMGaBrz5IVDg==", + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-icons/-/semi-icons-2.59.0.tgz", + "integrity": "sha512-3/zUiylcxVgwHuRJUk3ucVPfB6mOIdEIi8074+1qmO4lgInisiK3kPVYy6H35E76iuK2POBWjvAai5+s0FlyQA==", "dependencies": { "classnames": "^2.2.6" }, @@ -141,35 +141,32 @@ } }, "node_modules/@douyinfe/semi-illustrations": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-illustrations/-/semi-illustrations-2.58.0.tgz", - "integrity": "sha512-WMicSSvcW7VXxMVu+XqEdZ0W3jcWPZPCHslV2yM6PUao7wr6dGvdmwsH8HIBTzvh/iE886hEx60MFW5IUwaN9A==", + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-illustrations/-/semi-illustrations-2.59.0.tgz", + "integrity": "sha512-X99rjvO+QjhHM2KO8MR/kBmn/3AlJu8VVGK21Dfak1+eiKeiaR0ddGLXj7Hr8/eX0NEBjplJywIYHn80ytSOiA==", "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, "node_modules/@douyinfe/semi-theme-default": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-theme-default/-/semi-theme-default-2.58.0.tgz", - "integrity": "sha512-YDVJCa/VupAA2rAwbLKiUeMy46W8W0ZVqWWydoA2Rv8XB+65RkWY/w7D3Yg2FG0+Eg4f9/DwazD9IFUWPeIhCA==", - "dependencies": { - "glob": "^7.1.6" - } + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-theme-default/-/semi-theme-default-2.59.0.tgz", + "integrity": "sha512-EKxOfQSYkNroLaQWUg2PeJDPbWHMC3ahEXecnO3akQUo4hlcXNo68hUhUyvRQxwYLQMIo2jEGjNOF31A0G/OEQ==" }, "node_modules/@douyinfe/semi-ui": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@douyinfe/semi-ui/-/semi-ui-2.58.0.tgz", - "integrity": "sha512-UGwOlVmuZuK8n3N65R3lhhk3qcDGgw3iEyZTBb5C26NC+W56oF6mT7r+DGdLN6ui6cZJbB8dJKMiSAghb4BBXw==", + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/@douyinfe/semi-ui/-/semi-ui-2.59.0.tgz", + "integrity": "sha512-P8scN4ijfAneJi3rPNy31RJOkjGvQ58lTN4/nFMw8kSRWU1uOJkaF79nNM65dCTLzGPr4T7cHTFf0SiA6Is8QQ==", "dependencies": { "@dnd-kit/core": "^6.0.8", "@dnd-kit/sortable": "^7.0.2", "@dnd-kit/utilities": "^3.2.1", - "@douyinfe/semi-animation": "2.58.0", - "@douyinfe/semi-animation-react": "2.58.0", - "@douyinfe/semi-foundation": "2.58.0", - "@douyinfe/semi-icons": "2.58.0", - "@douyinfe/semi-illustrations": "2.58.0", - "@douyinfe/semi-theme-default": "2.58.0", + "@douyinfe/semi-animation": "2.59.0", + "@douyinfe/semi-animation-react": "2.59.0", + "@douyinfe/semi-foundation": "2.59.0", + "@douyinfe/semi-icons": "2.59.0", + "@douyinfe/semi-illustrations": "2.59.0", + "@douyinfe/semi-theme-default": "2.59.0", "async-validator": "^3.5.0", "classnames": "^2.2.6", "copy-text-to-clipboard": "^2.1.1", @@ -335,52 +332,6 @@ "glob": "10.3.10" } }, - "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@next/swc-darwin-arm64": { "version": "14.2.3", "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz", @@ -562,9 +513,9 @@ } }, "node_modules/@rushstack/eslint-patch": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.2.tgz", - "integrity": "sha512-hw437iINopmQuxWPSUEvqE56NCPsiU8N4AYtfHmJFckclktzK9YQJieD3XkDCDH4OjL+C7zgPUh73R/nrcHrqw==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.3.tgz", + "integrity": "sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==", "dev": true }, "node_modules/@swc/counter": { @@ -588,14 +539,14 @@ "dev": true }, "node_modules/@types/lodash": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.1.tgz", - "integrity": "sha512-X+2qazGS3jxLAIz5JDXDzglAF3KpijdhFxlf/V1+hEsOUc+HnWi81L/uv/EvGuV90WY+7mPGFCUDGfQC3Gj95Q==" + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha512-wYCP26ZLxaT3R39kiN2+HcJ4kTd3U1waI/cY7ivWYqFP6pW3ZNpvi6Wd6PHZx7T/t8z0vlkXMg3QYLa7DZ/IJQ==" }, "node_modules/@types/node": { - "version": "20.12.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", - "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "version": "20.12.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", + "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -607,9 +558,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.2", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.2.tgz", - "integrity": "sha512-Btgg89dAnqD4vV7R3hlwOxgqobUQKgx3MmrQRi0yYbs/P0ym8XozIAlkqVilPqHQwXs4e9Tf63rrCgl58BcO4w==", + "version": "18.3.3", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.3.tgz", + "integrity": "sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -1088,11 +1039,11 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -1138,9 +1089,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001617", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", - "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", + "version": "1.0.30001623", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001623.tgz", + "integrity": "sha512-X/XhAVKlpIxWPpgRTnlgZssJrF0m6YtRA0QDWgsBNT12uZM6LPRydR7ip405Y3t1LamD8cP2TZFEDZFBf5ApcA==", "funding": [ { "type": "opencollective", @@ -1292,9 +1243,9 @@ } }, "node_modules/core-js": { - "version": "3.37.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", - "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", + "version": "3.37.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.1.tgz", + "integrity": "sha512-Xn6qmxrQZyB0FFY8E3bgRXei3lWDJHhvI+u0q9TKIYM49G8pAr0FgnnrFRAmsbptZL1yxRADVXn+x5AGsbBfyw==", "hasInstallScript": true, "peer": true, "funding": { @@ -2284,9 +2235,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -2467,19 +2418,22 @@ } }, "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -2497,6 +2451,30 @@ "node": ">=10.13.0" } }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/globals": { "version": "13.24.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", @@ -2662,9 +2640,9 @@ } }, "node_modules/immutable": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==" + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.6.tgz", + "integrity": "sha512-Ju0+lEMyzMVZarkTn/gqRpdqd5dOPaz1mCZ0SH3JV6iFw81PldE/PEB1hWVEA288HPt4WXW8O7AWxB10M+03QQ==" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -2695,6 +2673,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -3202,9 +3181,9 @@ } }, "node_modules/language-subtag-registry": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", "dev": true }, "node_modules/language-tags": { @@ -3298,12 +3277,12 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -3331,9 +3310,9 @@ } }, "node_modules/minipass": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", - "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, "engines": { "node": ">=16 || 14 >=14.17" @@ -3687,9 +3666,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" }, "node_modules/picomatch": { "version": "2.3.1", @@ -3991,6 +3970,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -4002,6 +3982,27 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -4061,9 +4062,9 @@ } }, "node_modules/sass": { - "version": "1.77.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.1.tgz", - "integrity": "sha512-OMEyfirt9XEfyvocduUIOlUSkWOXS/LAt6oblR/ISXCTukyavjex+zQNm51pPCOiFKY1QpWvEH1EeCkgyV3I6w==", + "version": "1.77.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.2.tgz", + "integrity": "sha512-eb4GZt1C3avsX3heBNlrc7I09nyT00IUuo4eFhAbeXWU2fvA7oXI53SxODVAA+zgZCk9aunAZgO+losjR3fAwA==", "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -4893,28 +4894,28 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/xgplayer": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/xgplayer/-/xgplayer-3.0.17.tgz", - "integrity": "sha512-kaWGDlTunYFBJw0wIXqhF6A7KcDIqZzRvkqPOlpLiRFmE1vfnXB0Q6CUu8/AY8R8McIPCqpVUippGYV/1SzHVQ==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/xgplayer/-/xgplayer-3.0.18.tgz", + "integrity": "sha512-6GXcA8r9c1ANfOch0bsGO9y74YFGO0b2aLRPhhSA7BY8BCWBF1YzF6wQjssCUzVHfBtlS8p73RldL2Mpnggfiw==", "dependencies": { "danmu.js": ">=1.1.6", "delegate": "^3.2.0", "downloadjs": "1.4.7", "eventemitter3": "^4.0.7", - "xgplayer-subtitles": "3.0.17" + "xgplayer-subtitles": "3.0.18" }, "peerDependencies": { "core-js": ">=3.12.1" } }, "node_modules/xgplayer-flv": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/xgplayer-flv/-/xgplayer-flv-3.0.17.tgz", - "integrity": "sha512-T1GFHRQvK/LKvFx3KrMnvUjGhxamYE4XeuaKdflxY9YWklgm7WVvN19vqtR91yQ45fj/SggSGwhhV2gxEnTAng==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/xgplayer-flv/-/xgplayer-flv-3.0.18.tgz", + "integrity": "sha512-/UB7q8mc13lzClFGs2RjGuJjt0aLT2ceJLERcGvG8MWkDcOYFkmRAV4tZjKyyZSP/F+2J0IMutiVIvDOr2m9+w==", "dependencies": { "eventemitter3": "^4.0.7", - "xgplayer-streaming-shared": "3.0.17", - "xgplayer-transmuxer": "3.0.17" + "xgplayer-streaming-shared": "3.0.18", + "xgplayer-transmuxer": "3.0.18" }, "peerDependencies": { "core-js": ">=3.12.1", @@ -4922,9 +4923,9 @@ } }, "node_modules/xgplayer-flv.js": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/xgplayer-flv.js/-/xgplayer-flv.js-3.0.17.tgz", - "integrity": "sha512-cBMrBPu8UJ8X8+JbO9vbRD22tWZUcgTRr8eG2BrbCx7dNfxf7cQh7fdjF3sHMLtCVASsTVkmyZByKjBAhGol7A==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/xgplayer-flv.js/-/xgplayer-flv.js-3.0.18.tgz", + "integrity": "sha512-Ove+K4bnH2Rit2xKYjQNfIi5qTDnrePhA3sDhvpCLRFvzaUHGpz8BOuokRhrFu1ymEHQGHHSJ0F4Fklvuivw4A==", "dependencies": { "es6-promise": "^4.2.4", "flv.js": "^1.6.2", @@ -4933,13 +4934,33 @@ }, "peerDependencies": { "core-js": ">=3.12.1", - "xgplayer": "3.0.17" + "xgplayer": "3.0.18" + } + }, + "node_modules/xgplayer-flv.js/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/xgplayer-streaming-shared": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/xgplayer-streaming-shared/-/xgplayer-streaming-shared-3.0.17.tgz", - "integrity": "sha512-bo2elIN3ho/rdI+p+qmo5gWxNplGvLuye54a1jsiJEMB4mSCD558YLCFW3jmWGHj8206WDo2IbjcKHJeyqWBxQ==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/xgplayer-streaming-shared/-/xgplayer-streaming-shared-3.0.18.tgz", + "integrity": "sha512-PslUtcfaiEdYmuCk3UFJdLVCDht/uTu6pqc1x6cUP56y6oBzn+I6Y6px0Y5/8bSk9DBZekO3D+SOTlRUX1N5vQ==", "dependencies": { "eventemitter3": "^4.0.7" }, @@ -4948,9 +4969,9 @@ } }, "node_modules/xgplayer-subtitles": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/xgplayer-subtitles/-/xgplayer-subtitles-3.0.17.tgz", - "integrity": "sha512-gNJ/Gwj6UNBUXiOPG9yiGwg0g7Zbn6SOPz1NOuQvsdU0r5Z2KDz8dco0dkAXdxVZ2oqKi440qNFSu9+mQW30Cg==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/xgplayer-subtitles/-/xgplayer-subtitles-3.0.18.tgz", + "integrity": "sha512-8xGt3RB1FIu7393Qmfejd9f2JMogEzHjjxv+mzskWHmfT7N9X1xm6JmwCVnfMQXhKZSTtZsinEGCl1VqRjkE1g==", "dependencies": { "eventemitter3": "^4.0.7" }, @@ -4959,9 +4980,9 @@ } }, "node_modules/xgplayer-transmuxer": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/xgplayer-transmuxer/-/xgplayer-transmuxer-3.0.17.tgz", - "integrity": "sha512-kYJ0Q08FyfJtORChT0eWU1nTfXpUv+/6/MNKjGFbKCAydD8UQ8M8fIhaY8eIgq02QO9A0SOc0Urt8VEAI6cDzA==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/xgplayer-transmuxer/-/xgplayer-transmuxer-3.0.18.tgz", + "integrity": "sha512-UBQUeFI5GQZBKpAU/1/930Kk32uvVkWKMyL5Ri+rp/iB8LzYHtaU6k8yR92Tg5yKabPXzBzt5dyoEitP/mUPYQ==", "dependencies": { "@babel/runtime": "^7.15.3", "concat-typed-array": "^1.0.2", diff --git a/package.json b/package.json index eb2c2ab..6c27749 100644 --- a/package.json +++ b/package.json @@ -9,22 +9,22 @@ "lint": "next lint" }, "dependencies": { - "@douyinfe/semi-ui": "^2.58.0", + "@douyinfe/semi-ui": "^2.59.0", "ncp": "^2.0.0", "next": "^14.2.3", "qrcode.react": "^3.1.0", "react": "^18.3.1", "react-dom": "^18.3.1", "react-json-tree": "^0.19.0", - "sass": "^1.77.1", + "sass": "^1.77.2", "swr": "^2.2.5", "xgplayer": "^3.0.14", - "xgplayer-flv": "^3.0.17", - "xgplayer-flv.js": "^3.0.17" + "xgplayer-flv": "^3.0.18", + "xgplayer-flv.js": "^3.0.18" }, "devDependencies": { - "@types/node": "^20.12.11", - "@types/react": "^18.3.2", + "@types/node": "^20.12.12", + "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "eslint": "^8.57.0", "eslint-config-next": "^14.2.3",