dsh-plugin 1.4.2 → 1.4.4

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
@@ -288,6 +288,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
288
288
  failNpmTooLow: "怀疑本机 npm 版本过低:npm 解析插件依赖时内部崩溃(这是 npm 自身的已知缺陷,不是插件问题)。请升级 npm 后重试:npm install -g npm@latest",
289
289
  failNpmTooLowV: "本机 npm 版本过低(当前 v{v}):npm 解析插件依赖时内部崩溃(这是 npm 自身的已知缺陷,不是插件问题)。请升级 npm 后重试:npm install -g npm@latest",
290
290
  failNetworkHint: "安装前检测到网络不通:无法连接到安装源(可能是断网、DNS 解析失败、被防火墙拦截,或代理配置有问题)。这不是插件本身的问题 —— 请检查网络连接,或到「设置」里确认 HTTP 代理配置,再到「系统诊断」运行一次连通性检测,然后重试。",
291
+ failNetworkRegistryHint: "你的 npm/pnpm 源(registry)被配置为 {host},插件包需从该源下载但失败了。这通常是内网/自定义源没有同步该包(或需要内网认证)—— 请把 npm/pnpm 的 registry 指回官方源 https://registry.npmjs.org(或确认此源可访问该包)后重试。",
291
292
  failNetworkTarget: "无法访问 {url} —— 你的网络连接不通",
292
293
  failNetworkRunDiag: "去系统诊断检测网络",
293
294
  failDshMissingHint: "系统找不到 dsh 命令(dsh 未加入系统 PATH),无法调用安装器执行安装。请确认 DeepSeek Harness 已正确安装、dsh 已加入 PATH(或重新安装),然后重试。这不是插件本身的问题。",
@@ -295,6 +296,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
295
296
  failPnpmMissingHint: "安装器找到了 dsh,但系统里没有 pnpm 命令(dsh 用它来管理 profile 插件)。请先安装 pnpm(如 npm install -g pnpm),确认 pnpm 已加入 PATH 后重试。这不是插件本身的问题。",
296
297
  failNpmMissingHint: "系统找不到 npm 命令(npm 未安装或未加入系统 PATH),无法执行全局安装。请先安装 Node.js(自带 npm),确认 npm 已加入 PATH 后重试。这不是插件本身的问题。",
297
298
  failPnpmStoreHint: "安装器调用 pnpm 时报「store 位置不匹配」(ERR_PNPM_UNEXPECTED_STORE):你的 profile 目录里旧插件依赖是用另一个大版本的 pnpm 生成的,当前 pnpm 出于安全不认旧目录,导致任何插件装进该 profile 都会失败。请删除该 profile 目录下的 node_modules 与 pnpm-lock.yaml(可先到「系统日志」或 ~/.dsh/profiles/<profile>/hub.log 查看完整报错),再重新安装。这不是插件本身的问题。",
299
+ failPnpmUnusedPatchHint: "安装器调用 pnpm 时报「有些补丁没有被使用」(ERR_PNPM_UNUSED_PATCH):你的 profile 里留着一条指向旧版本 dsh-plugin 的补丁声明(例如 dsh-plugin@1.4.2),而本次安装解析到的版本已经不是它,pnpm 出于安全直接中止整次安装,因此任何插件都装不进来。这不是插件本身的问题——请在 profile 目录(~/.dsh/profiles/<profile>)的 pnpm-workspace.yaml(pnpm 11 及以上)或 package.json 的 pnpm.patchedDependencies(pnpm 10)里删除该 dsh-plugin 补丁条目后重试。",
300
+ failFileLockedHint: "安装过程中 pnpm 无法替换 profile 里的文件:有程序正占用着它(Windows 常见报错 os error 32「另一个程序正在使用此文件」)。通常是 DeepSeek Harness 自身或杀毒软件的实时扫描持有文件句柄。这不是插件本身的问题——请完全退出 DeepSeek Harness(Windows 可在任务管理器确认进程已结束,必要时临时关闭杀毒软件实时防护)后重试。",
301
+ failPnpmWorkspaceHint: "安装器调用 pnpm 时报「不能把依赖装到 workspace 根目录」(ERR_PNPM_ADDING_TO_ROOT):你的 profile 目录被 pnpm 视为 workspace 根目录,而本次安装命令没有声明在根目录操作,pnpm 直接拒绝执行,因此任何插件装进来都会失败。这不是插件本身的问题——可在 profile 目录(~/.dsh/profiles/<profile>)的 .npmrc 里加一行 ignore-workspace-root-check=true 后重试,或把 DeepSeek Harness 升级到最新版再试。",
298
302
  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 查看完整报错)。",
299
303
  installChannelNpm: "NPM 包",
300
304
  installChannelGit: "GitHub 源码",
@@ -614,6 +618,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
614
618
  failNpmTooLow: "Your local npm may be too old: npm crashed internally while resolving the plugin's dependencies (a known npm bug — not a plugin issue). Please upgrade npm and retry: npm install -g npm@latest",
615
619
  failNpmTooLowV: "Your local npm is too old (v{v}): npm crashed internally while resolving the plugin's dependencies (a known npm bug — not a plugin issue). Please upgrade npm and retry: npm install -g npm@latest",
616
620
  failNetworkHint: "The network could not be reached before install: the install source is unreachable (offline, DNS failure, firewall block, or a misconfigured proxy). This is not a problem with the plugin itself — please check your connection, confirm the HTTP proxy in Settings, run a connectivity check under System Diagnostics, then retry.",
621
+ 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.",
617
622
  failNetworkTarget: "Cannot reach {url} — your network connection is down",
618
623
  failNetworkRunDiag: "Run a network diagnostic",
619
624
  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.",
@@ -621,6 +626,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
621
626
  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.",
622
627
  failNpmMissingHint: "The npm command could not be found (npm is not installed or not on the system PATH), so a global install cannot run. Please install Node.js (which bundles npm), make sure npm is on your PATH, then retry. This is not a problem with the plugin itself.",
623
628
  failPnpmStoreHint: "pnpm reported an unexpected store location (ERR_PNPM_UNEXPECTED_STORE): the profile directory was previously set up with a different major version of pnpm, and the current pnpm refuses to reuse it — no plugin can be installed into that profile. 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. This is not a problem with the plugin itself.",
629
+ failPnpmUnusedPatchHint: "pnpm reported that some patches were not used (ERR_PNPM_UNUSED_PATCH): your profile still holds a patch entry for an older dsh-plugin version (for example dsh-plugin@1.4.2), while this install resolved a different version, so pnpm aborts the whole install for safety — no plugin can be installed into that profile. This is not a problem with the plugin itself. Remove that dsh-plugin patch entry from pnpm-workspace.yaml (pnpm 11+) or from pnpm.patchedDependencies in package.json (pnpm 10) inside the profile directory (~/.dsh/profiles/<profile>), then retry.",
630
+ failFileLockedHint: "During install, pnpm could not replace a file inside the profile because another program is holding it (on Windows this shows as os error 32, \"the process cannot access the file because it is being used by another process\"). Usually DeepSeek Harness itself or a real-time antivirus scan holds the handle. This is not a problem with the plugin itself — fully quit DeepSeek Harness (on Windows, confirm in Task Manager that the process has ended, and temporarily disable real-time antivirus protection if needed), then retry.",
631
+ 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.",
624
632
  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.",
625
633
  installChannelNpm: "NPM package",
626
634
  installChannelGit: "GitHub source",
@@ -678,42 +686,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
678
686
  css: css$11
679
687
  });
