dsh-remote-panel 0.4.2 → 0.4.4

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 (2) hide show
  1. package/lib/client.js +65 -2
  2. package/package.json +1 -1
package/lib/client.js CHANGED
@@ -1159,8 +1159,12 @@ window.__ModuleLoader__.load({
1159
1159
  .dsh-mobile-clear-workspace[data-none="true"] { display: none !important; }
1160
1160
  /* 抽屉/遮罩打开时顶栏按钮让位 */
1161
1161
  html.dsh-drawer-open .dsh-mobile-newchat { display: none !important; }
1162
- /* 「+」是固定定位 + 内联 top:6px,顶栏被安全区顶下去后它会错位,这里拉回同一基线 */
1163
- .dsh-mobile-newchat { top: calc(6px + var(--dsh-safe-top, 0px)) !important; }
1162
+ /* 「+」是固定定位 + 内联 top:6px;顶栏的 padding-top 是 12 + 安全区,
1163
+ 这里用同一个 12 才能和标题/汉堡垂直居中对齐(改 6 会高出 6px) */
1164
+ .dsh-mobile-newchat {
1165
+ top: calc(12px + var(--dsh-safe-top, 0px)) !important;
1166
+ height: 40px !important;
1167
+ }
1164
1168
 
1165
1169
  /* 空态:鱼标按原型放大并竖排到标题上方;标题 22/650,收掉「预览版」角标 */
1166
1170
  .pXSMma_headline { flex-direction: column !important; align-items: center !important; gap: 14px !important; }
@@ -1341,6 +1345,65 @@ window.__ModuleLoader__.load({
1341
1345
  .dsh-mobile-scrim, .dsh-mobile-offline { transition: none; animation: none; }
1342
1346
  }
1343
1347
 
1348
+ /* 会话正文的横向留白:原生每侧 = clearance(16) + 16 = 32px,
1349
+ 390 的屏上等于两边各砍掉一行字;压到 16px,跟输入条卡片同一条基线 */
1350
+ .EvIC1a_scroll {
1351
+ padding-left: 16px !important;
1352
+ padding-right: 16px !important;
1353
+ }
1354
+
1355
+ /* 正文滚动区收口到输入条上沿:
1356
+ 原生把输入条做在滚动容器里(sticky 贴底、上沿渐隐到背景色),所以正文会一直滚到
1357
+ 输入条背后,滚轴也跟着画到屏幕最底。手机上更希望「正文止于输入条上沿」,
1358
+ 这里把输入条改成固定定位贴屏幕底、正文用 margin 让出它的高度,
1359
+ 滚动容器(连同滚轴)自然就停在输入条上方了。
1360
+ 用 fixed 而不是 absolute:切换「轨迹」页时滚动容器会因为 composer overlay 变成
1361
+ position: relative,absolute 会被它缩小后的盒子接住,输入条就浮到屏幕中间。
1362
+ 高度用原生写在滚动容器上的 --dsh-composer-height(ResizeObserver 跟输入框同步)。 */
1363
+ .wSkVaW_body[data-content-phase="active"] .wSkVaW_scrollBody {
1364
+ margin-bottom: var(--dsh-composer-height, 152px) !important;
1365
+ }
1366
+ .wSkVaW_body[data-content-phase="active"] .wSkVaW_composerSeat {
1367
+ position: fixed !important;
1368
+ left: 0;
1369
+ right: 0;
1370
+ bottom: 0;
1371
+ z-index: 7;
1372
+ /* 正文已经不往输入条背后滚了,那条「渐隐到纯黑」的灰带也就不需要了 */
1373
+ background: var(--dsw-alias-bg-base) !important;
1374
+ background-image: none !important;
1375
+ }
1376
+ body[data-ds-dark-theme] .wSkVaW_body[data-content-phase="active"] .wSkVaW_composerSeat {
1377
+ background: #000 !important;
1378
+ }
1379
+ /* 「回到底部」浮球原先按「输入条压在正文上」算偏移,正文让开后要贴回视口底 */
1380
+ [data-conversation-scroll] .EvIC1a_toBottomSlot { bottom: 12px !important; }
1381
+ /* 轨迹页也按「输入条浮在内容上」留了 composer + 16 的底部空白,收口后就成了死空白 */
1382
+ .wSkVaW_body[data-content-phase="active"] [class*="_ledger"] {
1383
+ --dsh-trajectory-bottom-clearance: 16px;
1384
+ }
1385
+
1386
+ /* 滚轴细一点:原生 5px,390 屏上太抢眼。
1387
+ 主题把变量挂在 body 上(不是 :root),所以得盖在同一层 */
1388
+ body { --dsh-scrollbar-width: 3px !important; }
1389
+
1390
+ /* 思考过程展开:原生给步骤组一个 max-height:400px 的内部滚动框,
1391
+ 展开后就是「页面一根滚轴 + 框里一根滚轴」,手指极易滚错。
1392
+ 手机上一律展开到底(只留页面一根滚轴),改用一条左侧竖线 + 轻微缩进,
1393
+ 表示「这一段是过程的旁注」;不再额外加内边距。 */
1394
+ .O_Ebla_body {
1395
+ max-height: none !important;
1396
+ overflow: visible !important;
1397
+ overscroll-behavior: none !important;
1398
+ scrollbar-gutter: auto !important;
1399
+ border-left: 2px solid var(--dsw-alias-border-l3);
1400
+ padding-left: 10px;
1401
+ }
1402
+ .O_Ebla_fadeTop, .O_Ebla_fadeBottom {
1403
+ mask-image: none !important;
1404
+ -webkit-mask-image: none !important;
1405
+ }
1406
+
1344
1407
  /* 会话内容:代码块 / 表格 / 图片 / 附件在手机上不撑破页面 */
1345
1408
  .md-code-block { max-width: 100%; }
1346
1409
  .md-code-block pre,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-remote-panel",
3
- "version": "0.4.2",
3
+ "version": "0.4.4",
4
4
  "description": "DSH 远程访问控制面:部署向导、状态面板与一键配对(EasyTier + Caddy),数据面保持进程外。",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",