lookatstudy-mobile 0.15.0 → 0.16.0

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.
Files changed (70) hide show
  1. package/install-termux.sh +35 -3
  2. package/package.json +1 -1
  3. package/server.cjs +45279 -10136
  4. package/web/assets/{abnfDiagram-N423BO3Z-BXpGdNuJ.js → abnfDiagram-N423BO3Z-uVyZuC2D.js} +1 -1
  5. package/web/assets/api-web-BydHmVA4.js +1 -0
  6. package/web/assets/{arc-D3nd0e6x.js → arc-Bj7Boh6s.js} +1 -1
  7. package/web/assets/{architectureDiagram-T3A2C74G-_KSRK-eF.js → architectureDiagram-T3A2C74G-CrbkXNQp.js} +1 -1
  8. package/web/assets/{blockDiagram-VBNYF7ZC-CTH5HFTT.js → blockDiagram-VBNYF7ZC-DAzIMkNI.js} +1 -1
  9. package/web/assets/{c4Diagram-5PPSVZJV-A0wHAp7g.js → c4Diagram-5PPSVZJV-NlYvtXbZ.js} +1 -1
  10. package/web/assets/channel-JNlIjRLZ.js +1 -0
  11. package/web/assets/{chunk-2GRJ4B5K-DqNyC6-z.js → chunk-2GRJ4B5K-Cy2RZsUk.js} +1 -1
  12. package/web/assets/{chunk-2Q5K7J3B-CdnPfIqd.js → chunk-2Q5K7J3B-DtK3xo3Z.js} +1 -1
  13. package/web/assets/{chunk-5RXB4S5H-BGhsRWsR.js → chunk-5RXB4S5H-CmVGejcd.js} +1 -1
  14. package/web/assets/{chunk-5VM5RSS4-B52gSt0J.js → chunk-5VM5RSS4-EO_k0Crh.js} +1 -1
  15. package/web/assets/{chunk-6Q2QTUOP-sn207b1U.js → chunk-6Q2QTUOP-TBVy-R-c.js} +1 -1
  16. package/web/assets/{chunk-GF5L2VYU-DQ35exrC.js → chunk-GF5L2VYU-_N0jD1tE.js} +1 -1
  17. package/web/assets/{chunk-JWPE2WC7-V2anUJlE.js → chunk-JWPE2WC7-BIAuolFx.js} +1 -1
  18. package/web/assets/{chunk-KBJHAD2P-f5DAZkkL.js → chunk-KBJHAD2P-DqcnXfI8.js} +1 -1
  19. package/web/assets/{chunk-RYQCIY6F-C4aIfT0J.js → chunk-RYQCIY6F-D5RQKqlg.js} +1 -1
  20. package/web/assets/{chunk-XXDRQBXY-BnihJuYl.js → chunk-XXDRQBXY-1Ksx_dPa.js} +1 -1
  21. package/web/assets/classDiagram-JCYQIIEL-C-12RKGI.js +1 -0
  22. package/web/assets/classDiagram-v2-OCEON4UE-C-12RKGI.js +1 -0
  23. package/web/assets/{cose-bilkent-JH36ORCC-BnJjiie5.js → cose-bilkent-JH36ORCC-DAUofPwo.js} +1 -1
  24. package/web/assets/{cynefin-VYW2F7L2-CG6JQnIq.js → cynefin-VYW2F7L2-CAYbjl57.js} +1 -1
  25. package/web/assets/{cynefinDiagram-MW4NZA55-Bpm2ec5V.js → cynefinDiagram-MW4NZA55-UaEI49aN.js} +1 -1
  26. package/web/assets/{dagre-VZM6K2ZE-Dp-oDNQg.js → dagre-VZM6K2ZE-CKP3kBHM.js} +1 -1
  27. package/web/assets/{diagram-7IWD3JNH-B7UEiNnb.js → diagram-7IWD3JNH-CLfr8NaW.js} +1 -1
  28. package/web/assets/{diagram-B4RE2ZJO-DHSLHS46.js → diagram-B4RE2ZJO-h051w7zn.js} +1 -1
  29. package/web/assets/{diagram-LBJQPF4R-V8wA5qd1.js → diagram-LBJQPF4R-CUOsO4df.js} +1 -1
  30. package/web/assets/{diagram-Q27KOJAE-BExt6RO_.js → diagram-Q27KOJAE-BXbJxAlu.js} +1 -1
  31. package/web/assets/{diagram-UB23O5K3-C5IsI8Wd.js → diagram-UB23O5K3-BHV6tpU9.js} +1 -1
  32. package/web/assets/{ebnfDiagram-BXEA7PRR-worbNlxi.js → ebnfDiagram-BXEA7PRR-CAahAB9-.js} +1 -1
  33. package/web/assets/{erDiagram-JOGREHBK-SmQLtE55.js → erDiagram-JOGREHBK-Bz30kI2B.js} +1 -1
  34. package/web/assets/{flowDiagram-UKHOOZJN-Dlj-KsqU.js → flowDiagram-UKHOOZJN-CsFP_-KD.js} +1 -1
  35. package/web/assets/{ganttDiagram-PKOTCBZU-wrhVphV1.js → ganttDiagram-PKOTCBZU-Cm5qe_5U.js} +1 -1
  36. package/web/assets/{gitGraphDiagram-DS77QQ5N-x5RHkYuw.js → gitGraphDiagram-DS77QQ5N-DNktj2Kq.js} +1 -1
  37. package/web/assets/index-BC_sP79K.js +563 -0
  38. package/web/assets/index-BSTI-ywB.css +1 -0
  39. package/web/assets/{infoDiagram-6WML65LV-QSObfGHr.js → infoDiagram-6WML65LV-vZK5e7Xx.js} +1 -1
  40. package/web/assets/{ishikawaDiagram-WSZJBQD7-DnFs9iM-.js → ishikawaDiagram-WSZJBQD7-Bt6EfUkc.js} +1 -1
  41. package/web/assets/{journeyDiagram-NVQOT4AX-DRBcWglZ.js → journeyDiagram-NVQOT4AX-DmVq_JOG.js} +1 -1
  42. package/web/assets/{kanban-definition-27J2QSJJ-DJ4YDBq2.js → kanban-definition-27J2QSJJ-tE00W58E.js} +1 -1
  43. package/web/assets/{linear-CakPBKKz.js → linear-CAqnKu9J.js} +1 -1
  44. package/web/assets/{mermaid.core-ChTdgwuo.js → mermaid.core-uJSxER2x.js} +4 -4
  45. package/web/assets/{mindmap-definition-FAOFIHXS-CheoRsDG.js → mindmap-definition-FAOFIHXS-D5S_P9_s.js} +1 -1
  46. package/web/assets/{pegDiagram-VL7TDLO6-CZaM-7KZ.js → pegDiagram-VL7TDLO6-BZkaiQ_9.js} +1 -1
  47. package/web/assets/{pieDiagram-7S7Q4E2Y-C5M0AvL-.js → pieDiagram-7S7Q4E2Y-DYpiHnao.js} +1 -1
  48. package/web/assets/{quadrantDiagram-CIZ2JOQS-COeP6vBt.js → quadrantDiagram-CIZ2JOQS-BqycGz7D.js} +1 -1
  49. package/web/assets/{railroadDiagram-AXF67PYL-C4o9Lel-.js → railroadDiagram-AXF67PYL-DEoY1V9D.js} +1 -1
  50. package/web/assets/{requirementDiagram-LRYGKXZP-GMDyeWVe.js → requirementDiagram-LRYGKXZP-CH-xotLo.js} +1 -1
  51. package/web/assets/{sankeyDiagram-W5VNT64P-DSZwyoSj.js → sankeyDiagram-W5VNT64P-BCLFObl1.js} +1 -1
  52. package/web/assets/{sequenceDiagram-SI44F4Z6-DGBuqaHP.js → sequenceDiagram-SI44F4Z6-CE1T-Oar.js} +1 -1
  53. package/web/assets/{sizeCapture-X5ZJPWSS-B-zxFv3_.js → sizeCapture-X5ZJPWSS-uf4-mQAU.js} +1 -1
  54. package/web/assets/{stateDiagram-OKZ733FA-D7G84Iof.js → stateDiagram-OKZ733FA-Dt2wQF9A.js} +1 -1
  55. package/web/assets/stateDiagram-v2-UEYNNEHI-BbJD6fMT.js +1 -0
  56. package/web/assets/{swimlanes-SLNWSIFB-DzSBg8NJ.js → swimlanes-SLNWSIFB-jLXDXtjZ.js} +2 -2
  57. package/web/assets/swimlanesDiagram-ULZ7WXOC-BTdV0I38.js +8 -0
  58. package/web/assets/{timeline-definition-Z64GVDOM-CsGorQl9.js → timeline-definition-Z64GVDOM-CPajwTED.js} +1 -1
  59. package/web/assets/{vennDiagram-T6HMQDX7-DDwrAPDB.js → vennDiagram-T6HMQDX7-DKkB137-.js} +1 -1
  60. package/web/assets/{wardleyDiagram-T6FBY63Y-CcclmHqH.js → wardleyDiagram-T6FBY63Y-CHD6tq1V.js} +1 -1
  61. package/web/assets/{xychartDiagram-ELKLHX3M-CJORQave.js → xychartDiagram-ELKLHX3M-DIO9Q6BD.js} +1 -1
  62. package/web/index.html +2 -2
  63. package/web/assets/api-web-CgR5Mh04.js +0 -1
  64. package/web/assets/channel-DUHQbrVw.js +0 -1
  65. package/web/assets/classDiagram-JCYQIIEL-CRVgeWuu.js +0 -1
  66. package/web/assets/classDiagram-v2-OCEON4UE-CRVgeWuu.js +0 -1
  67. package/web/assets/index-D0a3MQ1T.css +0 -1
  68. package/web/assets/index-DjwNXkwE.js +0 -563
  69. package/web/assets/stateDiagram-v2-UEYNNEHI-DFfmMQ2j.js +0 -1
  70. package/web/assets/swimlanesDiagram-ULZ7WXOC-DvlFN_gb.js +0 -8