680
688
  var Header_module_css_default = {
681
- "brandTitle": "qikqja_brandTitle",
682
- "searchRow": "qikqja_searchRow",
683
689
  "taglineLink": "qikqja_taglineLink",
684
- "resultSeg": "qikqja_resultSeg",
685
- "aboutBtn": "qikqja_aboutBtn",
686
- "headerRight": "qikqja_headerRight",
687
- "headerTitleRow": "qikqja_headerTitleRow",
690
+ "sortGroup": "qikqja_sortGroup",
691
+ "root": "qikqja_root",
692
+ "adBadge": "qikqja_adBadge",
693
+ "adArrow": "qikqja_adArrow",
694
+ "tagline": "qikqja_tagline",
695
+ "copyIcon": "qikqja_copyIcon",
696
+ "controls": "qikqja_controls",
697
+ "tabs": "qikqja_tabs",
698
+ "adBanner": "qikqja_adBanner",
699
+ "adText": "qikqja_adText",
700
+ "tabsRow": "qikqja_tabsRow",
688
701
  "hubUpdateBadge": "qikqja_hubUpdateBadge",
702
+ "segBtnActive": "qikqja_segBtnActive",
703
+ "segGroup": "qikqja_segGroup",
704
+ "langBtn": "qikqja_langBtn",
705
+ "githubLink": "qikqja_githubLink",
706
+ "logoIcon": "qikqja_logoIcon",
707
+ "segBtn": "qikqja_segBtn",
689
708
  "githubIcon": "qikqja_githubIcon",
709
+ "headerRight": "qikqja_headerRight",
710
+ "headerTitleRow": "qikqja_headerTitleRow",
711
+ "searchRow": "qikqja_searchRow",
690
712
  "resultCount": "qikqja_resultCount",
691
- "tabs": "qikqja_tabs",
692
- "adText": "qikqja_adText",
713
+ "versionBtn": "qikqja_versionBtn",
714
+ "search": "qikqja_search",
715
+ "aboutBtn": "qikqja_aboutBtn",
716
+ "header": "qikqja_header",
693
717
  "tabActive": "qikqja_tabActive",
694
- "tagline": "qikqja_tagline",
695
- "segBtn": "qikqja_segBtn",
696
- "segGroup": "qikqja_segGroup",
697
- "tab": "qikqja_tab",
698
- "adBanner": "qikqja_adBanner",
699
- "adArrow": "qikqja_adArrow",
700
- "copyIcon": "qikqja_copyIcon",
701
718
  "tabCount": "qikqja_tabCount",
702
- "adBadge": "qikqja_adBadge",
703
- "title": "qikqja_title",
719
+ "resultSeg": "qikqja_resultSeg",
704
720
  "segLabel": "qikqja_segLabel",
705
- "search": "qikqja_search",
706
- "logoIcon": "qikqja_logoIcon",
707
- "controls": "qikqja_controls",
708
- "sortGroup": "qikqja_sortGroup",
709
- "segBtnActive": "qikqja_segBtnActive",
721
+ "tab": "qikqja_tab",
722
+ "brandTitle": "qikqja_brandTitle",
710
723
  "version": "qikqja_version",
711
- "root": "qikqja_root",
712
- "header": "qikqja_header",
713
- "tabsRow": "qikqja_tabsRow",
714
- "langBtn": "qikqja_langBtn",
715
- "githubLink": "qikqja_githubLink",
716
- "versionBtn": "qikqja_versionBtn"
724
+ "title": "qikqja_title"
717
725
  };
718
726
  //#endregion
719
727
  //#region \0dsh-css:src/client/styles/Modal.module.css.mjs
@@ -732,136 +740,136 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
732
740
  css: css$10
733
741
  });
