dsh-plugin 1.5.1 → 1.6.0

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/client/client.js CHANGED
@@ -61,13 +61,13 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
61
61
  dshCmdLabel: "DeepSeek Harness 命令",
62
62
  dshCmdPlaceholder: "粘贴官方 dsh plugin 命令",
63
63
  dshCmdInsertHubUpdate: "插入更新命令",
64
- dshCmdExample: "例如:dsh plugin --profile web add github:owner/repo,或 dsh plugin --profile web update dsh-plugin",
65
- dshCmdInvalid: "请输入官方 dsh plugin 命令(--profile 必填,支持 add / update)。例如:dsh plugin --profile web update dsh-plugin",
64
+ dshCmdExample: "例如:dsh plugin --profile {profile} add github:owner/repo,或 dsh plugin --profile {profile} update dsh-plugin",
65
+ dshCmdInvalid: "请输入官方 dsh plugin 命令(--profile 必填,支持 add / update)。例如:dsh plugin --profile {profile} update dsh-plugin",
66
66
  installHelp: "帮助",
67
67
  helpModalTitle: "支持的命令格式",
68
68
  npmInstallHelp: "lodash、@scope/pkg 直接输入包名\nnpm install lodash\nnpm i lodash\npnpm add @scope/pkg\npnpm i @scope/pkg\nnpm install -g @scope/cli 全局安装 CLI 工具,不进「已安装」列表",
69
69
  gitInstallHelp: "owner/repo\nhttps://github.com/owner/repo\ngithub:owner/repo\ngit+https://github.com/owner/repo.git\ngit@github.com:owner/repo.git",
70
- dshCmdHelp: "dsh plugin --profile web add <目标> 安装\ndsh plugin --profile web update <目标> 更新已安装目标到最新版本\ndsh plugin --profile=web add <目标>\ndsh plugin --profile=web update <目标>\n --profile 必填,官方 CLI 无 -p 简写;<目标> 可为 npm 包名或 github:owner/repo;卸载请用「已安装」列表",
70
+ dshCmdHelp: "dsh plugin --profile {profile} add <目标> 安装\ndsh plugin --profile {profile} update <目标> 更新已安装目标到最新版本\ndsh plugin --profile={profile} add <目标>\ndsh plugin --profile={profile} update <目标>\n --profile 必填(此处已填当前 profile),官方 CLI 无 -p 简写;<目标> 可为 npm 包名或 github:owner/repo;卸载请用「已安装」列表",
71
71
  globalNpmHint: "将全局安装 CLI 工具(npm install -g),不会出现在「已安装」列表,无需重启宿主",
72
72
  installCliBtn: "安装",
73
73
  channelDisabledHint: "该安装通道已关闭,请在「设置 → 安全信任」中打开开关",
@@ -294,7 +294,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
294
294
  failNetworkRegistryHint: "你的 npm/pnpm 源(registry)被配置为 {host},插件包需从该源下载但失败了。这通常是内网/自定义源没有同步该包(或需要内网认证)—— 请把 npm/pnpm 的 registry 指回官方源 https://registry.npmjs.org(或确认此源可访问该包)后重试。",
295
295
  failNetworkTarget: "无法访问 {url} —— 你的网络连接不通",
296
296
  failNetworkRunDiag: "去系统诊断检测网络",
297
- failOriginRejectedHint: "这次安装请求没有通过插件市场的来源校验,被本地服务直接拒绝,所以安装根本没有开始 —— 与插件本身无关。通常是因为市场页面不是从本机地址打开的(比如用了局域网 IP),或宿主页面的来源未被识别。请从本机的插件市场地址(localhost)重新打开页面后重试;桌面端用户重启一次宿主即可。",
297
+ failOriginRejectedHint: "这次安装请求没有通过插件市场的来源校验,被本地服务直接拒绝,所以安装根本没有开始 —— 与插件本身无关。通常是因为市场页面不是从本机地址打开的(比如用了局域网 IP),或宿主页面的来源未被识别。请从本机的插件市场地址(localhost)重新打开页面后重试;桌面端用户重启一次宿主即可。若重启宿主后仍然失败,说明当前 dsh-plugin 版本与宿主不兼容,请用以下命令把市场升级到最新版,再重启一次宿主:dsh plugin --profile {profile} add dsh-plugin@latest。",
298
298
  failDshMissingHint: "系统找不到 dsh 命令(dsh 未加入系统 PATH),无法调用安装器执行安装。请确认 DeepSeek Harness 已正确安装、dsh 已加入 PATH(或重新安装),然后重试。这不是插件本身的问题。",
299
299
  failGitMissingHint: "系统找不到 git 命令(Git 未安装或未加入系统 PATH),无法从 GitHub 源安装插件。请先安装 Git(如 git-scm.com/downloads)或把 git 加入 PATH,重启 DSH 后重试。这不是插件本身的问题。",
300
300
  failPnpmMissingHint: "安装器找到了 dsh,但系统里没有 pnpm 命令(dsh 用它来管理 profile 插件)。请先安装 pnpm(如 npm install -g pnpm),确认 pnpm 已加入 PATH 后重试。这不是插件本身的问题。",
@@ -309,6 +309,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
309
309
  failPnpmWorkspaceHint: "安装器调用 pnpm 时报「不能把依赖装到 workspace 根目录」(ERR_PNPM_ADDING_TO_ROOT):你的 profile 目录被 pnpm 视为 workspace 根目录,而本次安装命令没有声明在根目录操作,pnpm 直接拒绝执行,因此任何插件装进来都会失败。这不是插件本身的问题——可在 profile 目录(~/.dsh/profiles/<profile>)的 .npmrc 里加一行 ignore-workspace-root-check=true 后重试,或把 DeepSeek Harness 升级到最新版再试。",
310
310
  failPnpmTarballIntegrityHint: "pnpm 报 ERR_PNPM_MISSING_TARBALL_INTEGRITY:锁文件中的 tarball 条目没有校验值,无法验证下载的包。先查看完整日志,完全退出 DeepSeek Harness,并检查、备份当前 profile 的 package.json、pnpm-lock.yaml 和 pnpm-workspace.yaml。确认依赖来源后,将 pnpm-lock.yaml 改名保留,再通过同一 DSH 安装器安装适配当前宿主版本的插件,重新生成锁文件。重建会重新解析 profile 依赖,请核对新旧版本;保持完整性校验开启。",
311
311
  failPnpmPolicyHint: "安装器调用 pnpm 时被其供应链安全策略拦截——装任何插件都会撞墙,不是插件本身的问题。分两种情况处理:① 提示「Minimum release age」(ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION):包发布还不满 24 小时,pnpm 11 出于安全会拒收这种刚发布的新包。可在 pnpm 配置(pnpm-workspace.yaml)里加 minimumReleaseAge: 0 豁免,或等满 24 小时后重试。② 提示「untrusted origin」(ERR_PNPM_UNTRUSTED_ORIGIN):依赖来源不被本机 pnpm 信任,通常是该 profile 里之前用 github: 或非官方 npm 源装过插件,锁文件记录了不受信任的来源。请删除该 profile 目录下的 node_modules 与 pnpm-lock.yaml 后重新安装(可先到「系统日志」或 ~/.dsh/profiles/<profile>/hub.log 查看完整报错)。",
312
+ failPnpmReleaseAgeHint: "安装器调用 pnpm 时被其供应链安全策略拦住了,任何插件装进这个 profile 都会先撞上它——与插件本身无关。原因是这个包发布还不满 24 小时,pnpm 11 出于安全会拒收刚发布的新包,这段时间内该 profile 的安装与卸载都会被拦下。可重试时间:{time}(即该包发布满 24 小时后)。如确需立刻安装,可在 profile 目录(~/.dsh/profiles/<profile>)的 pnpm-workspace.yaml 里加 minimumReleaseAge: 0 豁免,但这会放宽整个 profile 的供应链保护。",
312
313
  installChannelNpm: "NPM 包",
313
314
  installChannelGit: "GitHub 源码",
314
315
  installChannelDsh: "DSH 命令",
@@ -397,13 +398,13 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
397
398
  dshCmdLabel: "DeepSeek Harness command",
398
399
  dshCmdPlaceholder: "Paste an official dsh plugin command",
399
400
  dshCmdInsertHubUpdate: "Insert update command",
400
- dshCmdExample: "e.g. dsh plugin --profile web add github:owner/repo, or dsh plugin --profile web update dsh-plugin",
401
- dshCmdInvalid: "Paste an official dsh plugin command (--profile required, add / update), e.g. dsh plugin --profile web update dsh-plugin",
401
+ dshCmdExample: "e.g. dsh plugin --profile {profile} add github:owner/repo, or dsh plugin --profile {profile} update dsh-plugin",
402
+ dshCmdInvalid: "Paste an official dsh plugin command (--profile required, add / update), e.g. dsh plugin --profile {profile} update dsh-plugin",
402
403
  installHelp: "Help",
