podflow 20250404.6__py3-none-any.whl → 20250404.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -33,6 +33,7 @@ def show_progress(stream):
33
33
  eta = time_format(stream["eta"]).ljust(8)
34
34
  time_print(
35
35
  f"\033[94m{percent}%\033[0m|{downloaded_bytes}/{total_bytes}|\033[32m{speed}/s\033[0m|\033[93m{eta}\033[0m",
36
+ Top=True,
36
37
  NoEnter=True,
37
38
  Time=False,
38
39
  )
@@ -43,5 +44,6 @@ def show_progress(stream):
43
44
  elapsed = "Unknown "
44
45
  time_print(
45
46
  f"100.0%|{downloaded_bytes}/{total_bytes}|\033[32m{speed}/s\033[0m|\033[97m{elapsed}\033[0m",
47
+ Top=True,
46
48
  Time=False,
47
49
  )
podflow/httpfs/to_html.py CHANGED
@@ -54,24 +54,3 @@ def ansi_to_html(ansi_text):
54
54
  def qrcode_to_html(url):
55
55
  text = f'<span class="qrcode-container" data-url="{url}"></span>'
56
56
  gVar.index_message["podflow"].append(text)
57
-
58
-
59
- def message_html():
60
- # [text, Top, NoEnter]
61
- podflow = []
62
- messages = gVar.index_message["podflow"]
63
- if messages:
64
- for index, message in enumerate(messages):
65
- if index > 1 and messages[index -1][2]:
66
- if message[1]:
67
- podflow[-1] = message[0]
68
- else:
69
- podflow[-1] += message[0]
70
- else:
71
- podflow.append(message[0])
72
- message = {
73
- "podflow": podflow,
74
- "http": gVar.index_message["http"],
75
- }
76
- return message
77
-
@@ -407,7 +407,7 @@
407
407
  function appendMessages(container, newMessages, oldMessages) {
408
408
  // 判断当前是否在底部
409
409
  const isAtBottom = container.scrollHeight - container.scrollTop <= container.clientHeight + 10;
410
-
410
+
411
411
  // 只追加新数据,避免重复渲染
412
412
  if (newMessages.length === oldMessages.length && newMessages.length > 0) {
413
413
  const lastNewMessage = newMessages[newMessages.length - 1];
@@ -416,7 +416,7 @@
416
416
  const p = document.createElement('p');
417
417
  p.innerHTML = lastNewMessage;
418
418
  p.className = 'message'; // 添加 CSS 类名
419
-
419
+
420
420
  // 获取容器的最后一个子元素
421
421
  const lastChild = container.lastElementChild;
422
422
  // 如果容器有子元素,则替换最后一个
@@ -436,12 +436,24 @@
436
436
  container.appendChild(p);
437
437
  });
438
438
  }
439
-
439
+
440
+ // 替换倒数第二项和倒数第三项
441
+ for (let i = 2; i <= 3; i++) {
442
+ const child = container.children[container.children.length - (i + 1)];
443
+ if (child && newMessages.length > i) {
444
+ const newMessage = newMessages[newMessages.length - (i + 1)];
445
+ const p = document.createElement('p');
446
+ p.innerHTML = newMessage;
447
+ p.className = 'message'; // 添加 CSS 类名
448
+ container.replaceChild(p, child);
449
+ }
450
+ }
451
+
440
452
  // 如果用户没有主动滚动,才自动滚动到底部
441
453
  if (!userScrolled) {
442
454
  container.scrollTop = container.scrollHeight;
443
455
  }
444
- }
456
+ }
445
457
 