734
742
  var Modal_module_css_default = {
735
- "failList": "BiQ1zG_failList",
736
- "queueRowTrack": "BiQ1zG_queueRowTrack",
737
- "dangerConfirm": "BiQ1zG_dangerConfirm",
738
- "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
739
- "noticeTime": "BiQ1zG_noticeTime",
740
- "failKind": "BiQ1zG_failKind",
741
- "detailArrow": "BiQ1zG_detailArrow",
742
- "modalActions": "BiQ1zG_modalActions",
743
- "cliOnlyHint": "BiQ1zG_cliOnlyHint",
744
- "queueSectionTitle": "BiQ1zG_queueSectionTitle",
745
- "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
743
+ "errorTitle": "BiQ1zG_errorTitle",
744
+ "modalCancel": "BiQ1zG_modalCancel",
745
+ "noticeTextOk": "BiQ1zG_noticeTextOk",
746
+ "modalHead": "BiQ1zG_modalHead",
747
+ "noticeHead": "BiQ1zG_noticeHead",
748
+ "noticeRemove": "BiQ1zG_noticeRemove",
746
749
  "progressTrack": "BiQ1zG_progressTrack",
747
- "queueRowBody": "BiQ1zG_queueRowBody",
748
- "resultCheck": "BiQ1zG_resultCheck",
749
- "toastIn": "BiQ1zG_toastIn",
750
- "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
751
- "failClear": "BiQ1zG_failClear",
752
- "detailGrid": "BiQ1zG_detailGrid",
753
- "detailRow": "BiQ1zG_detailRow",
750
+ "aboutModal": "BiQ1zG_aboutModal",
751
+ "cliOnlyHint": "BiQ1zG_cliOnlyHint",
754
752
  "noticeMain": "BiQ1zG_noticeMain",
755
- "detailValue": "BiQ1zG_detailValue",
756
- "helpModal": "BiQ1zG_helpModal",
757
- "modalCancel": "BiQ1zG_modalCancel",
758
- "detailPathActions": "BiQ1zG_detailPathActions",
759
- "noticeFoot": "BiQ1zG_noticeFoot",
760
- "confirmIconWrap": "BiQ1zG_confirmIconWrap",
761
- "modalCloseIcon": "BiQ1zG_modalCloseIcon",
762
- "modalRow": "BiQ1zG_modalRow",
763
- "queueRowHead": "BiQ1zG_queueRowHead",
764
- "restartNowWarning": "BiQ1zG_restartNowWarning",
765
- "resultDesc": "BiQ1zG_resultDesc",
766
- "result": "BiQ1zG_result",
767
- "resultCheckIcon": "BiQ1zG_resultCheckIcon",
753
+ "modalTitle": "BiQ1zG_modalTitle",
768
754
  "progress": "BiQ1zG_progress",
769
- "failCopy": "BiQ1zG_failCopy",
770
- "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
771
- "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
772
- "failBigIssue": "BiQ1zG_failBigIssue",
773
- "progressFillFail": "BiQ1zG_progressFillFail",
774
- "detailUpdateHint": "BiQ1zG_detailUpdateHint",
775
- "detailMono": "BiQ1zG_detailMono",
776
- "detailDim": "BiQ1zG_detailDim",
755
+ "detailStars": "BiQ1zG_detailStars",
777
756
  "detailStatusRunning": "BiQ1zG_detailStatusRunning",
778
- "aboutMeta": "BiQ1zG_aboutMeta",
779
- "progressText": "BiQ1zG_progressText",
780
- "stripCancel": "BiQ1zG_stripCancel",
781
- "overlayIn": "BiQ1zG_overlayIn",
782
- "restartLater": "BiQ1zG_restartLater",
757
+ "progressFill": "BiQ1zG_progressFill",
758
+ "failBigIssue": "BiQ1zG_failBigIssue",
783
759
  "failedCopyHint": "BiQ1zG_failedCopyHint",
784
- "queueRowDesc": "BiQ1zG_queueRowDesc",
785
- "overlay": "BiQ1zG_overlay",
786
- "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
787
- "detailStars": "BiQ1zG_detailStars",
788
- "detailPath": "BiQ1zG_detailPath",
789
- "modalCopy": "BiQ1zG_modalCopy",
790
- "pendingRowActions": "BiQ1zG_pendingRowActions",
791
- "queueRowStatus": "BiQ1zG_queueRowStatus",
792
- "resultTitle": "BiQ1zG_resultTitle",
793
- "errorTitle": "BiQ1zG_errorTitle",
794
- "confirmIconDanger": "BiQ1zG_confirmIconDanger",
795
- "detailStatusPending": "BiQ1zG_detailStatusPending",
796
- "confirmPrimary": "BiQ1zG_confirmPrimary",
797
- "modalDesc": "BiQ1zG_modalDesc",
798
- "queueSection": "BiQ1zG_queueSection",
799
760
  "queueRowPct": "BiQ1zG_queueRowPct",
800
- "modalInstall": "BiQ1zG_modalInstall",
761
+ "restartNow": "BiQ1zG_restartNow",
762
+ "modalValue": "BiQ1zG_modalValue",
763
+ "overlayIn": "BiQ1zG_overlayIn",
764
+ "resultCheckIcon": "BiQ1zG_resultCheckIcon",
801
765
  "modalTitleQueued": "BiQ1zG_modalTitleQueued",
802
766
  "noticeRowOk": "BiQ1zG_noticeRowOk",
803
- "noticeIgnore": "BiQ1zG_noticeIgnore",
804
- "detailLabel": "BiQ1zG_detailLabel",
805
- "failHead": "BiQ1zG_failHead",
806
- "noticeVersion": "BiQ1zG_noticeVersion",
807
- "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
808
- "queueRow": "BiQ1zG_queueRow",
809
- "noticeHead": "BiQ1zG_noticeHead",
810
- "toast": "BiQ1zG_toast",
811
- "restartNow": "BiQ1zG_restartNow",
812
- "progressHead": "BiQ1zG_progressHead",
813
- "uninstallConfirm": "BiQ1zG_uninstallConfirm",
767
+ "modalBody": "BiQ1zG_modalBody",
768
+ "queueRowTrack": "BiQ1zG_queueRowTrack",
814
769
  "failNetworkTarget": "BiQ1zG_failNetworkTarget",
770
+ "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
771
+ "failKind": "BiQ1zG_failKind",
815
772
  "hubUpdateModal": "BiQ1zG_hubUpdateModal",
816
- "noticeList": "BiQ1zG_noticeList",
817
- "logModal": "BiQ1zG_logModal",
773
+ "modalActions": "BiQ1zG_modalActions",
774
+ "detailRow": "BiQ1zG_detailRow",
818
775
  "toastFail": "BiQ1zG_toastFail",
819
- "pendingRowStatus": "BiQ1zG_pendingRowStatus",
820
- "modalTitle": "BiQ1zG_modalTitle",
821
- "failRow": "BiQ1zG_failRow",
822
- "confirmIcon": "BiQ1zG_confirmIcon",
823
- "progressFill": "BiQ1zG_progressFill",
824
- "errorBox": "BiQ1zG_errorBox",
825
- "detailPathText": "BiQ1zG_detailPathText",
826
- "modalTitleBusy": "BiQ1zG_modalTitleBusy",
776
+ "progressText": "BiQ1zG_progressText",
827
777
  "noticeRow": "BiQ1zG_noticeRow",
828
- "resultRestarting": "BiQ1zG_resultRestarting",
829
- "detailModal": "BiQ1zG_detailModal",
830
- "modalLink": "BiQ1zG_modalLink",
831
- "queueRowTarget": "BiQ1zG_queueRowTarget",
832
- "failRepo": "BiQ1zG_failRepo",
833
- "modalCmdCopy": "BiQ1zG_modalCmdCopy",
834
- "noticeTextOk": "BiQ1zG_noticeTextOk",
835
- "detailPathBtn": "BiQ1zG_detailPathBtn",
778
+ "failCopy": "BiQ1zG_failCopy",
779
+ "noticeTime": "BiQ1zG_noticeTime",
780
+ "progressHead": "BiQ1zG_progressHead",
781
+ "resultTitle": "BiQ1zG_resultTitle",
782
+ "dangerConfirm": "BiQ1zG_dangerConfirm",
783
+ "detailArrow": "BiQ1zG_detailArrow",
836
784
  "errorCopySoft": "BiQ1zG_errorCopySoft",
837
- "failKindUninstall": "BiQ1zG_failKindUninstall",
838
- "failPrepareHint": "BiQ1zG_failPrepareHint",
839
- "modalLabel": "BiQ1zG_modalLabel",
840
- "modalHead": "BiQ1zG_modalHead",
841
- "modalValue": "BiQ1zG_modalValue",
842
- "modalCmd": "BiQ1zG_modalCmd",
785
+ "modalCmdCopy": "BiQ1zG_modalCmdCopy",
786
+ "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
787
+ "detailMono": "BiQ1zG_detailMono",
788
+ "modalWide": "BiQ1zG_modalWide",
789
+ "failList": "BiQ1zG_failList",
790
+ "failEmpty": "BiQ1zG_failEmpty",
791
+ "restartLater": "BiQ1zG_restartLater",
843
792
  "errorHint": "BiQ1zG_errorHint",
793
+ "modalCloseIcon": "BiQ1zG_modalCloseIcon",
794
+ "confirmIcon": "BiQ1zG_confirmIcon",
844
795
  "noticeTextFail": "BiQ1zG_noticeTextFail",
845
- "failEmpty": "BiQ1zG_failEmpty",
846
- "detailLink": "BiQ1zG_detailLink",
847
- "modal": "BiQ1zG_modal",
848
- "aboutContent": "BiQ1zG_aboutContent",
849
- "detailStatusText": "BiQ1zG_detailStatusText",
850
- "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
796
+ "queueRowStatus": "BiQ1zG_queueRowStatus",
797
+ "restartNowWarning": "BiQ1zG_restartNowWarning",
798
+ "detailPathActions": "BiQ1zG_detailPathActions",
799
+ "linkIcon": "BiQ1zG_linkIcon",
800
+ "failRepo": "BiQ1zG_failRepo",
801
+ "confirmPrimary": "BiQ1zG_confirmPrimary",
802
+ "detailStatusPending": "BiQ1zG_detailStatusPending",
803
+ "uninstallConfirm": "BiQ1zG_uninstallConfirm",
804
+ "queueRow": "BiQ1zG_queueRow",
805
+ "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
806
+ "detailValue": "BiQ1zG_detailValue",
807
+ "queueSection": "BiQ1zG_queueSection",
808
+ "confirmIconWrap": "BiQ1zG_confirmIconWrap",
809
+ "aboutMeta": "BiQ1zG_aboutMeta",
810
+ "detailUpdateHint": "BiQ1zG_detailUpdateHint",
811
+ "detailLabel": "BiQ1zG_detailLabel",
812
+ "noticeRowMain": "BiQ1zG_noticeRowMain",
813
+ "resultDesc": "BiQ1zG_resultDesc",
814
+ "resultRestarting": "BiQ1zG_resultRestarting",
815
+ "stripCancel": "BiQ1zG_stripCancel",
816
+ "pendingRowActions": "BiQ1zG_pendingRowActions",
817
+ "modalInstall": "BiQ1zG_modalInstall",
818
+ "modalTitleBusy": "BiQ1zG_modalTitleBusy",
851
819
  "failDiagBtn": "BiQ1zG_failDiagBtn",
852
- "errorModal": "BiQ1zG_errorModal",
853
- "trustHint": "BiQ1zG_trustHint",
854
- "failKindInstall": "BiQ1zG_failKindInstall",
855
- "modalBody": "BiQ1zG_modalBody",
820
+ "detailPathText": "BiQ1zG_detailPathText",
821
+ "modalCopy": "BiQ1zG_modalCopy",
822
+ "failPrepareHint": "BiQ1zG_failPrepareHint",
823
+ "queueRowHead": "BiQ1zG_queueRowHead",
824
+ "toastIn": "BiQ1zG_toastIn",
825
+ "logModal": "BiQ1zG_logModal",
826
+ "failKindUninstall": "BiQ1zG_failKindUninstall",
827
+ "modalLink": "BiQ1zG_modalLink",
828
+ "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
829
+ "detailModal": "BiQ1zG_detailModal",
830
+ "queueSectionTitle": "BiQ1zG_queueSectionTitle",
831
+ "result": "BiQ1zG_result",
832
+ "failClear": "BiQ1zG_failClear",
833
+ "detailLink": "BiQ1zG_detailLink",
834
+ "noticeIgnore": "BiQ1zG_noticeIgnore",
835
+ "overlay": "BiQ1zG_overlay",
856
836
  "modalClose": "BiQ1zG_modalClose",
857
- "noticeRowMain": "BiQ1zG_noticeRowMain",
837
+ "helpModal": "BiQ1zG_helpModal",
838
+ "detailStatusText": "BiQ1zG_detailStatusText",
839
+ "detailPathBtn": "BiQ1zG_detailPathBtn",
840
+ "confirmIconDanger": "BiQ1zG_confirmIconDanger",
841
+ "modalCmdText": "BiQ1zG_modalCmdText",
842
+ "errorBox": "BiQ1zG_errorBox",
843
+ "queueRowBody": "BiQ1zG_queueRowBody",
844
+ "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
845
+ "toast": "BiQ1zG_toast",
846
+ "failHead": "BiQ1zG_failHead",
858
847
  "modalIn": "BiQ1zG_modalIn",
859
- "modalWide": "BiQ1zG_modalWide",
860
- "noticeRemove": "BiQ1zG_noticeRemove",
861
- "aboutModal": "BiQ1zG_aboutModal",
862
- "linkIcon": "BiQ1zG_linkIcon",
848
+ "modal": "BiQ1zG_modal",
849
+ "noticeVersion": "BiQ1zG_noticeVersion",
863
850
  "queuedHint": "BiQ1zG_queuedHint",
864
- "modalCmdText": "BiQ1zG_modalCmdText"
851
+ "failKindInstall": "BiQ1zG_failKindInstall",
852
+ "trustHint": "BiQ1zG_trustHint",
853
+ "modalCmd": "BiQ1zG_modalCmd",
854
+ "modalRow": "BiQ1zG_modalRow",
855
+ "aboutContent": "BiQ1zG_aboutContent",
856
+ "queueRowTarget": "BiQ1zG_queueRowTarget",
857
+ "detailPath": "BiQ1zG_detailPath",
858
+ "errorModal": "BiQ1zG_errorModal",
859
+ "resultCheck": "BiQ1zG_resultCheck",
860
+ "modalLabel": "BiQ1zG_modalLabel",
861
+ "noticeFoot": "BiQ1zG_noticeFoot",
862
+ "detailDim": "BiQ1zG_detailDim",
863
+ "noticeList": "BiQ1zG_noticeList",
864
+ "progressFillFail": "BiQ1zG_progressFillFail",
865
+ "detailGrid": "BiQ1zG_detailGrid",
866
+ "failRow": "BiQ1zG_failRow",
867
+ "pendingRowStatus": "BiQ1zG_pendingRowStatus",
868
+ "queueRowDesc": "BiQ1zG_queueRowDesc",
869
+ "modalDesc": "BiQ1zG_modalDesc",
870
+ "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
871
+ "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
872
+ "noticeRowUpdate": "BiQ1zG_noticeRowUpdate"
865
873
  };