403
404
  helpModalTitle: "Supported command formats",
404
405
  npmInstallHelp: "lodash or @scope/pkg just type the package name\nnpm install lodash\nnpm i lodash\npnpm add @scope/pkg\npnpm i @scope/pkg\nnpm install -g @scope/cli installs the CLI globally, not shown in Installed",
405
406
  gitInstallHelp: "owner/repo\nhttps://github.com/owner/repo\ngithub:owner/repo\ngit+https://github.com/owner/repo.git\ngit@github.com:owner/repo.git",
406
- dshCmdHelp: "dsh plugin --profile web add <target> install\ndsh plugin --profile web update <target> update an installed target to the latest version\ndsh plugin --profile=web add <target>\ndsh plugin --profile=web update <target>\n --profile is required and there is no -p shorthand; <target> can be an npm package or github:owner/repo; uninstall from the Installed list",
407
+ dshCmdHelp: "dsh plugin --profile {profile} add <target> install\ndsh plugin --profile {profile} update <target> update an installed target to the latest version\ndsh plugin --profile={profile} add <target>\ndsh plugin --profile={profile} update <target>\n --profile is required (prefilled with the current profile here) and there is no -p shorthand; <target> can be an npm package or github:owner/repo; uninstall from the Installed list",
407
408
  globalNpmHint: "This installs CLI tools globally (npm install -g). They won't appear in Installed and no host restart is needed.",
408
409
  installCliBtn: "Install",
409
410
  channelDisabledHint: "This install channel is disabled — enable it in Settings → Security & Trust",
@@ -633,7 +634,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
633
634
  failNetworkRegistryHint: "Your npm/pnpm registry is set to {host}, and the package tarball could not be downloaded from it. This usually means a private/internal mirror that has not synced the package (or requires intranet auth) — point the registry back to https://registry.npmjs.org (or make sure this source can serve the package), then retry.",
634
635
  failNetworkTarget: "Cannot reach {url} — your network connection is down",
635
636
  failNetworkRunDiag: "Run a network diagnostic",
636
- failOriginRejectedHint: "This install request did not pass the marketplace origin check and was rejected by the local service, so the install never started — this is not about the plugin itself. It usually means the marketplace page was not opened from a local address (for example a LAN IP), or the host page origin was not recognized. Reopen the marketplace from localhost and retry; on the desktop app, restart the host once.",
637
+ failOriginRejectedHint: "This install request did not pass the marketplace origin check and was rejected by the local service, so the install never started — this is not about the plugin itself. It usually means the marketplace page was not opened from a local address (for example a LAN IP), or the host page origin was not recognized. Reopen the marketplace from localhost and retry; on the desktop app, restart the host once. If it still fails after restarting the host, your dsh-plugin version is incompatible with the host — upgrade the marketplace with dsh plugin --profile {profile} add dsh-plugin@latest, then restart the host again.",
637
638
  failDshMissingHint: "The dsh command could not be found (it is not on the system PATH), so the installer could not run. Please make sure DeepSeek Harness is installed correctly and dsh is on your PATH (or reinstall it), then retry. This is not a problem with the plugin itself.",
638
639
  failGitMissingHint: "The git command could not be found (Git is not installed or not on the system PATH), so GitHub-source plugins cannot be installed. Please install Git (e.g. from git-scm.com/downloads) or add git to your PATH, restart DSH, then retry. This is not a problem with the plugin itself.",
639
640
  failPnpmMissingHint: "The installer found dsh, but pnpm is missing on this machine (dsh uses it to manage profile plugins). Please install pnpm first (e.g. npm install -g pnpm), make sure it is on your PATH, then retry. This is not a problem with the plugin itself.",
@@ -648,6 +649,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
648
649
  failPnpmWorkspaceHint: "pnpm refused to add the dependency to the workspace root (ERR_PNPM_ADDING_TO_ROOT): the profile directory is treated as a pnpm workspace root, and this install command did not declare that it operates at the root, so pnpm rejected it outright — no plugin can be installed into that profile. This is not a problem with the plugin itself. Add `ignore-workspace-root-check=true` to the `.npmrc` inside the profile directory (~/.dsh/profiles/<profile>) and retry, or upgrade DeepSeek Harness and try again.",
649
650
  failPnpmTarballIntegrityHint: "pnpm reported ERR_PNPM_MISSING_TARBALL_INTEGRITY: a tarball entry in the lockfile has no checksum to verify the downloaded package. Read the full log, fully quit DeepSeek Harness, and inspect and back up package.json, pnpm-lock.yaml and pnpm-workspace.yaml in the affected profile. Once the dependency sources are verified, rename pnpm-lock.yaml to preserve it, then use the same DSH installer to install a plugin version compatible with the host and regenerate the lockfile. This resolves profile dependencies again: compare the old and new versions, and keep integrity checks enabled.",
650
651
  failPnpmPolicyHint: "The installer was blocked by pnpm supply-chain security policy — every plugin install would hit the same wall, so this is not a problem with the plugin itself. Two cases: ① \"Minimum release age\" (ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION): the package was published less than 24 hours ago, and pnpm 11 refuses freshly-published packages for safety. Add minimumReleaseAge: 0 to your pnpm config (pnpm-workspace.yaml) to opt out, or wait until the 24 hours have passed and retry. ② \"untrusted origin\" (ERR_PNPM_UNTRUSTED_ORIGIN): a dependency source is not trusted by this machine, usually because plugins were previously installed via github: or a non-official npm registry, so the lockfile records an untrusted source. Delete node_modules and pnpm-lock.yaml under the profile directory (see System Logs or ~/.dsh/profiles/<profile>/hub.log for the full output), then reinstall.",
652
+ failPnpmReleaseAgeHint: "The installer was blocked by pnpm supply-chain security policy, and every plugin installed into this profile would hit the same wall — this is not a problem with the plugin itself. The package was published less than 24 hours ago, and pnpm 11 refuses freshly-published packages for safety, so both installs and removals are blocked for this profile in the meantime. Retry after: {time} (i.e. 24 hours after the package was published). If you must install right now, add minimumReleaseAge: 0 to pnpm-workspace.yaml inside the profile directory (~/.dsh/profiles/<profile>) to opt out, but that loosens supply-chain protection for the whole profile.",
651
653
  installChannelNpm: "NPM package",
652
654
  installChannelGit: "GitHub source",
653
655
  installChannelDsh: "DSH command",
@@ -704,42 +706,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
704
706
  css: css$11
705
707
  });
706
708
  var Header_module_css_default = {
707
- "adArrow": "qikqja_adArrow",
709
+ "githubLink": "qikqja_githubLink",
710
+ "resultSeg": "qikqja_resultSeg",
708
711
  "headerRight": "qikqja_headerRight",
709
- "tagline": "qikqja_tagline",
710
- "segGroup": "qikqja_segGroup",
711
712
  "segBtn": "qikqja_segBtn",
712
- "root": "qikqja_root",
713
- "version": "qikqja_version",
714
- "versionBtn": "qikqja_versionBtn",
715
- "segLabel": "qikqja_segLabel",
716
- "title": "qikqja_title",
717
- "langBtn": "qikqja_langBtn",
718
- "githubLink": "qikqja_githubLink",
719
- "taglineLink": "qikqja_taglineLink",
720
- "sortGroup": "qikqja_sortGroup",
721
- "hubUpdateBadge": "qikqja_hubUpdateBadge",
722
- "controls": "qikqja_controls",
723
- "adText": "qikqja_adText",
713
+ "header": "qikqja_header",
724
714
  "searchRow": "qikqja_searchRow",
725
- "search": "qikqja_search",
726
- "githubIcon": "qikqja_githubIcon",
727
- "tabs": "qikqja_tabs",
728
715
  "brandTitle": "qikqja_brandTitle",
729
716
  "tabsRow": "qikqja_tabsRow",
717
+ "title": "qikqja_title",
718
+ "langBtn": "qikqja_langBtn",
719
+ "root": "qikqja_root",
720
+ "headerTitleRow": "qikqja_headerTitleRow",
730
721
  "resultCount": "qikqja_resultCount",
731
- "adBanner": "qikqja_adBanner",
732
- "header": "qikqja_header",
733
- "adBadge": "qikqja_adBadge",
734
- "logoIcon": "qikqja_logoIcon",
735
722
  "segBtnActive": "qikqja_segBtnActive",
736
723
  "aboutBtn": "qikqja_aboutBtn",
737
- "tab": "qikqja_tab",
738
- "headerTitleRow": "qikqja_headerTitleRow",
724
+ "version": "qikqja_version",
725
+ "adBadge": "qikqja_adBadge",
726
+ "githubIcon": "qikqja_githubIcon",
739
727
  "copyIcon": "qikqja_copyIcon",
728
+ "segGroup": "qikqja_segGroup",
729
+ "adText": "qikqja_adText",
740
730
  "tabActive": "qikqja_tabActive",
731
+ "logoIcon": "qikqja_logoIcon",
732
+ "taglineLink": "qikqja_taglineLink",
733
+ "versionBtn": "qikqja_versionBtn",
734
+ "hubUpdateBadge": "qikqja_hubUpdateBadge",
735
+ "sortGroup": "qikqja_sortGroup",
736
+ "tagline": "qikqja_tagline",
737
+ "controls": "qikqja_controls",
738
+ "tab": "qikqja_tab",
739
+ "adBanner": "qikqja_adBanner",
741
740
  "tabCount": "qikqja_tabCount",
742
- "resultSeg": "qikqja_resultSeg"
741
+ "search": "qikqja_search",
742
+ "tabs": "qikqja_tabs",
743
+ "segLabel": "qikqja_segLabel",
744
+ "adArrow": "qikqja_adArrow"
743
745
  };
