@linxin666/dsh-ssh 0.1.2 → 0.1.3
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/lib/client.js +46 -13
- package/lib/client.js.map +1 -1
- package/package.json +1 -1
- package/src/client/mount.tsx +31 -0
- package/src/client/panel/panel.module.css +5 -2
- package/src/client/sidebar-entry.ts +33 -12
package/lib/client.js
CHANGED
|
@@ -595,7 +595,7 @@ window.__ModuleLoader__.load({
|
|
|
595
595
|
}
|
|
596
596
|
//#endregion
|
|
597
597
|
//#region \0dsh-css:/Users/zcl/code/dsh-web-ui/packages/dsh-ssh/src/client/panel/panel.module.css.mjs
|
|
598
|
-
const css = "[data-pane=conversation]{position:relative}[data-dsh-ssh-view]{z-index:5;display:none;position:absolute;inset:0}html[data-dsh-ssh-active] [data-dsh-ssh-view]{display:block}html[data-dsh-ssh-active] [data-pane=conversation]>:not([data-dsh-ssh-view]){display:none}.HIRDBW_entry{width:100%;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:flex}.HIRDBW_entry:hover{background:var(--dsw-specific-sidebar-nav-item-hover);color:var(--dsw-alias-label-primary)}.HIRDBW_entry[data-active]{background:var(--dsw-specific-sidebar-nav-item-active);color:var(--dsw-alias-label-primary);font-weight:600}.HIRDBW_entryIcon{flex:none;justify-content:center;align-items:center;display:inline-flex}.HIRDBW_entryLabel{text-overflow:ellipsis;overflow:hidden}[data-dsh-frame][data-sidebar-collapsed] .HIRDBW_entry{justify-content:center;width:100%;padding:0}[data-dsh-frame][data-sidebar-collapsed] .HIRDBW_entryLabel{display:none}.HIRDBW_view{overflow:hidden}.HIRDBW_panel{background:var(--dsw-alias-bg-base);min-width:0;height:100%;min-height:0;color:var(--dsw-alias-label-primary);font-family:var(--dsw-font-family);flex-direction:column;gap:10px;padding:14px 16px 16px;display:flex}.HIRDBW_panelHeader{flex:none;align-items:center;gap:10px;display:flex}.HIRDBW_panelTitle{color:var(--dsw-alias-label-primary);white-space:nowrap;flex:1;margin:0;font-size:16px;font-weight:700}.HIRDBW_tabBar{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;gap:2px;display:flex}.HIRDBW_tab{color:var(--dsw-alias-label-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:6px 6px 0 0;padding:7px 14px;font-size:13px}.HIRDBW_tab:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_tab[data-active]{color:var(--dsw-alias-label-primary);border-bottom-color:var(--dsw-alias-state-business-primary);font-weight:600}.HIRDBW_panelContent{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.HIRDBW_tabBody{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow-y:auto}.HIRDBW_fillBody{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:hidden}.HIRDBW_toolbar,.HIRDBW_controls{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.HIRDBW_controls .HIRDBW_input{flex:0 260px;min-width:150px}.HIRDBW_toolbarSpacer{flex:1}.HIRDBW_search{min-width:120px;color:var(--dsw-alias-label-primary);background:var(--dsw-specific-input-major);border:1px solid var(--dsw-alias-border-l2);border-radius:8px;outline:none;flex:0 260px;padding:6px 10px;font-size:13px}.HIRDBW_search::placeholder{color:var(--dsw-alias-label-tertiary)}.HIRDBW_tableWrap{border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex:1;min-height:0;overflow:auto}.HIRDBW_table{border-collapse:collapse;width:100%;font-size:12.5px}.HIRDBW_table th{z-index:1;text-align:left;background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);border-bottom:1px solid var(--dsw-alias-border-l1);white-space:nowrap;padding:8px 10px;font-weight:600;position:sticky;top:0}.HIRDBW_table td{border-bottom:1px solid var(--dsw-alias-separator-primary);vertical-align:top;padding:7px 10px}.HIRDBW_table tbody tr:last-child td{border-bottom:none}.HIRDBW_table tbody tr:hover td{background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.HIRDBW_cellMuted{color:var(--dsw-alias-label-tertiary)}.HIRDBW_actions{white-space:nowrap;align-items:center;gap:8px;display:flex}.HIRDBW_inlineTest{color:var(--dsw-alias-label-secondary);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.HIRDBW_inlineTest[data-status=ok]{color:var(--dsw-alias-state-success-primary)}.HIRDBW_inlineTest[data-status=fail]{color:var(--dsw-alias-state-error-primary)}.HIRDBW_badge{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;line-height:1.6;display:inline-block}.HIRDBW_badge[data-kind=key]{color:var(--dsw-alias-state-business-primary);border-color:var(--dsw-alias-state-business-primary)}.HIRDBW_badge[data-kind=password]{color:var(--dsw-alias-state-warn-primary);border-color:var(--dsw-alias-state-warn-primary)}.HIRDBW_badge[data-status=ok]{color:var(--dsw-alias-state-success-primary);border-color:var(--dsw-alias-state-success-primary)}.HIRDBW_badge[data-status=fail]{color:var(--dsw-alias-state-error-primary);border-color:var(--dsw-alias-state-error-primary)}.HIRDBW_badge[data-status=timeout]{color:var(--dsw-alias-state-warn-primary);border-color:var(--dsw-alias-state-warn-primary)}.HIRDBW_primaryButton{color:var(--dsw-alias-label-primary-foreground);background:var(--dsw-alias-button-info-fill);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:600}.HIRDBW_primaryButton:hover:not(:disabled){background:var(--dsw-alias-button-info-hover)}.HIRDBW_primaryButton:disabled{opacity:.5;cursor:default}.HIRDBW_ghostButton{color:var(--dsw-alias-label-primary);border:1px solid var(--dsw-alias-border-l2);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:5px 12px;font-size:12px}.HIRDBW_ghostButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_ghostButton:disabled{opacity:.45;cursor:default}.HIRDBW_iconButton{width:26px;height:26px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:13px;display:inline-flex}.HIRDBW_iconButton:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.HIRDBW_linkButton{color:var(--dsw-alias-state-business-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:12px}.HIRDBW_linkButton:hover:not(:disabled){text-decoration:underline}.HIRDBW_linkButton:disabled{opacity:.45;cursor:default}.HIRDBW_linkButton[data-danger]{color:var(--dsw-alias-state-error-primary)}.HIRDBW_spinner{border:2px solid var(--dsw-alias-state-business-primary);vertical-align:-1px;border-top-color:#0000;border-radius:50%;flex:none;width:11px;height:11px;animation:.8s linear infinite HIRDBW_dshSshSpin;display:inline-block}@keyframes HIRDBW_dshSshSpin{to{transform:rotate(360deg)}}.HIRDBW_banner{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;border-radius:8px;padding:8px 12px;font-size:12.5px;line-height:1.5}.HIRDBW_banner[data-kind=ok]{color:var(--dsw-alias-state-success-primary);border-color:var(--dsw-alias-state-success-primary)}.HIRDBW_banner[data-kind=error]{color:var(--dsw-alias-state-error-primary);border-color:var(--dsw-alias-state-error-primary)}.HIRDBW_banner[data-kind=info]{color:var(--dsw-alias-state-business-primary);border-color:var(--dsw-alias-state-business-primary)}.HIRDBW_empty,.HIRDBW_loading{text-align:center;color:var(--dsw-alias-label-tertiary);padding:28px 12px;font-size:12.5px}.HIRDBW_modalBackdrop{z-index:40;background:var(--dsw-alias-bg-mask-1);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.HIRDBW_modal{background:var(--dsw-alias-bg-base);border:1px solid var(--dsw-alias-border-l2);width:min(560px,100vw - 48px);max-height:calc(100vh - 96px);box-shadow:var(--dsw-shadow-lv3);color:var(--dsw-alias-label-primary);border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex;overflow-y:auto}.HIRDBW_modalTitle{margin:0;font-size:15px;font-weight:700}.HIRDBW_modalFooter{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.HIRDBW_formError{color:var(--dsw-alias-state-error-primary);margin:0;font-size:12px}.HIRDBW_hint{color:var(--dsw-alias-label-tertiary);font-size:11.5px}.HIRDBW_field{flex-direction:column;gap:5px;display:flex}.HIRDBW_fieldLabel{color:var(--dsw-alias-label-secondary);font-size:12px;font-weight:600}.HIRDBW_input{color:var(--dsw-alias-label-primary);background:var(--dsw-specific-input-major);border:1px solid var(--dsw-alias-border-l2);resize:vertical;border-radius:8px;outline:none;padding:7px 10px;font-family:inherit;font-size:13px}.HIRDBW_input:focus{border-color:var(--dsw-alias-state-business-primary)}.HIRDBW_input::placeholder{color:var(--dsw-alias-label-tertiary)}.HIRDBW_input:disabled{opacity:.55}.HIRDBW_formRow{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 12px;display:grid}.HIRDBW_radioRow{align-items:center;gap:16px;display:flex}.HIRDBW_radioLabel{color:var(--dsw-alias-label-primary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.HIRDBW_termBody{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:hidden}.HIRDBW_termWrap{border:1px solid var(--dsw-alias-border-l1);background:#0b0e14;border-radius:10px;flex:1;min-height:0;position:relative;overflow:hidden}.HIRDBW_termContainer{padding:8px 10px;position:absolute;inset:0}.HIRDBW_termPlaceholder{z-index:2;text-align:center;color:var(--dsw-alias-label-tertiary);background:var(--dsw-alias-bg-base);justify-content:center;align-items:center;padding:0 24px;font-size:12.5px;display:flex;position:absolute;inset:0}.HIRDBW_hiddenFile{display:none}.HIRDBW_browsePanel{border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex-direction:column;flex:none;display:flex;overflow:hidden}.HIRDBW_browseHeader{background:var(--dsw-alias-bg-layer-2);border-bottom:1px solid var(--dsw-alias-border-l1);align-items:center;gap:8px;padding:8px 10px;display:flex}.HIRDBW_browsePath{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dsw-alias-label-secondary);flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;overflow:hidden}.HIRDBW_browseList{max-height:240px;overflow-y:auto}.HIRDBW_dirRow{text-align:left;width:100%;font:inherit;color:var(--dsw-alias-label-primary);border:none;border-bottom:1px solid var(--dsw-alias-separator-primary);cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:5px 10px;font-size:12.5px;display:grid}.HIRDBW_dirRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_dirRow[data-type=dir] .HIRDBW_dirName{color:var(--dsw-alias-state-business-primary)}.HIRDBW_dirRow[data-up]{color:var(--dsw-alias-label-secondary)}.HIRDBW_dirName{text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:hidden}.HIRDBW_dirType{color:var(--dsw-alias-label-tertiary);white-space:nowrap}.HIRDBW_dirSize{color:var(--dsw-alias-label-tertiary);white-space:nowrap;text-align:right}.HIRDBW_transferBlock{flex-direction:column;flex:none;gap:6px;display:flex}.HIRDBW_progressMeta{color:var(--dsw-alias-label-secondary);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.HIRDBW_progressTrack{background:var(--dsw-alias-interactive-bg-hover);border-radius:999px;height:8px;overflow:hidden}.HIRDBW_progressBar{background:var(--dsw-alias-state-business-primary);border-radius:999px;height:100%;transition:width .12s linear}.HIRDBW_tunnelList{flex-direction:column;flex:none;gap:8px;display:flex}.HIRDBW_tunnelRow{background:var(--dsw-alias-bg-layer-2);border:1px solid var(--dsw-alias-border-l2);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;display:flex}.HIRDBW_tunnelRow[data-state=forwarding]{border-color:var(--dsw-alias-state-success-primary)}.HIRDBW_tunnelRow[data-state=connecting]{border-color:var(--dsw-alias-state-warn-primary)}.HIRDBW_tunnelRow[data-state=failed]{border-color:var(--dsw-alias-state-error-primary)}.HIRDBW_tunnelLabel{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;overflow:hidden}.HIRDBW_formCard{background:var(--dsw-alias-bg-layer-2);border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex-direction:column;flex:none;gap:10px;padding:12px;display:flex}.HIRDBW_clusterForm{flex-direction:column;flex:none;gap:8px;display:flex}.HIRDBW_clusterFilters{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.HIRDBW_commandInput{min-height:96px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.HIRDBW_cellDetails summary{cursor:pointer;color:var(--dsw-alias-label-secondary);font-size:12px}.HIRDBW_cellPre{background:var(--dsw-alias-bg-layer-2);border:1px solid var(--dsw-alias-border-l2);white-space:pre-wrap;word-break:break-all;border-radius:6px;max-height:180px;margin:4px 0 0;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;overflow:auto}";
|
|
598
|
+
const css = "[data-pane=conversation]{position:relative}[data-dsh-ssh-view]{z-index:5;display:none;position:absolute;inset:0}html[data-dsh-ssh-active]:not([data-dsh-taskboard-active]) [data-dsh-ssh-view]{display:block}html[data-dsh-ssh-active]:not([data-dsh-taskboard-active]) [data-pane=conversation]>:not([data-dsh-ssh-view]){display:none}.HIRDBW_entry{width:100%;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:flex}.HIRDBW_entry:hover{background:var(--dsw-specific-sidebar-nav-item-hover);color:var(--dsw-alias-label-primary)}.HIRDBW_entry[data-active]{background:var(--dsw-specific-sidebar-nav-item-active);color:var(--dsw-alias-label-primary);font-weight:600}.HIRDBW_entryIcon{flex:none;justify-content:center;align-items:center;display:inline-flex}.HIRDBW_entryLabel{text-overflow:ellipsis;overflow:hidden}[data-dsh-frame][data-sidebar-collapsed] .HIRDBW_entry{justify-content:center;width:100%;padding:0}[data-dsh-frame][data-sidebar-collapsed] .HIRDBW_entryLabel{display:none}.HIRDBW_view{overflow:hidden}.HIRDBW_panel{background:var(--dsw-alias-bg-base);min-width:0;height:100%;min-height:0;color:var(--dsw-alias-label-primary);font-family:var(--dsw-font-family);flex-direction:column;gap:10px;padding:14px 16px 16px;display:flex}.HIRDBW_panelHeader{flex:none;align-items:center;gap:10px;display:flex}.HIRDBW_panelTitle{color:var(--dsw-alias-label-primary);white-space:nowrap;flex:1;margin:0;font-size:16px;font-weight:700}.HIRDBW_tabBar{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;gap:2px;display:flex}.HIRDBW_tab{color:var(--dsw-alias-label-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:6px 6px 0 0;padding:7px 14px;font-size:13px}.HIRDBW_tab:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_tab[data-active]{color:var(--dsw-alias-label-primary);border-bottom-color:var(--dsw-alias-state-business-primary);font-weight:600}.HIRDBW_panelContent{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.HIRDBW_tabBody{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow-y:auto}.HIRDBW_fillBody{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:hidden}.HIRDBW_toolbar,.HIRDBW_controls{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.HIRDBW_controls .HIRDBW_input{flex:0 260px;min-width:150px}.HIRDBW_toolbarSpacer{flex:1}.HIRDBW_search{min-width:120px;color:var(--dsw-alias-label-primary);background:var(--dsw-specific-input-major);border:1px solid var(--dsw-alias-border-l2);border-radius:8px;outline:none;flex:0 260px;padding:6px 10px;font-size:13px}.HIRDBW_search::placeholder{color:var(--dsw-alias-label-tertiary)}.HIRDBW_tableWrap{border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex:1;min-height:0;overflow:auto}.HIRDBW_table{border-collapse:collapse;width:100%;font-size:12.5px}.HIRDBW_table th{z-index:1;text-align:left;background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);border-bottom:1px solid var(--dsw-alias-border-l1);white-space:nowrap;padding:8px 10px;font-weight:600;position:sticky;top:0}.HIRDBW_table td{border-bottom:1px solid var(--dsw-alias-separator-primary);vertical-align:top;padding:7px 10px}.HIRDBW_table tbody tr:last-child td{border-bottom:none}.HIRDBW_table tbody tr:hover td{background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.HIRDBW_cellMuted{color:var(--dsw-alias-label-tertiary)}.HIRDBW_actions{white-space:nowrap;align-items:center;gap:8px;display:flex}.HIRDBW_inlineTest{color:var(--dsw-alias-label-secondary);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.HIRDBW_inlineTest[data-status=ok]{color:var(--dsw-alias-state-success-primary)}.HIRDBW_inlineTest[data-status=fail]{color:var(--dsw-alias-state-error-primary)}.HIRDBW_badge{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;line-height:1.6;display:inline-block}.HIRDBW_badge[data-kind=key]{color:var(--dsw-alias-state-business-primary);border-color:var(--dsw-alias-state-business-primary)}.HIRDBW_badge[data-kind=password]{color:var(--dsw-alias-state-warn-primary);border-color:var(--dsw-alias-state-warn-primary)}.HIRDBW_badge[data-status=ok]{color:var(--dsw-alias-state-success-primary);border-color:var(--dsw-alias-state-success-primary)}.HIRDBW_badge[data-status=fail]{color:var(--dsw-alias-state-error-primary);border-color:var(--dsw-alias-state-error-primary)}.HIRDBW_badge[data-status=timeout]{color:var(--dsw-alias-state-warn-primary);border-color:var(--dsw-alias-state-warn-primary)}.HIRDBW_primaryButton{color:var(--dsw-alias-label-primary-foreground);background:var(--dsw-alias-button-info-fill);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:600}.HIRDBW_primaryButton:hover:not(:disabled){background:var(--dsw-alias-button-info-hover)}.HIRDBW_primaryButton:disabled{opacity:.5;cursor:default}.HIRDBW_ghostButton{color:var(--dsw-alias-label-primary);border:1px solid var(--dsw-alias-border-l2);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:5px 12px;font-size:12px}.HIRDBW_ghostButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_ghostButton:disabled{opacity:.45;cursor:default}.HIRDBW_iconButton{width:26px;height:26px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:13px;display:inline-flex}.HIRDBW_iconButton:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.HIRDBW_linkButton{color:var(--dsw-alias-state-business-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:12px}.HIRDBW_linkButton:hover:not(:disabled){text-decoration:underline}.HIRDBW_linkButton:disabled{opacity:.45;cursor:default}.HIRDBW_linkButton[data-danger]{color:var(--dsw-alias-state-error-primary)}.HIRDBW_spinner{border:2px solid var(--dsw-alias-state-business-primary);vertical-align:-1px;border-top-color:#0000;border-radius:50%;flex:none;width:11px;height:11px;animation:.8s linear infinite HIRDBW_dshSshSpin;display:inline-block}@keyframes HIRDBW_dshSshSpin{to{transform:rotate(360deg)}}.HIRDBW_banner{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;border-radius:8px;padding:8px 12px;font-size:12.5px;line-height:1.5}.HIRDBW_banner[data-kind=ok]{color:var(--dsw-alias-state-success-primary);border-color:var(--dsw-alias-state-success-primary)}.HIRDBW_banner[data-kind=error]{color:var(--dsw-alias-state-error-primary);border-color:var(--dsw-alias-state-error-primary)}.HIRDBW_banner[data-kind=info]{color:var(--dsw-alias-state-business-primary);border-color:var(--dsw-alias-state-business-primary)}.HIRDBW_empty,.HIRDBW_loading{text-align:center;color:var(--dsw-alias-label-tertiary);padding:28px 12px;font-size:12.5px}.HIRDBW_modalBackdrop{z-index:40;background:var(--dsw-alias-bg-mask-1);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.HIRDBW_modal{background:var(--dsw-alias-bg-base);border:1px solid var(--dsw-alias-border-l2);width:min(560px,100vw - 48px);max-height:calc(100vh - 96px);box-shadow:var(--dsw-shadow-lv3);color:var(--dsw-alias-label-primary);border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex;overflow-y:auto}.HIRDBW_modalTitle{margin:0;font-size:15px;font-weight:700}.HIRDBW_modalFooter{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.HIRDBW_formError{color:var(--dsw-alias-state-error-primary);margin:0;font-size:12px}.HIRDBW_hint{color:var(--dsw-alias-label-tertiary);font-size:11.5px}.HIRDBW_field{flex-direction:column;gap:5px;display:flex}.HIRDBW_fieldLabel{color:var(--dsw-alias-label-secondary);font-size:12px;font-weight:600}.HIRDBW_input{color:var(--dsw-alias-label-primary);background:var(--dsw-specific-input-major);border:1px solid var(--dsw-alias-border-l2);resize:vertical;border-radius:8px;outline:none;padding:7px 10px;font-family:inherit;font-size:13px}.HIRDBW_input:focus{border-color:var(--dsw-alias-state-business-primary)}.HIRDBW_input::placeholder{color:var(--dsw-alias-label-tertiary)}.HIRDBW_input:disabled{opacity:.55}.HIRDBW_formRow{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 12px;display:grid}.HIRDBW_radioRow{align-items:center;gap:16px;display:flex}.HIRDBW_radioLabel{color:var(--dsw-alias-label-primary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.HIRDBW_termBody{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:hidden}.HIRDBW_termWrap{border:1px solid var(--dsw-alias-border-l1);background:#0b0e14;border-radius:10px;flex:1;min-height:0;position:relative;overflow:hidden}.HIRDBW_termContainer{padding:8px 10px;position:absolute;inset:0}.HIRDBW_termPlaceholder{z-index:2;text-align:center;color:var(--dsw-alias-label-tertiary);background:var(--dsw-alias-bg-base);justify-content:center;align-items:center;padding:0 24px;font-size:12.5px;display:flex;position:absolute;inset:0}.HIRDBW_hiddenFile{display:none}.HIRDBW_browsePanel{border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex-direction:column;flex:none;display:flex;overflow:hidden}.HIRDBW_browseHeader{background:var(--dsw-alias-bg-layer-2);border-bottom:1px solid var(--dsw-alias-border-l1);align-items:center;gap:8px;padding:8px 10px;display:flex}.HIRDBW_browsePath{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dsw-alias-label-secondary);flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;overflow:hidden}.HIRDBW_browseList{max-height:240px;overflow-y:auto}.HIRDBW_dirRow{text-align:left;width:100%;font:inherit;color:var(--dsw-alias-label-primary);border:none;border-bottom:1px solid var(--dsw-alias-separator-primary);cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:5px 10px;font-size:12.5px;display:grid}.HIRDBW_dirRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.HIRDBW_dirRow[data-type=dir] .HIRDBW_dirName{color:var(--dsw-alias-state-business-primary)}.HIRDBW_dirRow[data-up]{color:var(--dsw-alias-label-secondary)}.HIRDBW_dirName{text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:hidden}.HIRDBW_dirType{color:var(--dsw-alias-label-tertiary);white-space:nowrap}.HIRDBW_dirSize{color:var(--dsw-alias-label-tertiary);white-space:nowrap;text-align:right}.HIRDBW_transferBlock{flex-direction:column;flex:none;gap:6px;display:flex}.HIRDBW_progressMeta{color:var(--dsw-alias-label-secondary);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.HIRDBW_progressTrack{background:var(--dsw-alias-interactive-bg-hover);border-radius:999px;height:8px;overflow:hidden}.HIRDBW_progressBar{background:var(--dsw-alias-state-business-primary);border-radius:999px;height:100%;transition:width .12s linear}.HIRDBW_tunnelList{flex-direction:column;flex:none;gap:8px;display:flex}.HIRDBW_tunnelRow{background:var(--dsw-alias-bg-layer-2);border:1px solid var(--dsw-alias-border-l2);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;display:flex}.HIRDBW_tunnelRow[data-state=forwarding]{border-color:var(--dsw-alias-state-success-primary)}.HIRDBW_tunnelRow[data-state=connecting]{border-color:var(--dsw-alias-state-warn-primary)}.HIRDBW_tunnelRow[data-state=failed]{border-color:var(--dsw-alias-state-error-primary)}.HIRDBW_tunnelLabel{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;overflow:hidden}.HIRDBW_formCard{background:var(--dsw-alias-bg-layer-2);border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex-direction:column;flex:none;gap:10px;padding:12px;display:flex}.HIRDBW_clusterForm{flex-direction:column;flex:none;gap:8px;display:flex}.HIRDBW_clusterFilters{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.HIRDBW_commandInput{min-height:96px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.HIRDBW_cellDetails summary{cursor:pointer;color:var(--dsw-alias-label-secondary);font-size:12px}.HIRDBW_cellPre{background:var(--dsw-alias-bg-layer-2);border:1px solid var(--dsw-alias-border-l2);white-space:pre-wrap;word-break:break-all;border-radius:6px;max-height:180px;margin:4px 0 0;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;overflow:auto}";
|
|
599
599
|
const tagId = "@linxin666/dsh-ssh/panel.module.css";
|
|
600
600
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
601
601
|
const tag = document.createElement("style");
|
|
@@ -15425,6 +15425,11 @@ window.__ModuleLoader__.load({
|
|
|
15425
15425
|
*/
|
|
15426
15426
|
const CONVERSATION_COLUMN_SELECTOR = "[data-pane=\"conversation\"]";
|
|
15427
15427
|
const ACTIVE_ATTR = "data-dsh-ssh-active";
|
|
15428
|
+
/** The sibling panel's activation attribute (task board), removed when this panel opens. */
|
|
15429
|
+
const OTHER_ACTIVE_ATTR = "data-dsh-taskboard-active";
|
|
15430
|
+
/** Cross-plugin activation event; detail is the activating panel name. */
|
|
15431
|
+
const ACTIVATE_EVENT = "dsh-panel-activate";
|
|
15432
|
+
const PANEL_NAME = "ssh";
|
|
15428
15433
|
/** Find the center column, or undefined while the frame is not mounted. */
|
|
15429
15434
|
function conversationColumn() {
|
|
15430
15435
|
return document.querySelector(CONVERSATION_COLUMN_SELECTOR) ?? void 0;
|
|
@@ -15467,13 +15472,30 @@ window.__ModuleLoader__.load({
|
|
|
15467
15472
|
subtree: true
|
|
15468
15473
|
});
|
|
15469
15474
|
const applyActive = () => {
|
|
15470
|
-
if (controller.getSnapshot().panelOpen)
|
|
15471
|
-
|
|
15475
|
+
if (controller.getSnapshot().panelOpen) {
|
|
15476
|
+
document.documentElement.removeAttribute(OTHER_ACTIVE_ATTR);
|
|
15477
|
+
document.documentElement.setAttribute(ACTIVE_ATTR, "");
|
|
15478
|
+
document.dispatchEvent(new CustomEvent(ACTIVATE_EVENT, { detail: PANEL_NAME }));
|
|
15479
|
+
} else document.documentElement.removeAttribute(ACTIVE_ATTR);
|
|
15472
15480
|
};
|
|
15481
|
+
const onOtherActivate = (event) => {
|
|
15482
|
+
if (event.detail === "taskboard" && controller.getSnapshot().panelOpen) controller.close();
|
|
15483
|
+
};
|
|
15484
|
+
const SIDEBAR_ROW_SELECTOR = "[class*=\"sessionRow\"], [class*=\"projectRow\"], [class*=\"searchResultRow\"], [class*=\"searchResultWorkspace\"], [class*=\"newSession\"]";
|
|
15485
|
+
const onClickSidebarRow = (event) => {
|
|
15486
|
+
if (!controller.getSnapshot().panelOpen) return;
|
|
15487
|
+
const target = event.target;
|
|
15488
|
+
if (target === null) return;
|
|
15489
|
+
if (target.closest(SIDEBAR_ROW_SELECTOR) !== null) controller.close();
|
|
15490
|
+
};
|
|
15491
|
+
document.addEventListener("click", onClickSidebarRow, true);
|
|
15492
|
+
document.addEventListener(ACTIVATE_EVENT, onOtherActivate);
|
|
15473
15493
|
const unsubscribe = controller.subscribe(applyActive);
|
|
15474
15494
|
applyActive();
|
|
15475
15495
|
ensure();
|
|
15476
15496
|
return () => {
|
|
15497
|
+
document.removeEventListener("click", onClickSidebarRow, true);
|
|
15498
|
+
document.removeEventListener(ACTIVATE_EVENT, onOtherActivate);
|
|
15477
15499
|
waitObserver.disconnect();
|
|
15478
15500
|
unsubscribe();
|
|
15479
15501
|
document.documentElement.removeAttribute(ACTIVE_ATTR);
|
|
@@ -15518,14 +15540,16 @@ window.__ModuleLoader__.load({
|
|
|
15518
15540
|
};
|
|
15519
15541
|
//#endregion
|
|
15520
15542
|
//#region src/client/sidebar-entry.ts
|
|
15521
|
-
/** The sidebar column is the grid item AppFrame renders with this pane marker. */
|
|
15522
|
-
const SIDEBAR_COLUMN_SELECTOR = "[data-pane=\"sidebar\"]";
|
|
15523
15543
|
/** Find the sidebar shell root element, or undefined while not yet mounted. */
|
|
15524
15544
|
function sidebarRoot() {
|
|
15525
|
-
|
|
15545
|
+
const column = document.querySelector("[data-pane=\"sidebar\"], [class*=\"sidebarCol\"]");
|
|
15546
|
+
if (column === null) return void 0;
|
|
15547
|
+
return column.querySelector("[class*=\"logoRow\"]")?.parentElement ?? column.firstElementChild;
|
|
15526
15548
|
}
|
|
15527
|
-
/** The New Session button: the
|
|
15549
|
+
/** The New Session button: nested in the logo row on current shells, a direct child on legacy shells. */
|
|
15528
15550
|
function newSessionButton(root) {
|
|
15551
|
+
const nested = root.querySelector("button[class*=\"newSession\"]");
|
|
15552
|
+
if (nested !== null) return nested;
|
|
15529
15553
|
for (const child of root.children) if (child.tagName === "BUTTON") return child;
|
|
15530
15554
|
}
|
|
15531
15555
|
/** Build the entry row (a detached button; insert once the shell is up). */
|
|
@@ -15542,11 +15566,17 @@ window.__ModuleLoader__.load({
|
|
|
15542
15566
|
});
|
|
15543
15567
|
return entry;
|
|
15544
15568
|
}
|
|
15545
|
-
/** Re-insert the entry after the New Session
|
|
15569
|
+
/** Re-insert the entry after the New Session row (before the browser region). */
|
|
15546
15570
|
function placeEntry(root, entry) {
|
|
15547
15571
|
const button = newSessionButton(root);
|
|
15548
15572
|
if (button === void 0) return false;
|
|
15549
|
-
if (entry.parentElement !== root)
|
|
15573
|
+
if (entry.parentElement !== root) {
|
|
15574
|
+
const row = button.closest("[class*=\"logoRow\"]");
|
|
15575
|
+
const base = row !== null && row.parentElement === root ? row : button;
|
|
15576
|
+
const family = Array.from(root.children).filter((el) => el instanceof HTMLElement && el.matches("[data-dsh-taskboard-entry], [data-dsh-ssh-entry]"));
|
|
15577
|
+
const anchor = family.length > 0 ? family[family.length - 1].nextElementSibling : base.nextElementSibling;
|
|
15578
|
+
root.insertBefore(entry, anchor);
|
|
15579
|
+
}
|
|
15550
15580
|
return true;
|
|
15551
15581
|
}
|
|
15552
15582
|
/**
|
|
@@ -15568,10 +15598,13 @@ window.__ModuleLoader__.load({
|
|
|
15568
15598
|
root ??= sidebarRoot();
|
|
15569
15599
|
if (root === void 0) return;
|
|
15570
15600
|
placed = placeEntry(root, entry);
|
|
15571
|
-
if (placed)
|
|
15572
|
-
|
|
15573
|
-
|
|
15574
|
-
|
|
15601
|
+
if (placed) {
|
|
15602
|
+
rootObserver.observe(root, {
|
|
15603
|
+
childList: true,
|
|
15604
|
+
subtree: true
|
|
15605
|
+
});
|
|
15606
|
+
waitObserver.disconnect();
|
|
15607
|
+
}
|
|
15575
15608
|
};
|
|
15576
15609
|
const waitObserver = new MutationObserver(() => {
|
|
15577
15610
|
tryPlace();
|