dsh-plugin-core 0.6.1 → 0.7.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"PanelDock.js","sourceRoot":"","sources":["../../src/ui/PanelDock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PanelDock.js","sourceRoot":"","sources":["../../src/ui/PanelDock.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,11 @@
12
12
  *
13
13
  * 接线:宿主 `apply` 调 `serveModelCatalog(ctx, { path })`,客户端 `apply` 调
14
14
  * `connectHost(ctx, { modelsPath: path })`——同一个 path 常量,消费方不碰数据本身。
15
+ *
16
+ * 2026-10-28 扩一条:`connectHost` 同时接 `remote.workspaceFiles` ⇒ `openFilePreview` /
17
+ * `pickWorkspaceFile` 不必再由调用方传服务(explorer 的读文件通道同属「绑定宿主能力」)。
15
18
  */
19
+ import type { WorkspaceFilesFace } from '../explorer/types.js';
16
20
  /** 一条路由:一个供应商 + 它的模型(与宿主侧 `ModelRouteData` 同形)。 */
17
21
  export interface ModelRoute {
18
22
  provider: string;
@@ -84,6 +88,8 @@ declare class WorkspaceListStore {
84
88
  }
85
89
  /** 工作区列表单例(WorkspacePicker 消费;connectHost 负责喂)。 */
86
90
  export declare const workspaceList: WorkspaceListStore;
91
+ /** 当前接到的文件服务;宿主没这能力 / 没调 connectHost ⇒ undefined。 */
92
+ export declare function getWorkspaceFiles(): WorkspaceFilesFace | undefined;
87
93
  /** 插件 client 的最小 ctx 形状(cordis client context 的结构化子集)。 */
88
94
  export interface HostClientContext {
89
95
  inject: (deps: string[], cb: (sub: unknown) => void) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"host-data.d.ts","sourceRoot":"","sources":["../../src/ui/host-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,mDAAmD;AACnD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,SAAS;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACjD;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;CAAE,CAAA;AAEtD,yDAAyD;AACzD,cAAM,iBAAiB;IACrB,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAElD,QAAQ,CAAC,WAAW,QAAO,iBAAiB,CAAiB;IAE7D,QAAQ,CAAC,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAKxD;IAED,OAAO,CAAC,MAAM;IAKd,SAAS,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAI9C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGrC;AAED,8CAA8C;AAC9C,eAAO,MAAM,YAAY,mBAA0B,CAAA;AAInD,0GAA0G;AAC1G,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+CAA+C;IAC/C,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM;QAAE,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAA;KAAE,CAAA;IAC1D,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;CAChD;AAED;;;GAGG;AACH,cAAM,kBAAkB;IACtB,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAClD,OAAO,CAAC,WAAW,CAA0B;IAE7C,oCAAoC;IACpC,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAU5C,QAAQ,CAAC,WAAW,QAAO,SAAS,iBAAiB,EAAE,CAAc;IAErE,QAAQ,CAAC,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAKxD;CACF;AAED,mDAAmD;AACnD,eAAO,MAAM,aAAa,oBAA2B,CAAA;AAIrD,0DAA0D;AAC1D,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAA;CAC7D;AAED,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAQD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,GAAE,kBAAuB,GAAG,IAAI,CAiB1F"}
1
+ {"version":3,"file":"host-data.d.ts","sourceRoot":"","sources":["../../src/ui/host-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAI9D,mDAAmD;AACnD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,SAAS;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACjD;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;CAAE,CAAA;AAEtD,yDAAyD;AACzD,cAAM,iBAAiB;IACrB,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAElD,QAAQ,CAAC,WAAW,QAAO,iBAAiB,CAAiB;IAE7D,QAAQ,CAAC,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAKxD;IAED,OAAO,CAAC,MAAM;IAKd,SAAS,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAI9C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGrC;AAED,8CAA8C;AAC9C,eAAO,MAAM,YAAY,mBAA0B,CAAA;AAInD,0GAA0G;AAC1G,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+CAA+C;IAC/C,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM;QAAE,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAA;KAAE,CAAA;IAC1D,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;CAChD;AAED;;;GAGG;AACH,cAAM,kBAAkB;IACtB,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAClD,OAAO,CAAC,WAAW,CAA0B;IAE7C,oCAAoC;IACpC,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAU5C,QAAQ,CAAC,WAAW,QAAO,SAAS,iBAAiB,EAAE,CAAc;IAErE,QAAQ,CAAC,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAKxD;CACF;AAED,mDAAmD;AACnD,eAAO,MAAM,aAAa,oBAA2B,CAAA;AAarD,qDAAqD;AACrD,wBAAgB,iBAAiB,IAAI,kBAAkB,GAAG,SAAS,CAElE;AAID,0DAA0D;AAC1D,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAA;CAC7D;AAED,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAQD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,GAAE,kBAAuB,GAAG,IAAI,CA0B1F"}
@@ -1,18 +1,3 @@
1
- /**
2
- * 领域选择器的宿主数据面 —— ModelPicker / WorkspacePicker 的「现成数据」。
3
- *
4
- * 用户 2026-10-20 拍板:这两个领域选择器**自己取数、自己显示**,消费方不再传数组
5
- * (反转 requirements §6 对领域选择器的旧口径;通用 `Picker` 仍是 props 进数据的纯零件)。
6
- *
7
- * 两条数据通路(均为真机验证过的口子):
8
- * - 工作区:宿主 client 服务 `workspaces` 的快照(getSnapshot + subscribe,follow 流实时更新)。
9
- * - 模型目录:**插件宿主侧** `llm.listModels()` 现查 → `serveModelCatalog()` 挂成只读路由 →
10
- * 客户端 fetch(`@deepseek-ai/*` 的 `remote.llm` 只有 listProviders,**拿不到每个供应商的
11
- * 模型列表**,2026-10-20 真机定位后弃用该路径)。
12
- *
13
- * 接线:宿主 `apply` 调 `serveModelCatalog(ctx, { path })`,客户端 `apply` 调
14
- * `connectHost(ctx, { modelsPath: path })`——同一个 path 常量,消费方不碰数据本身。
15
- */
16
1
  /** 模型目录的 observable store(useSyncExternalStore 直接消费)。 */
17
2
  class ModelCatalogStore {
18
3
  constructor() {
@@ -70,6 +55,19 @@ class WorkspaceListStore {
70
55
  }
71
56
  /** 工作区列表单例(WorkspacePicker 消费;connectHost 负责喂)。 */
72
57
  export const workspaceList = new WorkspaceListStore();
58
+ // ── 工作区文件服务 ──────────────────────────────────────────────────────
59
+ /**
60
+ * 宿主 `remote.workspaceFiles`(explorer 的读文件通道)单例,由 `connectHost` 喂。
61
+ *
62
+ * 为什么核心要自己存一份:消费方写 `openFilePreview({ mount, path })` 就够了 —— 服务对象
63
+ * 只能从插件的 ctx 里 inject 出来(库拿不到 ctx),所以它必须由**一次接线**交进来,
64
+ * 而不是每次调用各传一遍(用户 2026-10-28 拍板:绑定能力归核心,调用方只管要什么)。
65
+ */
66
+ let workspaceFiles;
67
+ /** 当前接到的文件服务;宿主没这能力 / 没调 connectHost ⇒ undefined。 */
68
+ export function getWorkspaceFiles() {
69
+ return workspaceFiles;
70
+ }
73
71
  function isWorkspaceSource(value) {
74
72
  if (value === null || typeof value !== 'object')
75
73
  return false;
@@ -88,6 +86,15 @@ export function connectHost(ctx, options = {}) {
88
86
  if (isWorkspaceSource(source))
89
87
  workspaceList.setSource(source);
90
88
  });
89
+ // 读文件通道:`explorer` 的预览靠它读字节,绑定归这里,调用方不必再传服务。
90
+ // dotted 注入值优先,退回 `remote` 上的同名属性;探针 `list` 不在 ⇒ 判为没就位。
91
+ ctx.inject(['remote', 'remote.workspaceFiles'], (sub) => {
92
+ const rec = sub;
93
+ const candidate = rec?.['remote.workspaceFiles'] ?? rec?.remote?.workspaceFiles;
94
+ if (typeof candidate?.list === 'function') {
95
+ workspaceFiles = candidate;
96
+ }
97
+ });
91
98
  const modelsPath = options.modelsPath;
92
99
  if (modelsPath === undefined)
93
100
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"host-data.js","sourceRoot":"","sources":["../../src/ui/host-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-data.js","sourceRoot":"","sources":["../../src/ui/host-data.ts"],"names":[],"mappings":"AAkCA,yDAAyD;AACzD,MAAM,iBAAiB;IAAvB;QACU,aAAQ,GAAsB,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QAC1C,cAAS,GAAG,IAAI,GAAG,EAAc,CAAA;QAEzC,gBAAW,GAAG,GAAsB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAA;QAEpD,cAAS,GAAG,CAAC,QAAoB,EAAgB,EAAE;YAC1D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC5B,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACjC,CAAC,CAAA;QACH,CAAC,CAAA;IAcH,CAAC;IAZS,MAAM,CAAC,IAAuB;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,QAAQ,EAAE,CAAA;IACnD,CAAC;IAED,SAAS,CAAC,MAA6B;QACrC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;IAC1C,CAAC;IAED,cAAc,CAAC,MAAc;QAC3B,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAA;IAChD,CAAC;CACF;AAED,8CAA8C;AAC9C,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAA;AA8BnD;;;GAGG;AACH,MAAM,kBAAkB;IAAxB;QACU,UAAK,GAAiC,EAAE,CAAA;QAC/B,cAAS,GAAG,IAAI,GAAG,EAAc,CAAA;QAczC,gBAAW,GAAG,GAAiC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAA;QAE5D,cAAS,GAAG,CAAC,QAAoB,EAAgB,EAAE;YAC1D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC5B,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACjC,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC;IAnBC,oCAAoC;IACpC,SAAS,CAAC,MAA2B;QACnC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAA;QACpB,MAAM,IAAI,GAAG,GAAS,EAAE;YACtB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAA;YACvC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;gBAAE,QAAQ,EAAE,CAAA;QACnD,CAAC,CAAA;QACD,IAAI,EAAE,CAAA;QACN,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAC3C,CAAC;CAUF;AAED,mDAAmD;AACnD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,kBAAkB,EAAE,CAAA;AAErD,oEAAoE;AAEpE;;;;;;GAMG;AACH,IAAI,cAA8C,CAAA;AAElD,qDAAqD;AACrD,MAAM,UAAU,iBAAiB;IAC/B,OAAO,cAAc,CAAA;AACvB,CAAC;AAcD,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC7D,MAAM,GAAG,GAAG,KAAgC,CAAA;IAC5C,OAAO,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,UAAU,CAAA;AACrF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,GAAsB,EAAE,UAA8B,EAAE;IAClF,GAAG,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;QACjC,MAAM,MAAM,GAAI,GAAkD,EAAE,UAAU,EAAE,IAAI,CAAA;QACpF,IAAI,iBAAiB,CAAC,MAAM,CAAC;YAAE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;IACF,6CAA6C;IAC7C,wDAAwD;IACxD,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,uBAAuB,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;QACtD,MAAM,GAAG,GAAG,GAA0F,CAAA;QACtG,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,GAAG,EAAE,MAAM,EAAE,cAAc,CAAA;QAC/E,IAAI,OAAQ,SAA4C,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YAC9E,cAAc,GAAG,SAA+B,CAAA;QAClD,CAAC;IACH,CAAC,CAAC,CAAA;IACF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;IACrC,IAAI,UAAU,KAAK,SAAS;QAAE,OAAM;IACpC,KAAK,KAAK,CAAC,UAAU,CAAC;SACnB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SAC1G,IAAI,CAAC,CAAC,IAAa,EAAE,EAAE;QACtB,MAAM,MAAM,GAAI,IAAoC,EAAE,MAAM,CAAA;QAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAC9D,YAAY,CAAC,SAAS,CAAC,MAAsB,CAAC,CAAA;IAChD,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACxB,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;AACN,CAAC"}
@@ -5,7 +5,7 @@ export { DateTimePicker, type DateTimeOutput, type DateTimePickerProps, type Dat
5
5
  export { buildMonthCells, ceilToPrecision, clampUnit, floorToPrecision, formatDateTimeIso, monthCaption, msToParts, nowParts, nowTimeFor, parseDateTime, partsOf, partsToMs, rangeIsValid, sameLocalDay, stepMax, stepUnit, toEndDraft, weekdayLabels, type DateTimeParts, type DateTimePrecision, type DayCell, type DayRef, type EndDraft, type StepUnit, type TimeParts, } from './datetime-logic.js';
6
6
  export { ModelPicker, type ModelPickerProps, type ModelPickerVariant } from './ModelPicker.js';
7
7
  export { WorkspacePicker, type WorkspacePickerProps } from './WorkspacePicker.js';
8
- export { connectHost, modelCatalog, workspaceList, type ConnectHostOptions, type HostClientContext, type HostWorkspaceItem, type HostWorkspaceSource, type ModelCatalogState, type ModelRoute, } from './host-data.js';
8
+ export { connectHost, getWorkspaceFiles, modelCatalog, workspaceList, type ConnectHostOptions, type HostClientContext, type HostWorkspaceItem, type HostWorkspaceSource, type ModelCatalogState, type ModelRoute, } from './host-data.js';
9
9
  export { Modal, type ModalProps, type ModalSize } from './Modal.js';
10
10
  export { AlertModal, type AlertModalProps, type AlertSeverity, } from './AlertModal.js';
11
11
  export { ConfirmModal, type ConfirmModalProps, type ConfirmTone, } from './ConfirmModal.js';
@@ -26,6 +26,6 @@ export { LiveText } from './LiveText.js';
26
26
  export { BackToTop, type BackToTopProps } from './BackToTop.js';
27
27
  export { startResizeLayoutWidth, type ResizeOptions } from './resizer.js';
28
28
  export { DockPanel, PanelDock, createPanelDock, type DockCloseButton, type DockCloseReason, type DockPanelProps, type PanelDockController, type PanelDockOptions, type PanelDockProps, } from './PanelDock.js';
29
- export { DEFAULT_PANEL_ID, clampWidth, closePanel, emptyDock, isOpen, openPanel, othersWidth, setPanelWidth, type DockState, type OpenResult, } from './panel-dock-logic.js';
29
+ export { DEFAULT_PANEL_ID, clampWidth, closePanel, collapsePanel, emptyDock, expandPanel, isCollapsed, isOpen, openPanel, othersWidth, setPanelWidth, type DockState, type OpenResult, } from './panel-dock-logic.js';
30
30
  export { FIELD_ANCHOR_STYLE, FIELD_LABEL_STYLE, Input, NumberInput, PrefixedInput, fieldMetricsOf, type EditorOption, type FieldSize, type InputProps, type NumberInputProps, type PrefixedInputProps, } from './Field.js';
31
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
package/dist/ui/index.js CHANGED
@@ -8,7 +8,7 @@ export { DateTimePicker, } from './DateTimePicker.js';
8
8
  export { buildMonthCells, ceilToPrecision, clampUnit, floorToPrecision, formatDateTimeIso, monthCaption, msToParts, nowParts, nowTimeFor, parseDateTime, partsOf, partsToMs, rangeIsValid, sameLocalDay, stepMax, stepUnit, toEndDraft, weekdayLabels, } from './datetime-logic.js';
9
9
  export { ModelPicker } from './ModelPicker.js';
10
10
  export { WorkspacePicker } from './WorkspacePicker.js';
11
- export { connectHost, modelCatalog, workspaceList, } from './host-data.js';
11
+ export { connectHost, getWorkspaceFiles, modelCatalog, workspaceList, } from './host-data.js';
12
12
  export { Modal } from './Modal.js';
13
13
  export { AlertModal, } from './AlertModal.js';
14
14
  export { ConfirmModal, } from './ConfirmModal.js';
@@ -29,6 +29,6 @@ export { LiveText } from './LiveText.js';
29
29
  export { BackToTop } from './BackToTop.js';
30
30
  export { startResizeLayoutWidth } from './resizer.js';
31
31
  export { DockPanel, PanelDock, createPanelDock, } from './PanelDock.js';
32
- export { DEFAULT_PANEL_ID, clampWidth, closePanel, emptyDock, isOpen, openPanel, othersWidth, setPanelWidth, } from './panel-dock-logic.js';
32
+ export { DEFAULT_PANEL_ID, clampWidth, closePanel, collapsePanel, emptyDock, expandPanel, isCollapsed, isOpen, openPanel, othersWidth, setPanelWidth, } from './panel-dock-logic.js';
33
33
  export { FIELD_ANCHOR_STYLE, FIELD_LABEL_STYLE, Input, NumberInput, PrefixedInput, fieldMetricsOf, } from './Field.js';
34
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,sDAAsD;AACtD,gDAAgD;AAChD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACpF,OAAO,EACL,YAAY,EACZ,cAAc,EACd,OAAO,EACP,QAAQ,EACR,oBAAoB,EACpB,QAAQ,EACR,WAAW,GAGZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,MAAM,EAAqC,MAAM,aAAa,CAAA;AACvE,OAAO,EACL,cAAc,GAIf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,eAAe,EACf,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,OAAO,EACP,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,aAAa,GAQd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAkD,MAAM,kBAAkB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAA6B,MAAM,sBAAsB,CAAA;AACjF,OAAO,EACL,WAAW,EACX,YAAY,EACZ,aAAa,GAOd,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,KAAK,EAAmC,MAAM,YAAY,CAAA;AACnE,OAAO,EACL,UAAU,GAGX,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,YAAY,GAGb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,UAAU,EACV,YAAY,GAGb,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,GAGV,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,IAAI,EAAgD,MAAM,WAAW,CAAA;AAC9E,OAAO,EACL,SAAS,EACT,MAAM,GAMP,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,MAAM,EAAE,UAAU,EAA+E,MAAM,aAAa,CAAA;AAC7H,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAqB,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAGnB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAsB,MAAM,cAAc,CAAA;AACzE,OAAO,EACL,SAAS,EACT,SAAS,EACT,eAAe,GAOhB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,SAAS,EACT,MAAM,EACN,SAAS,EACT,WAAW,EACX,aAAa,GAGd,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,EACL,WAAW,EACX,aAAa,EACb,cAAc,GAMf,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,sDAAsD;AACtD,gDAAgD;AAChD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACpF,OAAO,EACL,YAAY,EACZ,cAAc,EACd,OAAO,EACP,QAAQ,EACR,oBAAoB,EACpB,QAAQ,EACR,WAAW,GAGZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,MAAM,EAAqC,MAAM,aAAa,CAAA;AACvE,OAAO,EACL,cAAc,GAIf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,eAAe,EACf,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,OAAO,EACP,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,aAAa,GAQd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAkD,MAAM,kBAAkB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAA6B,MAAM,sBAAsB,CAAA;AACjF,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,aAAa,GAOd,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,KAAK,EAAmC,MAAM,YAAY,CAAA;AACnE,OAAO,EACL,UAAU,GAGX,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,YAAY,GAGb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,UAAU,EACV,YAAY,GAGb,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,GAGV,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,IAAI,EAAgD,MAAM,WAAW,CAAA;AAC9E,OAAO,EACL,SAAS,EACT,MAAM,GAMP,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,MAAM,EAAE,UAAU,EAA+E,MAAM,aAAa,CAAA;AAC7H,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAqB,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAGnB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAsB,MAAM,cAAc,CAAA;AACzE,OAAO,EACL,SAAS,EACT,SAAS,EACT,eAAe,GAOhB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,WAAW,EACX,MAAM,EACN,SAAS,EACT,WAAW,EACX,aAAa,GAGd,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,EACL,WAAW,EACX,aAAa,EACb,cAAc,GAMf,MAAM,YAAY,CAAA"}
@@ -1,2 +1,2 @@
1
- export declare const PANEL_DOCK_CSS = "\n/* \u505C\u9760\u680F = **\u5E03\u5C40\u6210\u5458**\uFF0C\u4E0D\u662F\u6D6E\u5C42\uFF1A\u5B83\u5360\u5BBD\u5EA6\u3001\u628A\u4E3B\u533A\u771F\u6B63\u6324\u7A84\uFF08\u5144\u5F1F\u9879\u76EE 2026-09-28\uFF1A\n \u300C\u5206\u680F\u538B\u8FC7\u6765\uFF0C\u4E0D\u662F\u76D6\u4E0A\u53BB\u300D\uFF09\u3002\u6240\u4EE5\u8C03\u7528\u65B9\u5FC5\u987B\u628A\u5B83\u653E\u8FDB\u81EA\u5DF1\u7684 flex \u6839\u91CC\u3002 */\n.dshpc-dock{display:flex;flex:0 0 auto;align-self:stretch;min-width:0}\n\n/* \u5355\u680F\uFF1Asticky + 100vh \u8BA9\u5B83\u5728\u9875\u9762\u6EDA\u52A8\u65F6\u4FDD\u6301\u53EF\u89C1\uFF0C\u540C\u65F6\u4ECD\u7136\u5360\u5BBD\u5EA6\u3002\n \u26A0\uFE0F **\u672C\u6761\u523B\u610F\u4E0D\u8BBE z-index**\uFF1A\u5E03\u5C40\u6210\u5458\u4E00\u65E6\u5E26\u6B63 z-index\uFF0C\u5C31\u4F1A\u65E0\u6761\u4EF6\u538B\u8FC7\u5BBF\u4E3B portal \u5230 body \u7684\n \u5F39\u7A97\uFF08\u5144\u5F1F\u9879\u76EE 2026-10-05 \u771F\u673A\u4E8B\u6545\u300C\u4FA7\u8FB9\u680F\u76D6\u4F4F\u5BBF\u4E3B\u8BBE\u7F6E\u5F39\u7A97\u300D\uFF09\u3002\u5C42\u5E8F\u4EA4\u7ED9 DOM \u987A\u5E8F\u88C1\u51B3\u3002 */\n.dshpc-dock__panel{\n box-sizing:border-box;position:sticky;top:0;align-self:stretch;\n display:flex;flex-direction:column;flex:0 0 auto;\n /* \u9AD8\u5EA6\u9ED8\u8BA4\u89C6\u53E3\u9AD8\uFF08\u6574\u9875\u573A\u666F\uFF09\uFF1B\u5D4C\u5728\u5B9A\u9AD8\u5BB9\u5668\u91CC\u65F6\u7531\u8C03\u7528\u65B9\u7ED9 --dshpc-dock-h\uFF08\u5982 420px / 100%\uFF09\u3002 */\n height:var(--dshpc-dock-h,100vh);max-height:var(--dshpc-dock-h,100vh);min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n border-left:1px solid var(--dshpc-border);\n box-shadow:var(--dshpc-shadow-2);\n}\n\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\n /* \u53F3\u4FA7 34px = 8(\u8FB9\u8DDD) + 20(\u5173\u94AE) + 6(\u547C\u5438)\uFF1A\u7ED9\u7EDD\u5BF9\u5B9A\u4F4D\u7684\u5173\u94AE\u7559\u4F4D\uFF0C\u6807\u9898/extra \u4E0D\u4ECE\u5B83\u5E95\u4E0B\u94BB */\n padding:10px 34px 10px 14px;\n border-bottom:1px solid var(--dshpc-border-faint);\n}\n/* \u56FE\u6807\u4F4D / \u6807\u9898\u53F3\u4FA7\u7684\u5185\u5BB9\u4F4D\uFF1A\u6D88\u8D39\u65B9\u4F20 ReactNode\uFF0C\u53EF\u585E\u591A\u4E2A\uFF1B\u5E93\u53EA\u8D1F\u8D23\u6392\u5E03\uFF0C\u4E0D\u62A2\u5BBD\u5EA6\u3002 */\n.dshpc-dock__lead{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--dshpc-fg-2)}\n.dshpc-dock__extra{display:inline-flex;align-items:center;gap:6px;flex:none;margin-left:auto}\n/* \u81EA\u5B9A\u4E49\u5934\u90E8\uFF1A\u6574\u884C\u5F52\u8C03\u7528\u65B9 \u2014\u2014 \u4E0D\u52A0\u5185\u8FB9\u8DDD/\u8FB9\u6846/\u80CC\u666F\uFF0C\u4E5F\u4E0D\u7ED9\u5173\u94AE\u7559\u5185\u8054\u7A7A\u95F4\uFF08\u5173\u94AE\u662F\u7EDD\u5BF9\u5B9A\u4F4D\u7684\uFF09\u3002 */\n.dshpc-dock__head--custom{display:block;padding:0;border-bottom:none}\n.dshpc-dock__title{\n flex:1 1 auto;min-width:0;\n overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\n font-size:var(--dshpc-font-md);font-weight:600;\n}\n/* \u5173\u95ED\u94AE\uFF1A20\u00D720 \u65B9\u89D2\u56FE\u6807\u4F4D\uFF08\u4E0E Modal \u7684\u5173\u95ED\u94AE\u540C\u89C4\u683C\uFF0C\u4E0D\u501F Picker \u89E6\u53D1\u5668\u76AE\u80A4\uFF09\u3002 */\n.dshpc-dock__close{\n display:inline-flex;align-items:center;justify-content:center;flex:none;\n width:20px;height:20px;padding:0;border:none;border-radius:var(--dshpc-radius-sm);\n background:transparent;color:var(--dshpc-fg-3);\n font-family:inherit;font-size:13px;line-height:1;cursor:pointer;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n.dshpc-dock__close:hover{background:var(--dshpc-hover);color:var(--dshpc-fg)}\n.dshpc-dock__close:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n/* \u5934\u90E8\u5173\u94AE\uFF1A\u7EDD\u5BF9\u5B9A\u4F4D\uFF0C\u4F4D\u7F6E\u4E0E\u5185\u7F6E\u5934\u5B8C\u5168\u4E00\u81F4\uFF08top 10 / right 8\uFF09\uFF1B\u81EA\u5B9A\u4E49\u5934\u4E5F\u7528\u8FD9\u4E00\u4E2A\u4F4D\u7F6E\u3002\n \u951A\u70B9\u662F\u9762\u677F\u672C\u8EAB\uFF08position:sticky \u5373\u5B9A\u4F4D\u4E0A\u4E0B\u6587\uFF09\uFF0C\u4E0D\u5728\u6EDA\u52A8\u5185\u5BB9\u91CC\uFF0C\u6240\u4EE5\u6B63\u6587\u6EDA\u52A8\u5B83\u4E0D\u8DDF\u6EDA\u3002 */\n.dshpc-dock__close--abs{position:absolute;top:10px;right:8px;z-index:8}\n/* \u6D6E\u52A8\u5173\u94AE\uFF1A\u65E0\u5934\u90E8\u9762\u677F\u7528\uFF0C\u7565\u6536\u4E00\u70B9\u8FB9\u8DDD\u3002 */\n.dshpc-dock__close--floating{\n position:absolute;top:6px;right:6px;z-index:8;\n background:var(--dshpc-surface-menu);border:1px solid var(--dshpc-border-faint);\n}\n\n/* \u5185\u5BB9\u533A\u81EA\u5DF1\u6EDA\uFF1A\u9762\u677F\u9AD8\u5EA6\u9501 100vh\uFF0C\u5185\u5BB9\u4E0D\u8BBE\u5185\u90E8\u6EDA\u52A8\u5C31\u4F1A\u628A\u6574\u9875\u6491\u9AD8\u3002 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto}\n\n/* \u62D6\u62FD\u6761\uFF1A\u5DE6\u7F18 6px \u547D\u4E2D\u533A\uFF0C**\u4E0D\u753B\u7EBF**\uFF0Chover/\u6309\u4F4F\u65F6\u624D\u6D6E\u51FA\u4E00\u6761\u6D45\u8272\u5E26\u3002\n z-index 7 \u5FC5\u987B\u9AD8\u4E8E\u9762\u677F\u5185\u5BB9\u91CC\u7684\u6D6E\u5C42\uFF08\u590D\u5236\u94AE\u4E00\u7C7B\uFF09\uFF0C\u5426\u5219\u547D\u4E2D\u533A\u4F1A\u88AB\u5185\u5BB9\u76D6\u4F4F\u3002 */\n.dshpc-dock__resizer{\n position:absolute;left:0;top:0;bottom:0;width:6px;\n z-index:7;cursor:col-resize;background:transparent;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n/* hover/\u6309\u4F4F\uFF1A\u4E0D\u586B\u7070\u5E26\uFF0C\u6539\u4E3A\u5B98\u65B9 work \u533A\u6307\u793A\u6761\u6837\u5F0F \u2014\u2014 \u5DE6\u7F18 2px \u84DD\u7AD6\u6761\u3001\u4E0A\u4E0B\u6E10\u9690\n \uFF08\u989C\u8272\u8D70 business \u84DD\u7684\u5B98\u65B9 alias\uFF0C\u660E\u6697\u81EA\u52A8\u8DDF\u968F\u5BBF\u4E3B\uFF1B\u547D\u4E2D\u533A\u4ECD\u662F 6px \u4E0D\u53D8\uFF09\u3002 */\n.dshpc-dock__resizer:hover,.dshpc-dock__resizer:active{\n background:linear-gradient(180deg,transparent,var(--dshpc-business) 30%,var(--dshpc-business) 70%,transparent) left center / 1px 100% no-repeat;\n}\n\n/* \u62D6\u52A8\u671F\uFF1A\u2460 <iframe>\uFF08PDF / HTML \u9884\u89C8\uFF09\u662F\u72EC\u7ACB\u6587\u6863\uFF0C\u4F1A\u541E\u6389\u7236\u6587\u6863\u7684 pointermove\uFF0C\n \u5411\u53F3\u62D6\u8FDB iframe \u5C31\u5361\u6B7B \u2014\u2014 \u6574\u7247\u8BA9\u51FA\u6307\u9488\u4E8B\u4EF6\uFF1B\u2461 contain \u628A\u91CD\u6392\u9694\u79BB\u5728\u680F\u5185\uFF0C\n \u5426\u5219\u6BCF\u5E27\u6539\u5BBD\u5EA6\u90FD\u4F1A\u7275\u52A8\u6574\u9875\u91CD\u6392\uFF08\u5144\u5F1F\u9879\u76EE 2026-10-04 \u771F\u673A\u300C\u632A\u5F88\u4E45\u624D\u52A8\u4E00\u4E0B\u300D\uFF09\u3002 */\n.dshpc-dock.dshpc-dock--resizing iframe{pointer-events:none}\n.dshpc-dock.dshpc-dock--resizing .dshpc-dock__panel{contain:layout paint;will-change:width}\n";
1
+ export declare const PANEL_DOCK_CSS = "\n/* \u505C\u9760\u680F = **\u5E03\u5C40\u6210\u5458**\uFF0C\u4E0D\u662F\u6D6E\u5C42\uFF1A\u5B83\u5360\u5BBD\u5EA6\u3001\u628A\u4E3B\u533A\u771F\u6B63\u6324\u7A84\uFF08\u5144\u5F1F\u9879\u76EE 2026-09-28\uFF1A\n \u300C\u5206\u680F\u538B\u8FC7\u6765\uFF0C\u4E0D\u662F\u76D6\u4E0A\u53BB\u300D\uFF09\u3002\u6240\u4EE5\u8C03\u7528\u65B9\u5FC5\u987B\u628A\u5B83\u653E\u8FDB\u81EA\u5DF1\u7684 flex \u6839\u91CC\u3002 */\n.dshpc-dock{display:flex;flex:0 0 auto;align-self:stretch;min-width:0}\n/* \u5F00\u7740\u65F6\u7ED9\u4E3B\u533A\u6EDA\u52A8\u6761\u8BA9\u51FA\u4E00\u6761\u7F1D\uFF1A\u6EDA\u52A8\u6761\u8D34\u6B7B\u5206\u9694\u7EBF\u5F88\u96BE\u770B\uFF08\u7528\u6237 2026-10-28\uFF0C\u5BF9\u9F50\n dsh-better-sidebar \u7684\u7559\u767D\uFF09\u3002\u5168\u5173\u65F6\u6574\u6761 dock \u9000\u51FA\uFF0C\u7F1D\u9699\u4E00\u8D77\u6D88\u5931\u3001\u4E0D\u7559\u767D\u8FB9\u3002\n \u7F1D\u5BBD\u53EF\u7531\u8C03\u7528\u65B9\u76D6 --dshpc-dock-gap\uFF1BTS \u4FA7\u7684\u8BA9\u4F4D\u91CF\uFF08DOCK_GAP\uFF09\u8981\u4E0E\u5B83\u4E00\u81F4\u3002 */\n.dshpc-dock--open{margin-left:var(--dshpc-dock-gap,1px)}\n\n/* \u81EA\u52A8\u52A0\u7684\u5BBF\u4E3B\u884C\uFF08openFilePreview \u52A0 / \u5173\u95ED\u5373\u6458\uFF09\uFF1A\u6D88\u8D39\u65B9\u90A3\u884C\u4E0D\u5FC5\u81EA\u5DF1\u5199 flex\u3002\n \u53EA\u8BA9\u300C\u7B2C\u4E00\u4E2A\u975E\u9884\u89C8\u5B50\u9879\u300D\u5F53\u4E3B\u533A\u4F38\u5C55\uFF0C\u5176\u4F59\u76F4\u63A5\u5B50\u9879\u4E0D\u52A8\uFF08\u9875\u811A\u6761\u3001\u5DE5\u5177\u6761\u4E0D\u8BEF\u4F24\uFF09\uFF1B\n display \u4E0D\u5728\u8FD9\u91CC\u5199\u6B7B \u2014\u2014 \u672C\u6765\u5C31\u662F grid \u7B49\u5E03\u5C40\u7684\u5143\u7D20\u4FDD\u6301\u539F\u6837\uFF0C\u7531 TS \u4FA7\u6309\u8BA1\u7B97\u503C\u8865 flex\u3002 */\n.dshpc-dock-host{min-width:0;min-height:0}\n.dshpc-dock-host>:not([data-dshpc-file-preview]){min-width:0}\n.dshpc-dock-host>:first-child:not([data-dshpc-file-preview]){flex:1 1 auto}\n\n/* \u5355\u680F\uFF1Asticky + 100vh \u8BA9\u5B83\u5728\u9875\u9762\u6EDA\u52A8\u65F6\u4FDD\u6301\u53EF\u89C1\uFF0C\u540C\u65F6\u4ECD\u7136\u5360\u5BBD\u5EA6\u3002\n \u26A0\uFE0F **\u672C\u6761\u523B\u610F\u4E0D\u8BBE z-index**\uFF1A\u5E03\u5C40\u6210\u5458\u4E00\u65E6\u5E26\u6B63 z-index\uFF0C\u5C31\u4F1A\u65E0\u6761\u4EF6\u538B\u8FC7\u5BBF\u4E3B portal \u5230 body \u7684\n \u5F39\u7A97\uFF08\u5144\u5F1F\u9879\u76EE 2026-10-05 \u771F\u673A\u4E8B\u6545\u300C\u4FA7\u8FB9\u680F\u76D6\u4F4F\u5BBF\u4E3B\u8BBE\u7F6E\u5F39\u7A97\u300D\uFF09\u3002\u5C42\u5E8F\u4EA4\u7ED9 DOM \u987A\u5E8F\u88C1\u51B3\u3002 */\n.dshpc-dock__panel{\n box-sizing:border-box;position:sticky;top:0;align-self:stretch;\n display:flex;flex-direction:column;flex:0 0 auto;\n /* \u9AD8\u5EA6\u9ED8\u8BA4\u89C6\u53E3\u9AD8\uFF08\u6574\u9875\u573A\u666F\uFF09\uFF1B\u5D4C\u5728\u5B9A\u9AD8\u5BB9\u5668\u91CC\u65F6\u7531\u8C03\u7528\u65B9\u7ED9 --dshpc-dock-h\uFF08\u5982 420px / 100%\uFF09\u3002 */\n height:var(--dshpc-dock-h,100vh);max-height:var(--dshpc-dock-h,100vh);min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n border-left:1px solid var(--dshpc-border);\n transition:border-color var(--dshpc-dur-fast) var(--dshpc-ease);\n box-shadow:var(--dshpc-shadow-2);\n /* \u5165\u573A\uFF1A\u4ECE 0 \u5BBD\u6ED1\u51FA\u6765\uFF08keyframes \u53EA\u5199 from\uFF0C\u7EC8\u70B9\u53D6\u5185\u8054 width\uFF09\uFF0C\u6253\u5F00 / \u8033\u6735\u5C55\u5F00\u90FD\u8D70\u8FD9\u6761\u3002 */\n animation:dshpc-dock-in .22s var(--dshpc-ease);\n}\n/* overflow:hidden \u53EA\u5728\u52A8\u753B\u524D\u6BB5\uFF08\u79BB\u6563\u5C5E\u6027\u5728 50% \u7FFB\u8F6C\uFF09\u2014\u2014\u5E73\u65F6\u4E0D\u80FD\u88C1\uFF0C\u5426\u5219\u6302\u5728\u5DE6\u7F18\u5916\u7684\n \u6536\u8D77\u94AE\u4F1A\u88AB\u5207\u6389\u4E00\u534A\u3002 */\n@keyframes dshpc-dock-in{from{width:0;opacity:0;overflow:hidden}}\n/* \u6536\u8D77\u7684\u51FA\u573A\uFF1A\u5BBD\u5EA6\u6536\u5230 0\u3001\u900F\u660E\u6DE1\u51FA\uFF1B\u843D\u5B9A\u540E\u7EC4\u4EF6\u624D\u771F\u6B63\u6458\u6389\u8FD9\u4E00\u680F\uFF08JS \u5EF6\u65F6 220ms \u914D\u5408\uFF09\u3002 */\n.dshpc-dock__panel--closing{\n width:0!important;min-width:0!important;opacity:0;border-left-width:0;\n transition:width .2s var(--dshpc-ease),opacity .2s var(--dshpc-ease),border-left-width .2s var(--dshpc-ease);\n}\n\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\n /* \u53F3\u4FA7 34px = 8(\u8FB9\u8DDD) + 20(\u5173\u94AE) + 6(\u547C\u5438)\uFF1A\u7ED9\u7EDD\u5BF9\u5B9A\u4F4D\u7684\u5173\u94AE\u7559\u4F4D\uFF0C\u6807\u9898/extra \u4E0D\u4ECE\u5B83\u5E95\u4E0B\u94BB */\n padding:10px 34px 10px 14px;\n border-bottom:1px solid var(--dshpc-border-faint);\n}\n/* \u56FE\u6807\u4F4D / \u6807\u9898\u53F3\u4FA7\u7684\u5185\u5BB9\u4F4D\uFF1A\u6D88\u8D39\u65B9\u4F20 ReactNode\uFF0C\u53EF\u585E\u591A\u4E2A\uFF1B\u5E93\u53EA\u8D1F\u8D23\u6392\u5E03\uFF0C\u4E0D\u62A2\u5BBD\u5EA6\u3002 */\n.dshpc-dock__lead{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--dshpc-fg-2)}\n.dshpc-dock__extra{display:inline-flex;align-items:center;gap:6px;flex:none;margin-left:auto}\n/* \u81EA\u5B9A\u4E49\u5934\u90E8\uFF1A\u6574\u884C\u5F52\u8C03\u7528\u65B9 \u2014\u2014 \u4E0D\u52A0\u5185\u8FB9\u8DDD/\u8FB9\u6846/\u80CC\u666F\uFF0C\u4E5F\u4E0D\u7ED9\u5173\u94AE\u7559\u5185\u8054\u7A7A\u95F4\uFF08\u5173\u94AE\u662F\u7EDD\u5BF9\u5B9A\u4F4D\u7684\uFF09\u3002 */\n.dshpc-dock__head--custom{display:block;padding:0;border-bottom:none}\n.dshpc-dock__title{\n flex:1 1 auto;min-width:0;\n overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\n font-size:var(--dshpc-font-md);font-weight:600;\n}\n/* \u5173\u95ED\u94AE\uFF1A20\u00D720 \u65B9\u89D2\u56FE\u6807\u4F4D\uFF08\u4E0E Modal \u7684\u5173\u95ED\u94AE\u540C\u89C4\u683C\uFF0C\u4E0D\u501F Picker \u89E6\u53D1\u5668\u76AE\u80A4\uFF09\u3002 */\n.dshpc-dock__close{\n display:inline-flex;align-items:center;justify-content:center;flex:none;\n width:20px;height:20px;padding:0;border:none;border-radius:var(--dshpc-radius-sm);\n background:transparent;color:var(--dshpc-fg-3);\n font-family:inherit;font-size:13px;line-height:1;cursor:pointer;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n.dshpc-dock__close:hover{background:var(--dshpc-hover);color:var(--dshpc-fg)}\n.dshpc-dock__close:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n/* \u5934\u90E8\u5173\u94AE\uFF1A\u7EDD\u5BF9\u5B9A\u4F4D\uFF0C\u4F4D\u7F6E\u4E0E\u5185\u7F6E\u5934\u5B8C\u5168\u4E00\u81F4\uFF08top 10 / right 8\uFF09\uFF1B\u81EA\u5B9A\u4E49\u5934\u4E5F\u7528\u8FD9\u4E00\u4E2A\u4F4D\u7F6E\u3002\n \u951A\u70B9\u662F\u9762\u677F\u672C\u8EAB\uFF08position:sticky \u5373\u5B9A\u4F4D\u4E0A\u4E0B\u6587\uFF09\uFF0C\u4E0D\u5728\u6EDA\u52A8\u5185\u5BB9\u91CC\uFF0C\u6240\u4EE5\u6B63\u6587\u6EDA\u52A8\u5B83\u4E0D\u8DDF\u6EDA\u3002 */\n.dshpc-dock__close--abs{position:absolute;top:10px;right:8px;z-index:8}\n/* \u6D6E\u52A8\u5173\u94AE\uFF1A\u65E0\u5934\u90E8\u9762\u677F\u7528\uFF0C\u7565\u6536\u4E00\u70B9\u8FB9\u8DDD\u3002 */\n.dshpc-dock__close--floating{\n position:absolute;top:6px;right:6px;z-index:8;\n background:var(--dshpc-surface-menu);border:1px solid var(--dshpc-border-faint);\n}\n\n/* \u5185\u5BB9\u533A\u81EA\u5DF1\u6EDA\uFF1A\u9762\u677F\u9AD8\u5EA6\u9501 100vh\uFF0C\u5185\u5BB9\u4E0D\u8BBE\u5185\u90E8\u6EDA\u52A8\u5C31\u4F1A\u628A\u6574\u9875\u6491\u9AD8\u3002 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto}\n\n/* \u62D6\u62FD\u6761\uFF1A\u5DE6\u7F18 6px \u547D\u4E2D\u533A\uFF0C**\u81EA\u5DF1\u4E0D\u753B\u4EFB\u4F55\u7EBF**\u3002\n hover / \u62D6\u52A8\u65F6\u628A\u9762\u677F\u81EA\u5DF1\u7684 border-left \u67D3\u6210\u84DD\uFF08\u7528\u6237 2026-10-28 \u56DB\u8F6E\uFF1A\u84DD\u7EBF\u53EA\u51C6\u6539\u539F\u7EBF\uFF0C\n \u4E0D\u51C6\u5728\u539F\u7EBF\u65C1\u8FB9\u52A0\u4E00\u6761 \u2014\u2014 \u4E4B\u524D\u5728 padding box \u5DE6\u7F18\u753B\u6E10\u53D8\uFF0C\u6B63\u597D\u53E0\u51FA\u53CC\u7EBF\uFF09\u3002\n \u547D\u4E2D\u533A\u5728 padding box \u4E0A\u3001border \u5728\u5B83\u5DE6\u5916\u4FA7\uFF0C\u6240\u4EE5\u53EA\u80FD\u6539\u9762\u677F\u7684 border \u8272\u3002\n z-index 7 \u5FC5\u987B\u9AD8\u4E8E\u9762\u677F\u5185\u5BB9\u91CC\u7684\u6D6E\u5C42\uFF08\u590D\u5236\u94AE\u4E00\u7C7B\uFF09\uFF0C\u5426\u5219\u547D\u4E2D\u533A\u4F1A\u88AB\u5185\u5BB9\u76D6\u4F4F\u3002 */\n.dshpc-dock__resizer{\n position:absolute;left:0;top:0;bottom:0;width:6px;\n z-index:7;cursor:col-resize;background:transparent;\n}\n.dshpc-dock__panel:has(> .dshpc-dock__resizer:hover),\n.dshpc-dock__panel--resizing{\n /* \u539F\u7EBF\u4FDD\u7559\u300C\u4E0A\u4E0B\u6E10\u9690\u300D\u5DE5\u4F5C\u533A\u6307\u793A\u6761\u8D28\u611F\uFF1A\u628A\u9762\u677F\u81EA\u5DF1\u7684 border-left \u6362\u6210\u540C\u6B3E\u6E10\u53D8\n \uFF08\u4E0D\u662F\u53E6\u52A0\u4E00\u6761\u7EBF\uFF09\u3002\u9762\u677F\u53EA\u6709\u8FD9\u4E00\u6761\u8FB9\u6846\u3001\u65E0\u5706\u89D2\uFF0C\u6240\u4EE5\u53EA\u4F5C\u7528\u5728\u7EBF\u4E0A\u3002 */\n border-image:linear-gradient(180deg,transparent,var(--dshpc-business) 30% 70%,transparent) 1;\n}\n\n/* \u62D6\u52A8\u671F\uFF1A\u2460 <iframe>\uFF08PDF / HTML \u9884\u89C8\uFF09\u662F\u72EC\u7ACB\u6587\u6863\uFF0C\u4F1A\u541E\u6389\u7236\u6587\u6863\u7684 pointermove\uFF0C\n \u5411\u53F3\u62D6\u8FDB iframe \u5C31\u5361\u6B7B \u2014\u2014 \u6574\u7247\u8BA9\u51FA\u6307\u9488\u4E8B\u4EF6\uFF1B\u2461 contain \u628A\u91CD\u6392\u9694\u79BB\u5728\u680F\u5185\uFF0C\n \u5426\u5219\u6BCF\u5E27\u6539\u5BBD\u5EA6\u90FD\u4F1A\u7275\u52A8\u6574\u9875\u91CD\u6392\uFF08\u5144\u5F1F\u9879\u76EE 2026-10-04 \u771F\u673A\u300C\u632A\u5F88\u4E45\u624D\u52A8\u4E00\u4E0B\u300D\uFF09\u3002 */\n.dshpc-dock.dshpc-dock--resizing iframe{pointer-events:none}\n.dshpc-dock.dshpc-dock--resizing .dshpc-dock__panel{contain:layout paint;will-change:width}\n\n/* \u6536\u8D77\u94AE\uFF1A**\u5F85\u5728\u9762\u677F\u81EA\u5DF1\u7684\u6846\u91CC**\uFF08\u7528\u6237 2026-10-28 \u4E09\u8F6E\uFF1A\u5360\u9762\u677F\u5185\u90E8\u7A7A\u95F4\uFF0C\u4E0D\u4F38\u5230\u5916\u9762\u53BB\uFF09\u3002\n left:0 \u4ECE\u5185\u4FA7\u8D34\u7740\u5206\u9694\u7EBF \u2014\u2014 \u8D34\u7EBF\u7684\u4E00\u8FB9\u4E0D\u63CF\u8FB9\uFF08\u7EBF\u662F\u9762\u677F\u81EA\u5DF1\u7684 border-left\uFF09\uFF0C\u9875\u7B7E\u4E0E\u7EBF\u4E0D\u91CD\u5408\u3002\n 20\u00D744\uFF08\u7528\u6237 2026-10-28 \u56DB\u8F6E\u5B9A\u5C3A\u5BF8\uFF09\uFF1B\u5B9E\u8272\u5E95\uFF08--dshpc-plate\uFF0C\u660E\u6697\u5404\u6709\u5B9E\u503C\uFF09\uFF0Chover \u4EAE\u4E00\u6863\u3002\n padding-right:2px \u662F**\u89C6\u89C9\u5C45\u4E2D**\uFF1A\u53F3\u4FA7\u662F\u5706\u89D2\uFF0C\u7BAD\u5934\u5F80\u76F4\u7EBF\u90A3\u8FB9\u632A 1px\uFF08\u7528\u6237 2026-10-28 \u56DB\u8F6E\uFF09\u3002 */\n.dshpc-dock__collapse{\n position:absolute;left:0;top:50%;transform:translateY(-50%);\n z-index:8;display:inline-flex;align-items:center;justify-content:center;\n width:20px;height:44px;padding:0 2px 0 0;\n border-top:1px solid var(--dshpc-border);\n border-bottom:1px solid var(--dshpc-border);\n border-right:1px solid var(--dshpc-border);\n border-left:none;\n border-radius:0 var(--dshpc-radius-sm) var(--dshpc-radius-sm) 0;\n background:var(--dshpc-plate);color:var(--dshpc-fg-3);\n font-family:inherit;font-size:16px;line-height:1;cursor:pointer;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n.dshpc-dock__collapse:hover{background:var(--dshpc-plate-hover);color:var(--dshpc-fg)}\n.dshpc-dock__collapse:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n\n/* \u6536\u8D77\u540E\u7684\u6D6E\u52A8\u8033\u6735\uFF1A**fixed \u8D34\u53F3\u7F18\u3001\u5782\u76F4\u5C45\u4E2D\u3001\u72EC\u7ACB\u4E8E\u5206\u680F**\uFF08\u7528\u6237 2026-10-28 \u5B9A\u7A3F\uFF1A\n \u5C0F\u9875\u7B7E\u6302\u4E2D\u95F4\u3001\u91CC\u9762\u653E\u9762\u677F\u56FE\u6807\u3001\u4E0D\u663E\u793A\u6587\u5B57\uFF0C\u7BAD\u5934\u4E0E\u6536\u8D77\u94AE\u53CD\u5411\uFF09\u3002\u591A\u4E2A\u6309\u6536\u8D77\u987A\u5E8F\u7EB5\u5411\u5806\u53E0\u3002\n z \u8D70 dock \u6863\uFF08\u4F4E\u4E8E\u5BBF\u4E3B\u5F39\u7A97\uFF09\uFF0C\u907F\u514D\u76D6\u4F4F\u5BBF\u4E3B portal \u5C42\u3002 */\n.dshpc-dock__ears{\n position:fixed;top:50%;right:0;transform:translateY(-50%);\n z-index:var(--dshpc-z-dock,1030);\n display:flex;flex-direction:column;gap:8px;align-items:flex-end;\n pointer-events:none;\n}\n.dshpc-dock__ear{\n pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;\n /* \u4E0E\u6536\u8D77\u94AE**\u540C\u5C3A\u5BF8**\uFF0820\u00D744\uFF0C\u7528\u6237 2026-10-28 \u56DB\u8F6E\uFF09\uFF1A\u4E0A/\u4E0B/\u5DE6\u63CF\u8FB9\uFF0C\u8D34\u53F3\u7F18\u7684\u4E00\u4FA7\u4E0D\u63CF\u3002\n \u5B9E\u8272\u5E95\uFF08--dshpc-plate\uFF09\uFF0C\u4E0D\u7528\u900F\u660E\u8272 \u2014\u2014 \u900F\u660E\u5E95\u4E0B\u900F\u51FA\u4E1C\u897F\u5F88\u96BE\u770B\u3002\n padding-left:2px \u662F**\u89C6\u89C9\u5C45\u4E2D**\uFF1A\u5DE6\u4FA7\u662F\u5706\u89D2\uFF0C\u7BAD\u5934\u5F80\u76F4\u7EBF\uFF08\u53F3\u7F18\uFF09\u90A3\u8FB9\u632A 1px\u3002 */\n width:20px;height:44px;box-sizing:border-box;padding:0 0 0 2px;\n border-top:1px solid var(--dshpc-border);\n border-bottom:1px solid var(--dshpc-border);\n border-left:1px solid var(--dshpc-border);\n border-right:none;\n border-radius:var(--dshpc-radius-sm) 0 0 var(--dshpc-radius-sm);\n background:var(--dshpc-plate);color:var(--dshpc-fg-2);\n cursor:pointer;font-family:inherit;line-height:1;\n animation:dshpc-ear-in .2s var(--dshpc-ease);\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n/* \u5165\u573A\uFF1A\u4ECE\u53F3\u7F18\u5916\u6ED1\u8FDB\u6765\uFF0C\u522B\u300C\u7A81\u7136\u51FA\u73B0\u300D\uFF08\u7528\u6237 2026-10-28\uFF09\u3002 */\n@keyframes dshpc-ear-in{from{opacity:0;transform:translateX(14px)}}\n.dshpc-dock__ear:hover{background:var(--dshpc-plate-hover);color:var(--dshpc-fg)}\n.dshpc-dock__ear:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n/* \u4E0E\u6536\u8D77\u94AE\u7684\u7BAD\u5934\u540C\u4E00\u5B57\u53F7\uFF0816px\uFF09\uFF1A\u6536\u8FDB\u53BB\u524D\u540E\u7BAD\u5934\u4E00\u6A21\u4E00\u6837\u5927\uFF08\u7528\u6237 2026-10-28\uFF09\u3002 */\n.dshpc-dock__ear-arrow{font-size:16px;color:var(--dshpc-fg-3)}\n.dshpc-dock__ear:hover .dshpc-dock__ear-arrow{color:var(--dshpc-fg)}\n/* \u52A8\u6548\u793C\u8C8C\uFF1A\u7CFB\u7EDF\u58F0\u660E\u51CF\u5C11\u52A8\u6548\u65F6\u5168\u90E8\u5173\u6389\uFF08\u4E0E Segmented \u540C\u4E00\u7EA6\u5B9A\uFF09\uFF0C\u6536\u8D77\u9000\u5316\u4E3A\u77AC\u65F6\u3001\u529F\u80FD\u4E0D\u53D7\u5F71\u54CD\u3002 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-dock__panel{animation:none}\n .dshpc-dock__panel--closing{transition:none}\n .dshpc-dock__ear{animation:none}\n}\n";
2
2
  //# sourceMappingURL=panel-dock-css.generated.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"panel-dock-css.generated.d.ts","sourceRoot":"","sources":["../../src/ui/panel-dock-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,srNAA+kH,CAAA"}
1
+ {"version":3,"file":"panel-dock-css.generated.d.ts","sourceRoot":"","sources":["../../src/ui/panel-dock-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,8/cAA4uP,CAAA"}
@@ -1,4 +1,4 @@
1
1
  // ⚠️ 生成物,勿手改。真源 = src/ui/panel-dock.css
2
2
  // 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
3
- export const PANEL_DOCK_CSS = "\n/* 停靠栏 = **布局成员**,不是浮层:它占宽度、把主区真正挤窄(兄弟项目 2026-09-28:\n 「分栏压过来,不是盖上去」)。所以调用方必须把它放进自己的 flex 根里。 */\n.dshpc-dock{display:flex;flex:0 0 auto;align-self:stretch;min-width:0}\n\n/* 单栏:sticky + 100vh 让它在页面滚动时保持可见,同时仍然占宽度。\n ⚠️ **本条刻意不设 z-index**:布局成员一旦带正 z-index,就会无条件压过宿主 portal 到 body 的\n 弹窗(兄弟项目 2026-10-05 真机事故「侧边栏盖住宿主设置弹窗」)。层序交给 DOM 顺序裁决。 */\n.dshpc-dock__panel{\n box-sizing:border-box;position:sticky;top:0;align-self:stretch;\n display:flex;flex-direction:column;flex:0 0 auto;\n /* 高度默认视口高(整页场景);嵌在定高容器里时由调用方给 --dshpc-dock-h(如 420px / 100%)。 */\n height:var(--dshpc-dock-h,100vh);max-height:var(--dshpc-dock-h,100vh);min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n border-left:1px solid var(--dshpc-border);\n box-shadow:var(--dshpc-shadow-2);\n}\n\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\n /* 右侧 34px = 8(边距) + 20(关钮) + 6(呼吸):给绝对定位的关钮留位,标题/extra 不从它底下钻 */\n padding:10px 34px 10px 14px;\n border-bottom:1px solid var(--dshpc-border-faint);\n}\n/* 图标位 / 标题右侧的内容位:消费方传 ReactNode,可塞多个;库只负责排布,不抢宽度。 */\n.dshpc-dock__lead{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--dshpc-fg-2)}\n.dshpc-dock__extra{display:inline-flex;align-items:center;gap:6px;flex:none;margin-left:auto}\n/* 自定义头部:整行归调用方 —— 不加内边距/边框/背景,也不给关钮留内联空间(关钮是绝对定位的)。 */\n.dshpc-dock__head--custom{display:block;padding:0;border-bottom:none}\n.dshpc-dock__title{\n flex:1 1 auto;min-width:0;\n overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\n font-size:var(--dshpc-font-md);font-weight:600;\n}\n/* 关闭钮:20×20 方角图标位(与 Modal 的关闭钮同规格,不借 Picker 触发器皮肤)。 */\n.dshpc-dock__close{\n display:inline-flex;align-items:center;justify-content:center;flex:none;\n width:20px;height:20px;padding:0;border:none;border-radius:var(--dshpc-radius-sm);\n background:transparent;color:var(--dshpc-fg-3);\n font-family:inherit;font-size:13px;line-height:1;cursor:pointer;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n.dshpc-dock__close:hover{background:var(--dshpc-hover);color:var(--dshpc-fg)}\n.dshpc-dock__close:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n/* 头部关钮:绝对定位,位置与内置头完全一致(top 10 / right 8);自定义头也用这一个位置。\n 锚点是面板本身(position:sticky 即定位上下文),不在滚动内容里,所以正文滚动它不跟滚。 */\n.dshpc-dock__close--abs{position:absolute;top:10px;right:8px;z-index:8}\n/* 浮动关钮:无头部面板用,略收一点边距。 */\n.dshpc-dock__close--floating{\n position:absolute;top:6px;right:6px;z-index:8;\n background:var(--dshpc-surface-menu);border:1px solid var(--dshpc-border-faint);\n}\n\n/* 内容区自己滚:面板高度锁 100vh,内容不设内部滚动就会把整页撑高。 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto}\n\n/* 拖拽条:左缘 6px 命中区,**不画线**,hover/按住时才浮出一条浅色带。\n z-index 7 必须高于面板内容里的浮层(复制钮一类),否则命中区会被内容盖住。 */\n.dshpc-dock__resizer{\n position:absolute;left:0;top:0;bottom:0;width:6px;\n z-index:7;cursor:col-resize;background:transparent;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n/* hover/按住:不填灰带,改为官方 work 区指示条样式 —— 左缘 2px 蓝竖条、上下渐隐\n (颜色走 business 蓝的官方 alias,明暗自动跟随宿主;命中区仍是 6px 不变)。 */\n.dshpc-dock__resizer:hover,.dshpc-dock__resizer:active{\n background:linear-gradient(180deg,transparent,var(--dshpc-business) 30%,var(--dshpc-business) 70%,transparent) left center / 1px 100% no-repeat;\n}\n\n/* 拖动期:① <iframe>(PDF / HTML 预览)是独立文档,会吞掉父文档的 pointermove,\n 向右拖进 iframe 就卡死 —— 整片让出指针事件;② contain 把重排隔离在栏内,\n 否则每帧改宽度都会牵动整页重排(兄弟项目 2026-10-04 真机「挪很久才动一下」)。 */\n.dshpc-dock.dshpc-dock--resizing iframe{pointer-events:none}\n.dshpc-dock.dshpc-dock--resizing .dshpc-dock__panel{contain:layout paint;will-change:width}\n";
3
+ export const PANEL_DOCK_CSS = "\n/* 停靠栏 = **布局成员**,不是浮层:它占宽度、把主区真正挤窄(兄弟项目 2026-09-28:\n 「分栏压过来,不是盖上去」)。所以调用方必须把它放进自己的 flex 根里。 */\n.dshpc-dock{display:flex;flex:0 0 auto;align-self:stretch;min-width:0}\n/* 开着时给主区滚动条让出一条缝:滚动条贴死分隔线很难看(用户 2026-10-28,对齐\n dsh-better-sidebar 的留白)。全关时整条 dock 退出,缝隙一起消失、不留白边。\n 缝宽可由调用方盖 --dshpc-dock-gap;TS 侧的让位量(DOCK_GAP)要与它一致。 */\n.dshpc-dock--open{margin-left:var(--dshpc-dock-gap,1px)}\n\n/* 自动加的宿主行(openFilePreview 加 / 关闭即摘):消费方那行不必自己写 flex。\n 只让「第一个非预览子项」当主区伸展,其余直接子项不动(页脚条、工具条不误伤);\n display 不在这里写死 —— 本来就是 grid 等布局的元素保持原样,由 TS 侧按计算值补 flex。 */\n.dshpc-dock-host{min-width:0;min-height:0}\n.dshpc-dock-host>:not([data-dshpc-file-preview]){min-width:0}\n.dshpc-dock-host>:first-child:not([data-dshpc-file-preview]){flex:1 1 auto}\n\n/* 单栏:sticky + 100vh 让它在页面滚动时保持可见,同时仍然占宽度。\n ⚠️ **本条刻意不设 z-index**:布局成员一旦带正 z-index,就会无条件压过宿主 portal 到 body 的\n 弹窗(兄弟项目 2026-10-05 真机事故「侧边栏盖住宿主设置弹窗」)。层序交给 DOM 顺序裁决。 */\n.dshpc-dock__panel{\n box-sizing:border-box;position:sticky;top:0;align-self:stretch;\n display:flex;flex-direction:column;flex:0 0 auto;\n /* 高度默认视口高(整页场景);嵌在定高容器里时由调用方给 --dshpc-dock-h(如 420px / 100%)。 */\n height:var(--dshpc-dock-h,100vh);max-height:var(--dshpc-dock-h,100vh);min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n border-left:1px solid var(--dshpc-border);\n transition:border-color var(--dshpc-dur-fast) var(--dshpc-ease);\n box-shadow:var(--dshpc-shadow-2);\n /* 入场:从 0 宽滑出来(keyframes 只写 from,终点取内联 width),打开 / 耳朵展开都走这条。 */\n animation:dshpc-dock-in .22s var(--dshpc-ease);\n}\n/* overflow:hidden 只在动画前段(离散属性在 50% 翻转)——平时不能裁,否则挂在左缘外的\n 收起钮会被切掉一半。 */\n@keyframes dshpc-dock-in{from{width:0;opacity:0;overflow:hidden}}\n/* 收起的出场:宽度收到 0、透明淡出;落定后组件才真正摘掉这一栏(JS 延时 220ms 配合)。 */\n.dshpc-dock__panel--closing{\n width:0!important;min-width:0!important;opacity:0;border-left-width:0;\n transition:width .2s var(--dshpc-ease),opacity .2s var(--dshpc-ease),border-left-width .2s var(--dshpc-ease);\n}\n\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\n /* 右侧 34px = 8(边距) + 20(关钮) + 6(呼吸):给绝对定位的关钮留位,标题/extra 不从它底下钻 */\n padding:10px 34px 10px 14px;\n border-bottom:1px solid var(--dshpc-border-faint);\n}\n/* 图标位 / 标题右侧的内容位:消费方传 ReactNode,可塞多个;库只负责排布,不抢宽度。 */\n.dshpc-dock__lead{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--dshpc-fg-2)}\n.dshpc-dock__extra{display:inline-flex;align-items:center;gap:6px;flex:none;margin-left:auto}\n/* 自定义头部:整行归调用方 —— 不加内边距/边框/背景,也不给关钮留内联空间(关钮是绝对定位的)。 */\n.dshpc-dock__head--custom{display:block;padding:0;border-bottom:none}\n.dshpc-dock__title{\n flex:1 1 auto;min-width:0;\n overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\n font-size:var(--dshpc-font-md);font-weight:600;\n}\n/* 关闭钮:20×20 方角图标位(与 Modal 的关闭钮同规格,不借 Picker 触发器皮肤)。 */\n.dshpc-dock__close{\n display:inline-flex;align-items:center;justify-content:center;flex:none;\n width:20px;height:20px;padding:0;border:none;border-radius:var(--dshpc-radius-sm);\n background:transparent;color:var(--dshpc-fg-3);\n font-family:inherit;font-size:13px;line-height:1;cursor:pointer;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n.dshpc-dock__close:hover{background:var(--dshpc-hover);color:var(--dshpc-fg)}\n.dshpc-dock__close:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n/* 头部关钮:绝对定位,位置与内置头完全一致(top 10 / right 8);自定义头也用这一个位置。\n 锚点是面板本身(position:sticky 即定位上下文),不在滚动内容里,所以正文滚动它不跟滚。 */\n.dshpc-dock__close--abs{position:absolute;top:10px;right:8px;z-index:8}\n/* 浮动关钮:无头部面板用,略收一点边距。 */\n.dshpc-dock__close--floating{\n position:absolute;top:6px;right:6px;z-index:8;\n background:var(--dshpc-surface-menu);border:1px solid var(--dshpc-border-faint);\n}\n\n/* 内容区自己滚:面板高度锁 100vh,内容不设内部滚动就会把整页撑高。 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto}\n\n/* 拖拽条:左缘 6px 命中区,**自己不画任何线**。\n hover / 拖动时把面板自己的 border-left 染成蓝(用户 2026-10-28 四轮:蓝线只准改原线,\n 不准在原线旁边加一条 —— 之前在 padding box 左缘画渐变,正好叠出双线)。\n 命中区在 padding box 上、border 在它左外侧,所以只能改面板的 border 色。\n z-index 7 必须高于面板内容里的浮层(复制钮一类),否则命中区会被内容盖住。 */\n.dshpc-dock__resizer{\n position:absolute;left:0;top:0;bottom:0;width:6px;\n z-index:7;cursor:col-resize;background:transparent;\n}\n.dshpc-dock__panel:has(> .dshpc-dock__resizer:hover),\n.dshpc-dock__panel--resizing{\n /* 原线保留「上下渐隐」工作区指示条质感:把面板自己的 border-left 换成同款渐变\n (不是另加一条线)。面板只有这一条边框、无圆角,所以只作用在线上。 */\n border-image:linear-gradient(180deg,transparent,var(--dshpc-business) 30% 70%,transparent) 1;\n}\n\n/* 拖动期:① <iframe>(PDF / HTML 预览)是独立文档,会吞掉父文档的 pointermove,\n 向右拖进 iframe 就卡死 —— 整片让出指针事件;② contain 把重排隔离在栏内,\n 否则每帧改宽度都会牵动整页重排(兄弟项目 2026-10-04 真机「挪很久才动一下」)。 */\n.dshpc-dock.dshpc-dock--resizing iframe{pointer-events:none}\n.dshpc-dock.dshpc-dock--resizing .dshpc-dock__panel{contain:layout paint;will-change:width}\n\n/* 收起钮:**待在面板自己的框里**(用户 2026-10-28 三轮:占面板内部空间,不伸到外面去)。\n left:0 从内侧贴着分隔线 —— 贴线的一边不描边(线是面板自己的 border-left),页签与线不重合。\n 20×44(用户 2026-10-28 四轮定尺寸);实色底(--dshpc-plate,明暗各有实值),hover 亮一档。\n padding-right:2px 是**视觉居中**:右侧是圆角,箭头往直线那边挪 1px(用户 2026-10-28 四轮)。 */\n.dshpc-dock__collapse{\n position:absolute;left:0;top:50%;transform:translateY(-50%);\n z-index:8;display:inline-flex;align-items:center;justify-content:center;\n width:20px;height:44px;padding:0 2px 0 0;\n border-top:1px solid var(--dshpc-border);\n border-bottom:1px solid var(--dshpc-border);\n border-right:1px solid var(--dshpc-border);\n border-left:none;\n border-radius:0 var(--dshpc-radius-sm) var(--dshpc-radius-sm) 0;\n background:var(--dshpc-plate);color:var(--dshpc-fg-3);\n font-family:inherit;font-size:16px;line-height:1;cursor:pointer;\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n.dshpc-dock__collapse:hover{background:var(--dshpc-plate-hover);color:var(--dshpc-fg)}\n.dshpc-dock__collapse:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n\n/* 收起后的浮动耳朵:**fixed 贴右缘、垂直居中、独立于分栏**(用户 2026-10-28 定稿:\n 小页签挂中间、里面放面板图标、不显示文字,箭头与收起钮反向)。多个按收起顺序纵向堆叠。\n z 走 dock 档(低于宿主弹窗),避免盖住宿主 portal 层。 */\n.dshpc-dock__ears{\n position:fixed;top:50%;right:0;transform:translateY(-50%);\n z-index:var(--dshpc-z-dock,1030);\n display:flex;flex-direction:column;gap:8px;align-items:flex-end;\n pointer-events:none;\n}\n.dshpc-dock__ear{\n pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;\n /* 与收起钮**同尺寸**(20×44,用户 2026-10-28 四轮):上/下/左描边,贴右缘的一侧不描。\n 实色底(--dshpc-plate),不用透明色 —— 透明底下透出东西很难看。\n padding-left:2px 是**视觉居中**:左侧是圆角,箭头往直线(右缘)那边挪 1px。 */\n width:20px;height:44px;box-sizing:border-box;padding:0 0 0 2px;\n border-top:1px solid var(--dshpc-border);\n border-bottom:1px solid var(--dshpc-border);\n border-left:1px solid var(--dshpc-border);\n border-right:none;\n border-radius:var(--dshpc-radius-sm) 0 0 var(--dshpc-radius-sm);\n background:var(--dshpc-plate);color:var(--dshpc-fg-2);\n cursor:pointer;font-family:inherit;line-height:1;\n animation:dshpc-ear-in .2s var(--dshpc-ease);\n transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease),color var(--dshpc-dur-fast) var(--dshpc-ease);\n}\n/* 入场:从右缘外滑进来,别「突然出现」(用户 2026-10-28)。 */\n@keyframes dshpc-ear-in{from{opacity:0;transform:translateX(14px)}}\n.dshpc-dock__ear:hover{background:var(--dshpc-plate-hover);color:var(--dshpc-fg)}\n.dshpc-dock__ear:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n/* 与收起钮的箭头同一字号(16px):收进去前后箭头一模一样大(用户 2026-10-28)。 */\n.dshpc-dock__ear-arrow{font-size:16px;color:var(--dshpc-fg-3)}\n.dshpc-dock__ear:hover .dshpc-dock__ear-arrow{color:var(--dshpc-fg)}\n/* 动效礼貌:系统声明减少动效时全部关掉(与 Segmented 同一约定),收起退化为瞬时、功能不受影响。 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-dock__panel{animation:none}\n .dshpc-dock__panel--closing{transition:none}\n .dshpc-dock__ear{animation:none}\n}\n";
4
4
  //# sourceMappingURL=panel-dock-css.generated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"panel-dock-css.generated.js","sourceRoot":"","sources":["../../src/ui/panel-dock-css.generated.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,qEAAqE;AACrE,MAAM,CAAC,MAAM,cAAc,GAAG,4kHAA4kH,CAAA"}
1
+ {"version":3,"file":"panel-dock-css.generated.js","sourceRoot":"","sources":["../../src/ui/panel-dock-css.generated.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,qEAAqE;AACrE,MAAM,CAAC,MAAM,cAAc,GAAG,yuPAAyuP,CAAA"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * 停靠面板的状态逻辑(纯函数,零 React / 零 DOM)。
3
3
  *
4
- * 只记两件事:**哪些面板开着**、**每栏多宽**。内容与头部不在这里——
5
- * 那是调用方在页面里声明的东西(`<DockPanel id="…">…</DockPanel>`),
4
+ * 只记三件事:**哪些面板开着**、**每栏多宽**、**哪些收起成了耳朵**。
5
+ * 内容与头部不在这里——那是调用方在页面里声明的东西(`<DockPanel id="…">…</DockPanel>`),
6
6
  * 与 Ant Design `Tabs` 的 `activeKey` + `<TabPane>` 同一分工:
7
7
  * **显隐归状态,结构归 children**。
8
8
  *
@@ -11,6 +11,10 @@
11
11
  * · 未到上限 ⇒ 追加;到上限 ⇒ 返回 `{ ok: false, reason: 'limit' }`,不静默丢弃;
12
12
  * · 关一栏即腾位,之后可以开新组名;
13
13
  * · 没有多份同名、没有自动淘汰、没有 tab 切换。
14
+ *
15
+ * 收起(用户 2026-10-28 定案)= **面板退出布局、换成一只独立的固定耳朵**,不是把栏宽缩细:
16
+ * · `collapsePanel` 把组名从 `ids` 移到 `collapsed`,**宽度留着**(展开要回到原宽);
17
+ * · 耳朵是另一块 fixed 浮层,不在这里表达布局——这里只记「谁收起了」。
14
18
  */
15
19
  /** 默认窗口的保留名:`open()` 不传 id 时用它。 */
16
20
  export declare const DEFAULT_PANEL_ID = "default";
@@ -19,6 +23,8 @@ export interface DockState {
19
23
  ids: string[];
20
24
  /** 每栏宽度(px);没有记录的栏由组件用它的 `width` 兜底。 */
21
25
  widths: Record<string, number>;
26
+ /** 已收起(变成右侧浮动耳朵)的组名,按收起顺序;宽度仍在 `widths` 里等展开还原。 */
27
+ collapsed: string[];
22
28
  }
23
29
  export type OpenResult = {
24
30
  ok: true;
@@ -33,18 +39,29 @@ export declare function emptyDock(): DockState;
33
39
  /** 夹到 [min, max];`max` 缺省表示不设上限。NaN / Infinity 一律落回 min。 */
34
40
  export declare function clampWidth(value: number, min: number, max?: number): number;
35
41
  export declare function isOpen(state: DockState, id: string): boolean;
42
+ export declare function isCollapsed(state: DockState, id: string): boolean;
36
43
  /**
37
44
  * 打开一栏。已开 ⇒ 原样返回(`created: false`,位置不变);
38
- * 未开且已满 ⇒ 返回失败结果,状态不动。
45
+ * 未开且已满 ⇒ 返回失败结果,状态不动。打开即撤销同名耳朵。
39
46
  */
40
47
  export declare function openPanel(state: DockState, id: string, maxPanels: number): {
41
48
  state: DockState;
42
49
  result: OpenResult;
43
50
  };
44
- /** 关一栏;不存在即原样返回(幂等)。宽度记忆随栏一起丢弃。 */
51
+ /**
52
+ * 关一栏;不存在即原样返回(幂等)。宽度记忆随栏一起丢弃。
53
+ * 对已收起的耳朵也生效 —— 「关闭」= 彻底不留,耳朵一起抹掉(用户 2026-10-28 口径)。
54
+ */
45
55
  export declare function closePanel(state: DockState, id: string): DockState;
46
56
  /** 记某栏宽度(已夹过);值没变时原样返回,避免无谓重渲染。 */
47
57
  export declare function setPanelWidth(state: DockState, id: string, width: number): DockState;
58
+ /**
59
+ * 收起一栏:退出布局(从 `ids` 移除,**立即不占宽**),转入耳朵列表。
60
+ * 宽度**不删**——耳朵展开时要回到原宽。只对开着的栏生效。
61
+ */
62
+ export declare function collapsePanel(state: DockState, id: string): DockState;
63
+ /** 展开耳朵:移出耳朵列表、回到打开列表末尾;宽度照旧(`collapsePanel` 没删)。 */
64
+ export declare function expandPanel(state: DockState, id: string): DockState;
48
65
  /** 其他栏宽度之和(算「这一栏最多能拖多宽」用)。 */
49
66
  export declare function othersWidth(state: DockState, id: string, fallbackOf: (panelId: string) => number): number;
50
67
  //# sourceMappingURL=panel-dock-logic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"panel-dock-logic.d.ts","sourceRoot":"","sources":["../../src/ui/panel-dock-logic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,mCAAmC;AACnC,eAAO,MAAM,gBAAgB,YAAY,CAAA;AAEzC,MAAM,WAAW,SAAS;IACxB,4BAA4B;IAC5B,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAED,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC1C;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAA;AAE9C,wBAAgB,SAAS,IAAI,SAAS,CAErC;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAI3E;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,GAChB;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,CAI1C;AAED,mCAAmC;AACnC,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAKlE;AAED,mCAAmC;AACnC,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAIpF;AAED,8BAA8B;AAC9B,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAKzG"}
1
+ {"version":3,"file":"panel-dock-logic.d.ts","sourceRoot":"","sources":["../../src/ui/panel-dock-logic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,mCAAmC;AACnC,eAAO,MAAM,gBAAgB,YAAY,CAAA;AAEzC,MAAM,WAAW,SAAS;IACxB,4BAA4B;IAC5B,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,mDAAmD;IACnD,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC1C;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAA;AAE9C,wBAAgB,SAAS,IAAI,SAAS,CAErC;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAI3E;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,EAChB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,GAChB;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,CAW1C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAWlE;AAED,mCAAmC;AACnC,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAIpF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAOrE;AAED,qDAAqD;AACrD,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAOnE;AAED,8BAA8B;AAC9B,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAKzG"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * 停靠面板的状态逻辑(纯函数,零 React / 零 DOM)。
3
3
  *
4
- * 只记两件事:**哪些面板开着**、**每栏多宽**。内容与头部不在这里——
5
- * 那是调用方在页面里声明的东西(`<DockPanel id="…">…</DockPanel>`),
4
+ * 只记三件事:**哪些面板开着**、**每栏多宽**、**哪些收起成了耳朵**。
5
+ * 内容与头部不在这里——那是调用方在页面里声明的东西(`<DockPanel id="…">…</DockPanel>`),
6
6
  * 与 Ant Design `Tabs` 的 `activeKey` + `<TabPane>` 同一分工:
7
7
  * **显隐归状态,结构归 children**。
8
8
  *
@@ -11,11 +11,15 @@
11
11
  * · 未到上限 ⇒ 追加;到上限 ⇒ 返回 `{ ok: false, reason: 'limit' }`,不静默丢弃;
12
12
  * · 关一栏即腾位,之后可以开新组名;
13
13
  * · 没有多份同名、没有自动淘汰、没有 tab 切换。
14
+ *
15
+ * 收起(用户 2026-10-28 定案)= **面板退出布局、换成一只独立的固定耳朵**,不是把栏宽缩细:
16
+ * · `collapsePanel` 把组名从 `ids` 移到 `collapsed`,**宽度留着**(展开要回到原宽);
17
+ * · 耳朵是另一块 fixed 浮层,不在这里表达布局——这里只记「谁收起了」。
14
18
  */
15
19
  /** 默认窗口的保留名:`open()` 不传 id 时用它。 */
16
20
  export const DEFAULT_PANEL_ID = 'default';
17
21
  export function emptyDock() {
18
- return { ids: [], widths: {} };
22
+ return { ids: [], widths: {}, collapsed: [] };
19
23
  }
20
24
  /** 夹到 [min, max];`max` 缺省表示不设上限。NaN / Infinity 一律落回 min。 */
21
25
  export function clampWidth(value, min, max) {
@@ -26,24 +30,43 @@ export function clampWidth(value, min, max) {
26
30
  export function isOpen(state, id) {
27
31
  return state.ids.includes(id);
28
32
  }
33
+ export function isCollapsed(state, id) {
34
+ return state.collapsed.includes(id);
35
+ }
29
36
  /**
30
37
  * 打开一栏。已开 ⇒ 原样返回(`created: false`,位置不变);
31
- * 未开且已满 ⇒ 返回失败结果,状态不动。
38
+ * 未开且已满 ⇒ 返回失败结果,状态不动。打开即撤销同名耳朵。
32
39
  */
33
40
  export function openPanel(state, id, maxPanels) {
34
41
  if (isOpen(state, id))
35
42
  return { state, result: { ok: true, id, created: false } };
36
43
  if (state.ids.length >= maxPanels)
37
44
  return { state, result: { ok: false, id, reason: 'limit' } };
38
- return { state: { ids: [...state.ids, id], widths: state.widths }, result: { ok: true, id, created: true } };
45
+ return {
46
+ state: {
47
+ ids: [...state.ids, id],
48
+ widths: state.widths,
49
+ collapsed: state.collapsed.filter((item) => item !== id),
50
+ },
51
+ result: { ok: true, id, created: true },
52
+ };
39
53
  }
40
- /** 关一栏;不存在即原样返回(幂等)。宽度记忆随栏一起丢弃。 */
54
+ /**
55
+ * 关一栏;不存在即原样返回(幂等)。宽度记忆随栏一起丢弃。
56
+ * 对已收起的耳朵也生效 —— 「关闭」= 彻底不留,耳朵一起抹掉(用户 2026-10-28 口径)。
57
+ */
41
58
  export function closePanel(state, id) {
42
- if (!isOpen(state, id))
59
+ const open = isOpen(state, id);
60
+ const ear = isCollapsed(state, id);
61
+ if (!open && !ear)
43
62
  return state;
44
63
  const widths = { ...state.widths };
45
64
  delete widths[id];
46
- return { ids: state.ids.filter((item) => item !== id), widths };
65
+ return {
66
+ ids: open ? state.ids.filter((item) => item !== id) : state.ids,
67
+ widths,
68
+ collapsed: ear ? state.collapsed.filter((item) => item !== id) : state.collapsed,
69
+ };
47
70
  }
48
71
  /** 记某栏宽度(已夹过);值没变时原样返回,避免无谓重渲染。 */
49
72
  export function setPanelWidth(state, id, width) {
@@ -51,7 +74,30 @@ export function setPanelWidth(state, id, width) {
51
74
  return state;
52
75
  if (state.widths[id] === width)
53
76
  return state;
54
- return { ids: state.ids, widths: { ...state.widths, [id]: width } };
77
+ return { ids: state.ids, widths: { ...state.widths, [id]: width }, collapsed: state.collapsed };
78
+ }
79
+ /**
80
+ * 收起一栏:退出布局(从 `ids` 移除,**立即不占宽**),转入耳朵列表。
81
+ * 宽度**不删**——耳朵展开时要回到原宽。只对开着的栏生效。
82
+ */
83
+ export function collapsePanel(state, id) {
84
+ if (!isOpen(state, id))
85
+ return state;
86
+ return {
87
+ ids: state.ids.filter((item) => item !== id),
88
+ widths: state.widths,
89
+ collapsed: state.collapsed.includes(id) ? state.collapsed : [...state.collapsed, id],
90
+ };
91
+ }
92
+ /** 展开耳朵:移出耳朵列表、回到打开列表末尾;宽度照旧(`collapsePanel` 没删)。 */
93
+ export function expandPanel(state, id) {
94
+ if (!isCollapsed(state, id))
95
+ return state;
96
+ return {
97
+ ids: state.ids.includes(id) ? state.ids : [...state.ids, id],
98
+ widths: state.widths,
99
+ collapsed: state.collapsed.filter((item) => item !== id),
100
+ };
55
101
  }
56
102
  /** 其他栏宽度之和(算「这一栏最多能拖多宽」用)。 */
57
103
  export function othersWidth(state, id, fallbackOf) {
@@ -1 +1 @@
1
- {"version":3,"file":"panel-dock-logic.js","sourceRoot":"","sources":["../../src/ui/panel-dock-logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"panel-dock-logic.js","sourceRoot":"","sources":["../../src/ui/panel-dock-logic.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  */
8
8
  export type Locale = 'zh' | 'en';
9
9
  /** utils 内置文案的 key(ui 的选择器也复用这套字典,保持单一 locale 状态)。 */
10
- export type UtilMessageKey = 'sessionLoading' | 'sessionFailed' | 'sessionEmpty' | 'explorerLoading' | 'explorerFailed' | 'explorerRoot' | 'explorerTruncated' | 'explorerEmptyDir' | 'explorerLevels' | 'explorerExpand' | 'explorerCollapse' | 'explorerEnter' | 'explorerRootName' | 'explorerCrumbsAria' | 'explorerPickFile' | 'explorerPickDir' | 'explorerPickDirAria' | 'previewClose' | 'previewCopyPath' | 'previewRefresh' | 'previewRender' | 'previewSource' | 'previewMdSwitchAria' | 'previewHtmlSwitchAria' | 'previewLoadMore' | 'previewTruncated' | 'previewOfficeUnavailable' | 'previewRenderFailed' | 'previewBadPayload' | 'previewOutside' | 'previewNotFound' | 'previewNotDirectory' | 'previewTooLarge' | 'previewNotText' | 'previewFailedCode' | 'mdCopy' | 'mdCopied' | 'mdCode' | 'mdWrap' | 'mdUnwrap' | 'mdFootnotes' | 'cardToggle' | 'modalClose' | 'dockClose' | 'dockResize' | 'errorRetry' | 'confirm' | 'cancel' | 'dialogOk' | 'pickerPlaceholder' | 'pickerClear' | 'pickerEmpty' | 'pickerNoMatch' | 'pickerSearch' | 'pickerSelected' | 'pickerMaxReached' | 'pickerDegraded' | 'modelProvider' | 'modelModel' | 'modelDefault' | 'workspaceAll' | 'relNow' | 'relInJustNow' | 'relInMinutes' | 'relInHours' | 'relInDays' | 'relInMonths' | 'relInYears' | 'relJustNow' | 'relMinutesAgo' | 'relHoursAgo' | 'relDaysAgo' | 'relWeeksAgo' | 'relMonthsAgo' | 'relYearsAgo' | 'codeCopy' | 'codeCopied' | 'sessionUnknownKind' | 'sessionLoadOlder' | 'sessionProcess' | 'triggerRequest' | 'triggerGoal' | 'triggerAgent' | 'triggerTeam' | 'triggerSubagent' | 'triggerGithub' | 'triggerWebhook' | 'triggerSchedule' | 'triggerJob' | 'triggerPlugin' | 'triggerExplanation' | 'turnProcessTook' | 'turnProcessDeepDiving' | 'turnProcessWorked' | 'turnProcessFailed' | 'turnStopped' | 'chatDeepDiving' | 'thinkLabel' | 'durationSeconds' | 'durationMinutes' | 'durationHours' | 'durationMilliseconds' | 'retryActive' | 'retryCancelled' | 'retryStarted' | 'retryScheduled' | 'retryStatus' | 'retryDelay' | 'retryFailure' | 'turnErrorTitle' | 'accountStopped' | 'maxTokensTitle' | 'maxTokensHint' | 'failureAuth' | 'failureQuota' | 'failureAccountSignedOut' | 'failureAccountSignInRequired' | 'clockDate' | 'clockDateYear' | 'copyLabel' | 'copiedLabel' | 'branchLabel' | 'branchUnavailableLabel' | 'turnUsageTitle' | 'turnUsageModel' | 'turnUsageCacheHit' | 'turnUsageInput' | 'turnUsageCacheRead' | 'turnUsageCacheWrite' | 'turnUsageOutput' | 'turnUsageReasoning' | 'turnUsageConsumed' | 'turnUsageCount' | 'numberThousand' | 'numberMillion' | 'numberGroupSeparator' | 'stepProcessDoneThinking' | 'stepProcessDoneRead' | 'stepProcessDoneReadImage' | 'stepProcessDoneWrite' | 'stepProcessDoneSearch' | 'stepProcessDoneEdit' | 'stepProcessDoneCommands' | 'stepProcessDoneCode' | 'stepProcessDoneWebSearch' | 'stepProcessDoneWebFetch' | 'stepProcessDoneSubagents' | 'stepProcessDonePlan' | 'stepProcessDoneQuestions' | 'stepProcessDoneTools' | 'stepProcessJoinTwo' | 'stepProcessComma' | 'stepProcessSharedPrefix' | 'stepProcessMore' | 'toolTitleRead' | 'toolTitleReadImage' | 'toolTitleGrep' | 'toolTitleGlob' | 'toolTitleBash' | 'toolTitleWrite' | 'toolTitleEdit' | 'toolTitleCode' | 'toolTitleWebSearch' | 'toolTitleWebFetch' | 'toolTitleGeneric' | 'toolTitleSearch' | 'toolInputLabel' | 'toolOutputLabel' | 'rowPreparing' | 'rowRunning' | 'rowFailed' | 'rowStopped' | 'commandRunning' | 'commandFailed' | 'commandDone' | 'commandTitle' | 'collapseLabel' | 'readWindow' | 'readCollapseAria' | 'readExpandAria' | 'readExpandRest' | 'terminalSignal' | 'terminalExitCode' | 'terminalNoExitCode' | 'terminalRunning' | 'terminalFailed' | 'terminalDone' | 'terminalNoOutput' | 'terminalCollapseAria' | 'terminalExpandAria' | 'terminalExpandRest' | 'terminalCommandLine' | 'terminalSendInput' | 'terminalSession' | 'codeBlockLabel' | 'diffWrapLabel' | 'diffUnwrapLabel' | 'diffCollapseAria' | 'diffExpandAria' | 'diffExpandRest' | 'sessionArchived' | 'sessionHeading' | 'changesSingle' | 'changesMulti' | 'changesBinary' | 'changesAll' | 'changesCollapse' | 'changesOversized' | 'diffLoading' | 'diffMissing' | 'diffError' | 'diffBinary' | 'diffOversized' | 'diffCreated' | 'diffDeleted' | 'diffUnchanged' | 'diffCoarse' | 'diffTruncated' | 'continueBranch' | 'forkConfirmTitle' | 'forkConfirmText' | 'forkConfirmAccept' | 'forkWorking' | 'forkFailed' | 'deliverRowTitle' | 'deliverRowPreparing' | 'deliverRowRunning' | 'deliverRowOk' | 'deliverRowError' | 'deliverRowStopped' | 'deliverFileLabel' | 'deliverPreviewHint' | 'deliverPreviewCard' | 'deliverAll' | 'deliverCollapse' | 'deliverExpandAria' | 'deliverCollapseAria' | 'composerPlaceholder' | 'composerHint' | 'dtPlaceholder' | 'dtStart' | 'dtEnd' | 'dtToday' | 'dtNow' | 'dtClear' | 'dtHour' | 'dtMinute' | 'dtSecond' | 'dtPrevYear' | 'dtPrevMonth' | 'dtNextMonth' | 'dtNextYear' | 'dtInvalidRange';
10
+ export type UtilMessageKey = 'sessionLoading' | 'sessionFailed' | 'sessionEmpty' | 'explorerLoading' | 'explorerFailed' | 'explorerRoot' | 'explorerTruncated' | 'explorerEmptyDir' | 'explorerLevels' | 'explorerExpand' | 'explorerCollapse' | 'explorerEnter' | 'explorerRootName' | 'explorerCrumbsAria' | 'explorerPickFile' | 'explorerPickDir' | 'explorerPickDirAria' | 'previewClose' | 'previewCopyPath' | 'previewRefresh' | 'previewRender' | 'previewSource' | 'previewMdSwitchAria' | 'previewHtmlSwitchAria' | 'previewLoadMore' | 'previewTruncated' | 'previewOfficeUnavailable' | 'previewRenderFailed' | 'previewBadPayload' | 'previewOutside' | 'previewNotFound' | 'previewNotDirectory' | 'previewTooLarge' | 'previewNotText' | 'previewFailedCode' | 'mdCopy' | 'mdCopied' | 'mdCode' | 'mdWrap' | 'mdUnwrap' | 'mdFootnotes' | 'cardToggle' | 'modalClose' | 'dockClose' | 'dockResize' | 'dockCollapse' | 'dockExpand' | 'errorRetry' | 'confirm' | 'cancel' | 'dialogOk' | 'pickerPlaceholder' | 'pickerClear' | 'pickerEmpty' | 'pickerNoMatch' | 'pickerSearch' | 'pickerSelected' | 'pickerMaxReached' | 'pickerDegraded' | 'modelProvider' | 'modelModel' | 'modelDefault' | 'workspaceAll' | 'relNow' | 'relInJustNow' | 'relInMinutes' | 'relInHours' | 'relInDays' | 'relInMonths' | 'relInYears' | 'relJustNow' | 'relMinutesAgo' | 'relHoursAgo' | 'relDaysAgo' | 'relWeeksAgo' | 'relMonthsAgo' | 'relYearsAgo' | 'codeCopy' | 'codeCopied' | 'sessionUnknownKind' | 'sessionLoadOlder' | 'sessionProcess' | 'triggerRequest' | 'triggerGoal' | 'triggerAgent' | 'triggerTeam' | 'triggerSubagent' | 'triggerGithub' | 'triggerWebhook' | 'triggerSchedule' | 'triggerJob' | 'triggerPlugin' | 'triggerExplanation' | 'turnProcessTook' | 'turnProcessDeepDiving' | 'turnProcessWorked' | 'turnProcessFailed' | 'turnStopped' | 'chatDeepDiving' | 'thinkLabel' | 'durationSeconds' | 'durationMinutes' | 'durationHours' | 'durationMilliseconds' | 'retryActive' | 'retryCancelled' | 'retryStarted' | 'retryScheduled' | 'retryStatus' | 'retryDelay' | 'retryFailure' | 'turnErrorTitle' | 'accountStopped' | 'maxTokensTitle' | 'maxTokensHint' | 'failureAuth' | 'failureQuota' | 'failureAccountSignedOut' | 'failureAccountSignInRequired' | 'clockDate' | 'clockDateYear' | 'copyLabel' | 'copiedLabel' | 'branchLabel' | 'branchUnavailableLabel' | 'turnUsageTitle' | 'turnUsageModel' | 'turnUsageCacheHit' | 'turnUsageInput' | 'turnUsageCacheRead' | 'turnUsageCacheWrite' | 'turnUsageOutput' | 'turnUsageReasoning' | 'turnUsageConsumed' | 'turnUsageCount' | 'numberThousand' | 'numberMillion' | 'numberGroupSeparator' | 'stepProcessDoneThinking' | 'stepProcessDoneRead' | 'stepProcessDoneReadImage' | 'stepProcessDoneWrite' | 'stepProcessDoneSearch' | 'stepProcessDoneEdit' | 'stepProcessDoneCommands' | 'stepProcessDoneCode' | 'stepProcessDoneWebSearch' | 'stepProcessDoneWebFetch' | 'stepProcessDoneSubagents' | 'stepProcessDonePlan' | 'stepProcessDoneQuestions' | 'stepProcessDoneTools' | 'stepProcessJoinTwo' | 'stepProcessComma' | 'stepProcessSharedPrefix' | 'stepProcessMore' | 'toolTitleRead' | 'toolTitleReadImage' | 'toolTitleGrep' | 'toolTitleGlob' | 'toolTitleBash' | 'toolTitleWrite' | 'toolTitleEdit' | 'toolTitleCode' | 'toolTitleWebSearch' | 'toolTitleWebFetch' | 'toolTitleGeneric' | 'toolTitleSearch' | 'toolInputLabel' | 'toolOutputLabel' | 'rowPreparing' | 'rowRunning' | 'rowFailed' | 'rowStopped' | 'commandRunning' | 'commandFailed' | 'commandDone' | 'commandTitle' | 'collapseLabel' | 'readWindow' | 'readCollapseAria' | 'readExpandAria' | 'readExpandRest' | 'terminalSignal' | 'terminalExitCode' | 'terminalNoExitCode' | 'terminalRunning' | 'terminalFailed' | 'terminalDone' | 'terminalNoOutput' | 'terminalCollapseAria' | 'terminalExpandAria' | 'terminalExpandRest' | 'terminalCommandLine' | 'terminalSendInput' | 'terminalSession' | 'codeBlockLabel' | 'diffWrapLabel' | 'diffUnwrapLabel' | 'diffCollapseAria' | 'diffExpandAria' | 'diffExpandRest' | 'sessionArchived' | 'sessionHeading' | 'changesSingle' | 'changesMulti' | 'changesBinary' | 'changesAll' | 'changesCollapse' | 'changesOversized' | 'diffLoading' | 'diffMissing' | 'diffError' | 'diffBinary' | 'diffOversized' | 'diffCreated' | 'diffDeleted' | 'diffUnchanged' | 'diffCoarse' | 'diffTruncated' | 'continueBranch' | 'forkConfirmTitle' | 'forkConfirmText' | 'forkConfirmAccept' | 'forkWorking' | 'forkFailed' | 'deliverRowTitle' | 'deliverRowPreparing' | 'deliverRowRunning' | 'deliverRowOk' | 'deliverRowError' | 'deliverRowStopped' | 'deliverFileLabel' | 'deliverPreviewHint' | 'deliverPreviewCard' | 'deliverAll' | 'deliverCollapse' | 'deliverExpandAria' | 'deliverCollapseAria' | 'composerPlaceholder' | 'composerHint' | 'dtPlaceholder' | 'dtStart' | 'dtEnd' | 'dtToday' | 'dtNow' | 'dtClear' | 'dtHour' | 'dtMinute' | 'dtSecond' | 'dtPrevYear' | 'dtPrevMonth' | 'dtNextMonth' | 'dtNextYear' | 'dtInvalidRange';
11
11
  /** 文案函数:`vars` 用于填 `{n}` 这类占位。 */
12
12
  export type Translate = (key: UtilMessageKey, vars?: Record<string, number | string>) => string;
13
13
  export declare function setLocale(locale: Locale): void;