dsh-bots 0.2.19 → 0.2.21

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 +13 -5
  2. package/package.json +1 -1
package/lib/client.js CHANGED
@@ -284,10 +284,15 @@
284
284
  .dbs-navBody{display:flex;flex-direction:column;min-height:0;flex:1}
285
285
  .dbs-botsBody{overflow-y:auto;scrollbar-gutter:stable;padding-right:var(--dsh-sidebar-inline-padding,8px)}
286
286
  .dbs-navBodyErr{padding:6px 12px;font-size:12px;line-height:20px;color:var(--dsw-alias-label-tertiary)}
287
- .dbs-secHead{position:relative;cursor:pointer;border-radius:8px}
287
+ /* Hover actions RESERVE their space (visibility/opacity swap, not
288
+ display:none): a display toggle let the appearing buttons stretch the
289
+ row on hover and shrink it on leave — width/height jitter the user read
290
+ as flicker. Fixed 30px row + always-laid-out actions = zero geometry
291
+ change; the same trick the native headerActions uses (max-width/opacity). */
292
+ .dbs-secHead{position:relative;cursor:pointer;border-radius:8px;height:30px}
288
293
  .dbs-secHead:hover{background:var(--dsw-alias-interactive-bg-hover)}
289
- .dbs-secHead .dbs-rowActions{display:none}
290
- .dbs-secHead:hover .dbs-rowActions,.dbs-secHead:focus-within .dbs-rowActions{display:inline-flex}
294
+ .dbs-secHead .dbs-rowActions{display:inline-flex;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .12s ease-out}
295
+ .dbs-secHead:hover .dbs-rowActions,.dbs-secHead:focus-within .dbs-rowActions,.dbs-secHead[data-menu="true"] .dbs-rowActions{visibility:visible;opacity:1;pointer-events:auto}
291
296
  .dbs-secMenu{position:absolute;top:100%;right:0;z-index:40;min-width:148px;background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-border-l2);border-radius:12px;padding:4px;box-shadow:0 12px 40px rgba(0,0,0,.22);animation:dbs-modal-in .14s ease-out}
292
297
  .dbs-secMenuItem{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;border-radius:8px;font-size:13px;line-height:18px;color:var(--dsw-alias-label-primary);cursor:pointer;background:none;border:none;text-align:left}
293
298
  .dbs-secMenuItem:hover{background:var(--dsw-alias-interactive-bg-hover)}
@@ -787,7 +792,9 @@
787
792
  info: undefined,
788
793
  error: null,
789
794
  chatAgentId: null,
790
- open: { workspaces: true, bots: true },
795
+ // First paint: only 「工作区」 is expanded — Bots folds until asked,
796
+ // matching the one-column-of-attention rule the accordion enforces.
797
+ open: { workspaces: true, bots: false },
791
798
  /** Host-computed unread counts per agent id (plugin-owned model). */
792
799
  unreadCounts: {},
793
800
  /** Create dialog: 'bot' | 'group' | null — rendered as a system-style
@@ -1152,11 +1159,12 @@
1152
1159
  };
1153
1160
  return e('div', { key: label }, e('div', {
1154
1161
  className: 'dbs-navBodyErr dbs-secHead', role: 'button', tabIndex: 0, 'aria-expanded': isOpen,
1162
+ 'data-menu': menuOpen ? 'true' : 'false',
1155
1163
  // Native sectionHeader outdent: label at x=16 (12 sidebar
1156
1164
  // padding + 4), aligned with the group headers. The previous
1157
1165
  // 12px here pushed section labels 8px right of the native
1158
1166
  // baseline, making both sections read horizontally off.
1159
- style: { padding: '4px 8px 2px 4px', display: 'flex', alignItems: 'center', gap: 2 },
1167
+ style: { padding: '0 8px 0 4px', display: 'flex', alignItems: 'center', gap: 2 },
1160
1168
  onClick: toggle,
1161
1169
  onKeyDown: (ev) => { if (ev.key === 'Enter' || ev.key === ' ') {
1162
1170
  ev.preventDefault();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-bots",
3
- "version": "0.2.19",
3
+ "version": "0.2.21",
4
4
  "description": "Multi-bot workbench for DeepSeek Harness: bridges the sdk-bots orchestration gateway (group chats, single bots) into the dsh web shell with official-styled UI.",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",