@stofone/dsh-agent-roster 0.11.0 → 0.11.1

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 (3) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/client.js +16 -7
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,15 @@
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.11.1] - 2026-11-03
8
+
9
+ ### Fixed
10
+
11
+ - Empty states hugged the panel edge: the rosters and teams tabs rendered their "nothing here yet" block
12
+ straight into a page whose padding is `0` (each tab supplies its own gutter), so the sentence sat against
13
+ the window border while the tab labels and lists were indented. Both now sit in `.rstr-empty-wrap`, the
14
+ same 16/28px measure the source tab and the health tab use.
15
+
7
16
  ## [0.11.0] - 2026-11-03
8
17
 
9
18
  ### Changed
@@ -548,7 +557,8 @@
548
557
  - 工具返回值含 `undefined` 键,运行时按 `value is not lossless JSON` 整次拒绝;缺失值统一写 `null`,
549
558
  且所有返回值先过 `lib/json.js#lossless`。
550
559
 
551
- [Unreleased]: https://github.com/dsh-agent-roster/dsh-agent-roster/compare/v0.11.0...main
560
+ [Unreleased]: https://github.com/dsh-agent-roster/dsh-agent-roster/compare/v0.11.1...main
561
+ [0.11.1]: https://github.com/dsh-agent-roster/dsh-agent-roster/compare/v0.11.0...v0.11.1
552
562
  [0.11.0]: https://github.com/dsh-agent-roster/dsh-agent-roster/compare/v0.10.7...v0.11.0
553
563
  [0.10.7]: https://github.com/dsh-agent-roster/dsh-agent-roster/compare/v0.10.6...v0.10.7
554
564
  [0.10.6]: https://github.com/dsh-agent-roster/dsh-agent-roster/compare/v0.10.5...v0.10.6
package/client.js CHANGED
@@ -1458,12 +1458,17 @@ window.__ModuleLoader__.load({
1458
1458
 
1459
1459
  if (tab === "rosters") {
1460
1460
  if (rosters.length === 0) {
1461
- content = h(EmptyState, {
1462
- title: t("panel.emptyTitle"),
1463
- body: t("panel.emptyBody"),
1464
- cta: targets.length === 0 ? undefined : t("panel.emptyCta"),
1465
- onCta: () => setEditor({ roster: null, rootDir: defaultRoot }),
1466
- });
1461
+ // 空状态与列表共享同一条左沿:页面本身 padding 为 0,留白由各页签自己给。
1462
+ content = h(
1463
+ "div",
1464
+ { className: "rstr-empty-wrap" },
1465
+ h(EmptyState, {
1466
+ title: t("panel.emptyTitle"),
1467
+ body: t("panel.emptyBody"),
1468
+ cta: targets.length === 0 ? undefined : t("panel.emptyCta"),
1469
+ onCta: () => setEditor({ roster: null, rootDir: defaultRoot }),
1470
+ }),
1471
+ );
1467
1472
  } else {
1468
1473
  content = h(
1469
1474
  "div",
@@ -1561,7 +1566,7 @@ window.__ModuleLoader__.load({
1561
1566
  if (tab === "teams") {
1562
1567
  content =
1563
1568
  teams.length === 0
1564
- ? h(EmptyState, { title: t("team.emptyTitle"), body: t("team.emptyBody") })
1569
+ ? h("div", { className: "rstr-empty-wrap" }, h(EmptyState, { title: t("team.emptyTitle"), body: t("team.emptyBody") }))
1565
1570
  : h("div", { className: "rstr-cards" }, teams.map((team) => h(TeamCard, { key: team.id, team })));
1566
1571
  }
1567
1572
 
@@ -2600,6 +2605,10 @@ window.__ModuleLoader__.load({
2600
2605
 
2601
2606
  /* ---- 空态 / 健康 / 页脚 ------------------------------------------------ */
2602
2607
 
2608
+ .rstr-empty-wrap {
2609
+ padding: 16px 28px 28px;
2610
+ min-width: 0;
2611
+ }
2603
2612
  .rstr-empty { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; padding: 40px 2px; color: var(--dsw-alias-label-primary); }
2604
2613
  .rstr-empty-title { margin: 0; font-size: 15px; font-weight: 600; }
2605
2614
  .rstr-health { display: flex; flex-direction: column; gap: 14px; padding: 16px 28px 28px; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stofone/dsh-agent-roster",
3
- "version": "0.11.0",
3
+ "version": "0.11.1",
4
4
  "description": "多 Agent 团队的静态成员档案定义与校验层:档案库在面板里看得见、改得动,团队成员的人设、模型与工具边界固化成可校验、可版本化的文件,并在 dsh-agent-teams 创建成员时把档案桥接给运行时。",
5
5
  "type": "module",
6
6
  "main": "index.js",