744
746
  //#endregion
745
747
  //#region \0dsh-css:src/client/styles/Modal.module.css.mjs
@@ -758,136 +760,136 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
758
760
  css: css$10
759
761
  });
760
762
  var Modal_module_css_default = {
761
- "trustHint": "BiQ1zG_trustHint",
762
- "noticeRowMain": "BiQ1zG_noticeRowMain",
763
- "modalTitleQueued": "BiQ1zG_modalTitleQueued",
764
- "modalIn": "BiQ1zG_modalIn",
765
- "resultCheck": "BiQ1zG_resultCheck",
766
- "errorCopySoft": "BiQ1zG_errorCopySoft",
767
- "modalRow": "BiQ1zG_modalRow",
768
- "detailMono": "BiQ1zG_detailMono",
769
- "queueSection": "BiQ1zG_queueSection",
770
- "failKindInstall": "BiQ1zG_failKindInstall",
771
- "modalCmdCopy": "BiQ1zG_modalCmdCopy",
772
- "queueRowStatus": "BiQ1zG_queueRowStatus",
773
- "hubUpdateModal": "BiQ1zG_hubUpdateModal",
774
- "queueRowBody": "BiQ1zG_queueRowBody",
775
- "errorTitle": "BiQ1zG_errorTitle",
776
- "noticeRemove": "BiQ1zG_noticeRemove",
777
- "modalLabel": "BiQ1zG_modalLabel",
778
- "modalCloseIcon": "BiQ1zG_modalCloseIcon",
779
- "resultRestarting": "BiQ1zG_resultRestarting",
780
- "restartLater": "BiQ1zG_restartLater",
781
- "uninstallConfirm": "BiQ1zG_uninstallConfirm",
782
- "noticeMain": "BiQ1zG_noticeMain",
783
- "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
784
- "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
785
- "confirmPrimary": "BiQ1zG_confirmPrimary",
786
- "modalCmdText": "BiQ1zG_modalCmdText",
787
- "progressText": "BiQ1zG_progressText",
763
+ "result": "BiQ1zG_result",
788
764
  "failDiagBtn": "BiQ1zG_failDiagBtn",
789
- "noticeFoot": "BiQ1zG_noticeFoot",
790
- "resultTitle": "BiQ1zG_resultTitle",
791
- "failKindUninstall": "BiQ1zG_failKindUninstall",
792
- "progressFill": "BiQ1zG_progressFill",
793
765
  "noticeRow": "BiQ1zG_noticeRow",
794
- "failPrepareHint": "BiQ1zG_failPrepareHint",
795
- "modal": "BiQ1zG_modal",
796
- "noticeTime": "BiQ1zG_noticeTime",
797
- "detailUpdateHint": "BiQ1zG_detailUpdateHint",
798
- "noticeList": "BiQ1zG_noticeList",
799
- "noticeTextFail": "BiQ1zG_noticeTextFail",
800
- "modalTitle": "BiQ1zG_modalTitle",
801
- "noticeHead": "BiQ1zG_noticeHead",
802
- "restartNow": "BiQ1zG_restartNow",
803
- "failRepo": "BiQ1zG_failRepo",
804
- "detailValue": "BiQ1zG_detailValue",
805
- "detailPathActions": "BiQ1zG_detailPathActions",
806
- "detailStatusText": "BiQ1zG_detailStatusText",
807
- "errorHint": "BiQ1zG_errorHint",
808
- "helpModal": "BiQ1zG_helpModal",
809
- "modalCancel": "BiQ1zG_modalCancel",
810
- "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
811
- "queueRowHead": "BiQ1zG_queueRowHead",
812
766
  "dangerConfirm": "BiQ1zG_dangerConfirm",
813
- "queueRowTrack": "BiQ1zG_queueRowTrack",
814
- "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
815
- "detailRow": "BiQ1zG_detailRow",
816
- "detailArrow": "BiQ1zG_detailArrow",
817
- "overlayIn": "BiQ1zG_overlayIn",
818
- "modalWide": "BiQ1zG_modalWide",
819
- "detailPath": "BiQ1zG_detailPath",
820
- "errorModal": "BiQ1zG_errorModal",
821
- "restartNowWarning": "BiQ1zG_restartNowWarning",
767
+ "detailModal": "BiQ1zG_detailModal",
768
+ "errorHint": "BiQ1zG_errorHint",
769
+ "resultCheckIcon": "BiQ1zG_resultCheckIcon",
822
770
  "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
823
- "modalTitleBusy": "BiQ1zG_modalTitleBusy",
824
- "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
825
- "toast": "BiQ1zG_toast",
826
- "detailStatusPending": "BiQ1zG_detailStatusPending",
827
- "failList": "BiQ1zG_failList",
828
- "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
829
- "result": "BiQ1zG_result",
830
- "detailPathText": "BiQ1zG_detailPathText",
771
+ "modalCopy": "BiQ1zG_modalCopy",
772
+ "failRow": "BiQ1zG_failRow",
773
+ "detailRow": "BiQ1zG_detailRow",
774
+ "queueSection": "BiQ1zG_queueSection",
831
775
  "failBigIssue": "BiQ1zG_failBigIssue",
832
- "detailLink": "BiQ1zG_detailLink",
833
- "failCopy": "BiQ1zG_failCopy",
834
- "pendingRowActions": "BiQ1zG_pendingRowActions",
776
+ "toastFail": "BiQ1zG_toastFail",
777
+ "modalInstall": "BiQ1zG_modalInstall",
778
+ "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
779
+ "modalIn": "BiQ1zG_modalIn",
780
+ "noticeMain": "BiQ1zG_noticeMain",
781
+ "errorCopySoft": "BiQ1zG_errorCopySoft",
782
+ "stripCancel": "BiQ1zG_stripCancel",
783
+ "failList": "BiQ1zG_failList",
784
+ "restartLater": "BiQ1zG_restartLater",
785
+ "failedCopyHint": "BiQ1zG_failedCopyHint",
786
+ "queueRowStatus": "BiQ1zG_queueRowStatus",
787
+ "modalTitleBusy": "BiQ1zG_modalTitleBusy",
788
+ "pendingRowStatus": "BiQ1zG_pendingRowStatus",
789
+ "progressFill": "BiQ1zG_progressFill",
790
+ "progressText": "BiQ1zG_progressText",
791
+ "failKind": "BiQ1zG_failKind",
835
792
  "noticeVersion": "BiQ1zG_noticeVersion",
836
- "aboutContent": "BiQ1zG_aboutContent",
837
- "noticeIgnore": "BiQ1zG_noticeIgnore",
838
- "confirmIcon": "BiQ1zG_confirmIcon",
839
- "detailStars": "BiQ1zG_detailStars",
840
- "progressHead": "BiQ1zG_progressHead",
841
- "failNetworkTarget": "BiQ1zG_failNetworkTarget",
793
+ "detailDim": "BiQ1zG_detailDim",
794
+ "pendingRowActions": "BiQ1zG_pendingRowActions",
842
795
  "modalCmd": "BiQ1zG_modalCmd",
843
- "resultCheckIcon": "BiQ1zG_resultCheckIcon",
844
- "aboutMeta": "BiQ1zG_aboutMeta",
845
796
  "detailGrid": "BiQ1zG_detailGrid",
846
- "pendingRowStatus": "BiQ1zG_pendingRowStatus",
847
- "modalDesc": "BiQ1zG_modalDesc",
848
- "detailLabel": "BiQ1zG_detailLabel",
849
- "modalCopy": "BiQ1zG_modalCopy",
850
- "stripCancel": "BiQ1zG_stripCancel",
797
+ "noticeHead": "BiQ1zG_noticeHead",
798
+ "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
799
+ "modal": "BiQ1zG_modal",
800
+ "aboutContent": "BiQ1zG_aboutContent",
801
+ "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
802
+ "overlayIn": "BiQ1zG_overlayIn",
851
803
  "modalClose": "BiQ1zG_modalClose",
852
- "progress": "BiQ1zG_progress",
853
- "modalBody": "BiQ1zG_modalBody",
854
- "failRow": "BiQ1zG_failRow",
855
- "confirmIconWrap": "BiQ1zG_confirmIconWrap",
856
- "resultDesc": "BiQ1zG_resultDesc",
857
- "confirmIconDanger": "BiQ1zG_confirmIconDanger",
858
- "cliOnlyHint": "BiQ1zG_cliOnlyHint",
804
+ "progressTrack": "BiQ1zG_progressTrack",
805
+ "modalCloseIcon": "BiQ1zG_modalCloseIcon",
806
+ "queueRowBody": "BiQ1zG_queueRowBody",
807
+ "modalCmdText": "BiQ1zG_modalCmdText",
808
+ "errorBox": "BiQ1zG_errorBox",
809
+ "confirmIcon": "BiQ1zG_confirmIcon",
810
+ "detailValue": "BiQ1zG_detailValue",
859
811
  "detailPathBtn": "BiQ1zG_detailPathBtn",
812
+ "restartNowWarning": "BiQ1zG_restartNowWarning",
813
+ "noticeRemove": "BiQ1zG_noticeRemove",
814
+ "modalWide": "BiQ1zG_modalWide",
815
+ "resultDesc": "BiQ1zG_resultDesc",
816
+ "linkIcon": "BiQ1zG_linkIcon",
860
817
  "failClear": "BiQ1zG_failClear",
818
+ "noticeTextFail": "BiQ1zG_noticeTextFail",
819
+ "modalValue": "BiQ1zG_modalValue",
820
+ "restartNow": "BiQ1zG_restartNow",
821
+ "errorTitle": "BiQ1zG_errorTitle",
822
+ "modalTitleQueued": "BiQ1zG_modalTitleQueued",
823
+ "detailPathText": "BiQ1zG_detailPathText",
824
+ "resultCheck": "BiQ1zG_resultCheck",
825
+ "detailStatusText": "BiQ1zG_detailStatusText",
861
826
  "toastIn": "BiQ1zG_toastIn",
862
- "toastFail": "BiQ1zG_toastFail",
863
- "detailStatusRunning": "BiQ1zG_detailStatusRunning",
864
- "overlay": "BiQ1zG_overlay",
865
827
  "queueRowDesc": "BiQ1zG_queueRowDesc",
866
- "queueSectionTitle": "BiQ1zG_queueSectionTitle",
867
- "queueRowPct": "BiQ1zG_queueRowPct",
868
- "modalLink": "BiQ1zG_modalLink",
869
- "failHead": "BiQ1zG_failHead",
870
- "modalActions": "BiQ1zG_modalActions",
871
- "modalValue": "BiQ1zG_modalValue",
872
- "detailDim": "BiQ1zG_detailDim",
873
- "detailModal": "BiQ1zG_detailModal",
828
+ "failPrepareHint": "BiQ1zG_failPrepareHint",
829
+ "confirmIconWrap": "BiQ1zG_confirmIconWrap",
830
+ "detailPathActions": "BiQ1zG_detailPathActions",
831
+ "detailUpdateHint": "BiQ1zG_detailUpdateHint",
832
+ "overlay": "BiQ1zG_overlay",
833
+ "failRepo": "BiQ1zG_failRepo",
834
+ "queueRowTarget": "BiQ1zG_queueRowTarget",
835
+ "detailArrow": "BiQ1zG_detailArrow",
836
+ "progressHead": "BiQ1zG_progressHead",
837
+ "toast": "BiQ1zG_toast",
838
+ "uninstallConfirm": "BiQ1zG_uninstallConfirm",
839
+ "detailLabel": "BiQ1zG_detailLabel",
840
+ "detailLink": "BiQ1zG_detailLink",
841
+ "modalRow": "BiQ1zG_modalRow",
842
+ "modalHead": "BiQ1zG_modalHead",
843
+ "noticeIgnore": "BiQ1zG_noticeIgnore",
874
844
  "logModal": "BiQ1zG_logModal",
875
- "noticeTextOk": "BiQ1zG_noticeTextOk",
876
- "progressTrack": "BiQ1zG_progressTrack",
877
- "queueRow": "BiQ1zG_queueRow",
845
+ "modalBody": "BiQ1zG_modalBody",
846
+ "failEmpty": "BiQ1zG_failEmpty",
847
+ "hubUpdateModal": "BiQ1zG_hubUpdateModal",
848
+ "trustHint": "BiQ1zG_trustHint",
849
+ "modalCancel": "BiQ1zG_modalCancel",
878
850
  "aboutModal": "BiQ1zG_aboutModal",
879
- "queueRowTarget": "BiQ1zG_queueRowTarget",
851
+ "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
852
+ "noticeList": "BiQ1zG_noticeList",
853
+ "failKindUninstall": "BiQ1zG_failKindUninstall",
854
+ "errorModal": "BiQ1zG_errorModal",
855
+ "detailStatusRunning": "BiQ1zG_detailStatusRunning",
880
856
  "noticeRowOk": "BiQ1zG_noticeRowOk",
881
- "modalInstall": "BiQ1zG_modalInstall",
882
- "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
883
- "failedCopyHint": "BiQ1zG_failedCopyHint",
857
+ "failCopy": "BiQ1zG_failCopy",
858
+ "noticeFoot": "BiQ1zG_noticeFoot",
859
+ "modalActions": "BiQ1zG_modalActions",
860
+ "modalLabel": "BiQ1zG_modalLabel",
861
+ "noticeRowMain": "BiQ1zG_noticeRowMain",
862
+ "queueRowPct": "BiQ1zG_queueRowPct",
863
+ "queueRowTrack": "BiQ1zG_queueRowTrack",
884
864
  "progressFillFail": "BiQ1zG_progressFillFail",
885
- "failKind": "BiQ1zG_failKind",
886
- "linkIcon": "BiQ1zG_linkIcon",
887
- "failEmpty": "BiQ1zG_failEmpty",
888
- "errorBox": "BiQ1zG_errorBox",
865
+ "detailStars": "BiQ1zG_detailStars",
889
866
  "queuedHint": "BiQ1zG_queuedHint",
890
- "modalHead": "BiQ1zG_modalHead"
867
+ "resultTitle": "BiQ1zG_resultTitle",
868
+ "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
869
+ "queueSectionTitle": "BiQ1zG_queueSectionTitle",
870
+ "noticeTextOk": "BiQ1zG_noticeTextOk",
871
+ "queueRowHead": "BiQ1zG_queueRowHead",
872
+ "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
873
+ "failKindInstall": "BiQ1zG_failKindInstall",
874
+ "helpModal": "BiQ1zG_helpModal",
875
+ "aboutMeta": "BiQ1zG_aboutMeta",
876
+ "detailStatusPending": "BiQ1zG_detailStatusPending",
877
+ "modalDesc": "BiQ1zG_modalDesc",
878
+ "queueRow": "BiQ1zG_queueRow",
879
+ "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
880
+ "cliOnlyHint": "BiQ1zG_cliOnlyHint",
881
+ "noticeTime": "BiQ1zG_noticeTime",
882
+ "detailPath": "BiQ1zG_detailPath",
883
+ "detailMono": "BiQ1zG_detailMono",
884
+ "modalTitle": "BiQ1zG_modalTitle",
885
+ "confirmPrimary": "BiQ1zG_confirmPrimary",
886
+ "failHead": "BiQ1zG_failHead",
887
+ "modalLink": "BiQ1zG_modalLink",
888
+ "progress": "BiQ1zG_progress",
889
+ "confirmIconDanger": "BiQ1zG_confirmIconDanger",
890
+ "modalCmdCopy": "BiQ1zG_modalCmdCopy",
891
+ "resultRestarting": "BiQ1zG_resultRestarting",
892
+ "failNetworkTarget": "BiQ1zG_failNetworkTarget"
891
893
  };