446
458
  function startMessagePolling() {
447
459
  getMessages();
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: podflow
3
- Version: 20250404.6
3
+ Version: 20250404.8
4
4
  Summary: A podcast server that includes YouTube and BiliBili
5
5
  Home-page: https://github.com/gruel-zxz/podflow
6
6
  Author: gruel_zxz
@@ -36,7 +36,7 @@ podflow/download/__init__.py,sha256=1lATXiOAEx5oDUDR99mQRiTrQlQ9CQkJNAKpsLrnPCo,
36
36
  podflow/download/convert_bytes.py,sha256=6Q3TcPGzCO2FlhOKWbp9RB_GPmfuyKY5suIyE9EJf6k,543
37
37
  podflow/download/delete_part.py,sha256=wjY6WulpUMjLx38on0kTLXj0gA04rIuKAdwFidZtWGU,679
38
38
  podflow/download/dl_aideo_video.py,sha256=LxA_Nt51ZG2MaIyVOi5CyDH7PA-EONxxAVW1wO8i4vE,10344
39
- podflow/download/show_progress.py,sha256=Wfrjx4bapq5IMbIDVWJb61EqXS2D40Tcl8EJqVms1IQ,1672
39
+ podflow/download/show_progress.py,sha256=w_nzq6LbewXpFwXENQwbA5-L-j3XDqzfQSMU7E_CWxs,1716
40
40
  podflow/download/wait_animation.py,sha256=AUTvszXF89QA7XYjocFIauPKV7Qj8cFqry44teClaLQ,1314
41
41
  podflow/download/youtube_and_bilibili_download.py,sha256=dlUh9cPHrYgZAhtXlBUOdFIpZOhv9xOtgdcTaqUvLuY,1294
42
42
  podflow/httpfs/__init__.py,sha256=BxEXkufjcx-a0F7sDVXo65hmyANqCCbZUd6EH9i8T2c,45
@@ -44,7 +44,7 @@ podflow/httpfs/app_bottle.py,sha256=jHgRxvJdt3Gh0KBWlzR_pwdfgy_-vQRFNWXvbwYLObY,
44
44
  podflow/httpfs/browser.py,sha256=BJ4Xkfiki_tDr0Sc9RqAcEfIVpkAZ3RFOwo0aMHlY3U,197
45
45
  podflow/httpfs/get_channelid.py,sha256=gcwy4IVHBWNQz7qPCpjwiAklGFLRGzvM33-UZz7oFvo,2296
46
46
  podflow/httpfs/port_judge.py,sha256=l_nLpsSiIhAzfJGCOWyYC-KkCCWPUW2ybe_5hdMOEzE,764
47
- podflow/httpfs/to_html.py,sha256=a5IzUhbithfESqdc7-ovPegR_6Ovon77J10oIcJSy2U,2417
47
+ podflow/httpfs/to_html.py,sha256=q-pQWhaqSGKZqRc3nV3ZSVexIIj-EJXbfXTMGGkTB7s,1863
48
48
  podflow/makeup/__init__.py,sha256=ligUtfj0stTcOHFXDF6eAN7Up2PxlB0GnGbLq7iDY3c,45
49
49
  podflow/makeup/del_makeup_format_fail.py,sha256=XizQh74QYXxRg0e1uerXjd4Tiq5qChks0fTAY7n3Z1I,642
50
50
  podflow/makeup/make_up_file.py,sha256=WJnKtdr6-CMEpxJAADCEhcyIwdUdisxbqXGmzo3R5KQ,2222
@@ -80,7 +80,7 @@ podflow/remove/remove_dir.py,sha256=xQIhrnqnYjMzXjoSWaTvm7JwPYOFTN1muuTPdaLDXpQ,
80
80
  podflow/remove/remove_file.py,sha256=8wAJQehs-XBqvu0vPlEme2_tt0FZxc5ELwGMxXA_558,982
81
81
  podflow/repair/__init__.py,sha256=Gpc1i6xiSLodKjjmzH66c_Y1z0HQ9E9CS3p95FRnVFM,45
82
82
  podflow/repair/reverse_log.py,sha256=Wc_vAH0WB-z1fNdWx7FYaVH4caRPtot7tDwDwFhmpz4,1106
83
- podflow/templates/index.html,sha256=7oM62bhnEZdzO3yNP2T8u90G8tVcOuiOPhjrE-UuieQ,17474
83
+ podflow/templates/index.html,sha256=cb2qoU7xienWiZ02O0n_uoQOtwq0KCNML5xYGqsghmM,18014
84
84
  podflow/upload/__init__.py,sha256=AtOSXDrE5EjUe3z-iBd1NTDaH8n_X9qA5WXdBLkONjA,45
85
85
  podflow/upload/add_upload.py,sha256=_2-V0z75Lwu-PUCfMD9HOSxZTB102yZlZW5hSdlHcsc,1432
86
86
  podflow/upload/build_hash.py,sha256=9opa3xLd7nJbGGX5xa3uuKPS6dxlbkAb87ZdEiUxmxI,473
@@ -95,8 +95,8 @@ podflow/youtube/__init__.py,sha256=pgXod8gq0IijZxIkPSwgAOcb9JI5rd1mqMomoR7bcJ4,4
95
95
  podflow/youtube/build.py,sha256=3LYk_ICVXj9XkE9jZ8jEVI8596xxS_QZkcoIwcBE3Ys,12006
96
96
  podflow/youtube/get.py,sha256=Of7PRgUknhpyW70nvyVAUYVb5KyFViKiBTfH3Y6Mke8,16970
97
97
  podflow/youtube/login.py,sha256=KYl--ya6Z1u0uIcOp9l8i3DIIj9hsYUDH4dtJjI0MLM,1295
98
- podflow-20250404.6.dist-info/METADATA,sha256=-bU6U-mXqPgU8jSEv5hVYreaNaAGD9gZTt_rykIw4j4,14165
99
- podflow-20250404.6.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
100
- podflow-20250404.6.dist-info/entry_points.txt,sha256=mn7hD_c_dmpKe3XU0KNekheBvD01LhlJ9htY-Df0j2A,131
101
- podflow-20250404.6.dist-info/top_level.txt,sha256=fUujhhz-RrMI8aGvi-3Ey5y7FQnpOOgoFw9OWM3yLCU,8
102
- podflow-20250404.6.dist-info/RECORD,,
98
+ podflow-20250404.8.dist-info/METADATA,sha256=Z0RBsVpwwdyYZk8f72jeGN-iRlgwGOL5OF1cSsrcIRQ,14165
99
+ podflow-20250404.8.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
100
+ podflow-20250404.8.dist-info/entry_points.txt,sha256=mn7hD_c_dmpKe3XU0KNekheBvD01LhlJ9htY-Df0j2A,131
101
+ podflow-20250404.8.dist-info/top_level.txt,sha256=fUujhhz-RrMI8aGvi-3Ey5y7FQnpOOgoFw9OWM3yLCU,8
102
+ podflow-20250404.8.dist-info/RECORD,,