866
874
  //#endregion
867
875
  //#region src/client/logic/install-command.ts
@@ -931,7 +939,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
931
939
  * tsdown 构建时用 define 把 __PLUGIN_VERSION__ 替换成 package.json 的版本号;
932
940
  * node --test 直接 import 本模块时该标识符不存在,typeof 守卫兜底为空串。
933
941
  */
934
- const PLUGIN_VERSION = "1.4.2";
942
+ const PLUGIN_VERSION = "1.4.4";
935
943
  const CATEGORY_ORDER = [
936
944
  "interface",
937
945
  "session",
@@ -1568,7 +1576,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1568
1576
  */
1569
1577
  const hubHasUpdate = (() => {
1570
1578
  if (!hubUpdateInfo) return false;
1571
- if (hubUpdateInfo.version === "1.4.2") return false;
1579
+ if (hubUpdateInfo.version === "1.4.4") return false;
1572
1580
  const publishedAt = hubUpdateInfo.publishedAt;
1573
1581
  if (publishedAt) {
1574
1582
  const publishedMs = Date.parse(publishedAt);
@@ -1785,15 +1793,32 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1785
1793
  * 当前 pnpm 不认,任何插件装进该 profile 都会失败;不是插件问题(dsh-plugin-hub#14:macOS 下
1786
1794
  * `ERR_PNPM_UNEXPECTED_STORE` 被误归插件侧失败;dsh-plugin-hub#30:`ERR_PNPM_UNEXPECTED_VIRTUAL_STORE`
1787
1795
  * 漏判被误归插件侧失败)→ 提示清理 profile 依赖目录重建,不引导提 Issue
1796
+ * - pnpmWorkspace:pnpm 在 workspace 根目录下拒绝安装(`ERR_PNPM_ADDING_TO_ROOT` —— 宿主在
1797
+ * profile 目录里调用 `pnpm add` 时未声明在 workspace 根操作)。profile 目录含
1798
+ * pnpm-workspace.yaml 即被 pnpm 视为 workspace 根,缺 `-w`/`--workspace-root` 就整条命令
1799
+ * 被拒,任何插件都装不上,不是插件问题(dsh-plugin-hub#40)→ 提示在 profile 的 .npmrc 里
1800
+ * 加 `ignore-workspace-root-check=true` 或升级宿主,不引导提 Issue
1788
1801
  * - pnpmPolicy:pnpm 11 的供应链安全策略拒绝安装(`ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION` /
1789
1802
  * `Minimum release age` —— 锁文件里包的发布时间还不满 24 小时被拒;`untrusted origin` —— 依赖来源未被
1790
1803
  * 本机 pnpm 信任)。拦的是「刚发布的新包」与「未被信任的来源」,装任何新插件都会撞墙,不是
1791
1804
  * 插件问题(dsh-plugin-hub#15/#16:用户装官方 dsh-plugin 也被这两类策略拦下并误归插件侧失败)
1792
1805
  * → 提示按子场景给解法(发布未满 24 小时 → `minimumReleaseAge: 0` 豁免或等满 24 小时;untrusted
1793
1806
  * origin → 删除 profile 的 node_modules + pnpm-lock.yaml 清掉不受信任来源后重装),不引导提 Issue
1794
- * - network:安装前连通性预检拦截(服务端 `[network]` 标记)或底层连接失败
1795
- * (ERR_PNPM_GIT_FETCH_FAILED / ETIMEDOUT / DNS 解析 / TLS 握手 / 代理拒绝)——
1796
- * 是本机网络不通/被墙/代理有问题,不是插件问题 → 提示检查网络,不引导提 Issue
1807
+ * - pnpmUnusedPatch:profile 里留着指向旧版本 dsh-plugin 的 patch 声明,本次安装解析到的版本
1808
+ * 已经不是它(`ERR_PNPM_UNUSED_PATCH` / `The following patches were not used: dsh-plugin@1.4.2`)
1809
+ * —— pnpm 发现补丁没被用上即中止整次安装,任何插件都装不进来,不是插件问题
1810
+ * (dsh-plugin-hub#48:用户升级 dsh-plugin 后旧 patch 条目失配)→ 提示删掉该条目后重试,不引导提 Issue
1811
+ * - fileLocked:pnpm 无法替换 profile 里被其他进程占用的文件(Windows `os error 32`
1812
+ * 「另一个程序正在使用此文件」/ `EBUSY` / `resource busy or locked`)—— 通常是宿主进程或杀毒软件
1813
+ * 实时扫描持有句柄,不是插件问题(dsh-plugin-hub#47)→ 提示完全退出宿主后重试,不引导提 Issue
1814
+ * - network:安装前连通性预检拦截(服务端 `[network]` 标记)、底层连接失败
1815
+ * (ERR_PNPM_GIT_FETCH_FAILED / ETIMEDOUT / DNS 解析 / TLS 握手 / 代理拒绝),或
1816
+ * registry tarball 拉取失败(`fetch failed` / `GET …/-/…tgz error (n)` —— 常见于本机
1817
+ * npm/pnpm 的 registry 被指向内网/自定义源,该源取不到包),或界面请求压根没送达宿主服务
1818
+ * (浏览器 fetch 的 `Failed to fetch` —— 宿主未就绪/正在重启,或本地代理拦了回环地址;
1819
+ * dsh-plugin-hub#45:该消息此前落进 repo 兜底,被误报成「插件侧安装失败」)—— 是本机网络
1820
+ * 不通/被墙/代理有问题/源配置异常,不是插件问题 → 提示检查网络,registry 指向自定义源时
1821
+ * 给出换源指引,不引导提 Issue
1797
1822
  * - pnpmIgnoredBuild:插件自身或依赖的构建脚本被 pnpm 安全白名单(allowBuilds)默认拦截
1798
1823
  * (`ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED` / `ERR_PNPM_IGNORED_BUILDS`)。只影响带安装期
1799
1824
  * 构建的插件,其他插件不受影响 —— 差异在插件的依赖/打包方式,属插件依赖/打包问题
@@ -1809,9 +1834,12 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1809
1834
  if (/\[npm-missing\]|spawn npm ENOENT|'npm' 不是内部或外部命令|"npm" 不是内部或外部命令|npm['"]?\s*is not recognized|npm: command not found/i.test(message)) return "npmMissing";
1810
1835
  if (/\[dsh-missing\]|不是内部或外部命令|is not recognized as an internal or external command|command not found|spawn dsh ENOENT/i.test(message)) return "dshMissing";
1811
1836
  if (/ERR_PNPM_UNEXPECTED_(VIRTUAL_)?STORE|Unexpected (virtual )?store location/i.test(message)) return "pnpmStore";
1837
+ if (/ERR_PNPM_ADDING_TO_ROOT|add the dependency to the workspace root/i.test(message)) return "pnpmWorkspace";
1812
1838
  if (/ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION|Minimum release age|untrusted origin/i.test(message)) return "pnpmPolicy";
1839
+ if (/ERR_PNPM_UNUSED_PATCH|patches were not used/i.test(message)) return "pnpmUnusedPatch";
1840
+ if (/os error 32|EBUSY|resource busy or locked|being used by another process/i.test(message)) return "fileLocked";
1813
1841
  if (/ERR_PNPM_IGNORED_BUILDS|Ignored build scripts:|ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED/i.test(message)) return "pnpmIgnoredBuild";
1814
- if (/\[network\]|ERR_PNPM_GIT_FETCH_FAILED|ETIMEDOUT|ECONNREFUSED|ECONNRESET|ENOTFOUND|EAI_AGAIN|EPIPE|EHOSTUNREACH|ENETUNREACH|getaddrinfo|Could not connect|Could not resolve host|Network unreachable|Failed to connect|socket hang up|CERT_HAS_EXPIRED|SSL certificate problem|\bTLS\b|\bSSL\b/i.test(message)) return "network";
1842
+ if (/\[network\]|ERR_PNPM_GIT_FETCH_FAILED|ETIMEDOUT|ECONNREFUSED|ECONNRESET|ENOTFOUND|EAI_AGAIN|EPIPE|EHOSTUNREACH|ENETUNREACH|getaddrinfo|Could not connect|Could not resolve host|Network unreachable|Failed to connect|socket hang up|CERT_HAS_EXPIRED|SSL certificate problem|\bTLS\b|\bSSL\b|fetch failed|failed to fetch|\bGET https?:\/\/\S+\.tgz\s+error \(\d+\)/i.test(message)) return "network";
1815
1843
  if (/\[packaging\]|entry file missing/i.test(message)) return "pluginPrepare";
1816
1844
  if (/ERR_PNPM_PREPARE_PACKAGE|ELIFECYCLE|Command failed|prepare-guard/i.test(message)) return "pluginPrepare";
1817
1845
  return "repo";
@@ -1883,6 +1911,29 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1883
1911
  const url = message.match(/https?:\/\/[^\s'"`<>()()]+/);
1884
1912
  return url ? url[0].replace(/[.,;:))\]]+$/, "") : null;
1885
1913
  }
1914
+ /** npm registry 的官方/常见公开镜像主机名:tarball 从这里下载属正常配置,
1915
+ * 失败按「网络不通」提示即可,不需要额外的换源指引。 */
1916
+ const PUBLIC_REGISTRY_HOSTS = /* @__PURE__ */ new Set([
1917
+ "registry.npmjs.org",
1918
+ "registry.yarnpkg.com",
1919
+ "registry.npmmirror.com",
1920
+ "mirrors.cloud.tencent.com",
1921
+ "mirrors.huaweicloud.com"
1922
+ ]);
1923
+ /**
1924
+ * 网络类失败消息里,判断是否「npm/pnpm 的 registry 被指向了内网/自定义源导致拉包失败」。
1925
+ * pnpm 下载包文件的 URL 形如 `<registry>/<pkg>/-/<pkg>-<ver>.tgz`(路径含 `/-/`);
1926
+ * 若该 tarball 的主机不属于官方/常见公开镜像,说明本机 registry 被配成了私有/内网源
1927
+ * (如公司 Artifactory)—— 常因源未同步该包、需内网认证或网络策略拦截而失败(dsh-plugin-hub#32)。
1928
+ * 返回该主机名供前端给出「检查 registry 配置」的精准提示;官方/公开源或提取不到返回 null,
1929
+ * 调用方按通用网络问题提示即可。
1930
+ */
1931
+ function registryHostOf(message) {
1932
+ const m = message.match(/https?:\/\/([^/\s]+)\/[^\s'"`<>]*\/-\/[^\s'"`<>]+/);
1933
+ if (!m) return null;
1934
+ const host = m[1].replace(/:\d+$/, "");
1935
+ return PUBLIC_REGISTRY_HOSTS.has(host) ? null : host;
1936
+ }
1886
1937
  //#endregion
1887
1938
  //#region src/client/logic/urls.ts
1888
1939
  /** dsh-plugin.org 中文页挂在 /zh/ 前缀下,英文在根路径。 */
@@ -1918,7 +1969,10 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1918
1969
  case "dshMissing": return "dsh command not found on the user machine";
1919
1970
  case "pnpmMissing": return "pnpm command not found on the user machine";
1920
1971
  case "pnpmStore": return "pnpm store version mismatch on the user machine";
1972
+ case "pnpmWorkspace": return "pnpm workspace-root check blocked the install on the user machine";
1921
1973
  case "pnpmPolicy": return "pnpm supply-chain policy blocked the install on the user machine";
1974
+ case "pnpmUnusedPatch": return "stale pnpm patch entry on the user machine";
1975
+ case "fileLocked": return "file locked by another process on the user machine";
1922
1976
  case "pnpmIgnoredBuild": return "build scripts blocked by pnpm allowlist";
1923
1977
  case "pluginPrepare": return "plugin distribution incomplete";
1924
1978
  case "network": return "network failure on the user side";
@@ -1937,7 +1991,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1937
1991
  function pluginIssueUrl(repo, message, env, command, attempts) {
1938
1992
  const kind = classifyFailure(message);
1939
1993
  const title = `[dsh-plugin.org | dsh-plugin-hub] ${reasonTitleOf(kind)}: ${repo}`;
1940
- const reason = /\[packaging\]/i.test(message) ? "plugin distribution is incomplete — the entry file declared in package.json is missing from the published package (github tarball or npm package); please commit build output or publish a complete package" : kind === "network" ? "network connectivity issue on the user side (DNS, proxy, firewall, or a blocked connection)" : kind === "pluginPrepare" ? "plugin prepare/build script failed during install (packaging/distribution issue)" : kind === "pnpmIgnoredBuild" ? "plugin depends on a native module whose build script pnpm blocks by default (use a prebuilt variant)" : kind === "pnpmPolicy" ? "the pnpm supply-chain policy on the user machine blocked the install (minimum release age for freshly published packages / untrusted origin)" : "plugin-side install failure";
1994
+ const reason = /\[packaging\]/i.test(message) ? "plugin distribution is incomplete — the entry file declared in package.json is missing from the published package (github tarball or npm package); please commit build output or publish a complete package" : kind === "network" ? "network connectivity issue on the user side (DNS, proxy, firewall, or a blocked connection)" : kind === "pluginPrepare" ? "plugin prepare/build script failed during install (packaging/distribution issue)" : kind === "pnpmIgnoredBuild" ? "plugin depends on a native module whose build script pnpm blocks by default (use a prebuilt variant)" : kind === "pnpmPolicy" ? "the pnpm supply-chain policy on the user machine blocked the install (minimum release age for freshly published packages / untrusted origin)" : kind === "pnpmUnusedPatch" ? "the profile keeps a pnpm patch entry for an older dsh-plugin version, so pnpm aborted the install (local config issue)" : kind === "fileLocked" ? "a file in the profile is locked by another process on the user machine (local environment issue)" : "plugin-side install failure";
1941
1995
  const code = coreErrorCode(message);
1942
1996
  const build = (coreChars) => {
1943
1997
  const body = [
@@ -3320,11 +3374,15 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3320
3374
  }, repo) : null, (0, react.createElement)("button", {
3321
3375
  className: Modal_module_css_default.errorCopySoft,
3322
3376
  onClick: () => onCopy(copyText)
3323
- }, 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 === "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("failPnpmPolicyHint")) : failureKind === "network" ? (0, react.createElement)("div", null, [
3377
+ }, 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("failPnpmPolicyHint")) : failureKind === "pnpmUnusedPatch" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmUnusedPatchHint")) : failureKind === "fileLocked" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFileLockedHint")) : failureKind === "network" ? (0, react.createElement)("div", null, [
3324
3378
  (() => {
3325
3379
  const target = unreachableTargetOf(message);
3326
3380
  return target ? (0, react.createElement)("div", { className: Modal_module_css_default.failNetworkTarget }, t("failNetworkTarget", { url: target })) : null;
3327
3381
  })(),
3382
+ (() => {
3383
+ const host = registryHostOf(message);
3384
+ return host ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNetworkRegistryHint", { host })) : null;
3385
+ })(),
3328
3386
  (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNetworkHint")),
3329
3387
  onRunDiagnostics ? (0, react.createElement)("button", {
3330
3388
  className: Modal_module_css_default.failDiagBtn,
@@ -3417,7 +3475,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3417
3475
  out = out.replace(/!\[([^\]]*)\]\(([^)\s]+)\)/g, (m, alt, url) => {
3418
3476
  const src = String(url);
3419
3477
  if (!/^https?:\/\//i.test(src) || /[\u0000]/.test(src)) return m;
3420
- if (/\/dsh-plugin-user-group-qr-[^/]*$/i.test(src)) return `<img src="${src}" alt="${String(alt)}" width="100" height="100" loading="lazy">`;
3478
+ if (/\/dsh-plugin-user-group-qr[^/]*$/i.test(src)) return `<img src="${src}" alt="${String(alt)}" width="100" height="100" loading="lazy">`;
3421
3479
  return `<img src="${src}" alt="${String(alt)}" loading="lazy">`;
3422
3480
  });
3423
3481
  out = out.replace(/\[([^\]]+)\]\(([^)\s]+)\)/g, (m, text, url) => /^https?:\/\//i.test(String(url)) && !/[\u0000]/.test(String(url)) ? `<a href="${String(url)}" target="_blank" rel="noopener noreferrer">${String(text)}</a>` : m);
@@ -3875,13 +3933,20 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3875
3933
  if (kind === "gitMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failGitMissingHint"));
3876
3934
  if (kind === "pnpmMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingHint"));
3877
3935
  if (kind === "npmMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNpmMissingHint"));
3936
+ if (kind === "pnpmWorkspace") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmWorkspaceHint"));
3878
3937
  if (kind === "pnpmStore") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmStoreHint"));
3879
3938
  if (kind === "pnpmPolicy") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmPolicyHint"));
3939
+ if (kind === "pnpmUnusedPatch") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmUnusedPatchHint"));
3940
+ if (kind === "fileLocked") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failFileLockedHint"));
3880
3941
  if (kind === "network") return (0, react.createElement)("div", null, [
3881
3942
  (() => {
3882
3943
  const target = unreachableTargetOf(r.message);
3883
3944
  return target ? (0, react.createElement)("div", { className: Modal_module_css_default.failNetworkTarget }, t("failNetworkTarget", { url: target })) : null;
3884
3945
  })(),
3946
+ (() => {
3947
+ const host = registryHostOf(r.message);
3948
+ return host ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNetworkRegistryHint", { host })) : null;
3949
+ })(),
3885
3950
  (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNetworkHint")),
3886
3951
  onRunDiagnostics ? (0, react.createElement)("button", {
3887
3952
  className: Modal_module_css_default.failDiagBtn,
@@ -4082,40 +4147,40 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4082
4147
  css: css$9
4083
4148
  });
4084
4149
  var List_module_css_default = {
4085
- "actions": "_3XaZHa_actions",
4086
- "cardSide": "_3XaZHa_cardSide",
4150
+ "body": "_3XaZHa_body",
4151
+ "stats": "_3XaZHa_stats",
4087
4152
  "date": "_3XaZHa_date",
4153
+ "installBtn": "_3XaZHa_installBtn",
4154
+ "cardMain": "_3XaZHa_cardMain",
4155
+ "cardSide": "_3XaZHa_cardSide",
4156
+ "desc": "_3XaZHa_desc",
4157
+ "categoryBadge": "_3XaZHa_categoryBadge",
4158
+ "installBtnInstalled": "_3XaZHa_installBtnInstalled",
4088
4159
  "moreSentinel": "_3XaZHa_moreSentinel",
4160
+ "cardHead": "_3XaZHa_cardHead",
4161
+ "updateBadge": "_3XaZHa_updateBadge",
4089
4162
  "stateTitle": "_3XaZHa_stateTitle",
4090
- "detailBtn": "_3XaZHa_detailBtn",
4091
- "fork": "_3XaZHa_fork",
4092
- "desc": "_3XaZHa_desc",
4093
- "topic": "_3XaZHa_topic",
4094
- "installBtnCopied": "_3XaZHa_installBtnCopied",
4095
- "stateDesc": "_3XaZHa_stateDesc",
4096
- "cardTitle": "_3XaZHa_cardTitle",
4097
- "star": "_3XaZHa_star",
4098
4163
  "list": "_3XaZHa_list",
4099
4164
  "card": "_3XaZHa_card",
4165
+ "cardTitle": "_3XaZHa_cardTitle",
4100
4166
  "versionBadge": "_3XaZHa_versionBadge",
4101
- "footer": "_3XaZHa_footer",
4102
- "body": "_3XaZHa_body",
4103
- "stats": "_3XaZHa_stats",
4104
- "installBtnInstalled": "_3XaZHa_installBtnInstalled",
4105
- "topics": "_3XaZHa_topics",
4106
- "cardHead": "_3XaZHa_cardHead",
4107
4167
  "installBtnUpdate": "_3XaZHa_installBtnUpdate",
4108
- "uninstallBtn": "_3XaZHa_uninstallBtn",
4109
- "updateBadge": "_3XaZHa_updateBadge",
4110
- "categoryBadge": "_3XaZHa_categoryBadge",
4111
- "cardMain": "_3XaZHa_cardMain",
4112
- "footLink": "_3XaZHa_footLink",
4168
+ "installBtnCopied": "_3XaZHa_installBtnCopied",
4169
+ "topics": "_3XaZHa_topics",
4170
+ "actions": "_3XaZHa_actions",
4171
+ "detailBtn": "_3XaZHa_detailBtn",
4172
+ "star": "_3XaZHa_star",
4173
+ "retryBtn": "_3XaZHa_retryBtn",
4174
+ "footer": "_3XaZHa_footer",
4175
+ "topic": "_3XaZHa_topic",
4176
+ "diagBtn": "_3XaZHa_diagBtn",
4177
+ "verified": "_3XaZHa_verified",
4113
4178
  "state": "_3XaZHa_state",
4179
+ "stateDesc": "_3XaZHa_stateDesc",
4114
4180
  "stateActions": "_3XaZHa_stateActions",
4115
- "verified": "_3XaZHa_verified",
4116
- "installBtn": "_3XaZHa_installBtn",
4117
- "retryBtn": "_3XaZHa_retryBtn",
4118
- "diagBtn": "_3XaZHa_diagBtn"
4181
+ "fork": "_3XaZHa_fork",
4182
+ "uninstallBtn": "_3XaZHa_uninstallBtn",
4183
+ "footLink": "_3XaZHa_footLink"
4119
4184
  };
4120
4185
  //#endregion
4121
4186
  //#region src/client/hooks/useIncrementalList.ts
@@ -4323,14 +4388,14 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4323
4388
  });
4324
4389
  var SectionTabs_module_css_default = {
4325
4390
  "root": "_7tvizq_root",
4326
- "tab": "_7tvizq_tab",
4391
+ "noticeIcon": "_7tvizq_noticeIcon",
4327
4392
  "tabIcon": "_7tvizq_tabIcon",
4393
+ "noticeBtn": "_7tvizq_noticeBtn",
4328
4394
  "tabActive": "_7tvizq_tabActive",
4329
- "noticeCount": "_7tvizq_noticeCount",
4330
4395
  "tabCount": "_7tvizq_tabCount",
4331
- "noticeIcon": "_7tvizq_noticeIcon",
4396
+ "tab": "_7tvizq_tab",
4332
4397
  "tabCountActive": "_7tvizq_tabCountActive",
4333
- "noticeBtn": "_7tvizq_noticeBtn"
4398
+ "noticeCount": "_7tvizq_noticeCount"
4334
4399
  };
4335
4400
  //#endregion
4336
4401
  //#region src/client/components/layout/SectionTabs.tsx
@@ -4407,42 +4472,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4407
4472
  css: css$7
4408
4473
  });
4409
4474
  var InstalledView_module_css_default = {
4410
- "exampleBadge": "_1nXeGW_exampleBadge",
4411
- "segLabel": "_1nXeGW_segLabel",
4412
- "rowDesc": "_1nXeGW_rowDesc",
4413
- "rowCategory": "_1nXeGW_rowCategory",
4475
+ "empty": "_1nXeGW_empty",
4476
+ "rowTitle": "_1nXeGW_rowTitle",
4477
+ "versionBadge": "_1nXeGW_versionBadge",
4478
+ "searchWrap": "_1nXeGW_searchWrap",
4479
+ "rowTitleLine": "_1nXeGW_rowTitleLine",
4414
4480
  "searchInput": "_1nXeGW_searchInput",
4415
- "rowMeta": "_1nXeGW_rowMeta",
4481
+ "segBtnActive": "_1nXeGW_segBtnActive",
4416
4482
  "statusPending": "_1nXeGW_statusPending",
4417
- "rowUpdate": "_1nXeGW_rowUpdate",
4418
- "searchWrap": "_1nXeGW_searchWrap",
4483
+ "rowSourceTag": "_1nXeGW_rowSourceTag",
4484
+ "rowMeta": "_1nXeGW_rowMeta",
4485
+ "rowUninstall": "_1nXeGW_rowUninstall",
4486
+ "segGroup": "_1nXeGW_segGroup",
4419
4487
  "root": "_1nXeGW_root",
4420
- "row": "_1nXeGW_row",
4421
- "rowRestart": "_1nXeGW_rowRestart",
4488
+ "rowDesc": "_1nXeGW_rowDesc",
4489
+ "exampleBadge": "_1nXeGW_exampleBadge",
4490
+ "segLabel": "_1nXeGW_segLabel",
4491
+ "toolbar": "_1nXeGW_toolbar",
4492
+ "emptyTitle": "_1nXeGW_emptyTitle",
4493
+ "rowDetail": "_1nXeGW_rowDetail",
4494
+ "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
4422
4495
  "statusDot": "_1nXeGW_statusDot",
4423
- "rowUninstall": "_1nXeGW_rowUninstall",
4424
- "rowRepo": "_1nXeGW_rowRepo",
4425
- "list": "_1nXeGW_list",
4496
+ "rowRestart": "_1nXeGW_rowRestart",
4497
+ "segBtn": "_1nXeGW_segBtn",
4498
+ "emptyDesc": "_1nXeGW_emptyDesc",
4426
4499
  "updateBadge": "_1nXeGW_updateBadge",
4427
- "toolbar": "_1nXeGW_toolbar",
4500
+ "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
4501
+ "rowUpdate": "_1nXeGW_rowUpdate",
4428
4502
  "rowActions": "_1nXeGW_rowActions",
4429
- "rowSourceTag": "_1nXeGW_rowSourceTag",
4503
+ "list": "_1nXeGW_list",
4504
+ "segRow": "_1nXeGW_segRow",
4430
4505
  "rowMain": "_1nXeGW_rowMain",
4431
- "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
4432
- "segBtnActive": "_1nXeGW_segBtnActive",
4433
- "empty": "_1nXeGW_empty",
4506
+ "rowCategory": "_1nXeGW_rowCategory",
4434
4507
  "statusInactive": "_1nXeGW_statusInactive",
4435
- "rowDetail": "_1nXeGW_rowDetail",
4436
- "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
4437
- "emptyDesc": "_1nXeGW_emptyDesc",
4438
- "exampleRow": "_1nXeGW_exampleRow",
4439
- "segRow": "_1nXeGW_segRow",
4440
- "segBtn": "_1nXeGW_segBtn",
4441
- "rowTitle": "_1nXeGW_rowTitle",
4442
- "segGroup": "_1nXeGW_segGroup",
4443
- "rowTitleLine": "_1nXeGW_rowTitleLine",
4444
- "versionBadge": "_1nXeGW_versionBadge",
4445
- "emptyTitle": "_1nXeGW_emptyTitle"
4508
+ "row": "_1nXeGW_row",
4509
+ "rowRepo": "_1nXeGW_rowRepo",
4510
+ "exampleRow": "_1nXeGW_exampleRow"
4446
4511
  };
4447
4512
  //#endregion
4448
4513
  //#region src/client/components/views/InstalledView.tsx
@@ -4688,28 +4753,28 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4688
4753
  css: css$6
4689
4754
  });
4690
4755
  var CustomInstallView_module_css_default = {
4691
- "installInput": "zISxCG_installInput",
4692
- "installCards": "zISxCG_installCards",
4693
- "channelOff": "zISxCG_channelOff",
4694
- "installBtn": "zISxCG_installBtn",
4695
- "installInsertBtn": "zISxCG_installInsertBtn",
4696
- "root": "zISxCG_root",
4697
4756
  "installRow": "zISxCG_installRow",
4698
- "helpCmd": "zISxCG_helpCmd",
4699
- "installCard": "zISxCG_installCard",
4700
- "installCardDisabled": "zISxCG_installCardDisabled",
4757
+ "root": "zISxCG_root",
4758
+ "installExample": "zISxCG_installExample",
4701
4759
  "installInputError": "zISxCG_installInputError",
4702
- "helpLine": "zISxCG_helpLine",
4703
4760
  "installError": "zISxCG_installError",
4761
+ "channelOff": "zISxCG_channelOff",
4704
4762
  "desc": "zISxCG_desc",
4705
- "installLabel": "zISxCG_installLabel",
4706
- "helpNote": "zISxCG_helpNote",
4763
+ "installInput": "zISxCG_installInput",
4764
+ "installCardDisabled": "zISxCG_installCardDisabled",
4765
+ "helpBody": "zISxCG_helpBody",
4707
4766
  "channelOffText": "zISxCG_channelOffText",
4767
+ "helpNote": "zISxCG_helpNote",
4768
+ "installCard": "zISxCG_installCard",
4769
+ "installLabel": "zISxCG_installLabel",
4770
+ "installCards": "zISxCG_installCards",
4708
4771
  "channelOffBtn": "zISxCG_channelOffBtn",
4709
- "installExample": "zISxCG_installExample",
4710
- "helpBody": "zISxCG_helpBody",
4772
+ "helpLine": "zISxCG_helpLine",
4773
+ "installHelpBtn": "zISxCG_installHelpBtn",
4774
+ "helpCmd": "zISxCG_helpCmd",
4711
4775
  "installCardHead": "zISxCG_installCardHead",
4712
- "installHelpBtn": "zISxCG_installHelpBtn"
4776
+ "installInsertBtn": "zISxCG_installInsertBtn",
4777
+ "installBtn": "zISxCG_installBtn"
4713
4778
  };
4714
4779
  //#endregion
4715
4780
  //#region src/client/components/views/CustomInstallView.tsx
@@ -4999,30 +5064,30 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4999
5064
  css: css$5
5000
5065
  });
5001
5066
  var SettingsView_module_css_default = {
5067
+ "content": "_506LLG_content",
5002
5068
  "textInput": "_506LLG_textInput",
5003
- "settingTitle": "_506LLG_settingTitle",
5069
+ "settingControlStack": "_506LLG_settingControlStack",
5070
+ "settingDesc": "_506LLG_settingDesc",
5071
+ "settingRow": "_506LLG_settingRow",
5072
+ "settingLabel": "_506LLG_settingLabel",
5073
+ "root": "_506LLG_root",
5004
5074
  "navItemActive": "_506LLG_navItemActive",
5075
+ "pageTitle": "_506LLG_pageTitle",
5005
5076
  "pageDesc": "_506LLG_pageDesc",
5077
+ "card": "_506LLG_card",
5006
5078
  "proxyHintOk": "_506LLG_proxyHintOk",
5007
- "navItem": "_506LLG_navItem",
5008
- "settingLabel": "_506LLG_settingLabel",
5009
- "settingRowStack": "_506LLG_settingRowStack",
5010
- "settingDesc": "_506LLG_settingDesc",
5079
+ "navIcon": "_506LLG_navIcon",
5080
+ "proxyHint": "_506LLG_proxyHint",
5011
5081
  "proxyHintFail": "_506LLG_proxyHintFail",
5012
5082
  "pageHeader": "_506LLG_pageHeader",
5013
- "root": "_506LLG_root",
5014
- "navIcon": "_506LLG_navIcon",
5015
5083
  "sidebar": "_506LLG_sidebar",
5016
- "settingControlStack": "_506LLG_settingControlStack",
5017
- "settingRow": "_506LLG_settingRow",
5018
- "content": "_506LLG_content",
5019
- "proxyHint": "_506LLG_proxyHint",
5020
5084
  "controlDropdown": "_506LLG_controlDropdown",
5085
+ "navItem": "_506LLG_navItem",
5021
5086
  "resetBtn": "_506LLG_resetBtn",
5022
- "pageTitle": "_506LLG_pageTitle",
5023
- "settingControl": "_506LLG_settingControl",
5087
+ "settingTitle": "_506LLG_settingTitle",
5088
+ "settingRowStack": "_506LLG_settingRowStack",
5024
5089
  "proxyControl": "_506LLG_proxyControl",
5025
- "card": "_506LLG_card"
5090
+ "settingControl": "_506LLG_settingControl"
5026
5091
  };
5027
5092
  //#endregion
5028
5093
  //#region \0dsh-css:src/client/styles/Dropdown.module.css.mjs
@@ -5041,18 +5106,18 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5041
5106
  css: css$4
5042
5107
  });
5043
5108
  var Dropdown_module_css_default = {
5044
- "dropdownArrow": "B_Gxsq_dropdownArrow",
5109
+ "dropdown": "B_Gxsq_dropdown",
5110
+ "dropdownBtn": "B_Gxsq_dropdownBtn",
5045
5111
  "dropdownItem": "B_Gxsq_dropdownItem",
5046
5112
  "dropdownItemActive": "B_Gxsq_dropdownItemActive",
5047
- "dropdownFill": "B_Gxsq_dropdownFill",
5048
5113
  "dropdownLabel": "B_Gxsq_dropdownLabel",
5049
- "dropdownPanel": "B_Gxsq_dropdownPanel",
5050
- "dropdown": "B_Gxsq_dropdown",
5051
- "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
5052
- "dropdownBtn": "B_Gxsq_dropdownBtn",
5053
- "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
5054
5114
  "dropdownCount": "B_Gxsq_dropdownCount",
5055
- "dropdownCountActive": "B_Gxsq_dropdownCountActive"
5115
+ "dropdownFill": "B_Gxsq_dropdownFill",
5116
+ "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
5117
+ "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
5118
+ "dropdownCountActive": "B_Gxsq_dropdownCountActive",
5119
+ "dropdownArrow": "B_Gxsq_dropdownArrow",
5120
+ "dropdownPanel": "B_Gxsq_dropdownPanel"
5056
5121
  };
5057
5122
  //#endregion
5058
5123
  //#region \0dsh-css:src/client/styles/Toggle.module.css.mjs
@@ -5071,9 +5136,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5071
5136
  css: css$3
5072
5137
  });
