dsh-plugin 2.0.2 → 2.0.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
@@ -301,6 +301,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
301
301
  failGitMissingHint: "系统找不到 git 命令(Git 未安装或未加入系统 PATH),无法从 GitHub 源安装插件。请先安装 Git(如 git-scm.com/downloads)或把 git 加入 PATH,重启 DSH 后重试。这不是插件本身的问题。",
302
302
  failPnpmMissingHint: "安装器找到了 dsh,但系统里没有 pnpm 命令(dsh 用它来管理 profile 插件)。请先安装 pnpm(如 npm install -g pnpm),确认 pnpm 已加入 PATH 后重试。这不是插件本身的问题。",
303
303
  failNpmMissingHint: "系统找不到 npm 命令(npm 未安装或未加入系统 PATH),无法执行全局安装。请先安装 Node.js(自带 npm),确认 npm 已加入 PATH 后重试。这不是插件本身的问题。",
304
+ failBuildToolchainHint: "这个插件依赖需要在本机编译的原生模块,但机器上缺少可用的编译工具链。请按系统安装后重试:Windows 安装 Visual Studio Build Tools(含「使用 C++ 的桌面开发」);macOS 执行 xcode-select --install;Linux 安装 build-essential、python3 与 make。若装好工具链后仍然失败,再向插件作者反馈,请其提供预构建产物。",
304
305
  failPnpmStoreHint: "安装器调用 pnpm 时报「store 位置不匹配」(ERR_PNPM_UNEXPECTED_STORE):你的 profile 目录里旧插件依赖是用另一个大版本的 pnpm 生成的,当前 pnpm 出于安全不认旧目录,导致任何插件装进该 profile 都会失败。请删除该 profile 目录下的 node_modules 与 pnpm-lock.yaml(可先到「系统日志」或 ~/.dsh/profiles/<profile>/hub.log 查看完整报错),再重新安装。这不是插件本身的问题。",
305
306
  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 补丁条目后重试。",
306
307
  failPnpmMissingDepTarget: "{pkg} 在 npm registry 上不存在(404)",
@@ -321,6 +322,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
321
322
  failReason_pnpmMissing: "安装器通过 pnpm 安装插件,但机器上找不到 pnpm。",
322
323
  failKind_npmMissing: "本机缺少 npm",
323
324
  failReason_npmMissing: "安装流程需要 npm,但机器上找不到它。",
325
+ failKind_buildToolchainMissing: "本机缺少原生构建工具链",
326
+ failReason_buildToolchainMissing: "这个插件依赖需要在本机编译的原生模块,但找不到可用的编译器。",
324
327
  failKind_pnpmStore: "pnpm store 版本不匹配",
325
328
  failReason_pnpmStore: "profile 里的依赖由另一大版本的 pnpm 生成,当前 pnpm 不认。",
326
329
  failKind_pnpmWorkspace: "workspace 根校验阻止了安装",
@@ -702,6 +705,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
702
705
  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.",
703
706
  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.",
704
707
  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.",
708
+ failBuildToolchainHint: "This plugin depends on a native module that must be compiled on your machine, but no usable build toolchain is available. Install one and retry: on Windows install Visual Studio Build Tools with the \"Desktop development with C++\" workload; on macOS run xcode-select --install; on Linux install build-essential, python3 and make. If it still fails after the toolchain is installed, report it to the plugin author and ask for a prebuilt package.",
705
709
  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.",
706
710
  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.",
707
711
  failPnpmMissingDepTarget: "{pkg} was not found on the npm registry (404)",
@@ -722,6 +726,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
722
726
  failReason_pnpmMissing: "The installer uses pnpm to add plugins, but pnpm cannot be found.",
723
727
  failKind_npmMissing: "npm is not installed on this machine",
724
728
  failReason_npmMissing: "The install flow needs npm, but it cannot be found.",
729
+ failKind_buildToolchainMissing: "native build toolchain is missing",
730
+ failReason_buildToolchainMissing: "A dependency of this plugin must be compiled locally, but no usable compiler was found.",
725
731
  failKind_pnpmStore: "pnpm store version mismatch",
726
732
  failReason_pnpmStore: "The profile dependencies were written by a different pnpm major, which the current pnpm does not accept.",
727
733
  failKind_pnpmWorkspace: "workspace-root check blocked the install",
@@ -828,42 +834,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
828
834
  css: css$11
829
835
  });
830
836
  var Header_module_css_default = {
837
+ "version": "qikqja_version",
838
+ "adText": "qikqja_adText",
839
+ "githubLink": "qikqja_githubLink",
840
+ "versionBtn": "qikqja_versionBtn",
841
+ "adBanner": "qikqja_adBanner",
831
842
  "header": "qikqja_header",
832
- "title": "qikqja_title",
833
- "controls": "qikqja_controls",
843
+ "headerRight": "qikqja_headerRight",
844
+ "tabs": "qikqja_tabs",
845
+ "segLabel": "qikqja_segLabel",
846
+ "segBtnActive": "qikqja_segBtnActive",
834
847
  "resultSeg": "qikqja_resultSeg",
835
- "adBanner": "qikqja_adBanner",
836
- "tabCount": "qikqja_tabCount",
837
- "tabsRow": "qikqja_tabsRow",
848
+ "sortGroup": "qikqja_sortGroup",
849
+ "headerTitleRow": "qikqja_headerTitleRow",
838
850
  "segGroup": "qikqja_segGroup",
839
- "segBtn": "qikqja_segBtn",
840
- "searchRow": "qikqja_searchRow",
841
- "version": "qikqja_version",
842
- "headerRight": "qikqja_headerRight",
851
+ "adBadge": "qikqja_adBadge",
843
852
  "langBtn": "qikqja_langBtn",
844
- "adArrow": "qikqja_adArrow",
845
- "githubLink": "qikqja_githubLink",
846
- "tabs": "qikqja_tabs",
853
+ "aboutBtn": "qikqja_aboutBtn",
854
+ "tabCount": "qikqja_tabCount",
847
855
  "tabActive": "qikqja_tabActive",
856
+ "taglineLink": "qikqja_taglineLink",
848
857
  "copyIcon": "qikqja_copyIcon",
849
- "aboutBtn": "qikqja_aboutBtn",
850
- "headerTitleRow": "qikqja_headerTitleRow",
851
- "sortGroup": "qikqja_sortGroup",
852
- "segBtnActive": "qikqja_segBtnActive",
853
- "resultCount": "qikqja_resultCount",
854
- "githubIcon": "qikqja_githubIcon",
855
- "segLabel": "qikqja_segLabel",
858
+ "tabsRow": "qikqja_tabsRow",
859
+ "segBtn": "qikqja_segBtn",
856
860
  "root": "qikqja_root",
857
- "versionBtn": "qikqja_versionBtn",
858
- "brandTitle": "qikqja_brandTitle",
859
- "adText": "qikqja_adText",
860
- "taglineLink": "qikqja_taglineLink",
861
+ "githubIcon": "qikqja_githubIcon",
861
862
  "logoIcon": "qikqja_logoIcon",
862
- "adBadge": "qikqja_adBadge",
863
- "hubUpdateBadge": "qikqja_hubUpdateBadge",
864
- "tagline": "qikqja_tagline",
865
863
  "search": "qikqja_search",
866
- "tab": "qikqja_tab"
864
+ "adArrow": "qikqja_adArrow",
865
+ "controls": "qikqja_controls",
866
+ "brandTitle": "qikqja_brandTitle",
867
+ "title": "qikqja_title",
868
+ "tagline": "qikqja_tagline",
869
+ "hubUpdateBadge": "qikqja_hubUpdateBadge",
870
+ "searchRow": "qikqja_searchRow",
871
+ "tab": "qikqja_tab",
872
+ "resultCount": "qikqja_resultCount"
867
873
  };