package/install-termux.sh CHANGED
@@ -5,7 +5,7 @@
5
5
  # bash ~/lookatstudy/stop.sh # 停止
6
6
  # bash ~/lookatstudy/status.sh # 状态 + 访问链接
7
7
  # bash ~/lookatstudy/update.sh # 更新便携包并重启
8
- # npm 依赖:便携包(server.cjs 单文件) GitHub Release 下载,中国网络走 ghproxy 回退链。
8
+ # 不在本机跑 npm:便携包与语音引擎包的 tarball 主源 npmmirror(自动同步 npmjs),未同步/失败回退 GitHub Release 直连+代理链。
9
9
  set -euo pipefail
10
10
 
11
11
  PORT="${LOOKATSTUDY_PORT:-17890}"
@@ -16,9 +16,41 @@ GH_VOICE="https://github.com/Kaiji-Z/LookatStudy/releases/latest/download/lookat
16
16
  # 直连优先,失败再走代理前缀(镜像只做回退:KaijiBot 教训是镜像同步延迟会坏事,大头收益在 apt 的 TUNA)
17
17
  DL_PREFIXES=("" "https://gh-proxy.com/" "https://ghproxy.net/" "https://ghfast.top/")
18
18
 
19
- # npmmirror(阿里,自动同步 npm)解析包的 latest tarball 地址;空输出=未同步/网络失败
19
+ # npmmirror(阿里,自动同步 npm)解析包的 latest tarball 地址;空输出=未同步/网络失败。
20
+ # 同步滞后守卫:刚发版的头几分钟镜像 latest 可能还指向上一个版本,静默拿到旧包
21
+ # —— 版本落后于 GitHub 最新 release 时按"未命中"处理,走 GitHub 回退链(GitHub 的
22
+ # releases/latest/download 永远指向最新版)。GitHub 版本探测失败(网络)则信任镜像,
23
+ # 不因 GitHub 不可达惩罚国内直连的镜像主源。
20
24
  npm_tarball() {
21
- curl -sfL --connect-timeout 8 --max-time 20 "https://registry.npmmirror.com/$1/latest" | sed -n 's/.*"tarball":"\([^"]*\)".*//p'
25
+ local json ver gh
26
+ json=$(curl -sfL --connect-timeout 8 --max-time 20 "https://registry.npmmirror.com/$1/latest" || true)
27
+ [ -n "$json" ] || return 1
28
+ ver=$(printf '%s' "$json" | sed -n 's/.*"version":"\([^"]*\)".*/\1/p')
29
+ if [ -n "$ver" ]; then
30
+ gh=$(gh_latest_version)
31
+ if [ -n "$gh" ] && ! ver_ge "$ver" "$gh"; then
32
+ info "npm 镜像同步滞后(镜像 v${ver} < GitHub v${gh}),走 GitHub 链…"
33
+ return 1
34
+ fi
35
+ fi
36
+ printf '%s' "$json" | sed -n 's/.*"tarball":"\([^"]*\)".*/\1/p'
37
+ }
38
+
39
+ # GitHub 最新 release 版本号(仅数字串;空=探测失败)。releases/latest/download 会 302 到
40
+ # 带 tag 的最终资产 URL,HEAD 一次读 url_effective 即得,不用碰 api.github.com。
41
+ gh_latest_version() {
42
+ local final
43
+ final=$(curl -sIL --connect-timeout 8 --max-time 20 -o /dev/null -w '%{url_effective}' \
44
+ "https://github.com/Kaiji-Z/LookatStudy/releases/latest/download/probe" 2>/dev/null || true)
45
+ printf '%s' "$final" | sed -n 's#.*/download/v\([0-9][0-9.]*\)/.*#\1#p'
46
+ }
47
+
48
+ # 语义版本比较:ver_ge A B = A >= B(空段按 0 补齐;非数字/空返回失败)
49
+ ver_ge() {
50
+ local a b
51
+ a=$(printf '%s' "$1" | tr -d 'v' | awk -F. '{printf "%02d%02d%02d", $1, $2, $3}')
52
+ b=$(printf '%s' "$2" | tr -d 'v' | awk -F. '{printf "%02d%02d%02d", $1, $2, $3}')
53
+ [ -n "$a" ] && [ -n "$b" ] && [ "$a" -ge "$b" 2>/dev/null ]
22
54
  }
23
55
 
24
56
  info() { printf '\033[1m[*]\033[0m %s\n' "$*"; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lookatstudy-mobile",
3
- "version": "0.15.0",
3
+ "version": "0.16.0",
4
4
  "description": "LookatStudy Termux portable bundle (server.cjs + web frontend)",
5
5
  "repository": {
6
6
  "type": "git",