5073
5138
  var Toggle_module_css_default = {
5139
+ "toggle": "k-cD4G_toggle",
5074
5140
  "toggleOn": "k-cD4G_toggleOn",
5075
- "knob": "k-cD4G_knob",
5076
- "toggle": "k-cD4G_toggle"
5141
+ "knob": "k-cD4G_knob"
5077
5142
  };
5078
5143
  //#endregion
5079
5144
  //#region src/client/components/ui/Toggle.tsx
@@ -5174,28 +5239,28 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5174
5239
  });
5175
5240
  var DiagnosticsView_module_css_default = {
5176
5241
  "badgeFail": "k9eRya_badgeFail",
5177
- "envRow": "k9eRya_envRow",
5178
- "display": "k9eRya_display",
5179
- "summaryFail": "k9eRya_summaryFail",
5242
+ "summary": "k9eRya_summary",
5243
+ "head": "k9eRya_head",
5244
+ "envCopyBtn": "k9eRya_envCopyBtn",
5245
+ "runBtn": "k9eRya_runBtn",
5180
5246
  "summaryRunning": "k9eRya_summaryRunning",
5181
- "envTitle": "k9eRya_envTitle",
5247
+ "meta": "k9eRya_meta",
5182
5248
  "headHint": "k9eRya_headHint",
5183
5249
  "badgeRunning": "k9eRya_badgeRunning",
5184
- "envDesc": "k9eRya_envDesc",
5250
+ "name": "k9eRya_name",
5251
+ "summaryOk": "k9eRya_summaryOk",
5252
+ "display": "k9eRya_display",
5185
5253
  "badge": "k9eRya_badge",
5186
- "runBtn": "k9eRya_runBtn",
5187
- "head": "k9eRya_head",
5188
- "envLabel": "k9eRya_envLabel",
5189
- "badgeOk": "k9eRya_badgeOk",
5190
5254
  "diagPulse": "k9eRya_diagPulse",
5191
5255
  "badgeIdle": "k9eRya_badgeIdle",
5192
- "summary": "k9eRya_summary",
5193
- "summaryOk": "k9eRya_summaryOk",
5194
- "meta": "k9eRya_meta",
5195
5256
  "row": "k9eRya_row",
5257
+ "envRow": "k9eRya_envRow",
5258
+ "badgeOk": "k9eRya_badgeOk",
5259
+ "envLabel": "k9eRya_envLabel",
5260
+ "envTitle": "k9eRya_envTitle",
5196
5261
  "panel": "k9eRya_panel",
5197
- "envCopyBtn": "k9eRya_envCopyBtn",
5198
- "name": "k9eRya_name"
5262
+ "envDesc": "k9eRya_envDesc",
5263
+ "summaryFail": "k9eRya_summaryFail"
5199
5264
  };