868
874
  //#endregion
869
875
  //#region \0dsh-css:src/client/styles/Modal.module.css.mjs
@@ -882,141 +888,141 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
882
888
  css: css$10
883
889
  });
884
890
  var Modal_module_css_default = {
891
+ "failedCopyHint": "BiQ1zG_failedCopyHint",
892
+ "dangerConfirm": "BiQ1zG_dangerConfirm",
893
+ "resultRestarting": "BiQ1zG_resultRestarting",
894
+ "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
895
+ "modalLink": "BiQ1zG_modalLink",
896
+ "uninstallConfirm": "BiQ1zG_uninstallConfirm",
897
+ "noticeFoot": "BiQ1zG_noticeFoot",
898
+ "failRow": "BiQ1zG_failRow",
899
+ "errorBox": "BiQ1zG_errorBox",
900
+ "queueRowTarget": "BiQ1zG_queueRowTarget",
901
+ "noticeMain": "BiQ1zG_noticeMain",
902
+ "detailStatusText": "BiQ1zG_detailStatusText",
903
+ "restartNow": "BiQ1zG_restartNow",
904
+ "toastIn": "BiQ1zG_toastIn",
905
+ "errorTitle": "BiQ1zG_errorTitle",
906
+ "noticeVersion": "BiQ1zG_noticeVersion",
907
+ "noticeRowMain": "BiQ1zG_noticeRowMain",
885
908
  "detailRow": "BiQ1zG_detailRow",
886
- "progressFillFail": "BiQ1zG_progressFillFail",
887
- "linkIcon": "BiQ1zG_linkIcon",
909
+ "trustHint": "BiQ1zG_trustHint",
910
+ "resultDesc": "BiQ1zG_resultDesc",
911
+ "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
912
+ "failCopy": "BiQ1zG_failCopy",
913
+ "detailLabel": "BiQ1zG_detailLabel",
888
914
  "failList": "BiQ1zG_failList",
889
- "pendingRowActions": "BiQ1zG_pendingRowActions",
890
- "noticeHead": "BiQ1zG_noticeHead",
891
- "failPrepareHint": "BiQ1zG_failPrepareHint",
892
- "modalCmdCopy": "BiQ1zG_modalCmdCopy",
893
- "progress": "BiQ1zG_progress",
894
- "queuedHint": "BiQ1zG_queuedHint",
895
- "resultTitle": "BiQ1zG_resultTitle",
896
- "noticeRow": "BiQ1zG_noticeRow",
897
- "modalCmd": "BiQ1zG_modalCmd",
898
- "noticeVersion": "BiQ1zG_noticeVersion",
899
- "failHead": "BiQ1zG_failHead",
900
- "errorCopySoft": "BiQ1zG_errorCopySoft",
901
915
  "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
916
+ "failPrepareHint": "BiQ1zG_failPrepareHint",
917
+ "modalTitleQueued": "BiQ1zG_modalTitleQueued",
918
+ "modalWide": "BiQ1zG_modalWide",
919
+ "modalTitle": "BiQ1zG_modalTitle",
920
+ "modalBody": "BiQ1zG_modalBody",
921
+ "noticeIgnore": "BiQ1zG_noticeIgnore",
902
922
  "detailDim": "BiQ1zG_detailDim",
903
- "modalClose": "BiQ1zG_modalClose",
904
- "modalActions": "BiQ1zG_modalActions",
923
+ "errorCopySoft": "BiQ1zG_errorCopySoft",
924
+ "progressTrack": "BiQ1zG_progressTrack",
925
+ "modalCmdText": "BiQ1zG_modalCmdText",
926
+ "queueRowStatus": "BiQ1zG_queueRowStatus",
927
+ "modalCmd": "BiQ1zG_modalCmd",
928
+ "confirmIcon": "BiQ1zG_confirmIcon",
929
+ "confirmPrimary": "BiQ1zG_confirmPrimary",
905
930
  "result": "BiQ1zG_result",
906
- "failRow": "BiQ1zG_failRow",
931
+ "modalCloseIcon": "BiQ1zG_modalCloseIcon",
932
+ "resultTitle": "BiQ1zG_resultTitle",
933
+ "progressFillFail": "BiQ1zG_progressFillFail",
934
+ "detailStatusPending": "BiQ1zG_detailStatusPending",
935
+ "aboutMeta": "BiQ1zG_aboutMeta",
936
+ "queueRow": "BiQ1zG_queueRow",
937
+ "queuedHint": "BiQ1zG_queuedHint",
938
+ "noticeRow": "BiQ1zG_noticeRow",
939
+ "noticeTextFail": "BiQ1zG_noticeTextFail",
940
+ "errorHint": "BiQ1zG_errorHint",
941
+ "failNetworkTarget": "BiQ1zG_failNetworkTarget",
907
942
  "failKindUninstall": "BiQ1zG_failKindUninstall",
908
- "failClear": "BiQ1zG_failClear",
943
+ "queueRowPct": "BiQ1zG_queueRowPct",
944
+ "detailStatusRunning": "BiQ1zG_detailStatusRunning",
909
945
  "noticeList": "BiQ1zG_noticeList",
910
- "toastIn": "BiQ1zG_toastIn",
911
- "modalTitleBusy": "BiQ1zG_modalTitleBusy",
912
- "failKindInstall": "BiQ1zG_failKindInstall",
913
- "detailMono": "BiQ1zG_detailMono",
914
- "queueRowTrack": "BiQ1zG_queueRowTrack",
915
- "modalCopy": "BiQ1zG_modalCopy",
916
- "trustHint": "BiQ1zG_trustHint",
917
- "progressHead": "BiQ1zG_progressHead",
918
- "detailUpdateHint": "BiQ1zG_detailUpdateHint",
919
- "modalCancel": "BiQ1zG_modalCancel",
920
946
  "restartNowWarning": "BiQ1zG_restartNowWarning",
921
- "modalValue": "BiQ1zG_modalValue",
922
- "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
923
- "modalIn": "BiQ1zG_modalIn",
924
- "modalLink": "BiQ1zG_modalLink",
925
- "detailGrid": "BiQ1zG_detailGrid",
926
- "modalTitleQueued": "BiQ1zG_modalTitleQueued",
927
- "aboutContent": "BiQ1zG_aboutContent",
928
- "failRepo": "BiQ1zG_failRepo",
929
- "modalBody": "BiQ1zG_modalBody",
930
- "resultCheckIcon": "BiQ1zG_resultCheckIcon",
931
- "restartNow": "BiQ1zG_restartNow",
932
- "cliOnlyHint": "BiQ1zG_cliOnlyHint",
933
- "dangerConfirm": "BiQ1zG_dangerConfirm",
947
+ "queueSectionTitle": "BiQ1zG_queueSectionTitle",
948
+ "modalDesc": "BiQ1zG_modalDesc",
949
+ "pendingRowStatus": "BiQ1zG_pendingRowStatus",
950
+ "noticeTime": "BiQ1zG_noticeTime",
951
+ "queueRowDesc": "BiQ1zG_queueRowDesc",
934
952
  "failKindTitle": "BiQ1zG_failKindTitle",
935
- "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
936
- "detailPath": "BiQ1zG_detailPath",
937
- "failedCopyHint": "BiQ1zG_failedCopyHint",
938
- "aboutModal": "BiQ1zG_aboutModal",
939
- "queueSection": "BiQ1zG_queueSection",
953
+ "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
954
+ "detailPathActions": "BiQ1zG_detailPathActions",
955
+ "resultCheck": "BiQ1zG_resultCheck",
956
+ "progress": "BiQ1zG_progress",
957
+ "failHead": "BiQ1zG_failHead",
940
958
  "failRepoLabel": "BiQ1zG_failRepoLabel",
941
- "errorBox": "BiQ1zG_errorBox",
942
- "toastFail": "BiQ1zG_toastFail",
943
- "failKind": "BiQ1zG_failKind",
944
- "queueRow": "BiQ1zG_queueRow",
945
- "logModal": "BiQ1zG_logModal",
946
- "confirmIcon": "BiQ1zG_confirmIcon",
947
- "failReason": "BiQ1zG_failReason",
948
- "detailStars": "BiQ1zG_detailStars",
949
- "overlayIn": "BiQ1zG_overlayIn",
950
- "modalTitle": "BiQ1zG_modalTitle",
959
+ "restartLater": "BiQ1zG_restartLater",
951
960
  "detailValue": "BiQ1zG_detailValue",
952
- "overlay": "BiQ1zG_overlay",
953
- "queueRowTarget": "BiQ1zG_queueRowTarget",
954
- "hubUpdateModal": "BiQ1zG_hubUpdateModal",
955
- "confirmIconDanger": "BiQ1zG_confirmIconDanger",
956
- "modalWide": "BiQ1zG_modalWide",
957
- "failCopy": "BiQ1zG_failCopy",
958
- "queueSectionTitle": "BiQ1zG_queueSectionTitle",
959
- "progressFill": "BiQ1zG_progressFill",
960
- "uninstallConfirm": "BiQ1zG_uninstallConfirm",
961
+ "modalCmdCopy": "BiQ1zG_modalCmdCopy",
961
962
  "failEmpty": "BiQ1zG_failEmpty",
962
- "noticeMain": "BiQ1zG_noticeMain",
963
- "queueRowBody": "BiQ1zG_queueRowBody",
964
- "modalInstall": "BiQ1zG_modalInstall",
965
- "modalRow": "BiQ1zG_modalRow",
966
- "confirmPrimary": "BiQ1zG_confirmPrimary",
967
- "resultCheck": "BiQ1zG_resultCheck",
968
- "failNetworkTarget": "BiQ1zG_failNetworkTarget",
969
- "failRepoUrl": "BiQ1zG_failRepoUrl",
970
- "detailLabel": "BiQ1zG_detailLabel",
971
- "queueRowPct": "BiQ1zG_queueRowPct",
972
- "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
973
- "aboutMeta": "BiQ1zG_aboutMeta",
974
- "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
975
- "modal": "BiQ1zG_modal",
976
- "detailStatusPending": "BiQ1zG_detailStatusPending",
977
- "modalHead": "BiQ1zG_modalHead",
978
- "noticeRemove": "BiQ1zG_noticeRemove",
979
- "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
980
- "noticeFoot": "BiQ1zG_noticeFoot",
981
- "progressTrack": "BiQ1zG_progressTrack",
982
- "errorTitle": "BiQ1zG_errorTitle",
983
963
  "noticeRowOk": "BiQ1zG_noticeRowOk",
984
- "pendingRowStatus": "BiQ1zG_pendingRowStatus",
985
- "resultRestarting": "BiQ1zG_resultRestarting",
986
- "noticeTextFail": "BiQ1zG_noticeTextFail",
987
- "detailPathBtn": "BiQ1zG_detailPathBtn",
988
- "confirmIconWrap": "BiQ1zG_confirmIconWrap",
989
- "detailPathText": "BiQ1zG_detailPathText",
990
- "modalCloseIcon": "BiQ1zG_modalCloseIcon",
991
- "detailPathActions": "BiQ1zG_detailPathActions",
992
- "detailLink": "BiQ1zG_detailLink",
993
- "detailStatusText": "BiQ1zG_detailStatusText",
994
- "modalCmdText": "BiQ1zG_modalCmdText",
995
- "detailModal": "BiQ1zG_detailModal",
996
- "failMisjudgeLink": "BiQ1zG_failMisjudgeLink",
997
- "failDiagBtn": "BiQ1zG_failDiagBtn",
998
- "restartLater": "BiQ1zG_restartLater",
999
- "noticeRowMain": "BiQ1zG_noticeRowMain",
1000
- "queueRowStatus": "BiQ1zG_queueRowStatus",
1001
- "errorHint": "BiQ1zG_errorHint",
1002
- "modalLabel": "BiQ1zG_modalLabel",
1003
- "progressText": "BiQ1zG_progressText",
964
+ "toastFail": "BiQ1zG_toastFail",
965
+ "hubUpdateModal": "BiQ1zG_hubUpdateModal",
1004
966
  "queueRowHead": "BiQ1zG_queueRowHead",
1005
- "errorModal": "BiQ1zG_errorModal",
1006
- "detailArrow": "BiQ1zG_detailArrow",
967
+ "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
968
+ "queueSection": "BiQ1zG_queueSection",
1007
969
  "stripCancel": "BiQ1zG_stripCancel",
1008
- "detailStatusRunning": "BiQ1zG_detailStatusRunning",
1009
- "modalDesc": "BiQ1zG_modalDesc",
1010
- "noticeIgnore": "BiQ1zG_noticeIgnore",
970
+ "progressHead": "BiQ1zG_progressHead",
1011
971
  "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
1012
- "resultDesc": "BiQ1zG_resultDesc",
1013
- "noticeTextOk": "BiQ1zG_noticeTextOk",
1014
- "noticeTime": "BiQ1zG_noticeTime",
972
+ "failKindInstall": "BiQ1zG_failKindInstall",
973
+ "detailArrow": "BiQ1zG_detailArrow",
974
+ "detailLink": "BiQ1zG_detailLink",
975
+ "aboutContent": "BiQ1zG_aboutContent",
976
+ "cliOnlyHint": "BiQ1zG_cliOnlyHint",
977
+ "detailPath": "BiQ1zG_detailPath",
978
+ "noticeRemove": "BiQ1zG_noticeRemove",
979
+ "modalTitleBusy": "BiQ1zG_modalTitleBusy",
980
+ "modalActions": "BiQ1zG_modalActions",
981
+ "detailModal": "BiQ1zG_detailModal",
982
+ "logModal": "BiQ1zG_logModal",
983
+ "failRepoUrl": "BiQ1zG_failRepoUrl",
984
+ "detailGrid": "BiQ1zG_detailGrid",
985
+ "resultCheckIcon": "BiQ1zG_resultCheckIcon",
986
+ "modal": "BiQ1zG_modal",
987
+ "progressFill": "BiQ1zG_progressFill",
1015
988
  "helpModal": "BiQ1zG_helpModal",
989
+ "modalClose": "BiQ1zG_modalClose",
990
+ "pendingRowActions": "BiQ1zG_pendingRowActions",
991
+ "failDiagBtn": "BiQ1zG_failDiagBtn",
992
+ "confirmIconDanger": "BiQ1zG_confirmIconDanger",
993
+ "modalCancel": "BiQ1zG_modalCancel",
994
+ "detailPathText": "BiQ1zG_detailPathText",
995
+ "noticeTextOk": "BiQ1zG_noticeTextOk",
1016
996
  "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
1017
- "queueRowDesc": "BiQ1zG_queueRowDesc",
997
+ "failReason": "BiQ1zG_failReason",
998
+ "confirmIconWrap": "BiQ1zG_confirmIconWrap",
999
+ "queueRowTrack": "BiQ1zG_queueRowTrack",
1000
+ "modalCopy": "BiQ1zG_modalCopy",
1001
+ "errorModal": "BiQ1zG_errorModal",
1002
+ "failBigIssue": "BiQ1zG_failBigIssue",
1003
+ "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
1004
+ "failRepo": "BiQ1zG_failRepo",
1005
+ "linkIcon": "BiQ1zG_linkIcon",
1006
+ "modalIn": "BiQ1zG_modalIn",
1007
+ "overlay": "BiQ1zG_overlay",
1008
+ "aboutModal": "BiQ1zG_aboutModal",
1009
+ "detailPathBtn": "BiQ1zG_detailPathBtn",
1010
+ "failClear": "BiQ1zG_failClear",
1011
+ "detailStars": "BiQ1zG_detailStars",
1012
+ "modalLabel": "BiQ1zG_modalLabel",
1013
+ "queueRowBody": "BiQ1zG_queueRowBody",
1014
+ "progressText": "BiQ1zG_progressText",
1015
+ "detailMono": "BiQ1zG_detailMono",
1016
+ "overlayIn": "BiQ1zG_overlayIn",
1017
+ "noticeHead": "BiQ1zG_noticeHead",
1018
1018
  "toast": "BiQ1zG_toast",
1019
- "failBigIssue": "BiQ1zG_failBigIssue"
1019
+ "modalInstall": "BiQ1zG_modalInstall",
1020
+ "modalValue": "BiQ1zG_modalValue",
1021
+ "failKind": "BiQ1zG_failKind",
1022
+ "modalHead": "BiQ1zG_modalHead",
1023
+ "failMisjudgeLink": "BiQ1zG_failMisjudgeLink",
1024
+ "detailUpdateHint": "BiQ1zG_detailUpdateHint",
1025
+ "modalRow": "BiQ1zG_modalRow"
1020
1026
  };