892
894
  //#endregion
893
895
  //#region src/server/services/install/release-target.ts
@@ -999,7 +1001,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
999
1001
  * tsdown 构建时用 define 把 __PLUGIN_VERSION__ 替换成 package.json 的版本号;
1000
1002
  * node --test 直接 import 本模块时该标识符不存在,typeof 守卫兜底为空串。
1001
1003
  */
1002
- const PLUGIN_VERSION = "1.5.1";
1004
+ const PLUGIN_VERSION = "1.6.0";
1003
1005
  const CATEGORY_ORDER = [
1004
1006
  "interface",
1005
1007
  "session",
@@ -1636,7 +1638,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1636
1638
  */
1637
1639
  const hubHasUpdate = (() => {
1638
1640
  if (!hubUpdateInfo) return false;
1639
- if (hubUpdateInfo.version === "1.5.1") return false;
1641
+ if (hubUpdateInfo.version === "1.6.0") return false;
1640
1642
  const publishedAt = hubUpdateInfo.publishedAt;
1641
1643
  if (publishedAt) {
1642
1644
  const publishedMs = Date.parse(publishedAt);
@@ -1826,9 +1828,27 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1826
1828
  function missingTarballIntegrity(message) {
1827
1829
  return /\bERR_PNPM_MISSING_TARBALL_INTEGRITY\b/.test(message);
1828
1830
  }
1829
- /** The same policy subtype selects recovery copy in live and saved failures. */
1831
+ /** pnpm 拒收「刚发布」包时,报错里带着发布时间;这里从报错文本算出「发布满 24h」的可重试时刻(UTC,分钟精度)。 */
1832
+ function releaseAgeRetryAfter(message) {
1833
+ const match = /published at (\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z)/.exec(message);
1834
+ if (match === null) return null;
1835
+ const published = Date.parse(match[1]);
1836
+ if (Number.isNaN(published)) return null;
1837
+ return `${new Date(published + 864e5).toISOString().slice(0, 16)}Z`;
1838
+ }
1839
+ /**
1840
+ * The same policy subtype selects recovery copy in live and saved failures.
1841
+ * minimumReleaseAge 只有在能算出可重试时刻时才走专属文案(给出确切的「何时可再试」),
1842
+ * 算不出时退回通用文案,避免出现「预计可重试时间:」后接空值的残缺句子。
1843
+ */
1830
1844
  function pnpmPolicyHintOf(message) {
1831
- return missingTarballIntegrity(message) ? "failPnpmTarballIntegrityHint" : "failPnpmPolicyHint";
1845
+ if (missingTarballIntegrity(message)) return "failPnpmTarballIntegrityHint";
1846
+ if (/ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION|Minimum release age/i.test(message) && releaseAgeRetryAfter(message) !== null) return "failPnpmReleaseAgeHint";
1847
+ return "failPnpmPolicyHint";
1848
+ }
1849
+ /** 与 pnpmPolicyHintOf 配套的文案参数:release-age 场景给出可重试时刻({time})。 */
1850
+ function pnpmPolicyHintParams(message) {
1851
+ return { time: releaseAgeRetryAfter(message) ?? "" };
1832
1852
  }
1833
1853
  /**
1834
1854
  * 失败归类:把安装输出归到具体成因,供弹窗文案、是否引导提 Issue 与 issue 预填原因使用。
@@ -3465,10 +3485,10 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3465
3485
  }, repo) : null, (0, react.createElement)("button", {
3466
3486
  className: Modal_module_css_default.errorCopySoft,
3467
3487
  onClick: () => onCopy(copyText)
3468
- }, t("errorCopy"))), (0, react.createElement)("pre", { className: Modal_module_css_default.errorBox }, message), failureKind === "npmTooOld" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(npmVersion ? "failNpmTooLowV" : "failNpmTooLow", npmVersion ? { v: npmVersion } : void 0)) : failureKind === "dshMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failDshMissingHint")) : failureKind === "gitMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failGitMissingHint")) : failureKind === "pnpmMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingHint")) : failureKind === "npmMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNpmMissingHint")) : failureKind === "pnpmWorkspace" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmWorkspaceHint")) : failureKind === "pnpmStore" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmStoreHint")) : failureKind === "pnpmPolicy" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(pnpmPolicyHintOf(message))) : failureKind === "pnpmUnusedPatch" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmUnusedPatchHint")) : failureKind === "pnpmMissingDep" ? (0, react.createElement)("div", null, [(() => {
3488
+ }, t("errorCopy"))), (0, react.createElement)("pre", { className: Modal_module_css_default.errorBox }, message), failureKind === "npmTooOld" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(npmVersion ? "failNpmTooLowV" : "failNpmTooLow", npmVersion ? { v: npmVersion } : void 0)) : failureKind === "dshMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failDshMissingHint")) : failureKind === "gitMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failGitMissingHint")) : failureKind === "pnpmMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingHint")) : failureKind === "npmMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNpmMissingHint")) : failureKind === "pnpmWorkspace" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmWorkspaceHint")) : failureKind === "pnpmStore" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmStoreHint")) : failureKind === "pnpmPolicy" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(pnpmPolicyHintOf(message), pnpmPolicyHintParams(message))) : failureKind === "pnpmUnusedPatch" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmUnusedPatchHint")) : failureKind === "pnpmMissingDep" ? (0, react.createElement)("div", null, [(() => {
3469
3489
  const pkg = missingRegistryPackageOf(message);
3470
3490
  return pkg ? (0, react.createElement)("div", { className: Modal_module_css_default.failNetworkTarget }, t("failPnpmMissingDepTarget", { pkg })) : null;
3471
- })(), (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingDepHint"))]) : failureKind === "fileLocked" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFileLockedHint")) : failureKind === "accessDenied" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failAccessDeniedHint")) : failureKind === "fsUnavailable" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFsUnavailableHint")) : failureKind === "originRejected" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failOriginRejectedHint")) : failureKind === "network" ? (0, react.createElement)("div", null, [
3491
+ })(), (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingDepHint"))]) : failureKind === "fileLocked" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFileLockedHint")) : failureKind === "accessDenied" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failAccessDeniedHint")) : failureKind === "fsUnavailable" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFsUnavailableHint")) : failureKind === "originRejected" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failOriginRejectedHint", { profile: env?.profile ?? "<profile>" })) : failureKind === "network" ? (0, react.createElement)("div", null, [
3472
3492
  (() => {
3473
3493
  const target = unreachableTargetOf(message);
3474
3494
  return target ? (0, react.createElement)("div", { className: Modal_module_css_default.failNetworkTarget }, t("failNetworkTarget", { url: target })) : null;
@@ -4039,7 +4059,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4039
4059
  if (kind === "npmMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNpmMissingHint"));
4040
4060
  if (kind === "pnpmWorkspace") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmWorkspaceHint"));
4041
4061
  if (kind === "pnpmStore") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmStoreHint"));
4042
- if (kind === "pnpmPolicy") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(pnpmPolicyHintOf(r.message)));
4062
+ if (kind === "pnpmPolicy") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(pnpmPolicyHintOf(r.message), pnpmPolicyHintParams(r.message)));
4043
4063
  if (kind === "pnpmUnusedPatch") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmUnusedPatchHint"));
4044
4064
  if (kind === "pnpmMissingDep") {
4045
4065
  const pkg = missingRegistryPackageOf(r.message);
@@ -4048,7 +4068,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4048
4068
  if (kind === "fileLocked") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFileLockedHint"));
4049
4069
  if (kind === "accessDenied") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failAccessDeniedHint"));
4050
4070
  if (kind === "fsUnavailable") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFsUnavailableHint"));
4051
- if (kind === "originRejected") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failOriginRejectedHint"));
4071
+ if (kind === "originRejected") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failOriginRejectedHint", { profile: env?.profile ?? "<profile>" }));
4052
4072
  if (kind === "network") return (0, react.createElement)("div", null, [
4053
4073
  (() => {
4054
4074
  const target = unreachableTargetOf(r.message);
@@ -4258,40 +4278,40 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4258
4278
  css: css$9
4259
4279
  });
4260
4280
  var List_module_css_default = {
4261
- "versionBadge": "_3XaZHa_versionBadge",
4262
- "desc": "_3XaZHa_desc",
4263
- "body": "_3XaZHa_body",
4264
- "cardHead": "_3XaZHa_cardHead",
4265
- "cardTitle": "_3XaZHa_cardTitle",
4266
- "verified": "_3XaZHa_verified",
4267
- "fork": "_3XaZHa_fork",
4268
- "stats": "_3XaZHa_stats",
4269
- "moreSentinel": "_3XaZHa_moreSentinel",
4270
- "updateBadge": "_3XaZHa_updateBadge",
4271
- "star": "_3XaZHa_star",
4272
- "diagBtn": "_3XaZHa_diagBtn",
4273
- "list": "_3XaZHa_list",
4274
- "stateDesc": "_3XaZHa_stateDesc",
4275
- "uninstallBtn": "_3XaZHa_uninstallBtn",
4281
+ "topic": "_3XaZHa_topic",
4282
+ "actions": "_3XaZHa_actions",
4283
+ "diagBtn": "_3XaZHa_diagBtn",
4276
4284
  "date": "_3XaZHa_date",
4277
- "topic": "_3XaZHa_topic",
4285
+ "installBtnUpdate": "_3XaZHa_installBtnUpdate",
4278
4286
  "installBtnInstalled": "_3XaZHa_installBtnInstalled",
4279
- "cardSide": "_3XaZHa_cardSide",
4280
- "stateTitle": "_3XaZHa_stateTitle",
4287
+ "cardTitle": "_3XaZHa_cardTitle",
4288
+ "fork": "_3XaZHa_fork",
4289
+ "retryBtn": "_3XaZHa_retryBtn",
4290
+ "desc": "_3XaZHa_desc",
4281
4291
  "state": "_3XaZHa_state",
4282
- "stateActions": "_3XaZHa_stateActions",
4283
- "detailBtn": "_3XaZHa_detailBtn",
4284
- "cardMain": "_3XaZHa_cardMain",
4292
+ "star": "_3XaZHa_star",
4293
+ "uninstallBtn": "_3XaZHa_uninstallBtn",
4294
+ "footLink": "_3XaZHa_footLink",
4295
+ "updateBadge": "_3XaZHa_updateBadge",
4296
+ "versionBadge": "_3XaZHa_versionBadge",
4285
4297
  "footer": "_3XaZHa_footer",
4298
+ "list": "_3XaZHa_list",
4299
+ "verified": "_3XaZHa_verified",
4300
+ "stateDesc": "_3XaZHa_stateDesc",
4301
+ "cardHead": "_3XaZHa_cardHead",
4302
+ "cardMain": "_3XaZHa_cardMain",
4286
4303
  "categoryBadge": "_3XaZHa_categoryBadge",
4304
+ "card": "_3XaZHa_card",
4305
+ "stats": "_3XaZHa_stats",
4287
4306
  "installBtn": "_3XaZHa_installBtn",
4288
- "installBtnUpdate": "_3XaZHa_installBtnUpdate",
4289
4307
  "installBtnCopied": "_3XaZHa_installBtnCopied",
4290
- "actions": "_3XaZHa_actions",
4291
- "retryBtn": "_3XaZHa_retryBtn",
4292
- "footLink": "_3XaZHa_footLink",
4308
+ "stateActions": "_3XaZHa_stateActions",
4309
+ "detailBtn": "_3XaZHa_detailBtn",
4310
+ "stateTitle": "_3XaZHa_stateTitle",
4293
4311
  "topics": "_3XaZHa_topics",
4294
- "card": "_3XaZHa_card"
4312
+ "cardSide": "_3XaZHa_cardSide",
4313
+ "moreSentinel": "_3XaZHa_moreSentinel",
4314
+ "body": "_3XaZHa_body"
4295
4315
  };
4296
4316
  //#endregion
4297
4317
  //#region src/client/hooks/useIncrementalList.ts
@@ -4498,14 +4518,14 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4498
4518
  css: css$8
4499
4519
  });
4500
4520
  var SectionTabs_module_css_default = {
4521
+ "tab": "_7tvizq_tab",
4501
4522
  "noticeIcon": "_7tvizq_noticeIcon",
4502
- "root": "_7tvizq_root",
4503
- "noticeBtn": "_7tvizq_noticeBtn",
4504
- "tabActive": "_7tvizq_tabActive",
4505
4523
  "tabCountActive": "_7tvizq_tabCountActive",
4524
+ "root": "_7tvizq_root",
4506
4525
  "noticeCount": "_7tvizq_noticeCount",
4526
+ "tabActive": "_7tvizq_tabActive",
4507
4527
  "tabCount": "_7tvizq_tabCount",
4508
- "tab": "_7tvizq_tab",
4528
+ "noticeBtn": "_7tvizq_noticeBtn",
4509
4529
  "tabIcon": "_7tvizq_tabIcon"
4510
4530
  };
4511
4531
  //#endregion
@@ -4583,42 +4603,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4583
4603
  css: css$7
4584
4604
  });
4585
4605
  var InstalledView_module_css_default = {
4586
- "segBtn": "_1nXeGW_segBtn",
4587
- "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
4588
- "rowActions": "_1nXeGW_rowActions",
4589
- "rowMain": "_1nXeGW_rowMain",
4590
- "segGroup": "_1nXeGW_segGroup",
4591
- "list": "_1nXeGW_list",
4592
- "statusInactive": "_1nXeGW_statusInactive",
4593
- "statusPending": "_1nXeGW_statusPending",
4594
- "versionBadge": "_1nXeGW_versionBadge",
4606
+ "searchInput": "_1nXeGW_searchInput",
4595
4607
  "row": "_1nXeGW_row",
4596
- "statusDot": "_1nXeGW_statusDot",
4608
+ "rowTitle": "_1nXeGW_rowTitle",
4597
4609
  "rowCategory": "_1nXeGW_rowCategory",
4598
- "segRow": "_1nXeGW_segRow",
4599
- "searchInput": "_1nXeGW_searchInput",
4600
- "segBtnActive": "_1nXeGW_segBtnActive",
4610
+ "statusPending": "_1nXeGW_statusPending",
4611
+ "rowMain": "_1nXeGW_rowMain",
4601
4612
  "rowRestart": "_1nXeGW_rowRestart",
4613
+ "rowDesc": "_1nXeGW_rowDesc",
4614
+ "segBtn": "_1nXeGW_segBtn",
4615
+ "rowUpdate": "_1nXeGW_rowUpdate",
4616
+ "emptyTitle": "_1nXeGW_emptyTitle",
4617
+ "statusDot": "_1nXeGW_statusDot",
4618
+ "rowMeta": "_1nXeGW_rowMeta",
4619
+ "rowUninstall": "_1nXeGW_rowUninstall",
4620
+ "segRow": "_1nXeGW_segRow",
4621
+ "searchWrap": "_1nXeGW_searchWrap",
4602
4622
  "segLabel": "_1nXeGW_segLabel",
4623
+ "exampleBadge": "_1nXeGW_exampleBadge",
4624
+ "empty": "_1nXeGW_empty",
4603
4625
  "rowRepo": "_1nXeGW_rowRepo",
4604
- "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
4605
- "emptyTitle": "_1nXeGW_emptyTitle",
4626
+ "versionBadge": "_1nXeGW_versionBadge",
4606
4627
  "updateBadge": "_1nXeGW_updateBadge",
4607
- "rowMeta": "_1nXeGW_rowMeta",
4628
+ "list": "_1nXeGW_list",
4629
+ "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
4630
+ "rowSourceTag": "_1nXeGW_rowSourceTag",
4608
4631
  "root": "_1nXeGW_root",
4609
- "searchWrap": "_1nXeGW_searchWrap",
4632
+ "segGroup": "_1nXeGW_segGroup",
4610
4633
  "exampleRow": "_1nXeGW_exampleRow",
4611
- "rowTitle": "_1nXeGW_rowTitle",
4612
- "rowDetail": "_1nXeGW_rowDetail",
4613
- "rowUpdate": "_1nXeGW_rowUpdate",
4634
+ "statusInactive": "_1nXeGW_statusInactive",
4614
4635
  "emptyDesc": "_1nXeGW_emptyDesc",
4615
4636
  "rowTitleLine": "_1nXeGW_rowTitleLine",
4616
- "empty": "_1nXeGW_empty",
4617
- "toolbar": "_1nXeGW_toolbar",
4618
- "rowDesc": "_1nXeGW_rowDesc",
4619
- "rowSourceTag": "_1nXeGW_rowSourceTag",
4620
- "exampleBadge": "_1nXeGW_exampleBadge",
4621
- "rowUninstall": "_1nXeGW_rowUninstall"
4637
+ "segBtnActive": "_1nXeGW_segBtnActive",
4638
+ "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
4639
+ "rowActions": "_1nXeGW_rowActions",
4640
+ "rowDetail": "_1nXeGW_rowDetail",
4641
+ "toolbar": "_1nXeGW_toolbar"
4622
4642
  };
4623
4643
  //#endregion
4624
4644
  //#region src/client/components/views/InstalledView.tsx
@@ -4864,28 +4884,28 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4864
4884
  css: css$6
4865
4885
  });
4866
4886
  var CustomInstallView_module_css_default = {
4867
- "channelOffBtn": "zISxCG_channelOffBtn",
4887
+ "helpNote": "zISxCG_helpNote",
4888
+ "helpCmd": "zISxCG_helpCmd",
4868
4889
  "installInsertBtn": "zISxCG_installInsertBtn",
4869
- "installRow": "zISxCG_installRow",
4870
- "helpLine": "zISxCG_helpLine",
4871
- "installInput": "zISxCG_installInput",
4872
- "helpBody": "zISxCG_helpBody",
4873
- "installCardHead": "zISxCG_installCardHead",
4890
+ "root": "zISxCG_root",
4874
4891
  "installCard": "zISxCG_installCard",
4875
- "channelOffText": "zISxCG_channelOffText",
4876
4892
  "desc": "zISxCG_desc",
4877
- "helpNote": "zISxCG_helpNote",
4878
- "installExample": "zISxCG_installExample",
4879
- "installHelpBtn": "zISxCG_installHelpBtn",
4880
4893
  "installBtn": "zISxCG_installBtn",
4881
4894
  "installInputError": "zISxCG_installInputError",
4882
- "installCardDisabled": "zISxCG_installCardDisabled",
4895
+ "helpLine": "zISxCG_helpLine",
4883
4896
  "channelOff": "zISxCG_channelOff",
4884
- "root": "zISxCG_root",
4885
4897
  "installLabel": "zISxCG_installLabel",
4886
- "installCards": "zISxCG_installCards",
4898
+ "installInput": "zISxCG_installInput",
4887
4899
  "installError": "zISxCG_installError",
4888
- "helpCmd": "zISxCG_helpCmd"
4900
+ "channelOffText": "zISxCG_channelOffText",
4901
+ "channelOffBtn": "zISxCG_channelOffBtn",
4902
+ "installHelpBtn": "zISxCG_installHelpBtn",
4903
+ "installCardHead": "zISxCG_installCardHead",
4904
+ "installCards": "zISxCG_installCards",
4905
+ "installExample": "zISxCG_installExample",
4906
+ "installRow": "zISxCG_installRow",
4907
+ "installCardDisabled": "zISxCG_installCardDisabled",
4908
+ "helpBody": "zISxCG_helpBody"
4889
4909
  };
4890
4910
  //#endregion
4891
4911
  //#region src/client/components/views/CustomInstallView.tsx
@@ -5037,7 +5057,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5037
5057
  if (!raw) return;
5038
5058
  const parsed = parseDshCommand(raw);
5039
5059
  if (parsed === null) {
5040
- setCmdError(t("dshCmdInvalid"));
5060
+ setCmdError(t("dshCmdInvalid", { profile }));
5041
5061
  return;
5042
5062
  }
5043
5063
  onInstallCustom(parsed.target, { installChannel: "dsh" });
@@ -5116,7 +5136,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5116
5136
  className: CustomInstallView_module_css_default.installInsertBtn,
5117
5137
  onClick: insertHubUpdate
5118
5138
  }, t("dshCmdInsertHubUpdate")) : null), !enableDsh ? channelOffRow : [
5119
- (0, react.createElement)("div", { className: CustomInstallView_module_css_default.installExample }, t("dshCmdExample")),
5139
+ (0, react.createElement)("div", { className: CustomInstallView_module_css_default.installExample }, t("dshCmdExample", { profile })),
5120
5140
  (0, react.createElement)("div", { className: CustomInstallView_module_css_default.installRow }, (0, react.createElement)("input", {
5121
5141
  className: cmdError ? `${CustomInstallView_module_css_default.installInput} ${CustomInstallView_module_css_default.installInputError}` : CustomInstallView_module_css_default.installInput,
5122
5142
  type: "text",
@@ -5150,7 +5170,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5150
5170
  className: Modal_module_css_default.modalClose,
5151
5171
  "aria-label": t("errorClose"),
5152
5172
  onClick: () => setHelpFor(null)
5153
- }, (0, react.createElement)(CloseIcon))), (0, react.createElement)("div", { className: Modal_module_css_default.modalBody }, (0, react.createElement)("div", { className: CustomInstallView_module_css_default.helpBody }, t(HELP_CARDS[helpFor].contentKey).split("\n").map((line, i) => {
5173
+ }, (0, react.createElement)(CloseIcon))), (0, react.createElement)("div", { className: Modal_module_css_default.modalBody }, (0, react.createElement)("div", { className: CustomInstallView_module_css_default.helpBody }, t(HELP_CARDS[helpFor].contentKey, { profile }).split("\n").map((line, i) => {
5154
5174
  const [cmd, note] = line.split(" ");
5155
5175
  return (0, react.createElement)("div", {
5156
5176
  key: i,
@@ -5175,30 +5195,30 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5175
5195
  css: css$5
5176
5196
  });
5177
5197
  var SettingsView_module_css_default = {
5198
+ "navItem": "_506LLG_navItem",
5178
5199
  "root": "_506LLG_root",
5179
- "textInput": "_506LLG_textInput",
5180
- "pageTitle": "_506LLG_pageTitle",
5200
+ "pageHeader": "_506LLG_pageHeader",
5201
+ "navItemActive": "_506LLG_navItemActive",
5181
5202
  "pageDesc": "_506LLG_pageDesc",
5182
- "settingDesc": "_506LLG_settingDesc",
5183
- "settingRow": "_506LLG_settingRow",
5184
- "settingTitle": "_506LLG_settingTitle",
5185
- "controlDropdown": "_506LLG_controlDropdown",
5203
+ "proxyHintOk": "_506LLG_proxyHintOk",
5186
5204
  "resetBtn": "_506LLG_resetBtn",
5187
- "navItemActive": "_506LLG_navItemActive",
5188
- "settingLabel": "_506LLG_settingLabel",
5189
- "navIcon": "_506LLG_navIcon",
5190
5205
  "sidebar": "_506LLG_sidebar",
5206
+ "settingDesc": "_506LLG_settingDesc",
5191
5207
  "content": "_506LLG_content",
5192
- "proxyControl": "_506LLG_proxyControl",
5193
- "proxyHintOk": "_506LLG_proxyHintOk",
5208
+ "settingLabel": "_506LLG_settingLabel",
5209
+ "card": "_506LLG_card",
5194
5210
  "proxyHintFail": "_506LLG_proxyHintFail",
5195
- "navItem": "_506LLG_navItem",
5196
- "settingControl": "_506LLG_settingControl",
5211
+ "navIcon": "_506LLG_navIcon",
5212
+ "pageTitle": "_506LLG_pageTitle",
5213
+ "settingRow": "_506LLG_settingRow",
5214
+ "settingTitle": "_506LLG_settingTitle",
5215
+ "controlDropdown": "_506LLG_controlDropdown",
5197
5216
  "settingControlStack": "_506LLG_settingControlStack",
5198
- "card": "_506LLG_card",
5199
5217
  "proxyHint": "_506LLG_proxyHint",
5218
+ "proxyControl": "_506LLG_proxyControl",
5219
+ "settingControl": "_506LLG_settingControl",
5200
5220
  "settingRowStack": "_506LLG_settingRowStack",
5201
- "pageHeader": "_506LLG_pageHeader"
5221
+ "textInput": "_506LLG_textInput"
5202
5222
  };
5203
5223
  //#endregion
5204
5224
  //#region \0dsh-css:src/client/styles/Dropdown.module.css.mjs
@@ -5217,18 +5237,18 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5217
5237
  css: css$4
5218
5238
  });
5219
5239
  var Dropdown_module_css_default = {
5220
- "dropdownCountActive": "B_Gxsq_dropdownCountActive",
5221
- "dropdownLabel": "B_Gxsq_dropdownLabel",
5222
- "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
5223
- "dropdownFill": "B_Gxsq_dropdownFill",
5224
- "dropdownCount": "B_Gxsq_dropdownCount",
5225
- "dropdownArrow": "B_Gxsq_dropdownArrow",
5226
- "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
5240
+ "dropdownItem": "B_Gxsq_dropdownItem",
5227
5241
  "dropdownItemActive": "B_Gxsq_dropdownItemActive",
5228
5242
  "dropdownPanel": "B_Gxsq_dropdownPanel",
5229
- "dropdown": "B_Gxsq_dropdown",
5243
+ "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
5244
+ "dropdownArrow": "B_Gxsq_dropdownArrow",
5245
+ "dropdownCountActive": "B_Gxsq_dropdownCountActive",
5230
5246
  "dropdownBtn": "B_Gxsq_dropdownBtn",
5231
- "dropdownItem": "B_Gxsq_dropdownItem"
5247
+ "dropdownFill": "B_Gxsq_dropdownFill",
5248
+ "dropdown": "B_Gxsq_dropdown",
5249
+ "dropdownLabel": "B_Gxsq_dropdownLabel",
5250
+ "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
5251
+ "dropdownCount": "B_Gxsq_dropdownCount"
5232
5252
  };
5233
5253
  //#endregion
5234
5254
  //#region \0dsh-css:src/client/styles/Toggle.module.css.mjs
@@ -5248,8 +5268,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5248
5268
  });
5249
5269
  var Toggle_module_css_default = {
5250
5270
  "knob": "k-cD4G_knob",
5251
- "toggle": "k-cD4G_toggle",
5252
- "toggleOn": "k-cD4G_toggleOn"
5271
+ "toggleOn": "k-cD4G_toggleOn",
5272
+ "toggle": "k-cD4G_toggle"
5253
5273
  };
5254
5274
  //#endregion
5255
5275
  //#region src/client/components/ui/Toggle.tsx
@@ -5349,29 +5369,29 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5349
5369
  css: css$2
5350
5370
  });
5351
5371
  var DiagnosticsView_module_css_default = {
5352
- "envCopyBtn": "k9eRya_envCopyBtn",
5353
- "headHint": "k9eRya_headHint",
5354
- "summaryRunning": "k9eRya_summaryRunning",
5355
- "display": "k9eRya_display",
5356
- "meta": "k9eRya_meta",
5357
5372
  "name": "k9eRya_name",
5358
- "runBtn": "k9eRya_runBtn",
5359
- "envRow": "k9eRya_envRow",
5360
5373
  "envLabel": "k9eRya_envLabel",
5361
- "badgeOk": "k9eRya_badgeOk",
5374
+ "badgeIdle": "k9eRya_badgeIdle",
5362
5375
  "envTitle": "k9eRya_envTitle",
5363
- "row": "k9eRya_row",
5364
- "head": "k9eRya_head",
5365
- "badgeFail": "k9eRya_badgeFail",
5366
- "badge": "k9eRya_badge",
5367
- "diagPulse": "k9eRya_diagPulse",
5368
- "envDesc": "k9eRya_envDesc",
5369
5376
  "panel": "k9eRya_panel",
5377
+ "badgeOk": "k9eRya_badgeOk",
5378
+ "envDesc": "k9eRya_envDesc",
5370
5379
  "badgeRunning": "k9eRya_badgeRunning",
5371
- "badgeIdle": "k9eRya_badgeIdle",
5372
- "summary": "k9eRya_summary",
5380
+ "headHint": "k9eRya_headHint",
5381
+ "badge": "k9eRya_badge",
5382
+ "summaryRunning": "k9eRya_summaryRunning",
5383
+ "diagPulse": "k9eRya_diagPulse",
5384
+ "summaryFail": "k9eRya_summaryFail",
5385
+ "runBtn": "k9eRya_runBtn",
5386
+ "meta": "k9eRya_meta",
5373
5387
  "summaryOk": "k9eRya_summaryOk",
5374
- "summaryFail": "k9eRya_summaryFail"
5388
+ "envCopyBtn": "k9eRya_envCopyBtn",
5389
+ "row": "k9eRya_row",
5390
+ "envRow": "k9eRya_envRow",
5391
+ "display": "k9eRya_display",
5392
+ "badgeFail": "k9eRya_badgeFail",
5393
+ "summary": "k9eRya_summary",
5394
+ "head": "k9eRya_head"
5375
5395
  };
5376
5396
  //#endregion
5377
5397
  //#region src/client/components/views/DiagnosticsView.tsx
@@ -5549,57 +5569,57 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5549
5569
  css: css$1
5550
5570
  });
5551
5571
  var LogsView_module_css_default = {
5552
- "footCount": "_3j77BW_footCount",
5553
5572
  "badgeDebug": "_3j77BW_badgeDebug",
5573
+ "catSystem": "_3j77BW_catSystem",
5574
+ "pathLabel": "_3j77BW_pathLabel",
5575
+ "headActions": "_3j77BW_headActions",
5576
+ "linkBtn": "_3j77BW_linkBtn",
5577
+ "catSettings": "_3j77BW_catSettings",
5554
5578
  "time": "_3j77BW_time",
5555
- "catBadge": "_3j77BW_catBadge",
5556
- "clearBtn": "_3j77BW_clearBtn",
5579
+ "message": "_3j77BW_message",
5580
+ "badgeError": "_3j77BW_badgeError",
5581
+ "headHint": "_3j77BW_headHint",
5582
+ "pathDialog": "_3j77BW_pathDialog",
5583
+ "searchInput": "_3j77BW_searchInput",
5557
5584
  "empty": "_3j77BW_empty",
5558
- "actions": "_3j77BW_actions",
5559
- "filterBar": "_3j77BW_filterBar",
5560
- "pathDialogFoot": "_3j77BW_pathDialogFoot",
5561
- "head": "_3j77BW_head",
5562
- "headActions": "_3j77BW_headActions",
5585
+ "clearBtn": "_3j77BW_clearBtn",
5586
+ "badgeWarn": "_3j77BW_badgeWarn",
5587
+ "filterChip": "_3j77BW_filterChip",
5563
5588
  "panel": "_3j77BW_panel",
5564
- "list": "_3j77BW_list",
5589
+ "logList": "_3j77BW_logList",
5590
+ "pathDialogReset": "_3j77BW_pathDialogReset",
5591
+ "footCount": "_3j77BW_footCount",
5592
+ "filterBar": "_3j77BW_filterBar",
5593
+ "previewRow": "_3j77BW_previewRow",
5565
5594
  "pathText": "_3j77BW_pathText",
5566
- "pathDialog": "_3j77BW_pathDialog",
5567
- "message": "_3j77BW_message",
5568
- "pathRow": "_3j77BW_pathRow",
5569
- "event": "_3j77BW_event",
5570
- "filterChip": "_3j77BW_filterChip",
5595
+ "badgeInfo": "_3j77BW_badgeInfo",
5596
+ "pathDialogDesc": "_3j77BW_pathDialogDesc",
5597
+ "filterChipActive": "_3j77BW_filterChipActive",
5598
+ "badge": "_3j77BW_badge",
5599
+ "actions": "_3j77BW_actions",
5600
+ "catBadge": "_3j77BW_catBadge",
5571
5601
  "search": "_3j77BW_search",
5572
5602
  "entry": "_3j77BW_entry",
5573
- "searchInput": "_3j77BW_searchInput",
5574
5603
  "badgeSuccess": "_3j77BW_badgeSuccess",
5575
- "badgeError": "_3j77BW_badgeError",
5576
- "badgeWarn": "_3j77BW_badgeWarn",
5604
+ "list": "_3j77BW_list",
5605
+ "pathDialogHint": "_3j77BW_pathDialogHint",
5606
+ "more": "_3j77BW_more",
5607
+ "footPath": "_3j77BW_footPath",
5608
+ "catInstall": "_3j77BW_catInstall",
5609
+ "catUninstall": "_3j77BW_catUninstall",
5610
+ "footFail": "_3j77BW_footFail",
5611
+ "event": "_3j77BW_event",
5577
5612
  "catUpdate": "_3j77BW_catUpdate",
5578
- "catDiagnostics": "_3j77BW_catDiagnostics",
5579
- "footActions": "_3j77BW_footActions",
5580
- "moreEnd": "_3j77BW_moreEnd",
5581
- "foot": "_3j77BW_foot",
5582
5613
  "pathDraft": "_3j77BW_pathDraft",
5583
- "headHint": "_3j77BW_headHint",
5584
- "previewRow": "_3j77BW_previewRow",
5585
- "badgeInfo": "_3j77BW_badgeInfo",
5586
- "filterChipActive": "_3j77BW_filterChipActive",
5587
- "footFail": "_3j77BW_footFail",
5588
- "catUninstall": "_3j77BW_catUninstall",
5589
- "catSettings": "_3j77BW_catSettings",
5590
- "footPath": "_3j77BW_footPath",
5591
- "catSystem": "_3j77BW_catSystem",
5592
- "linkBtn": "_3j77BW_linkBtn",
5593
- "more": "_3j77BW_more",
5594
- "logList": "_3j77BW_logList",
5614
+ "pathRow": "_3j77BW_pathRow",
5615
+ "pathDialogFoot": "_3j77BW_pathDialogFoot",
5595
5616
  "btn": "_3j77BW_btn",
5617
+ "moreEnd": "_3j77BW_moreEnd",
5618
+ "head": "_3j77BW_head",
5596
5619
  "pathDialogRow": "_3j77BW_pathDialogRow",
5597
- "catInstall": "_3j77BW_catInstall",
5598
- "pathDialogDesc": "_3j77BW_pathDialogDesc",
5599
- "pathDialogHint": "_3j77BW_pathDialogHint",
5600
- "pathDialogReset": "_3j77BW_pathDialogReset",
5601
- "badge": "_3j77BW_badge",
5602
- "pathLabel": "_3j77BW_pathLabel"
5620
+ "footActions": "_3j77BW_footActions",
5621
+ "foot": "_3j77BW_foot",
5622
+ "catDiagnostics": "_3j77BW_catDiagnostics"
5603
5623
  };
5604
5624
  //#endregion
5605
5625
  //#region src/client/components/modals/LogsModal.tsx
@@ -6848,7 +6868,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
6848
6868
  openSection: settingsSection,
6849
6869
  onConsumedOpenSection: () => setSettingsSection(null)
6850
6870
  }), showHubUpdate && (0, react.createElement)(HubUpdateModal, {
6851
- info: catalog.hubUpdateInfo ?? { version: "1.5.1" },
6871
+ info: catalog.hubUpdateInfo ?? { version: "1.6.0" },
6852
6872
  lang,
6853
6873
  t,
6854
6874
  hasUpdate: catalog.hubHasUpdate,