5200
5265
  //#endregion
5201
5266
  //#region src/client/components/views/DiagnosticsView.tsx
@@ -5370,57 +5435,57 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5370
5435
  css: css$1
5371
5436
  });
5372
5437
  var LogsView_module_css_default = {
5373
- "list": "_3j77BW_list",
5374
- "pathDraft": "_3j77BW_pathDraft",
5375
- "previewRow": "_3j77BW_previewRow",
5376
- "pathDialogFoot": "_3j77BW_pathDialogFoot",
5377
- "pathRow": "_3j77BW_pathRow",
5378
- "linkBtn": "_3j77BW_linkBtn",
5379
- "filterChip": "_3j77BW_filterChip",
5380
- "clearBtn": "_3j77BW_clearBtn",
5381
- "search": "_3j77BW_search",
5382
- "foot": "_3j77BW_foot",
5383
- "headHint": "_3j77BW_headHint",
5384
- "filterBar": "_3j77BW_filterBar",
5385
- "footCount": "_3j77BW_footCount",
5386
- "headActions": "_3j77BW_headActions",
5387
- "badge": "_3j77BW_badge",
5438
+ "badgeInfo": "_3j77BW_badgeInfo",
5388
5439
  "catBadge": "_3j77BW_catBadge",
5389
- "pathDialogDesc": "_3j77BW_pathDialogDesc",
5390
- "catSystem": "_3j77BW_catSystem",
5391
- "panel": "_3j77BW_panel",
5392
- "catUpdate": "_3j77BW_catUpdate",
5440
+ "catDiagnostics": "_3j77BW_catDiagnostics",
5393
5441
  "pathDialogRow": "_3j77BW_pathDialogRow",
5394
- "time": "_3j77BW_time",
5395
- "badgeError": "_3j77BW_badgeError",
5442
+ "badge": "_3j77BW_badge",
5396
5443
  "badgeWarn": "_3j77BW_badgeWarn",
5397
- "catUninstall": "_3j77BW_catUninstall",
5398
- "catDiagnostics": "_3j77BW_catDiagnostics",
5399
- "empty": "_3j77BW_empty",
5400
- "pathDialogHint": "_3j77BW_pathDialogHint",
5444
+ "footCount": "_3j77BW_footCount",
5445
+ "btn": "_3j77BW_btn",
5401
5446
  "entry": "_3j77BW_entry",
5402
5447
  "pathText": "_3j77BW_pathText",
5403
- "actions": "_3j77BW_actions",
5404
- "filterChipActive": "_3j77BW_filterChipActive",
5405
- "logList": "_3j77BW_logList",
5406
- "footPath": "_3j77BW_footPath",
5407
- "footActions": "_3j77BW_footActions",
5408
- "badgeSuccess": "_3j77BW_badgeSuccess",
5409
- "catSettings": "_3j77BW_catSettings",
5410
- "pathDialog": "_3j77BW_pathDialog",
5411
- "badgeInfo": "_3j77BW_badgeInfo",
5412
- "btn": "_3j77BW_btn",
5413
- "event": "_3j77BW_event",
5414
- "message": "_3j77BW_message",
5448
+ "pathDialogDesc": "_3j77BW_pathDialogDesc",
5449
+ "previewRow": "_3j77BW_previewRow",
5415
5450
  "searchInput": "_3j77BW_searchInput",
5451
+ "list": "_3j77BW_list",
5452
+ "message": "_3j77BW_message",
5453
+ "foot": "_3j77BW_foot",
5454
+ "catUninstall": "_3j77BW_catUninstall",
5455
+ "catUpdate": "_3j77BW_catUpdate",
5456
+ "panel": "_3j77BW_panel",
5416
5457
  "pathDialogReset": "_3j77BW_pathDialogReset",
5417
- "badgeDebug": "_3j77BW_badgeDebug",
5418
- "head": "_3j77BW_head",
5419
- "footFail": "_3j77BW_footFail",
5458
+ "logList": "_3j77BW_logList",
5459
+ "pathLabel": "_3j77BW_pathLabel",
5460
+ "search": "_3j77BW_search",
5420
5461
  "moreEnd": "_3j77BW_moreEnd",
5421
5462
  "more": "_3j77BW_more",
5463
+ "badgeDebug": "_3j77BW_badgeDebug",
5464
+ "filterChipActive": "_3j77BW_filterChipActive",
5465
+ "pathDialog": "_3j77BW_pathDialog",
5466
+ "pathDialogHint": "_3j77BW_pathDialogHint",
5467
+ "footActions": "_3j77BW_footActions",
5468
+ "badgeError": "_3j77BW_badgeError",
5469
+ "catSystem": "_3j77BW_catSystem",
5470
+ "catSettings": "_3j77BW_catSettings",
5471
+ "time": "_3j77BW_time",
5472
+ "clearBtn": "_3j77BW_clearBtn",
5422
5473
  "catInstall": "_3j77BW_catInstall",
5423
- "pathLabel": "_3j77BW_pathLabel"
5474
+ "pathRow": "_3j77BW_pathRow",
5475
+ "event": "_3j77BW_event",
5476
+ "actions": "_3j77BW_actions",
5477
+ "footPath": "_3j77BW_footPath",
5478
+ "footFail": "_3j77BW_footFail",
5479
+ "pathDraft": "_3j77BW_pathDraft",
5480
+ "headActions": "_3j77BW_headActions",
5481
+ "filterBar": "_3j77BW_filterBar",
5482
+ "badgeSuccess": "_3j77BW_badgeSuccess",
5483
+ "linkBtn": "_3j77BW_linkBtn",
5484
+ "head": "_3j77BW_head",
5485
+ "headHint": "_3j77BW_headHint",
5486
+ "empty": "_3j77BW_empty",
5487
+ "pathDialogFoot": "_3j77BW_pathDialogFoot",
5488
+ "filterChip": "_3j77BW_filterChip"
5424
5489
  };
5425
5490
  //#endregion
5426
5491
  //#region src/client/components/modals/LogsModal.tsx
@@ -6660,7 +6725,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
6660
6725
  openSection: settingsSection,
6661
6726
  onConsumedOpenSection: () => setSettingsSection(null)
6662
6727
  }), showHubUpdate && (0, react.createElement)(HubUpdateModal, {
6663
- info: catalog.hubUpdateInfo ?? { version: "1.4.2" },
6728
+ info: catalog.hubUpdateInfo ?? { version: "1.4.4" },
6664
6729
  lang,
6665
6730
  t,
6666
6731
  hasUpdate: catalog.hubHasUpdate,