1021
1027
  //#endregion
1022
1028
  //#region src/server/services/install/release-target.ts
@@ -1106,7 +1112,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1106
1112
  * tsdown 构建时用 define 把 __PLUGIN_VERSION__ 替换成 package.json 的版本号;
1107
1113
  * node --test 直接 import 本模块时该标识符不存在,typeof 守卫兜底为空串。
1108
1114
  */
1109
- const PLUGIN_VERSION = "2.0.2";
1115
+ const PLUGIN_VERSION = "2.0.4";
1110
1116
  const CATEGORY_ORDER = [
1111
1117
  "interface",
1112
1118
  "session",
@@ -1855,7 +1861,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1855
1861
  * registry 真实发布时间下发(同源),据此判断最准。门槛命中要单列成 `pending` 而不是
1856
1862
  * 落回「无更新」——回落会让弹窗在本机版本落后时谎称「已是最新」。
1857
1863
  */
1858
- const hubCurrentVersion = "2.0.2";
1864
+ const hubCurrentVersion = "2.0.4";
1859
1865
  const hubUpdateState = (() => {
1860
1866
  if (!hubUpdateInfo) return "none";
1861
1867
  if (hubUpdateInfo.version === hubCurrentVersion) return "latest";
@@ -2103,11 +2109,13 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
2103
2109
  if (/os error 112\b|os error 19\b|ERROR_DISK_FULL|ERROR_WRITE_PROTECT|\bENOSPC\b|\bEROFS\b|\bEMFILE\b|\bENFILE\b|no space left on device|read-only file system|too many open files/i.test(message)) return "fsUnavailable";
2104
2110
  if (/ERR_PNPM_IGNORED_BUILDS|Ignored build scripts:|ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED/i.test(message)) return "pnpmIgnoredBuild";
2105
2111
  if (/\[network\]|ERR_PNPM_GIT_FETCH_FAILED|ETIMEDOUT|ECONNREFUSED|ECONNRESET|ENOTFOUND|EAI_AGAIN|EPIPE|EHOSTUNREACH|ENETUNREACH|UND_ERR_[A-Z0-9_]+|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 \([A-Za-z0-9_]+\)/i.test(message)) return "network";
2112
+ if (/\[request-timeout\]/i.test(message)) return "network";
2106
2113
  if (/\[packaging\]|entry file missing/i.test(message)) return "pluginPrepare";
2107
2114
  if (/\[registry-missing\]/i.test(message)) return "pluginMissingDep";
2108
2115
  if (/ERR_PNPM_FETCH_404|404 Not Found|Not Found - 404/i.test(message)) return "pnpmMissingDep";
2109
2116
  if (/\bERR_PNPM_NO_MATCHING_VERSION\b|\bETARGET\b|No matching version found/i.test(message)) return "registryVersionStale";
2110
2117
  if (/\bERR_PNPM_LINKED_PKG_DIR_NOT_FOUND\b|Could not install from .+ as it does not exist/i.test(message)) return "pnpmLinkedDirMissing";
2118
+ if (/Unable to detect compiler type|gyp ERR!|Could not find any Visual Studio|No Xcode or CLT version detected|xcode-select|python(?:3)? is (?:not set|not found)|Could not find Python|\bmake: not found\b|\bgcc: not found\b|\bg\+\+: not found\b|\bMSB\d{4}\b/i.test(message)) return "buildToolchainMissing";
2111
2119
  if (/ERR_PNPM_PREPARE_PACKAGE|ELIFECYCLE|prepare-guard/i.test(message) || /Command failed/.test(message)) return "pluginPrepare";
2112
2120
  if (/plugin is not installed|plugin cannot be uninstalled here|already queued:|^already installed: \S+$/im.test(message)) return "hubState";
2113
2121
  if (/^\[timed out\]$/m.test(message)) return "timeout";
@@ -2137,6 +2145,19 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
2137
2145
  /** 摘要里单行上限:允许构建 key 等长行也被截短。 */
2138
2146
  const MAX_LINE_CHARS = 400;
2139
2147
  /**
2148
+ * 展示用格式化:宿主门禁消息里的 peerDependencies 是压缩成一行的 JSON,
2149
+ * 直接展示像一团乱码;展开成缩进格式,解析失败则原样返回。
2150
+ */
2151
+ function formatFailureMessage(message) {
2152
+ return message.replace(/peerDependencies (\{.*?\})/g, (whole, json) => {
2153
+ try {
2154
+ return `peerDependencies ${JSON.stringify(JSON.parse(json), null, 2)}`;
2155
+ } catch {
2156
+ return whole;
2157
+ }
2158
+ });
2159
+ }
2160
+ /**
2140
2161
  * 核心错误收集器:从完整安装输出里挑出真正说明问题的行(错误代码、构建脚本失败、
2141
2162
  * 退出与宿主提示),去重后拼接,单行与总量都截断 —— 只把「重点 + 原因」带进 issue 正文,
2142
2163
  * 避免完整日志塞进 URL 导致请求过长。无关键行时退化为「头部 + 尾部」快照。
@@ -2890,7 +2911,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
2890
2911
  pollQueue();
2891
2912
  } catch (err) {
2892
2913
  applyQueue((prev) => prev.filter((x) => x.id !== tempId));
2893
- const reason = err?.name === "AbortError" ? t("requestTimeout") : err instanceof Error && err.message ? err.message : String(err ?? "");
2914
+ const reason = err?.name === "AbortError" ? `${t("requestTimeout")}\n[request-timeout]` : err instanceof Error && err.message ? err.message : String(err ?? "");
2894
2915
  const entry = entryLineOf(t, input.channel);
2895
2916
  const msg = reason ? `${t("installFail")} — ${reason}` : t("installFail");
2896
2917
  onError(entry ? `${entry}\n${msg}` : msg, input.repo, "install", input.command);
@@ -2990,7 +3011,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
2990
3011
  }]);
2991
3012
  pollQueue();
2992
3013
  } catch (err) {
2993
- const reason = err?.name === "AbortError" ? t("requestTimeout") : err instanceof Error && err.message ? err.message : String(err ?? "");
3014
+ const reason = err?.name === "AbortError" ? `${t("requestTimeout")}\n[request-timeout]` : err instanceof Error && err.message ? err.message : String(err ?? "");
2994
3015
  onError(reason ? `${t("uninstallFail")} — ${reason}` : t("uninstallFail"), repo, "uninstall");
2995
3016
  } finally {
2996
3017
  window.clearTimeout(timeout);
@@ -3706,10 +3727,11 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3706
3727
  const failureKind = classifyFailure(message);
3707
3728
  const actionWord = t(action === "uninstall" ? "actionUninstall" : action === "update" ? "actionUpdate" : "actionInstall");
3708
3729
  const npmVersion = npmTooLowVersion(message);
3730
+ const displayMessage = formatFailureMessage(message);
3709
3731
  const copyText = [
3710
3732
  ...command ? [command] : [],
3711
3733
  ...attempts ?? [],
3712
- message
3734
+ displayMessage
3713
3735
  ].join("\n");
3714
3736
  return (0, react.createElement)("div", {
3715
3737
  className: Modal_module_css_default.overlay,
@@ -3736,7 +3758,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3736
3758
  })() : null, (0, react.createElement)("button", {
3737
3759
  className: Modal_module_css_default.errorCopySoft,
3738
3760
  onClick: () => onCopy(copyText)
3739
- }, t("errorCopy"))), (0, react.createElement)("pre", { className: Modal_module_css_default.errorBox }, message), (0, react.createElement)("div", { className: Modal_module_css_default.failKindTitle }, t(`failKind_${failureKind}`, failureKind === "hostIncompatible" ? { version: /incompatible with dsh\s+([^\s:;,]+)/i.exec(message)?.[1] ?? "" } : void 0)), failureKind === "hostIncompatible" ? null : (0, react.createElement)("div", { className: Modal_module_css_default.failReason }, t(`failReason_${failureKind}`)), 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, [(() => {
3761
+ }, t("errorCopy"))), (0, react.createElement)("pre", { className: Modal_module_css_default.errorBox }, displayMessage), (0, react.createElement)("div", { className: Modal_module_css_default.failKindTitle }, t(`failKind_${failureKind}`, failureKind === "hostIncompatible" ? { version: /incompatible with dsh\s+([^\s:;,]+)/i.exec(message)?.[1] ?? "" } : void 0)), failureKind === "hostIncompatible" ? null : (0, react.createElement)("div", { className: Modal_module_css_default.failReason }, t(`failReason_${failureKind}`)), 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 === "buildToolchainMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failBuildToolchainHint")) : 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, [(() => {
3740
3762
  const pkg = missingRegistryPackageOf(message);
3741
3763
  return pkg ? (0, react.createElement)("div", { className: Modal_module_css_default.failNetworkTarget }, t("failPnpmMissingDepTarget", { pkg })) : null;
3742
3764
  })(), (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(registryMissingHintOf(message)))]) : failureKind === "pluginMissingDep" ? (0, react.createElement)("div", null, [
@@ -4313,7 +4335,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4313
4335
  title: r.repo
4314
4336
  }, r.repo) : null, !r.ok && (0, react.createElement)("button", {
4315
4337
  className: Modal_module_css_default.failCopy,
4316
- onClick: () => onCopy(r.message)
4338
+ onClick: () => onCopy(formatFailureMessage(r.message))
4317
4339
  }, t("failCopy")), r.ok ? (0, react.createElement)("span", {
4318
4340
  className: Modal_module_css_default.noticeTime,
4319
4341
  title: new Date(r.at).toLocaleString()
@@ -4352,6 +4374,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4352
4374
  if (kind === "gitMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failGitMissingHint"));
4353
4375
  if (kind === "pnpmMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingHint"));
4354
4376
  if (kind === "npmMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failNpmMissingHint"));
4377
+ if (kind === "buildToolchainMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failBuildToolchainHint"));
4355
4378
  if (kind === "pnpmWorkspace") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmWorkspaceHint"));
4356
4379
  if (kind === "pnpmStore") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmStoreHint"));
4357
4380
  if (kind === "pnpmPolicy") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(pnpmPolicyHintOf(r.message), pnpmPolicyHintParams(r.message)));
@@ -4631,40 +4654,40 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4631
4654
  css: css$9
4632
4655
  });
4633
4656
  var List_module_css_default = {
4634
- "detailBtn": "_3XaZHa_detailBtn",
4635
- "uninstallBtn": "_3XaZHa_uninstallBtn",
4636
- "fork": "_3XaZHa_fork",
4637
- "card": "_3XaZHa_card",
4638
- "star": "_3XaZHa_star",
4657
+ "cardHead": "_3XaZHa_cardHead",
4639
4658
  "date": "_3XaZHa_date",
4640
- "categoryBadge": "_3XaZHa_categoryBadge",
4659
+ "versionBadge": "_3XaZHa_versionBadge",
4660
+ "desc": "_3XaZHa_desc",
4661
+ "diagBtn": "_3XaZHa_diagBtn",
4662
+ "fork": "_3XaZHa_fork",
4663
+ "cardTitle": "_3XaZHa_cardTitle",
4664
+ "moreSentinel": "_3XaZHa_moreSentinel",
4641
4665
  "topic": "_3XaZHa_topic",
4642
- "footLink": "_3XaZHa_footLink",
4666
+ "stateDesc": "_3XaZHa_stateDesc",
4643
4667
  "verified": "_3XaZHa_verified",
4668
+ "footer": "_3XaZHa_footer",
4669
+ "detailBtn": "_3XaZHa_detailBtn",
4670
+ "body": "_3XaZHa_body",
4671
+ "updateBadge": "_3XaZHa_updateBadge",
4672
+ "star": "_3XaZHa_star",
4673
+ "installBtn": "_3XaZHa_installBtn",
4674
+ "actions": "_3XaZHa_actions",
4675
+ "stateTitle": "_3XaZHa_stateTitle",
4644
4676
  "installBtnCopied": "_3XaZHa_installBtnCopied",
4677
+ "installBtnUpdate": "_3XaZHa_installBtnUpdate",
4645
4678
  "installBtnInstalled": "_3XaZHa_installBtnInstalled",
4646
- "diagBtn": "_3XaZHa_diagBtn",
4647
- "stateTitle": "_3XaZHa_stateTitle",
4648
- "footer": "_3XaZHa_footer",
4649
- "state": "_3XaZHa_state",
4650
- "cardTitle": "_3XaZHa_cardTitle",
4679
+ "card": "_3XaZHa_card",
4680
+ "categoryBadge": "_3XaZHa_categoryBadge",
4651
4681
  "stateActions": "_3XaZHa_stateActions",
4652
- "actions": "_3XaZHa_actions",
4653
- "cardMain": "_3XaZHa_cardMain",
4654
- "desc": "_3XaZHa_desc",
4655
- "installBtnUpdate": "_3XaZHa_installBtnUpdate",
4656
- "body": "_3XaZHa_body",
4657
- "list": "_3XaZHa_list",
4658
- "moreSentinel": "_3XaZHa_moreSentinel",
4659
- "versionBadge": "_3XaZHa_versionBadge",
4660
4682
  "cardSide": "_3XaZHa_cardSide",
4661
- "updateBadge": "_3XaZHa_updateBadge",
4662
- "retryBtn": "_3XaZHa_retryBtn",
4663
- "installBtn": "_3XaZHa_installBtn",
4683
+ "footLink": "_3XaZHa_footLink",
4684
+ "cardMain": "_3XaZHa_cardMain",
4664
4685
  "topics": "_3XaZHa_topics",
4665
- "cardHead": "_3XaZHa_cardHead",
4666
- "stateDesc": "_3XaZHa_stateDesc",
4667
- "stats": "_3XaZHa_stats"
4686
+ "retryBtn": "_3XaZHa_retryBtn",
4687
+ "stats": "_3XaZHa_stats",
4688
+ "list": "_3XaZHa_list",
4689
+ "state": "_3XaZHa_state",
4690
+ "uninstallBtn": "_3XaZHa_uninstallBtn"
4668
4691
  };
4669
4692
  //#endregion
4670
4693
  //#region src/client/hooks/useIncrementalList.ts
@@ -4864,15 +4887,15 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4864
4887
  css: css$8
4865
4888
  });
4866
4889
  var SectionTabs_module_css_default = {
4890
+ "noticeBtn": "_7tvizq_noticeBtn",
4891
+ "tabCountActive": "_7tvizq_tabCountActive",
4892
+ "tabIcon": "_7tvizq_tabIcon",
4893
+ "tabActive": "_7tvizq_tabActive",
4894
+ "noticeIcon": "_7tvizq_noticeIcon",
4867
4895
  "tab": "_7tvizq_tab",
4868
4896
  "tabCount": "_7tvizq_tabCount",
4869
- "tabCountActive": "_7tvizq_tabCountActive",
4870
4897
  "root": "_7tvizq_root",
4871
- "noticeIcon": "_7tvizq_noticeIcon",
4872
- "tabIcon": "_7tvizq_tabIcon",
4873
- "noticeCount": "_7tvizq_noticeCount",
4874
- "noticeBtn": "_7tvizq_noticeBtn",
4875
- "tabActive": "_7tvizq_tabActive"
4898
+ "noticeCount": "_7tvizq_noticeCount"
4876
4899
  };
4877
4900
  //#endregion
4878
4901
  //#region src/client/components/layout/SectionTabs.tsx
@@ -4947,42 +4970,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4947
4970
  css: css$7
4948
4971
  });
4949
4972
  var InstalledView_module_css_default = {
4950
- "emptyDesc": "_1nXeGW_emptyDesc",
4973
+ "segBtnActive": "_1nXeGW_segBtnActive",
4974
+ "rowUpdate": "_1nXeGW_rowUpdate",
4975
+ "rowDetail": "_1nXeGW_rowDetail",
4976
+ "searchInput": "_1nXeGW_searchInput",
4977
+ "statusInactive": "_1nXeGW_statusInactive",
4978
+ "rowSourceTag": "_1nXeGW_rowSourceTag",
4979
+ "exampleRow": "_1nXeGW_exampleRow",
4980
+ "rowUninstall": "_1nXeGW_rowUninstall",
4981
+ "rowRepo": "_1nXeGW_rowRepo",
4982
+ "exampleBadge": "_1nXeGW_exampleBadge",
4983
+ "rowRestart": "_1nXeGW_rowRestart",
4984
+ "segGroup": "_1nXeGW_segGroup",
4985
+ "statusPending": "_1nXeGW_statusPending",
4986
+ "toolbar": "_1nXeGW_toolbar",
4951
4987
  "rowCategory": "_1nXeGW_rowCategory",
4988
+ "segRow": "_1nXeGW_segRow",
4989
+ "list": "_1nXeGW_list",
4990
+ "segBtn": "_1nXeGW_segBtn",
4991
+ "row": "_1nXeGW_row",
4952
4992
  "rowTitle": "_1nXeGW_rowTitle",
4953
4993
  "rowActions": "_1nXeGW_rowActions",
4954
4994
  "rowTitleLine": "_1nXeGW_rowTitleLine",
4955
4995
  "versionBadge": "_1nXeGW_versionBadge",
4996
+ "empty": "_1nXeGW_empty",
4997
+ "rowDesc": "_1nXeGW_rowDesc",
4998
+ "emptyDesc": "_1nXeGW_emptyDesc",
4999
+ "segLabel": "_1nXeGW_segLabel",
4956
5000
  "root": "_1nXeGW_root",
4957
- "rowDetail": "_1nXeGW_rowDetail",
4958
- "rowRestart": "_1nXeGW_rowRestart",
4959
5001
  "updateBadge": "_1nXeGW_updateBadge",
4960
- "toolbar": "_1nXeGW_toolbar",
4961
- "statusInactive": "_1nXeGW_statusInactive",
4962
- "emptyTitle": "_1nXeGW_emptyTitle",
5002
+ "statusDot": "_1nXeGW_statusDot",
5003
+ "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
4963
5004
  "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
5005
+ "emptyTitle": "_1nXeGW_emptyTitle",
4964
5006
  "rowMeta": "_1nXeGW_rowMeta",
4965
- "segLabel": "_1nXeGW_segLabel",
4966
- "segGroup": "_1nXeGW_segGroup",
4967
- "rowUninstall": "_1nXeGW_rowUninstall",
4968
5007
  "searchWrap": "_1nXeGW_searchWrap",
4969
- "row": "_1nXeGW_row",
4970
- "list": "_1nXeGW_list",
4971
- "segBtnActive": "_1nXeGW_segBtnActive",
4972
- "statusDot": "_1nXeGW_statusDot",
4973
- "exampleBadge": "_1nXeGW_exampleBadge",
4974
- "empty": "_1nXeGW_empty",
4975
- "exampleRow": "_1nXeGW_exampleRow",
4976
- "searchInput": "_1nXeGW_searchInput",
4977
- "rowDesc": "_1nXeGW_rowDesc",
4978
- "segRow": "_1nXeGW_segRow",
4979
- "rowUpdate": "_1nXeGW_rowUpdate",
4980
- "rowMain": "_1nXeGW_rowMain",
4981
- "rowSourceTag": "_1nXeGW_rowSourceTag",
4982
- "segBtn": "_1nXeGW_segBtn",
4983
- "statusPending": "_1nXeGW_statusPending",
4984
- "rowRepo": "_1nXeGW_rowRepo",
4985
- "rowSourceTagHub": "_1nXeGW_rowSourceTagHub"
5008
+ "rowMain": "_1nXeGW_rowMain"
4986
5009
  };
4987
5010
  //#endregion
4988
5011
  //#region src/client/components/views/InstalledView.tsx
@@ -5226,27 +5249,27 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5226
5249
  css: css$6
5227
5250
  });
5228
5251
  var CustomInstallView_module_css_default = {
5229
- "channelOffBtn": "zISxCG_channelOffBtn",
5230
- "desc": "zISxCG_desc",
5252
+ "installBtn": "zISxCG_installBtn",
5231
5253
  "installError": "zISxCG_installError",
5232
- "installHelpBtn": "zISxCG_installHelpBtn",
5233
- "channelOffText": "zISxCG_channelOffText",
5234
- "installCard": "zISxCG_installCard",
5254
+ "helpLine": "zISxCG_helpLine",
5235
5255
  "installCardHead": "zISxCG_installCardHead",
5236
5256
  "installInput": "zISxCG_installInput",
5237
- "helpNote": "zISxCG_helpNote",
5238
- "helpLine": "zISxCG_helpLine",
5239
- "installLabel": "zISxCG_installLabel",
5240
- "root": "zISxCG_root",
5241
- "installCardDisabled": "zISxCG_installCardDisabled",
5257
+ "helpBody": "zISxCG_helpBody",
5242
5258
  "installExample": "zISxCG_installExample",
5259
+ "installInputError": "zISxCG_installInputError",
5243
5260
  "helpCmd": "zISxCG_helpCmd",
5244
- "installRow": "zISxCG_installRow",
5245
5261
  "channelOff": "zISxCG_channelOff",
5246
- "helpBody": "zISxCG_helpBody",
5247
- "installBtn": "zISxCG_installBtn",
5262
+ "root": "zISxCG_root",
5263
+ "desc": "zISxCG_desc",
5264
+ "installLabel": "zISxCG_installLabel",
5248
5265
  "installCards": "zISxCG_installCards",
5249
- "installInputError": "zISxCG_installInputError"
5266
+ "installRow": "zISxCG_installRow",
5267
+ "installCardDisabled": "zISxCG_installCardDisabled",
5268
+ "channelOffText": "zISxCG_channelOffText",
5269
+ "channelOffBtn": "zISxCG_channelOffBtn",
5270
+ "installCard": "zISxCG_installCard",
5271
+ "helpNote": "zISxCG_helpNote",
5272
+ "installHelpBtn": "zISxCG_installHelpBtn"
5250
5273
  };
5251
5274
  //#endregion
5252
5275
  //#region src/client/components/views/CustomInstallView.tsx
@@ -5402,30 +5425,30 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5402
5425
  css: css$5
5403
5426
  });
5404
5427
  var SettingsView_module_css_default = {
5405
- "pageTitle": "_506LLG_pageTitle",
5406
- "pageDesc": "_506LLG_pageDesc",
5407
- "settingDesc": "_506LLG_settingDesc",
5408
- "navItem": "_506LLG_navItem",
5409
- "settingTitle": "_506LLG_settingTitle",
5410
- "proxyControl": "_506LLG_proxyControl",
5411
- "resetBtn": "_506LLG_resetBtn",
5412
- "settingControl": "_506LLG_settingControl",
5413
5428
  "controlDropdown": "_506LLG_controlDropdown",
5429
+ "settingLabel": "_506LLG_settingLabel",
5430
+ "settingRow": "_506LLG_settingRow",
5431
+ "proxyHintFail": "_506LLG_proxyHintFail",
5414
5432
  "settingControlStack": "_506LLG_settingControlStack",
5415
- "content": "_506LLG_content",
5416
- "sidebar": "_506LLG_sidebar",
5417
- "settingRowStack": "_506LLG_settingRowStack",
5433
+ "navItem": "_506LLG_navItem",
5434
+ "settingControl": "_506LLG_settingControl",
5435
+ "proxyHintOk": "_506LLG_proxyHintOk",
5418
5436
  "root": "_506LLG_root",
5437
+ "content": "_506LLG_content",
5438
+ "pageHeader": "_506LLG_pageHeader",
5439
+ "navIcon": "_506LLG_navIcon",
5440
+ "settingTitle": "_506LLG_settingTitle",
5441
+ "proxyControl": "_506LLG_proxyControl",
5419
5442
  "navItemActive": "_506LLG_navItemActive",
5443
+ "sidebar": "_506LLG_sidebar",
5444
+ "resetBtn": "_506LLG_resetBtn",
5445
+ "proxyHint": "_506LLG_proxyHint",
5446
+ "pageTitle": "_506LLG_pageTitle",
5420
5447
  "card": "_506LLG_card",
5421
- "settingLabel": "_506LLG_settingLabel",
5448
+ "settingDesc": "_506LLG_settingDesc",
5422
5449
  "textInput": "_506LLG_textInput",
5423
- "navIcon": "_506LLG_navIcon",
5424
- "proxyHintOk": "_506LLG_proxyHintOk",
5425
- "proxyHintFail": "_506LLG_proxyHintFail",
5426
- "pageHeader": "_506LLG_pageHeader",
5427
- "proxyHint": "_506LLG_proxyHint",
5428
- "settingRow": "_506LLG_settingRow"
5450
+ "pageDesc": "_506LLG_pageDesc",
5451
+ "settingRowStack": "_506LLG_settingRowStack"
5429
5452
  };
5430
5453
  //#endregion
5431
5454
  //#region \0dsh-css:src/client/styles/Dropdown.module.css.mjs
@@ -5444,18 +5467,18 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5444
5467
  css: css$4
5445
5468
  });
5446
5469
  var Dropdown_module_css_default = {
5447
- "dropdownBtn": "B_Gxsq_dropdownBtn",
5448
- "dropdownPanel": "B_Gxsq_dropdownPanel",
5470
+ "dropdownCount": "B_Gxsq_dropdownCount",
5449
5471
  "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
5450
- "dropdownLabel": "B_Gxsq_dropdownLabel",
5451
- "dropdownArrow": "B_Gxsq_dropdownArrow",
5452
- "dropdownItemActive": "B_Gxsq_dropdownItemActive",
5453
- "dropdownItem": "B_Gxsq_dropdownItem",
5454
- "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
5455
5472
  "dropdownCountActive": "B_Gxsq_dropdownCountActive",
5456
- "dropdownFill": "B_Gxsq_dropdownFill",
5473
+ "dropdownArrow": "B_Gxsq_dropdownArrow",
5457
5474
  "dropdown": "B_Gxsq_dropdown",
5458
- "dropdownCount": "B_Gxsq_dropdownCount"
5475
+ "dropdownPanel": "B_Gxsq_dropdownPanel",
5476
+ "dropdownFill": "B_Gxsq_dropdownFill",
5477
+ "dropdownBtn": "B_Gxsq_dropdownBtn",
5478
+ "dropdownItem": "B_Gxsq_dropdownItem",
5479
+ "dropdownLabel": "B_Gxsq_dropdownLabel",
5480
+ "dropdownItemActive": "B_Gxsq_dropdownItemActive",
5481
+ "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen"
5459
5482
  };
5460
5483
  //#endregion
5461
5484
  //#region \0dsh-css:src/client/styles/Toggle.module.css.mjs
@@ -5574,28 +5597,28 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5574
5597
  });
5575
5598
  var DiagnosticsView_module_css_default = {
5576
5599
  "badgeIdle": "k9eRya_badgeIdle",
5577
- "summaryOk": "k9eRya_summaryOk",
5578
- "summaryRunning": "k9eRya_summaryRunning",
5579
- "meta": "k9eRya_meta",
5580
- "badge": "k9eRya_badge",
5581
- "summary": "k9eRya_summary",
5582
- "summaryFail": "k9eRya_summaryFail",
5583
5600
  "envRow": "k9eRya_envRow",
5601
+ "name": "k9eRya_name",
5602
+ "envCopyBtn": "k9eRya_envCopyBtn",
5603
+ "display": "k9eRya_display",
5604
+ "panel": "k9eRya_panel",
5605
+ "diagPulse": "k9eRya_diagPulse",
5606
+ "badge": "k9eRya_badge",
5584
5607
  "row": "k9eRya_row",
5608
+ "summary": "k9eRya_summary",
5585
5609
  "head": "k9eRya_head",
5610
+ "envLabel": "k9eRya_envLabel",
5586
5611
  "envDesc": "k9eRya_envDesc",
5587
5612
  "headHint": "k9eRya_headHint",
5588
- "envLabel": "k9eRya_envLabel",
5589
- "runBtn": "k9eRya_runBtn",
5590
- "display": "k9eRya_display",
5591
- "diagPulse": "k9eRya_diagPulse",
5592
- "panel": "k9eRya_panel",
5613
+ "summaryOk": "k9eRya_summaryOk",
5614
+ "envTitle": "k9eRya_envTitle",
5593
5615
  "badgeOk": "k9eRya_badgeOk",
5594
- "envCopyBtn": "k9eRya_envCopyBtn",
5595
- "name": "k9eRya_name",
5596
- "badgeRunning": "k9eRya_badgeRunning",
5597
5616
  "badgeFail": "k9eRya_badgeFail",
5598
- "envTitle": "k9eRya_envTitle"
5617
+ "meta": "k9eRya_meta",
5618
+ "badgeRunning": "k9eRya_badgeRunning",
5619
+ "summaryFail": "k9eRya_summaryFail",
5620
+ "summaryRunning": "k9eRya_summaryRunning",
5621
+ "runBtn": "k9eRya_runBtn"
5599
5622
  };
5600
5623
  //#endregion
5601
5624
  //#region src/client/components/views/DiagnosticsView.tsx
@@ -5770,57 +5793,57 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5770
5793
  css: css$1
5771
5794
  });
5772
5795
  var LogsView_module_css_default = {
5773
- "filterBar": "_3j77BW_filterBar",
5774
- "pathRow": "_3j77BW_pathRow",
5796
+ "catSettings": "_3j77BW_catSettings",
5797
+ "clearBtn": "_3j77BW_clearBtn",
5798
+ "pathDialog": "_3j77BW_pathDialog",
5799
+ "panel": "_3j77BW_panel",
5775
5800
  "pathDialogReset": "_3j77BW_pathDialogReset",
5801
+ "previewRow": "_3j77BW_previewRow",
5802
+ "footCount": "_3j77BW_footCount",
5803
+ "headActions": "_3j77BW_headActions",
5804
+ "badge": "_3j77BW_badge",
5805
+ "badgeInfo": "_3j77BW_badgeInfo",
5806
+ "catDiagnostics": "_3j77BW_catDiagnostics",
5807
+ "pathRow": "_3j77BW_pathRow",
5808
+ "headHint": "_3j77BW_headHint",
5809
+ "logList": "_3j77BW_logList",
5810
+ "actions": "_3j77BW_actions",
5811
+ "catBadge": "_3j77BW_catBadge",
5812
+ "filterBar": "_3j77BW_filterBar",
5776
5813
  "badgeWarn": "_3j77BW_badgeWarn",
5777
- "foot": "_3j77BW_foot",
5778
- "moreEnd": "_3j77BW_moreEnd",
5779
5814
  "linkBtn": "_3j77BW_linkBtn",
5780
- "pathDraft": "_3j77BW_pathDraft",
5781
- "previewRow": "_3j77BW_previewRow",
5815
+ "list": "_3j77BW_list",
5816
+ "message": "_3j77BW_message",
5817
+ "pathLabel": "_3j77BW_pathLabel",
5818
+ "searchInput": "_3j77BW_searchInput",
5819
+ "moreEnd": "_3j77BW_moreEnd",
5820
+ "footPath": "_3j77BW_footPath",
5821
+ "catUpdate": "_3j77BW_catUpdate",
5822
+ "filterChipActive": "_3j77BW_filterChipActive",
5823
+ "event": "_3j77BW_event",
5824
+ "search": "_3j77BW_search",
5782
5825
  "catSystem": "_3j77BW_catSystem",
5783
- "clearBtn": "_3j77BW_clearBtn",
5826
+ "badgeDebug": "_3j77BW_badgeDebug",
5827
+ "entry": "_3j77BW_entry",
5784
5828
  "catUninstall": "_3j77BW_catUninstall",
5785
- "list": "_3j77BW_list",
5829
+ "pathDialogHint": "_3j77BW_pathDialogHint",
5786
5830
  "more": "_3j77BW_more",
5787
- "catDiagnostics": "_3j77BW_catDiagnostics",
5788
- "btn": "_3j77BW_btn",
5789
- "footFail": "_3j77BW_footFail",
5790
- "filterChip": "_3j77BW_filterChip",
5791
- "catSettings": "_3j77BW_catSettings",
5792
- "headActions": "_3j77BW_headActions",
5831
+ "pathDraft": "_3j77BW_pathDraft",
5793
5832
  "footActions": "_3j77BW_footActions",
5794
- "pathDialogRow": "_3j77BW_pathDialogRow",
5833
+ "empty": "_3j77BW_empty",
5834
+ "pathDialogFoot": "_3j77BW_pathDialogFoot",
5795
5835
  "time": "_3j77BW_time",
5796
- "filterChipActive": "_3j77BW_filterChipActive",
5797
- "badge": "_3j77BW_badge",
5798
- "message": "_3j77BW_message",
5799
- "headHint": "_3j77BW_headHint",
5800
- "event": "_3j77BW_event",
5801
- "footPath": "_3j77BW_footPath",
5802
- "catInstall": "_3j77BW_catInstall",
5836
+ "filterChip": "_3j77BW_filterChip",
5803
5837
  "head": "_3j77BW_head",
5804
- "pathLabel": "_3j77BW_pathLabel",
5805
- "badgeError": "_3j77BW_badgeError",
5806
- "catBadge": "_3j77BW_catBadge",
5807
- "catUpdate": "_3j77BW_catUpdate",
5808
- "pathDialog": "_3j77BW_pathDialog",
5809
5838
  "pathText": "_3j77BW_pathText",
5810
- "search": "_3j77BW_search",
5811
- "searchInput": "_3j77BW_searchInput",
5812
- "panel": "_3j77BW_panel",
5813
- "footCount": "_3j77BW_footCount",
5814
- "pathDialogFoot": "_3j77BW_pathDialogFoot",
5815
- "logList": "_3j77BW_logList",
5816
- "actions": "_3j77BW_actions",
5817
- "pathDialogDesc": "_3j77BW_pathDialogDesc",
5818
- "entry": "_3j77BW_entry",
5819
- "badgeInfo": "_3j77BW_badgeInfo",
5839
+ "footFail": "_3j77BW_footFail",
5820
5840
  "badgeSuccess": "_3j77BW_badgeSuccess",
5821
- "badgeDebug": "_3j77BW_badgeDebug",
5822
- "pathDialogHint": "_3j77BW_pathDialogHint",
5823
- "empty": "_3j77BW_empty"
5841
+ "catInstall": "_3j77BW_catInstall",
5842
+ "pathDialogDesc": "_3j77BW_pathDialogDesc",
5843
+ "pathDialogRow": "_3j77BW_pathDialogRow",
5844
+ "foot": "_3j77BW_foot",
5845
+ "badgeError": "_3j77BW_badgeError",
5846
+ "btn": "_3j77BW_btn"
5824
5847
  };
5825
5848
  //#endregion
5826
5849
  //#region src/client/components/modals/LogsModal.tsx
@@ -7078,7 +7101,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
7078
7101
  openSection: settingsSection,
7079
7102
  onConsumedOpenSection: () => setSettingsSection(null)
7080
7103
  }), showHubUpdate && (0, react.createElement)(HubUpdateModal, {
7081
- info: catalog.hubUpdateInfo ?? { version: "2.0.2" },
7104
+ info: catalog.hubUpdateInfo ?? { version: "2.0.4" },
7082
7105
  state: catalog.hubUpdateState,
7083
7106
  currentVersion: catalog.hubCurrentVersion,
7084
7107
  lang,