dsh-plugin-core 0.20.3 → 0.20.6
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.
- package/dist/design/tokens-css.generated.d.ts +1 -1
- package/dist/design/tokens-css.generated.d.ts.map +1 -1
- package/dist/design/tokens-css.generated.js +1 -1
- package/dist/design/tokens-css.generated.js.map +1 -1
- package/dist/explorer/FileBrowser.d.ts +13 -6
- package/dist/explorer/FileBrowser.d.ts.map +1 -1
- package/dist/explorer/FileBrowser.js +190 -305
- package/dist/explorer/FileBrowser.js.map +1 -1
- package/dist/explorer/crumb-nav.d.ts +45 -0
- package/dist/explorer/crumb-nav.d.ts.map +1 -0
- package/dist/explorer/crumb-nav.js +75 -0
- package/dist/explorer/crumb-nav.js.map +1 -0
- package/dist/explorer/crumbs-menu.d.ts +37 -0
- package/dist/explorer/crumbs-menu.d.ts.map +1 -0
- package/dist/explorer/crumbs-menu.js +102 -0
- package/dist/explorer/crumbs-menu.js.map +1 -0
- package/dist/explorer/explorer-css.generated.d.ts +1 -1
- package/dist/explorer/explorer-css.generated.d.ts.map +1 -1
- package/dist/explorer/explorer-css.generated.js +1 -1
- package/dist/explorer/explorer-css.generated.js.map +1 -1
- package/dist/explorer/fs-face.d.ts +36 -0
- package/dist/explorer/fs-face.d.ts.map +1 -0
- package/dist/explorer/fs-face.js +74 -0
- package/dist/explorer/fs-face.js.map +1 -0
- package/dist/explorer/index.d.ts +2 -1
- package/dist/explorer/index.d.ts.map +1 -1
- package/dist/explorer/index.js +2 -1
- package/dist/explorer/index.js.map +1 -1
- package/dist/explorer/landing.d.ts +26 -0
- package/dist/explorer/landing.d.ts.map +1 -0
- package/dist/explorer/landing.js +43 -0
- package/dist/explorer/landing.js.map +1 -0
- package/dist/explorer/open.d.ts +35 -38
- package/dist/explorer/open.d.ts.map +1 -1
- package/dist/explorer/open.js +124 -156
- package/dist/explorer/open.js.map +1 -1
- package/dist/explorer/preview/BytesPreview.d.ts +2 -3
- package/dist/explorer/preview/BytesPreview.d.ts.map +1 -1
- package/dist/explorer/preview/BytesPreview.js +3 -3
- package/dist/explorer/preview/BytesPreview.js.map +1 -1
- package/dist/explorer/preview/HtmlPreview.d.ts +2 -3
- package/dist/explorer/preview/HtmlPreview.d.ts.map +1 -1
- package/dist/explorer/preview/HtmlPreview.js +4 -5
- package/dist/explorer/preview/HtmlPreview.js.map +1 -1
- package/dist/explorer/preview/OfficePreview.d.ts +2 -1
- package/dist/explorer/preview/OfficePreview.d.ts.map +1 -1
- package/dist/explorer/preview/OfficePreview.js +9 -2
- package/dist/explorer/preview/OfficePreview.js.map +1 -1
- package/dist/explorer/preview/TextPreview.d.ts +2 -3
- package/dist/explorer/preview/TextPreview.d.ts.map +1 -1
- package/dist/explorer/preview/TextPreview.js +3 -3
- package/dist/explorer/preview/TextPreview.js.map +1 -1
- package/dist/explorer/preview/index.d.ts +6 -3
- package/dist/explorer/preview/index.d.ts.map +1 -1
- package/dist/explorer/preview/index.js +3 -6
- package/dist/explorer/preview/index.js.map +1 -1
- package/dist/explorer/preview-title-bar.d.ts +26 -0
- package/dist/explorer/preview-title-bar.d.ts.map +1 -0
- package/dist/explorer/preview-title-bar.js +48 -0
- package/dist/explorer/preview-title-bar.js.map +1 -0
- package/dist/explorer/types.d.ts +25 -23
- package/dist/explorer/types.d.ts.map +1 -1
- package/dist/explorer/types.js +61 -120
- package/dist/explorer/types.js.map +1 -1
- package/dist/host/fs-route.d.ts +25 -0
- package/dist/host/fs-route.d.ts.map +1 -0
- package/dist/host/fs-route.js +243 -0
- package/dist/host/fs-route.js.map +1 -0
- package/dist/host/index.d.ts +2 -0
- package/dist/host/index.d.ts.map +1 -1
- package/dist/host/index.js +1 -0
- package/dist/host/index.js.map +1 -1
- package/dist/session/session-css.generated.d.ts +1 -1
- package/dist/session/session-css.generated.d.ts.map +1 -1
- package/dist/session/session-css.generated.js +1 -1
- package/dist/session/session-css.generated.js.map +1 -1
- package/dist/ui/DateTimePicker.d.ts.map +1 -1
- package/dist/ui/DateTimePicker.js +5 -1
- package/dist/ui/DateTimePicker.js.map +1 -1
- package/dist/ui/Modal.d.ts.map +1 -1
- package/dist/ui/Modal.js +7 -2
- package/dist/ui/Modal.js.map +1 -1
- package/dist/ui/PanelDock.d.ts.map +1 -1
- package/dist/ui/PanelDock.js +4 -8
- package/dist/ui/PanelDock.js.map +1 -1
- package/dist/ui/Picker.d.ts.map +1 -1
- package/dist/ui/Picker.js +6 -3
- package/dist/ui/Picker.js.map +1 -1
- package/dist/ui/code-viewer-css.generated.d.ts +1 -1
- package/dist/ui/code-viewer-css.generated.d.ts.map +1 -1
- package/dist/ui/code-viewer-css.generated.js +1 -1
- package/dist/ui/code-viewer-css.generated.js.map +1 -1
- package/dist/ui/controls/datetime-css.generated.d.ts +1 -1
- package/dist/ui/controls/datetime-css.generated.d.ts.map +1 -1
- package/dist/ui/controls/datetime-css.generated.js +1 -1
- package/dist/ui/controls/datetime-css.generated.js.map +1 -1
- package/dist/ui/controls/field-css.generated.d.ts +1 -1
- package/dist/ui/controls/field-css.generated.d.ts.map +1 -1
- package/dist/ui/controls/field-css.generated.js +1 -1
- package/dist/ui/controls/field-css.generated.js.map +1 -1
- package/dist/ui/controls/loading-css.generated.d.ts +1 -1
- package/dist/ui/controls/loading-css.generated.d.ts.map +1 -1
- package/dist/ui/controls/loading-css.generated.js +1 -1
- package/dist/ui/controls/loading-css.generated.js.map +1 -1
- package/dist/ui/feedback-css.generated.d.ts +1 -1
- package/dist/ui/feedback-css.generated.d.ts.map +1 -1
- package/dist/ui/feedback-css.generated.js +1 -1
- package/dist/ui/feedback-css.generated.js.map +1 -1
- package/dist/ui/marquee-css.generated.d.ts +1 -1
- package/dist/ui/marquee-css.generated.d.ts.map +1 -1
- package/dist/ui/marquee-css.generated.js +1 -1
- package/dist/ui/marquee-css.generated.js.map +1 -1
- package/dist/ui/overlay-css.generated.d.ts +1 -1
- package/dist/ui/overlay-css.generated.d.ts.map +1 -1
- package/dist/ui/overlay-css.generated.js +1 -1
- package/dist/ui/overlay-css.generated.js.map +1 -1
- package/dist/ui/overlay.d.ts +8 -2
- package/dist/ui/overlay.d.ts.map +1 -1
- package/dist/ui/overlay.js +7 -6
- package/dist/ui/overlay.js.map +1 -1
- package/dist/ui/panel-css.d.ts +2 -0
- package/dist/ui/panel-css.d.ts.map +1 -0
- package/dist/ui/panel-css.generated.d.ts +2 -0
- package/dist/ui/panel-css.generated.d.ts.map +1 -0
- package/dist/ui/panel-css.generated.js +4 -0
- package/dist/ui/panel-css.generated.js.map +1 -0
- package/dist/ui/panel-css.js +2 -0
- package/dist/ui/panel-css.js.map +1 -0
- package/dist/ui/panel-dock-css.generated.d.ts +1 -1
- package/dist/ui/panel-dock-css.generated.d.ts.map +1 -1
- package/dist/ui/panel-dock-css.generated.js +1 -1
- package/dist/ui/panel-dock-css.generated.js.map +1 -1
- package/dist/ui/panel.d.ts +41 -0
- package/dist/ui/panel.d.ts.map +1 -0
- package/dist/ui/panel.js +37 -0
- package/dist/ui/panel.js.map +1 -0
- package/dist/ui/picker-css.generated.d.ts +1 -1
- package/dist/ui/picker-css.generated.d.ts.map +1 -1
- package/dist/ui/picker-css.generated.js +1 -1
- package/dist/ui/picker-css.generated.js.map +1 -1
- package/dist/ui/side-panel-css.generated.d.ts +1 -1
- package/dist/ui/side-panel-css.generated.d.ts.map +1 -1
- package/dist/ui/side-panel-css.generated.js +1 -1
- package/dist/ui/side-panel-css.generated.js.map +1 -1
- package/dist/utils/i18n.d.ts +1 -1
- package/dist/utils/i18n.d.ts.map +1 -1
- package/dist/utils/i18n.js +6 -0
- package/dist/utils/i18n.js.map +1 -1
- package/docs/design/architecture.md +9 -4
- package/docs/design/external/dsh-host.md +60 -0
- package/docs/design/style.md +54 -0
- package/docs/help/explorer.doc.ts +35 -30
- package/docs/help/explorer.md +23 -19
- package/docs/help/integration.doc.ts +15 -10
- package/docs/help/integration.md +15 -10
- package/docs/help/ui.doc.ts +2 -2
- package/docs/help/ui.md +2 -2
- package/docs/requirements.md +2 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const SIDE_PANEL_CSS = "/* \u4FA7\u8FB9\u9762\u677F\u7684\u516C\u5171\u76AE\u80A4 \u2014\u2014 PanelDock\uFF08\u5360\u5BBD\u5206\u680F\uFF09\u4E0E SideSheet\uFF08\u8986\u76D6\u62BD\u5C49\uFF09\u5171\u7528\u8FD9\u4E00\u4EFD\u3002\n *\n * \u5206\u754C\uFF1A**\u76AE\u80A4\u5728\u8FD9\u91CC\uFF0C\u5B9A\u4F4D\u5404\u81EA\u5199**\u3002\u4E24\u8005\u552F\u4E00\u7684\u5F62\u6001\u5DEE\u5F02\u5C31\u662F\u300C\u600E\u4E48\u5360\u4F4D\u300D\u2014\u2014\n * PanelDock \u7528 sticky \u5360\u5BBD\u6324\u7A84\u4E3B\u533A\uFF08panel-dock.css\uFF09\uFF0CSideSheet \u7528 absolute \u76D6\u5728\u9875\u9762\u4E0A\uFF08side-sheet.css\uFF09\u3002\n *\n * \u7C7B\u540D\u6CBF\u7528 dshpc-dock__* \u524D\u7F00\uFF1A\u90A3\u662F\u65E2\u6709\u516C\u5F00\u9762\uFF08\u6587\u6863\u4E0E\u6D88\u8D39\u65B9\u90FD\u5728\u7528\uFF09\uFF0C\n * \u8FD9\u91CC\u53EA\u642C\u6587\u4EF6\u4E0D\u6539\u540D\uFF1B\u65B0\u589E\u7684\u4E2D\u6027\u7C7B\u662F .dshpc-side-surface\uFF08\u5916\u89C2\u57FA\u7C7B\uFF09\u3002 */\n\n/* \u5165\u573A\uFF1A\u5BBD\u5EA6\u4ECE 0 \u957F\u51FA\u6765\uFF08keyframes \u53EA\u5199 from\uFF0C\u7EC8\u70B9\u53D6\u5185\u8054 / \u72B6\u6001\u5BBD\u5EA6\uFF09\u3002\u4E24\u8FB9\u5171\u7528\u3002 */\n@keyframes dshpc-side-in{from{width:0;opacity:0;overflow:hidden}}\n\n/* \u5916\u89C2\u57FA\u7C7B\uFF1A\u80CC\u666F / \u6587\u5B57\u8272 / \u9634\u5F71 / \u7EB5\u5411 flex\u3002**\u4E0D\u542B** position\u3001\u9AD8\u5EA6\u3001\u8FB9\u6846\u65B9\u5411\u3001\u52A8\u753B\u89E6\u53D1\u3002 */\n.dshpc-side-surface{\n box-sizing:border-box;\n display:flex;flex-direction:column;flex:0 0 auto;min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n box-shadow:var(--dshpc-shadow-2);\n transition:border-color var(--dshpc-dur-fast) var(--dshpc-ease);\n animation:dshpc-side-in .22s var(--dshpc-ease);\n}\n\n/* \u5934\u90E8\uFF1A\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\u3002 */\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\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\uFF08top 10 / right 8\uFF09\uFF0C\u951A\u70B9\u662F\u9762\u677F\u672C\u8EAB \u2014\u2014 \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\uFF08\u9762\u677F\u9AD8\u5EA6\u9501\u6B7B\uFF0C\u5185\u5BB9\u4E0D\u8BBE\u5185\u90E8\u6EDA\u52A8\u5C31\u4F1A\u628A\u9875\u9762\u6491\u9AD8\uFF09\u3002 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto}\n\n/* \u62D6\u62FD\u6761\uFF1A6px \u547D\u4E2D\u533A\uFF0C**\u81EA\u5DF1\u4E0D\u753B\u4EFB\u4F55\u7EBF**\uFF08\u8D34\u5728\u671D\u5185\u90A3\u4E00\u4FA7\uFF0C\u955C\u50CF\u7531\u5404\u81EA\u7684\u5B9A\u4F4D\u6587\u4EF6\u505A\uFF09\u3002\n hover / \u62D6\u52A8\u65F6\u628A\u9762\u677F\u81EA\u5DF1\u7684\u8FB9\u6846\u67D3\u6210\u84DD \u2014\u2014 \u84DD\u7EBF\u53EA\u51C6\u6539\u539F\u7EBF\uFF0C\u4E0D\u51C6\u5728\u65C1\u8FB9\u518D\u52A0\u4E00\u6761\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-side-surface:has(> .dshpc-dock__resizer:hover),\n.dshpc-side-surface--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\u90A3\u6761\u8FB9\u6846\u6362\u6210\u540C\u6B3E\u6E10\u53D8\u3002\n \u9762\u677F\u56DB\u8FB9\u91CC\u53EA\u6709\u671D\u5185\u4E00\u4FA7\u6709\u5BBD\u5EA6\uFF0C\u6240\u4EE5\u6E10\u53D8\u53EA\u843D\u5728\u90A3\u4E00\u4FA7\u3002 */\n border-image:linear-gradient(180deg,transparent,var(--dshpc-business) 30% 70%,transparent) 1;\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 \u2014\u2014\n \u8BA9\u51FA\u6307\u9488\u4E8B\u4EF6\uFF1B\u2461 contain \u628A\u91CD\u6392\u9694\u79BB\u5728\u9762\u677F\u5185\uFF0C\u5426\u5219\u6BCF\u5E27\u6539\u5BBD\u90FD\u4F1A\u7275\u52A8\u6574\u9875\u91CD\u6392\u3002 */\n.dshpc-side-surface--resizing{contain:layout paint;will-change:width}\n.dshpc-side-surface--resizing iframe{pointer-events:none}\n\n/* \u52A8\u6548\u793C\u8C8C\uFF1A\u7CFB\u7EDF\u58F0\u660E\u51CF\u5C11\u52A8\u6548\u65F6\u9000\u5316\u4E3A\u77AC\u65F6\uFF08\u529F\u80FD\u4E0D\u53D7\u5F71\u54CD\uFF09\u3002 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-side-surface{animation:none}\n}\n";
|
|
1
|
+
export declare const SIDE_PANEL_CSS = "/* \u4FA7\u8FB9\u9762\u677F\u7684\u516C\u5171\u76AE\u80A4 \u2014\u2014 PanelDock\uFF08\u5360\u5BBD\u5206\u680F\uFF09\u4E0E SideSheet\uFF08\u8986\u76D6\u62BD\u5C49\uFF09\u5171\u7528\u8FD9\u4E00\u4EFD\u3002\n *\n * \u5206\u754C\uFF1A**\u76AE\u80A4\u5728\u8FD9\u91CC\uFF0C\u5B9A\u4F4D\u5404\u81EA\u5199**\u3002\u4E24\u8005\u552F\u4E00\u7684\u5F62\u6001\u5DEE\u5F02\u5C31\u662F\u300C\u600E\u4E48\u5360\u4F4D\u300D\u2014\u2014\n * PanelDock \u7528 sticky \u5360\u5BBD\u6324\u7A84\u4E3B\u533A\uFF08panel-dock.css\uFF09\uFF0CSideSheet \u7528 absolute \u76D6\u5728\u9875\u9762\u4E0A\uFF08side-sheet.css\uFF09\u3002\n *\n * \u7C7B\u540D\u6CBF\u7528 dshpc-dock__* \u524D\u7F00\uFF1A\u90A3\u662F\u65E2\u6709\u516C\u5F00\u9762\uFF08\u6587\u6863\u4E0E\u6D88\u8D39\u65B9\u90FD\u5728\u7528\uFF09\uFF0C\n * \u8FD9\u91CC\u53EA\u642C\u6587\u4EF6\u4E0D\u6539\u540D\uFF1B\u65B0\u589E\u7684\u4E2D\u6027\u7C7B\u662F .dshpc-side-surface\uFF08\u5916\u89C2\u57FA\u7C7B\uFF09\u3002 */\n\n/* \u5165\u573A\uFF1A\u5BBD\u5EA6\u4ECE 0 \u957F\u51FA\u6765\uFF08keyframes \u53EA\u5199 from\uFF0C\u7EC8\u70B9\u53D6\u5185\u8054 / \u72B6\u6001\u5BBD\u5EA6\uFF09\u3002\u4E24\u8FB9\u5171\u7528\u3002 */\n@keyframes dshpc-side-in{from{width:0;opacity:0;overflow:hidden}}\n\n/* \u5916\u89C2\u57FA\u7C7B\uFF1A\u80CC\u666F / \u6587\u5B57\u8272 / \u9634\u5F71 / \u7EB5\u5411 flex\u3002**\u4E0D\u542B** position\u3001\u9AD8\u5EA6\u3001\u8FB9\u6846\u65B9\u5411\u3001\u52A8\u753B\u89E6\u53D1\u3002 */\n.dshpc-side-surface{\n box-sizing:border-box;\n display:flex;flex-direction:column;flex:0 0 auto;min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n box-shadow:var(--dshpc-shadow-2);\n transition:border-color var(--dshpc-dur-fast) var(--dshpc-ease);\n animation:dshpc-side-in .22s var(--dshpc-ease);\n}\n\n/* \u5934\u90E8\uFF1A\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\u3002 */\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\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\uFF08top 10 / right 8\uFF09\uFF0C\u951A\u70B9\u662F\u9762\u677F\u672C\u8EAB \u2014\u2014 \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\uFF08\u9762\u677F\u9AD8\u5EA6\u9501\u6B7B\uFF0C\u5185\u5BB9\u4E0D\u8BBE\u5185\u90E8\u6EDA\u52A8\u5C31\u4F1A\u628A\u9875\u9762\u6491\u9AD8\uFF09\u3002\n \u900F\u660E\u53F3\u8FB9\u6846 = \u6EDA\u52A8\u6761\u4E0E\u9762\u677F\u53F3\u7F18\u9694 1px\uFF08\u53E3\u5F84\u89C1 style.md \u00A7\u6EDA\u52A8\u6761\u8BA9\u4F4D\uFF09\u3002 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto;border-right:1px solid transparent}\n\n/* \u62D6\u62FD\u6761\uFF1A6px \u547D\u4E2D\u533A\uFF0C**\u81EA\u5DF1\u4E0D\u753B\u4EFB\u4F55\u7EBF**\uFF08\u8D34\u5728\u671D\u5185\u90A3\u4E00\u4FA7\uFF0C\u955C\u50CF\u7531\u5404\u81EA\u7684\u5B9A\u4F4D\u6587\u4EF6\u505A\uFF09\u3002\n hover / \u62D6\u52A8\u65F6\u628A\u9762\u677F\u81EA\u5DF1\u7684\u8FB9\u6846\u67D3\u6210\u84DD \u2014\u2014 \u84DD\u7EBF\u53EA\u51C6\u6539\u539F\u7EBF\uFF0C\u4E0D\u51C6\u5728\u65C1\u8FB9\u518D\u52A0\u4E00\u6761\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-side-surface:has(> .dshpc-dock__resizer:hover),\n.dshpc-side-surface--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\u90A3\u6761\u8FB9\u6846\u6362\u6210\u540C\u6B3E\u6E10\u53D8\u3002\n \u9762\u677F\u56DB\u8FB9\u91CC\u53EA\u6709\u671D\u5185\u4E00\u4FA7\u6709\u5BBD\u5EA6\uFF0C\u6240\u4EE5\u6E10\u53D8\u53EA\u843D\u5728\u90A3\u4E00\u4FA7\u3002 */\n border-image:linear-gradient(180deg,transparent,var(--dshpc-business) 30% 70%,transparent) 1;\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 \u2014\u2014\n \u8BA9\u51FA\u6307\u9488\u4E8B\u4EF6\uFF1B\u2461 contain \u628A\u91CD\u6392\u9694\u79BB\u5728\u9762\u677F\u5185\uFF0C\u5426\u5219\u6BCF\u5E27\u6539\u5BBD\u90FD\u4F1A\u7275\u52A8\u6574\u9875\u91CD\u6392\u3002 */\n.dshpc-side-surface--resizing{contain:layout paint;will-change:width}\n.dshpc-side-surface--resizing iframe{pointer-events:none}\n\n/* \u52A8\u6548\u793C\u8C8C\uFF1A\u7CFB\u7EDF\u58F0\u660E\u51CF\u5C11\u52A8\u6548\u65F6\u9000\u5316\u4E3A\u77AC\u65F6\uFF08\u529F\u80FD\u4E0D\u53D7\u5F71\u54CD\uFF09\u3002 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-side-surface{animation:none}\n}\n";
|
|
2
2
|
//# sourceMappingURL=side-panel-css.generated.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"side-panel-css.generated.d.ts","sourceRoot":"","sources":["../../src/ui/side-panel-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"side-panel-css.generated.d.ts","sourceRoot":"","sources":["../../src/ui/side-panel-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,49NAAumH,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// ⚠️ 生成物,勿手改。真源 = src/ui/side-panel.css
|
|
2
2
|
// 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
|
|
3
|
-
export const SIDE_PANEL_CSS = "/* 侧边面板的公共皮肤 —— PanelDock(占宽分栏)与 SideSheet(覆盖抽屉)共用这一份。\n *\n * 分界:**皮肤在这里,定位各自写**。两者唯一的形态差异就是「怎么占位」——\n * PanelDock 用 sticky 占宽挤窄主区(panel-dock.css),SideSheet 用 absolute 盖在页面上(side-sheet.css)。\n *\n * 类名沿用 dshpc-dock__* 前缀:那是既有公开面(文档与消费方都在用),\n * 这里只搬文件不改名;新增的中性类是 .dshpc-side-surface(外观基类)。 */\n\n/* 入场:宽度从 0 长出来(keyframes 只写 from,终点取内联 / 状态宽度)。两边共用。 */\n@keyframes dshpc-side-in{from{width:0;opacity:0;overflow:hidden}}\n\n/* 外观基类:背景 / 文字色 / 阴影 / 纵向 flex。**不含** position、高度、边框方向、动画触发。 */\n.dshpc-side-surface{\n box-sizing:border-box;\n display:flex;flex-direction:column;flex:0 0 auto;min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n box-shadow:var(--dshpc-shadow-2);\n transition:border-color var(--dshpc-dur-fast) var(--dshpc-ease);\n animation:dshpc-side-in .22s var(--dshpc-ease);\n}\n\n/* 头部:右侧 34px = 8(边距) + 20(关钮) + 6(呼吸):给绝对定位的关钮留位,标题/extra 不从它底下钻。 */\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\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.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/*
|
|
3
|
+
export const SIDE_PANEL_CSS = "/* 侧边面板的公共皮肤 —— PanelDock(占宽分栏)与 SideSheet(覆盖抽屉)共用这一份。\n *\n * 分界:**皮肤在这里,定位各自写**。两者唯一的形态差异就是「怎么占位」——\n * PanelDock 用 sticky 占宽挤窄主区(panel-dock.css),SideSheet 用 absolute 盖在页面上(side-sheet.css)。\n *\n * 类名沿用 dshpc-dock__* 前缀:那是既有公开面(文档与消费方都在用),\n * 这里只搬文件不改名;新增的中性类是 .dshpc-side-surface(外观基类)。 */\n\n/* 入场:宽度从 0 长出来(keyframes 只写 from,终点取内联 / 状态宽度)。两边共用。 */\n@keyframes dshpc-side-in{from{width:0;opacity:0;overflow:hidden}}\n\n/* 外观基类:背景 / 文字色 / 阴影 / 纵向 flex。**不含** position、高度、边框方向、动画触发。 */\n.dshpc-side-surface{\n box-sizing:border-box;\n display:flex;flex-direction:column;flex:0 0 auto;min-width:0;\n background:var(--dshpc-surface-base);color:var(--dshpc-fg);\n box-shadow:var(--dshpc-shadow-2);\n transition:border-color var(--dshpc-dur-fast) var(--dshpc-ease);\n animation:dshpc-side-in .22s var(--dshpc-ease);\n}\n\n/* 头部:右侧 34px = 8(边距) + 20(关钮) + 6(呼吸):给绝对定位的关钮留位,标题/extra 不从它底下钻。 */\n.dshpc-dock__head{\n flex:none;display:flex;align-items:center;gap:8px;\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.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/* 内容区自己滚(面板高度锁死,内容不设内部滚动就会把页面撑高)。\n 透明右边框 = 滚动条与面板右缘隔 1px(口径见 style.md §滚动条让位)。 */\n.dshpc-dock__body{flex:1 1 auto;min-height:0;overflow:auto;border-right:1px solid transparent}\n\n/* 拖拽条:6px 命中区,**自己不画任何线**(贴在朝内那一侧,镜像由各自的定位文件做)。\n 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}\n.dshpc-side-surface:has(> .dshpc-dock__resizer:hover),\n.dshpc-side-surface--resizing{\n /* 原线保留「上下渐隐」工作区指示条质感:把面板自己的那条边框换成同款渐变。\n 面板四边里只有朝内一侧有宽度,所以渐变只落在那一侧。 */\n border-image:linear-gradient(180deg,transparent,var(--dshpc-business) 30% 70%,transparent) 1;\n}\n/* 拖动期:① <iframe>(PDF / HTML 预览)是独立文档,会吞掉父文档的 pointermove ——\n 让出指针事件;② contain 把重排隔离在面板内,否则每帧改宽都会牵动整页重排。 */\n.dshpc-side-surface--resizing{contain:layout paint;will-change:width}\n.dshpc-side-surface--resizing iframe{pointer-events:none}\n\n/* 动效礼貌:系统声明减少动效时退化为瞬时(功能不受影响)。 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-side-surface{animation:none}\n}\n";
|
|
4
4
|
//# sourceMappingURL=side-panel-css.generated.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"side-panel-css.generated.js","sourceRoot":"","sources":["../../src/ui/side-panel-css.generated.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,qEAAqE;AACrE,MAAM,CAAC,MAAM,cAAc,GAAG,
|
|
1
|
+
{"version":3,"file":"side-panel-css.generated.js","sourceRoot":"","sources":["../../src/ui/side-panel-css.generated.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,qEAAqE;AACrE,MAAM,CAAC,MAAM,cAAc,GAAG,omHAAomH,CAAA"}
|
package/dist/utils/i18n.d.ts
CHANGED
|
@@ -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' | 'loadingDefault' | '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' | 'tableEmpty' | 'tableLoading' | 'tableLoadingMore' | 'tableNoMore' | 'paginationAria' | 'paginationPrev' | 'paginationNext' | 'paginationPage' | 'paginationTotal' | 'paginationTotalZero' | 'paginationPageSizeOption' | 'paginationPageSizeAria' | 'modalClose' | 'dockClose' | 'dockResize' | 'dockCollapse' | 'dockExpand' | 'backToTop' | 'quickToolbarAria' | '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' | 'loadingDefault' | 'explorerFailed' | 'explorerRoot' | 'explorerTruncated' | 'explorerEmptyDir' | 'explorerLevels' | 'explorerExpand' | 'explorerCollapse' | 'explorerEnter' | 'explorerRootName' | 'explorerCrumbsAria' | 'explorerPickFile' | 'explorerPickDir' | 'explorerPickDirAria' | 'explorerRootDir' | 'previewClose' | 'previewCopyPath' | 'previewRefresh' | 'previewRender' | 'previewSource' | 'previewMdSwitchAria' | 'previewHtmlSwitchAria' | 'previewLoadMore' | 'previewTruncated' | 'previewOfficeUnavailable' | 'previewOfficeNoSession' | 'previewRenderFailed' | 'previewBadPayload' | 'previewOutside' | 'previewNotFound' | 'previewNotDirectory' | 'previewNotFile' | 'previewTooLarge' | 'previewNotText' | 'previewFailedCode' | 'mdCopy' | 'mdCopied' | 'mdCode' | 'mdWrap' | 'mdUnwrap' | 'mdFootnotes' | 'cardToggle' | 'tableEmpty' | 'tableLoading' | 'tableLoadingMore' | 'tableNoMore' | 'paginationAria' | 'paginationPrev' | 'paginationNext' | 'paginationPage' | 'paginationTotal' | 'paginationTotalZero' | 'paginationPageSizeOption' | 'paginationPageSizeAria' | 'modalClose' | 'dockClose' | 'dockResize' | 'dockCollapse' | 'dockExpand' | 'backToTop' | 'quickToolbarAria' | '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;
|
package/dist/utils/i18n.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/i18n.js
CHANGED
|
@@ -20,6 +20,7 @@ const DICT = {
|
|
|
20
20
|
explorerExpand: '展开',
|
|
21
21
|
explorerCollapse: '收起',
|
|
22
22
|
explorerEnter: '进入',
|
|
23
|
+
explorerRootDir: '根目录',
|
|
23
24
|
explorerRootName: '(工作区根目录)',
|
|
24
25
|
explorerCrumbsAria: '目录路径',
|
|
25
26
|
explorerPickFile: '选择此文件',
|
|
@@ -35,11 +36,13 @@ const DICT = {
|
|
|
35
36
|
previewLoadMore: '加载更多',
|
|
36
37
|
previewTruncated: '内容过大,仅显示前 {n}',
|
|
37
38
|
previewOfficeUnavailable: 'Office 预览不可用',
|
|
39
|
+
previewOfficeNoSession: 'Office 预览不可用(还没有任何会话)',
|
|
38
40
|
previewRenderFailed: '预览渲染失败',
|
|
39
41
|
previewBadPayload: '返回数据不符合预期',
|
|
40
42
|
previewOutside: '路径在工作区之外',
|
|
41
43
|
previewNotFound: '文件不存在',
|
|
42
44
|
previewNotDirectory: '不是文件夹',
|
|
45
|
+
previewNotFile: '不是文件',
|
|
43
46
|
previewTooLarge: '文件过大,无法预览',
|
|
44
47
|
previewNotText: '不是文本文件',
|
|
45
48
|
previewFailedCode: '加载失败({code})',
|
|
@@ -293,6 +296,7 @@ const DICT = {
|
|
|
293
296
|
explorerExpand: 'Expand',
|
|
294
297
|
explorerCollapse: 'Collapse',
|
|
295
298
|
explorerEnter: 'Open',
|
|
299
|
+
explorerRootDir: '根目录',
|
|
296
300
|
explorerRootName: '(workspace root)',
|
|
297
301
|
explorerCrumbsAria: 'Breadcrumb',
|
|
298
302
|
explorerPickFile: 'Pick this file',
|
|
@@ -308,11 +312,13 @@ const DICT = {
|
|
|
308
312
|
previewLoadMore: 'Load more',
|
|
309
313
|
previewTruncated: 'Content too large, showing first {n}',
|
|
310
314
|
previewOfficeUnavailable: 'Office preview unavailable',
|
|
315
|
+
previewOfficeNoSession: 'Office preview unavailable (no session yet)',
|
|
311
316
|
previewRenderFailed: 'Failed to render preview',
|
|
312
317
|
previewBadPayload: 'Unexpected response payload',
|
|
313
318
|
previewOutside: 'Path is outside the workspace',
|
|
314
319
|
previewNotFound: 'File not found',
|
|
315
320
|
previewNotDirectory: 'Not a folder',
|
|
321
|
+
previewNotFile: 'Not a file',
|
|
316
322
|
previewTooLarge: 'File too large to preview',
|
|
317
323
|
previewNotText: 'Not a text file',
|
|
318
324
|
previewFailedCode: 'Failed to load ({code})',
|
package/dist/utils/i18n.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,16 +93,21 @@ dist/** 产物形态不变,仍由 createStyleKit 拼成一份
|
|
|
93
93
|
- 模型目录:client 侧 remote **拿不到**每个 provider 的模型 ⇒ 插件宿主侧
|
|
94
94
|
`llm.listModels()` 现查、`serveModelCatalog()`(`src/host/index.ts`,`./host` 子路径)挂成只读路由,
|
|
95
95
|
client 侧 `connectHost(ctx, { modelsPath })` fetch。两侧共用同一个 path 常量。
|
|
96
|
-
-
|
|
97
|
-
`
|
|
96
|
+
- 读文件(2026-11-03 换数据面):**不再走 `remote.workspaceFiles`**(它的 `list` 被
|
|
97
|
+
`contains(workspaceRoot, target)` 卡死,出不了工作区)。改走插件自己的只读路由:
|
|
98
|
+
宿主 `serveFsRoute({ path })`(`src/host/fs-route.ts`,`./host` 子路径)+ client
|
|
99
|
+
`connectFs({ path })`(`src/explorer/fs-face.ts`,`createHttpFsFace` 内部 fetch)。
|
|
100
|
+
**浏览不吃会话**:路径一律绝对;相对路径只在入口按 `sessionId` → 工作区根解析一次。
|
|
101
|
+
会话还剩一处用途 —— Office 预览的授权探针(懒取任意一条,见
|
|
102
|
+
`docs/design/external/dsh-host.md` §13.1)。
|
|
98
103
|
任一通路缺席只影响那一块:选择器渲染空态 / 降级提示,`openFilePreview` 直接不打开并留痕。
|
|
99
104
|
|
|
100
105
|
| 组件 | 数据从哪来 |
|
|
101
106
|
|---|---|
|
|
102
107
|
| `Picker` | 选项数据(props) |
|
|
103
108
|
| `ModelPicker` / `WorkspacePicker` | 自取(connectHost 接线;`groups` 参数仅作覆盖) |
|
|
104
|
-
| `openFilePreview` / `pickWorkspaceFile` | 自取(connectHost 接线;`
|
|
105
|
-
| `FileBrowser` | `
|
|
109
|
+
| `openFilePreview` / `pickWorkspaceFile` | 自取(connectHost + connectFs 接线;`sessionId` 仅作相对路径基准 / Office 覆盖) |
|
|
110
|
+
| `FileBrowser` | `FsFace`(props,纯零件;绝对路径、只读) |
|
|
106
111
|
| `SessionPreview` | `SessionSource`(props) |
|
|
107
112
|
|
|
108
113
|
不传整个 `ctx`:ctx 是宿主给的整个大对象,传进来就把本包和宿主版本焊死;只传需要的那一小块,
|
|
@@ -222,3 +222,63 @@
|
|
|
222
222
|
透传;匹配不到 ⇒ 回落 `props.sessionId` + `crumbBarPlain` 的 hint 说破原因。
|
|
223
223
|
- 来源:官方包 `lib/index.js:489-512 / 563-583 / 421 / 480`;`dsh-task-dispatch-table/src/host.ts:174-187`;
|
|
224
224
|
`dsh-better-sidebar` README + `docs/plans/2026-08-29-workspace-fence-toggle-design.md` + `src/client/use-session-root.ts`。
|
|
225
|
+
|
|
226
|
+
> ⚠️ 上面这条「处置(本仓)」是 2026-10-22 的做法,已被下面的 §13 取代(浏览不再吃会话)。
|
|
227
|
+
|
|
228
|
+
## 13. 跨工作区浏览:官方能力边界与本仓自建只读路由(2026-11-03 解包核实)
|
|
229
|
+
|
|
230
|
+
解包版本:`dsh-api-workspace-files@0.2.1-rc.5`、`dsh-office-to-pdf@0.2.1-rc.5`、`dsh-fs@0.2.1-rc.5`、
|
|
231
|
+
`dsh-api-workspace-controller@0.2.1-rc.5`、`dsh-host-directory-picker@0.2.1-rc.5`、
|
|
232
|
+
`dsh-client-ui-workspace@0.2.1-rc.5`。
|
|
233
|
+
|
|
234
|
+
### 13.1 会话到底绑在哪一步(修正 §12 的粗判)
|
|
235
|
+
|
|
236
|
+
- **只有 `list` 被栅栏卡住**:`list` 走 `inspect` + `confine`(`workspace-files/lib/index.js:495-505 / 576-583`)。
|
|
237
|
+
- **`inspect` 不做 contains**:`read` / `readBytes` / `stat` 走 `locateFile → inspect`(`index.js:563-574 / 589-605`),
|
|
238
|
+
`inspect` 只 `fs.lstat(path, { cwd: workspaceRoot })`(注释原文:目录包含检查是 `list` 的事)。
|
|
239
|
+
⇒ **相对路径按会话根解析,绝对路径任意文件都能读,与会话所属工作区无关**。
|
|
240
|
+
- **`officeToPdf` 的会话只用来做授权探针**:`renderFile` 先 `files.readBytes(scope, path, {range:{0,1}})`
|
|
241
|
+
与 `files.stat(scope, path)`,真正的字节走宿主 `fs` 服务(`office-to-pdf/lib/index.js:519-560`,`this.ctx.get('fs')`)。
|
|
242
|
+
因为上一条,探针不会因「文件在工作区外」失败 ⇒ **任意一条有效会话就够,不必按路径匹配所属工作区**。
|
|
243
|
+
- PDF / 图片 / 文本**不走 officeToPdf**:`.pdf` 走 `readBytes`(本仓 `preview/index.ts` → `BytesPreview`),
|
|
244
|
+
只有 doc/docx/ppt/pptx 走 `OfficePreview`。
|
|
245
|
+
|
|
246
|
+
### 13.2 官方别处的目录能力:`remote.directoryPicker`(能列任意目录,但只回目录)
|
|
247
|
+
|
|
248
|
+
| 事实 | 证据 |
|
|
249
|
+
|---|---|
|
|
250
|
+
| 宿主 Remote 服务,namespace `directoryPicker`,verb = `pick` / `list` / `createDirectory` | `api-workspace-controller/lib/types/directory-picker.d.ts:36-60`;`.js` 里 `Remote('pick'/'list'/'createDirectory')` |
|
|
251
|
+
| `list(path?)` 列**任意绝对路径**(不传 = 家目录),回 `{ path, home, crumbs, entries, truncated }` | `host-directory-picker/lib/types/types.d.ts` |
|
|
252
|
+
| `entries` 是 **direct child directories**(`{name, path, hidden}`)——**不含文件** | 同上,类型注释 |
|
|
253
|
+
| `crumbs` 直接给祖先链 | 同上 |
|
|
254
|
+
| 能力两档:`native`(桌面端弹系统框)/ `browse`(网页端只能逐层列);不匹配的 verb 抛 `directory-picker/unavailable` | `host-directory-picker/lib/types/index.d.ts` + `controller/lib/types/directory-picker.js:130` |
|
|
255
|
+
| 错误码:`directory-picker/{unavailable,unreadable,exists,create-failed}` | `controller/lib/types/directory-picker.js:140-145` |
|
|
256
|
+
| 官方「添加工作区」就走它 | `dsh-client-ui-workspace/lib/client.js:5011 / 5039 / 1560-1573` |
|
|
257
|
+
|
|
258
|
+
⇒ **「列任意目录」官方本来就有**(我早先「官方做不到系统根」只对 `workspaceFiles.list` 成立);
|
|
259
|
+
但**文件**它给不了,所以本仓不用它,自建一条只读路由。
|
|
260
|
+
|
|
261
|
+
### 13.3 宿主 `ctx.fs` 服务(自建路由可以复用的那层)
|
|
262
|
+
|
|
263
|
+
`dsh-fs/lib/types/index.d.ts:94-208`:`resolve` / `lstat` / `stat` / `listDir` / `readBytes` / `readByteRange` /
|
|
264
|
+
`contains` / `fileUrl` / `processPath`。第一方插件这样用(`office-to-pdf` 的 `this.ctx.get('fs')`)。
|
|
265
|
+
|
|
266
|
+
本仓**不依赖**它:第三方插件宿主半边能否 inject `fs` 未验证,且插件宿主进程本来就有磁盘权限,
|
|
267
|
+
`node:fs` 只多几十行、不引入跨版本耦合。
|
|
268
|
+
|
|
269
|
+
### 13.4 本仓自建路由契约(`src/host/fs-route.ts` + `src/explorer/fs-face.ts`)
|
|
270
|
+
|
|
271
|
+
| 项 | 值 |
|
|
272
|
+
|---|---|
|
|
273
|
+
| 端点 | `GET <path>?op=list\|read\|readBytes\|roots&path=<绝对路径>&offset&limit` |
|
|
274
|
+
| 只读 | 只有这 4 个 op,没有任何写/删/改入口 |
|
|
275
|
+
| 鉴权 | 不加 token:宿主 HTTP 面本来就能调 `remote.workspaceFiles.read`(允许工作区外绝对路径),本路由不引入新暴露面;静态 token 写在同一个 bundle 里是装饰 |
|
|
276
|
+
| 每层上限 | 500 条(`FS_PAGE_LIMIT`),服务端先按名排序再切片,翻页不重复/不漏 |
|
|
277
|
+
| 文本分页 | **按行**:`offset` 是 1 起行号、`limit` 是行数(对齐官方 `read`,客户端下一页偏移 = `offset + lines`) |
|
|
278
|
+
| 二进制 | 单文件上限 32MB(超出 `too-large`),回 base64 |
|
|
279
|
+
| 错误码 | 复用官方词表:`not-found` / `not-directory` / `not-regular-file` / `too-large` / `not-text` / `service-unavailable`;`errView` 的兜底分支接不认识的码 |
|
|
280
|
+
| 根节点 | POSIX `['/']`;Windows 逐个 `X:\` 探(Node 无盘符枚举 API) |
|
|
281
|
+
| 超时 | 列目录 8s(`ETIMEDOUT` → `timeout`),网络挂载盘上不会挂死 |
|
|
282
|
+
|
|
283
|
+
树模型、路径语义(绝对/相对都收、相对要 base)、返回值形状与 500 条上限的决策来龙去脉见
|
|
284
|
+
`ledger/worklog/202611/03-0053-12d5-选择器支持只选文件夹与非工作区目录.md`。
|
package/docs/design/style.md
CHANGED
|
@@ -156,6 +156,60 @@ EN: Welding controls into one visual unit has exactly one recipe: the shell owns
|
|
|
156
156
|
`SplitGroup` overrides inner classes with descendant selectors, so those class names are the coupling point —
|
|
157
157
|
rename them and you must update `src/ui/controls/split-group.css`, or the weld fails silently.
|
|
158
158
|
|
|
159
|
+
## 滚动条让位:一律离边缘 1px
|
|
160
|
+
|
|
161
|
+
> EN: Scrollbars always sit 1px off the edge
|
|
162
|
+
|
|
163
|
+
本仓每个滚动容器(`overflow:auto` / `overflow-y:auto` / `overflow-x:auto`)都要带一条**透明边框**:
|
|
164
|
+
纵向滚的加 `border-right`,横向滚的加 `border-bottom`,双向就两条:
|
|
165
|
+
|
|
166
|
+
```css
|
|
167
|
+
border-right: 1px solid transparent;
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
原理:原生滚动条画在 padding box 之外、border 之内 —— 只有 border 能把它推离边缘,加 padding 无效。
|
|
171
|
+
**滚动条一律用浏览器默认样式,不许自绘。** 2026-11-02 试过 `::-webkit-scrollbar` 改 thumb(留 3px
|
|
172
|
+
缝 + 圆角)当场被否:用户要的就是「让出 1 像素」,不是换一套滚动条外观。所以口径只有一条 ——
|
|
173
|
+
让位量固定 1px,颜色 / 粗细 / 圆角全部归浏览器。
|
|
174
|
+
|
|
175
|
+
- 已有实色边框的容器(如 Picker 菜单的 `border:1px solid`,或挂 `.dshpc-panel` 后由面板提供的边框)
|
|
176
|
+
滚动条贴的就是那条线,算已让位,**不要叠加**。
|
|
177
|
+
- 消费方自己的滚动容器(主区 / 侧栏)不在本仓代码里,配方相同:自己加那条 `border-right`。
|
|
178
|
+
2026-11-02 起 `--dshpc-dock-gap` 已删,dock 不再替主区让 margin,改由主区容器自己让。
|
|
179
|
+
- 自检:`test/quality.test.mjs` 扫 `src/**/*.css`,滚动规则缺边框即红。
|
|
180
|
+
|
|
181
|
+
EN: every scroll container in this repo carries a transparent `border-right` (and `border-bottom` when it
|
|
182
|
+
scrolls horizontally). Native scrollbars are painted between the padding box and the border, so a border is
|
|
183
|
+
the only thing that moves them off the edge — padding does nothing. **Never restyle the scrollbar itself**:
|
|
184
|
+
a `::-webkit-scrollbar` thumb (3px gap + radius) was tried on 2026-11-02 and rejected — the ask is exactly
|
|
185
|
+
"give up 1 pixel", not a different scrollbar look; the inset stays 1px and the rest belongs to the browser.
|
|
186
|
+
Containers that already have a solid border count as done. Consumer-owned scroll containers use the same
|
|
187
|
+
one-liner; `--dshpc-dock-gap` was removed on 2026-11-02. A test enforces the border.
|
|
188
|
+
|
|
189
|
+
## 浮层三档:模态 / 锚点面板 / 菜单
|
|
190
|
+
|
|
191
|
+
> EN: Three tiers for floating surfaces — modal / popover / menu
|
|
192
|
+
|
|
193
|
+
所有「浮起来的框」的**表面**(底色 · 描边宽 · 圆角 · 阴影)只在 `src/ui/panel.css` 定义,档位只有三个
|
|
194
|
+
(2026-11-03 用户定:样式统一,交互各家自己管):
|
|
195
|
+
|
|
196
|
+
| 档位 | 用在 | 底色 | 描边 | 圆角 | 阴影 |
|
|
197
|
+
|---|---|---|---|---|---|
|
|
198
|
+
| `--modal` | `Modal` / `ConfirmModal` / `AlertModal` | `surface-1` | 3px | `radius-xl` | `shadow-2` |
|
|
199
|
+
| `--popover` | 选文件弹窗(`pickWorkspaceFile`) | `surface-1` | 1px | `radius-lg` | `shadow-2` |
|
|
200
|
+
| `--menu` | ▾ 选层、`Picker` 下拉 | `surface-menu` | 1px | `radius-sm` | `shadow-1` |
|
|
201
|
+
|
|
202
|
+
- 组件里**不许**再写这四个值;要改外观只改 `panel.css`。
|
|
203
|
+
- **定位不归档位管**:Modal 居中、选文件弹窗贴锚点并上下翻转、菜单挂触发器下方,各自实现。
|
|
204
|
+
- 关闭钮只有一枚 `.dshpc-panel__close`;旧类名 `.dshpc-overlay-head__close` 保留作别名(消费方覆盖不失效)。
|
|
205
|
+
- 层序只许用 `--dshpc-z-panel`(面板本体)/ `--dshpc-z-popmenu`(叠在面板上的菜单与其透明遮罩),不许写字面量。
|
|
206
|
+
- **不并入三档**:`PanelDock` 与 `SideSheet` 属贴边家族(`side-panel.css` 的 `.dshpc-side-surface`,
|
|
207
|
+
2026-11-02 拍板两者皮肤一模一样),一个是布局成员、一个是贴边抽屉,都不是浮层。
|
|
208
|
+
- 组件**内部**的微层序(缩略按钮 5、拖拽条 7、dock 关闭钮 8、Segmented 的 0/1)不走 token ——
|
|
209
|
+
它们只在各自 stacking context 里排序,跟页面浮层层级无关。
|
|
210
|
+
- 自检:`test/css-discipline.test.mjs` 盯「色值只进 `tokens.css`」「`--dshpc-panel-*` 只在 `panel.css`」;
|
|
211
|
+
`test/css-contract.test.mjs` 盯「一个类名一套皮肤」。
|
|
212
|
+
|
|
159
213
|
## 三条硬规矩
|
|
160
214
|
|
|
161
215
|
> EN: Three hard rules
|
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
// explorer 子包的使用帮助 —— 真源(TS 数据模块)。内容全在此一处,demo 与 md 都从这份派生。
|
|
2
2
|
import type { DocTopic } from '../design/doc-format.js'
|
|
3
3
|
|
|
4
|
-
const explorerUsage = `import { openFilePreview, pickWorkspaceFile } from 'dsh-plugin-core/explorer'
|
|
4
|
+
const explorerUsage = `import { connectFs, openFilePreview, pickWorkspaceFile } from 'dsh-plugin-core/explorer'
|
|
5
|
+
import { serveFsRoute } from 'dsh-plugin-core/host'
|
|
6
|
+
import { FS_PATH } from './paths' // 你自己的常量:宿主与 client 必须用同一个
|
|
5
7
|
|
|
6
|
-
//
|
|
8
|
+
// ── 宿主半边(apply):挂一条只读文件路由(不限工作区;读文件/列目录都在它上面) ──
|
|
9
|
+
serveFsRoute(ctx, { path: FS_PATH })
|
|
10
|
+
|
|
11
|
+
// ── client 半边(apply):接一次(connectHost 照旧负责工作区快照) ──
|
|
7
12
|
connectHost(ctx)
|
|
13
|
+
connectFs({ path: FS_PATH })
|
|
8
14
|
|
|
9
15
|
// 右侧分栏预览(占宽度、挤窄主区):一个容器 + 一个路径就够
|
|
10
|
-
openFilePreview({ mount, path: '/abs/ledger' })
|
|
11
|
-
openFilePreview({ mount, path: 'docs/README.md' }) //
|
|
12
|
-
|
|
13
|
-
// 覆盖项:指定工作区快照 / 指定会话 / Office 转 PDF / 与别处共用的根缓存
|
|
14
|
-
openFilePreview({ mount, path, workspaceAnchors, sessionId, officeToPdf, rootCache })
|
|
16
|
+
openFilePreview({ mount, path: '/abs/ledger' }) // 文件夹 ⇒ 目录树;文件 ⇒ 直接预览
|
|
17
|
+
openFilePreview({ mount, path: 'docs/README.md' }) // 工作区相对路径也行(相对谁见下)
|
|
18
|
+
openFilePreview({ mount }) // 不给路径 ⇒ 根节点(工作区清单 + 盘符)
|
|
15
19
|
|
|
16
|
-
// 锚定弹窗选文件(Promise
|
|
17
|
-
const r = await pickWorkspaceFile({ anchor, filter: { exts: ['md'] } })
|
|
20
|
+
// 锚定弹窗选文件(Promise 返回**绝对路径**,不自己挂 dock)
|
|
21
|
+
const r = await pickWorkspaceFile({ anchor, filter: { exts: ['md'] } })
|
|
22
|
+
const dir = await pickWorkspaceFile({ anchor, filter: { dirs: true } }) // 只选文件夹`
|
|
18
23
|
|
|
19
24
|
const doc: DocTopic = {
|
|
20
25
|
title: { zh: 'explorer —— 工作区浏览', en: 'explorer — Workspace browsing' },
|
|
@@ -25,20 +30,20 @@ const doc: DocTopic = {
|
|
|
25
30
|
heading: { zh: '概览', en: 'Overview' },
|
|
26
31
|
prose: [
|
|
27
32
|
{
|
|
28
|
-
zh: '
|
|
29
|
-
en: '
|
|
33
|
+
zh: '提供文件浏览与选择;数据走宿主侧只读 FS 路由,**不限工作区**(工作区之外也能浏览)。界面与原版一致。',
|
|
34
|
+
en: 'File browsing and picking **not limited to workspaces**: one root tree (workspace nodes + the real root), served by a host-side read-only FS route.',
|
|
30
35
|
},
|
|
31
36
|
{
|
|
32
|
-
zh: '
|
|
33
|
-
en: '**
|
|
37
|
+
zh: '**接线归核心,但要两条**:宿主 `apply` 调 `serveFsRoute({ path })`,client `apply` 用同一个常量调 `connectFs({ path })`(`connectHost(ctx)` 照旧负责工作区快照)。浏览**不需要会话**。',
|
|
38
|
+
en: '**Core does the wiring, but with two calls**: `serveFsRoute({ path })` on the host side and `connectFs({ path })` with the same constant on the client side (`connectHost(ctx)` still covers the workspace snapshot). Browsing needs **no session**.',
|
|
34
39
|
},
|
|
35
40
|
{
|
|
36
41
|
zh: '落点只给一个元素:页面里**包住主区**的那个(核心会补成 flex 行、让主区伸展,关闭时还原),不要传 `document.body` 再自己套 fixed——那是浮层,不是分栏。',
|
|
37
42
|
en: 'Pass one element: the one wrapping the main area. Core makes it a flex row and lets the main area stretch, restoring it on close. Never pass `document.body` with your own fixed positioning — that is an overlay, not a split.',
|
|
38
43
|
},
|
|
39
44
|
{
|
|
40
|
-
zh: '
|
|
41
|
-
en: '
|
|
45
|
+
zh: '面包屑口径不变:路径所属工作区名作根名,其下按相对层级展开。▾ 下拉**根层置顶**(其余仍列各工作区):POSIX 是一条「根目录」,**Windows 没有根目录这东西,列的是盘符**(`C:/`、`D:/`…,由宿主 `op:roots` 探出来)。点其他工作区 = 直接列该区根目录(不需要会话)。',
|
|
46
|
+
en: 'Inside a workspace the breadcrumb starts at its name and the ▾ menu nests it there; outside it starts at the real root (`/` or a drive). A workspace root still appears in the real path, tagged “Workspace”.',
|
|
42
47
|
},
|
|
43
48
|
],
|
|
44
49
|
},
|
|
@@ -84,29 +89,23 @@ const doc: DocTopic = {
|
|
|
84
89
|
en: 'The element wrapping the main area; no flex needed (core turns it into a flex row, stretches the main area, and restores it on close). Never `document.body`',
|
|
85
90
|
},
|
|
86
91
|
},
|
|
87
|
-
{
|
|
88
|
-
name: 'opts.workspaceFiles',
|
|
89
|
-
type: 'WorkspaceFilesFace',
|
|
90
|
-
def: '—',
|
|
91
|
-
desc: {
|
|
92
|
-
zh: '读文件服务。**一般不用传**:`connectHost(ctx)` 接线后核心自己持有;传了以传入为准。传 `content` 时可省',
|
|
93
|
-
en: 'File service. **Usually unnecessary**: core holds it after `connectHost(ctx)`; when passed it wins. Optional when passing `content`',
|
|
94
|
-
},
|
|
95
|
-
},
|
|
96
92
|
{
|
|
97
93
|
name: 'opts.sessionId',
|
|
98
94
|
type: 'string',
|
|
99
95
|
def: '—',
|
|
100
96
|
desc: {
|
|
101
|
-
zh: '
|
|
102
|
-
en: '
|
|
97
|
+
zh: '**只在两种情况下需要**:① 相对路径的基准工作区;② Office 预览(转 PDF 要一条有效会话,缺省由核心取最近有会话的工作区)',
|
|
98
|
+
en: 'Needed in exactly two cases: (1) the base workspace for a relative path; (2) Office preview (conversion needs one valid session; core falls back to the most recent workspace with one)',
|
|
103
99
|
},
|
|
104
100
|
},
|
|
105
101
|
{
|
|
106
102
|
name: 'opts.path',
|
|
107
103
|
type: 'string',
|
|
108
104
|
def: '—',
|
|
109
|
-
desc: {
|
|
105
|
+
desc: {
|
|
106
|
+
zh: '绝对路径或工作区相对路径(相对路径要有可解析的基准,否则返回 `null` 并 warn);不传 ⇒ 根节点。与 `content` 二选一',
|
|
107
|
+
en: 'Absolute or workspace-relative (a relative one needs a resolvable base, else `null` + a warning); omitted ⇒ the root node. Mutually exclusive with `content`',
|
|
108
|
+
},
|
|
110
109
|
},
|
|
111
110
|
{
|
|
112
111
|
name: 'opts.content',
|
|
@@ -128,9 +127,12 @@ const doc: DocTopic = {
|
|
|
128
127
|
},
|
|
129
128
|
{
|
|
130
129
|
name: 'pickWorkspaceFile(opts)',
|
|
131
|
-
type: 'PickWorkspaceFileOptions => Promise<
|
|
130
|
+
type: 'PickWorkspaceFileOptions => Promise<PickedPath | null>',
|
|
132
131
|
def: '—',
|
|
133
|
-
desc: {
|
|
132
|
+
desc: {
|
|
133
|
+
zh: '锚定按钮弹出模态选文件,解析出 `{ path, isDir, workspaceRel?, workspace? }`;`path` 是**绝对路径**',
|
|
134
|
+
en: 'Anchored modal picker resolving `{ path, isDir, workspaceRel?, workspace? }`; `path` is **absolute**',
|
|
135
|
+
},
|
|
134
136
|
},
|
|
135
137
|
{
|
|
136
138
|
name: 'opts.anchor',
|
|
@@ -143,7 +145,10 @@ const doc: DocTopic = {
|
|
|
143
145
|
name: 'opts.filter',
|
|
144
146
|
type: 'PickFilter',
|
|
145
147
|
def: '—',
|
|
146
|
-
desc: {
|
|
148
|
+
desc: {
|
|
149
|
+
zh: '`exts` 只要这些扩展名(目录仍可展开导航);`dirs: true` 只允许选文件夹(文件不渲染)',
|
|
150
|
+
en: '`exts` limits files (folders still expand); `dirs: true` picks folders only (files hidden, plus a “Select this folder” action in the crumb bar)',
|
|
151
|
+
},
|
|
147
152
|
},
|
|
148
153
|
],
|
|
149
154
|
},
|