dsh-plugin 1.3.8 → 1.3.9
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/README.en.md +12 -12
- package/README.md +12 -12
- package/client/client.js +379 -322
- package/client/client.js.map +1 -1
- package/lib/http/routes.js +10 -0
- package/lib/services/install/task-queue.js +55 -9
- package/lib/types/services/install/install-types.d.ts +4 -0
- package/lib/types/services/install/task-queue.d.ts +5 -0
- package/package.json +1 -1
- package/src/client/components/PluginHubSection.tsx +16 -3
- package/src/client/components/modals/NotificationsModal.tsx +10 -0
- package/src/client/components/modals/modals.tsx +9 -1
- package/src/client/components/views/CustomInstallView.tsx +9 -7
- package/src/client/hooks/useTaskQueue.ts +47 -11
- package/src/client/locales.ts +16 -0
- package/src/client/logic/failures.ts +23 -3
- package/src/client/logic/urls.ts +2 -0
- package/src/client/types.ts +4 -0
- package/src/server/http/routes.ts +10 -0
- package/src/server/services/install/install-types.ts +4 -1
- package/src/server/services/install/task-queue.ts +58 -9
package/client/client.js
CHANGED
|
@@ -290,6 +290,12 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
290
290
|
failNetworkHint: "安装前检测到网络不通:无法连接到安装源(可能是断网、DNS 解析失败、被防火墙拦截,或代理配置有问题)。这不是插件本身的问题 —— 请检查网络连接,或到「设置」里确认 HTTP 代理配置,再到「系统诊断」运行一次连通性检测,然后重试。",
|
|
291
291
|
failNetworkTarget: "无法访问 {url} —— 你的网络连接不通",
|
|
292
292
|
failNetworkRunDiag: "去系统诊断检测网络",
|
|
293
|
+
failDshMissingHint: "系统找不到 dsh 命令(dsh 未加入系统 PATH),无法调用安装器执行安装。请确认 DeepSeek Harness 已正确安装、dsh 已加入 PATH(或重新安装),然后重试。这不是插件本身的问题。",
|
|
294
|
+
failPnpmMissingHint: "安装器找到了 dsh,但系统里没有 pnpm 命令(dsh 用它来管理 profile 插件)。请先安装 pnpm(如 npm install -g pnpm),确认 pnpm 已加入 PATH 后重试。这不是插件本身的问题。",
|
|
295
|
+
installChannelNpm: "NPM 包",
|
|
296
|
+
installChannelGit: "GitHub 源码",
|
|
297
|
+
installChannelDsh: "DSH 命令",
|
|
298
|
+
installEntryLine: "安装入口:{c}。",
|
|
293
299
|
reportIssue: "去插件仓库提交 Issue",
|
|
294
300
|
detail: "打开详情",
|
|
295
301
|
noResult: "没有找到匹配的插件",
|
|
@@ -606,6 +612,12 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
606
612
|
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.",
|
|
607
613
|
failNetworkTarget: "Cannot reach {url} — your network connection is down",
|
|
608
614
|
failNetworkRunDiag: "Run a network diagnostic",
|
|
615
|
+
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.",
|
|
616
|
+
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.",
|
|
617
|
+
installChannelNpm: "NPM package",
|
|
618
|
+
installChannelGit: "GitHub source",
|
|
619
|
+
installChannelDsh: "DSH command",
|
|
620
|
+
installEntryLine: "Install entry: {c}.",
|
|
609
621
|
reportIssue: "Report an Issue to the plugin repo",
|
|
610
622
|
detail: "Open details",
|
|
611
623
|
noResult: "No plugins match your search",
|
|
@@ -658,42 +670,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
658
670
|
css: css$11
|
|
659
671
|
});
|
|
660
672
|
var Header_module_css_default = {
|
|
661
|
-
"
|
|
662
|
-
"
|
|
673
|
+
"tagline": "qikqja_tagline",
|
|
674
|
+
"tab": "qikqja_tab",
|
|
663
675
|
"adBanner": "qikqja_adBanner",
|
|
664
|
-
"segLabel": "qikqja_segLabel",
|
|
665
676
|
"adBadge": "qikqja_adBadge",
|
|
677
|
+
"sortGroup": "qikqja_sortGroup",
|
|
666
678
|
"search": "qikqja_search",
|
|
667
|
-
"
|
|
668
|
-
"headerTitleRow": "qikqja_headerTitleRow",
|
|
669
|
-
"resultSeg": "qikqja_resultSeg",
|
|
670
|
-
"tabCount": "qikqja_tabCount",
|
|
671
|
-
"githubIcon": "qikqja_githubIcon",
|
|
672
|
-
"title": "qikqja_title",
|
|
673
|
-
"segBtn": "qikqja_segBtn",
|
|
674
|
-
"tabs": "qikqja_tabs",
|
|
675
|
-
"versionBtn": "qikqja_versionBtn",
|
|
676
|
-
"aboutBtn": "qikqja_aboutBtn",
|
|
677
|
-
"logoIcon": "qikqja_logoIcon",
|
|
678
|
-
"controls": "qikqja_controls",
|
|
679
|
-
"taglineLink": "qikqja_taglineLink",
|
|
680
|
-
"hubUpdateBadge": "qikqja_hubUpdateBadge",
|
|
681
|
-
"copyIcon": "qikqja_copyIcon",
|
|
682
|
-
"segBtnActive": "qikqja_segBtnActive",
|
|
683
|
-
"searchRow": "qikqja_searchRow",
|
|
679
|
+
"tabsRow": "qikqja_tabsRow",
|
|
684
680
|
"adText": "qikqja_adText",
|
|
681
|
+
"logoIcon": "qikqja_logoIcon",
|
|
685
682
|
"tabActive": "qikqja_tabActive",
|
|
686
|
-
"githubLink": "qikqja_githubLink",
|
|
687
|
-
"tabsRow": "qikqja_tabsRow",
|
|
688
|
-
"sortGroup": "qikqja_sortGroup",
|
|
689
683
|
"header": "qikqja_header",
|
|
690
|
-
"
|
|
691
|
-
"
|
|
692
|
-
"
|
|
693
|
-
"
|
|
684
|
+
"versionBtn": "qikqja_versionBtn",
|
|
685
|
+
"segBtnActive": "qikqja_segBtnActive",
|
|
686
|
+
"aboutBtn": "qikqja_aboutBtn",
|
|
687
|
+
"githubIcon": "qikqja_githubIcon",
|
|
694
688
|
"segGroup": "qikqja_segGroup",
|
|
689
|
+
"segBtn": "qikqja_segBtn",
|
|
690
|
+
"headerRight": "qikqja_headerRight",
|
|
691
|
+
"langBtn": "qikqja_langBtn",
|
|
692
|
+
"resultSeg": "qikqja_resultSeg",
|
|
693
|
+
"githubLink": "qikqja_githubLink",
|
|
695
694
|
"version": "qikqja_version",
|
|
696
|
-
"
|
|
695
|
+
"copyIcon": "qikqja_copyIcon",
|
|
696
|
+
"headerTitleRow": "qikqja_headerTitleRow",
|
|
697
|
+
"resultCount": "qikqja_resultCount",
|
|
698
|
+
"adArrow": "qikqja_adArrow",
|
|
699
|
+
"brandTitle": "qikqja_brandTitle",
|
|
700
|
+
"controls": "qikqja_controls",
|
|
701
|
+
"segLabel": "qikqja_segLabel",
|
|
702
|
+
"searchRow": "qikqja_searchRow",
|
|
703
|
+
"taglineLink": "qikqja_taglineLink",
|
|
704
|
+
"tabs": "qikqja_tabs",
|
|
705
|
+
"title": "qikqja_title",
|
|
706
|
+
"hubUpdateBadge": "qikqja_hubUpdateBadge",
|
|
707
|
+
"tabCount": "qikqja_tabCount",
|
|
708
|
+
"root": "qikqja_root"
|
|
697
709
|
};
|
|
698
710
|
//#endregion
|
|
699
711
|
//#region \0dsh-css:src/client/styles/Modal.module.css.mjs
|
|
@@ -712,136 +724,136 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
712
724
|
css: css$10
|
|
713
725
|
});
|
|
714
726
|
var Modal_module_css_default = {
|
|
715
|
-
"
|
|
716
|
-
"
|
|
717
|
-
"
|
|
718
|
-
"
|
|
719
|
-
"
|
|
727
|
+
"modalCmdText": "BiQ1zG_modalCmdText",
|
|
728
|
+
"result": "BiQ1zG_result",
|
|
729
|
+
"failKind": "BiQ1zG_failKind",
|
|
730
|
+
"progressText": "BiQ1zG_progressText",
|
|
731
|
+
"progressFill": "BiQ1zG_progressFill",
|
|
732
|
+
"hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
|
|
733
|
+
"aboutModal": "BiQ1zG_aboutModal",
|
|
734
|
+
"failedCopyHint": "BiQ1zG_failedCopyHint",
|
|
735
|
+
"modalCloseIcon": "BiQ1zG_modalCloseIcon",
|
|
736
|
+
"confirmIcon": "BiQ1zG_confirmIcon",
|
|
737
|
+
"modalIn": "BiQ1zG_modalIn",
|
|
738
|
+
"noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
|
|
739
|
+
"failClear": "BiQ1zG_failClear",
|
|
720
740
|
"modalCopy": "BiQ1zG_modalCopy",
|
|
721
|
-
"
|
|
722
|
-
"
|
|
741
|
+
"failKindInstall": "BiQ1zG_failKindInstall",
|
|
742
|
+
"modalCmdCopy": "BiQ1zG_modalCmdCopy",
|
|
743
|
+
"progressFillFail": "BiQ1zG_progressFillFail",
|
|
744
|
+
"detailUpdateHint": "BiQ1zG_detailUpdateHint",
|
|
745
|
+
"queueRowTarget": "BiQ1zG_queueRowTarget",
|
|
746
|
+
"toastFail": "BiQ1zG_toastFail",
|
|
747
|
+
"modalValue": "BiQ1zG_modalValue",
|
|
748
|
+
"noticeRowOk": "BiQ1zG_noticeRowOk",
|
|
749
|
+
"noticeFoot": "BiQ1zG_noticeFoot",
|
|
750
|
+
"detailStatusRunning": "BiQ1zG_detailStatusRunning",
|
|
751
|
+
"modalCancel": "BiQ1zG_modalCancel",
|
|
752
|
+
"queueRowTrack": "BiQ1zG_queueRowTrack",
|
|
753
|
+
"errorCopySoft": "BiQ1zG_errorCopySoft",
|
|
754
|
+
"cliOnlyHint": "BiQ1zG_cliOnlyHint",
|
|
755
|
+
"queueRowBody": "BiQ1zG_queueRowBody",
|
|
756
|
+
"noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
|
|
757
|
+
"failHead": "BiQ1zG_failHead",
|
|
758
|
+
"uninstallConfirm": "BiQ1zG_uninstallConfirm",
|
|
759
|
+
"detailRow": "BiQ1zG_detailRow",
|
|
760
|
+
"errorModal": "BiQ1zG_errorModal",
|
|
761
|
+
"progress": "BiQ1zG_progress",
|
|
762
|
+
"failPrepareHint": "BiQ1zG_failPrepareHint",
|
|
763
|
+
"detailPathText": "BiQ1zG_detailPathText",
|
|
764
|
+
"hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
|
|
765
|
+
"toast": "BiQ1zG_toast",
|
|
723
766
|
"noticeMain": "BiQ1zG_noticeMain",
|
|
724
|
-
"failRepo": "BiQ1zG_failRepo",
|
|
725
|
-
"noticeList": "BiQ1zG_noticeList",
|
|
726
|
-
"noticeIgnore": "BiQ1zG_noticeIgnore",
|
|
727
|
-
"modalTitleBusy": "BiQ1zG_modalTitleBusy",
|
|
728
|
-
"detailLabel": "BiQ1zG_detailLabel",
|
|
729
|
-
"detailPathActions": "BiQ1zG_detailPathActions",
|
|
730
767
|
"modalDesc": "BiQ1zG_modalDesc",
|
|
731
|
-
"
|
|
732
|
-
"
|
|
733
|
-
"
|
|
734
|
-
"modalLink": "BiQ1zG_modalLink",
|
|
735
|
-
"failDiagBtn": "BiQ1zG_failDiagBtn",
|
|
736
|
-
"restartNowWarning": "BiQ1zG_restartNowWarning",
|
|
737
|
-
"trustHint": "BiQ1zG_trustHint",
|
|
738
|
-
"linkIcon": "BiQ1zG_linkIcon",
|
|
739
|
-
"detailStatusPending": "BiQ1zG_detailStatusPending",
|
|
740
|
-
"detailStatusRunning": "BiQ1zG_detailStatusRunning",
|
|
741
|
-
"failCopy": "BiQ1zG_failCopy",
|
|
768
|
+
"queueRow": "BiQ1zG_queueRow",
|
|
769
|
+
"resultCheck": "BiQ1zG_resultCheck",
|
|
770
|
+
"modalClose": "BiQ1zG_modalClose",
|
|
742
771
|
"progressHead": "BiQ1zG_progressHead",
|
|
743
|
-
"
|
|
744
|
-
"
|
|
745
|
-
"
|
|
772
|
+
"detailLabel": "BiQ1zG_detailLabel",
|
|
773
|
+
"failRow": "BiQ1zG_failRow",
|
|
774
|
+
"noticeList": "BiQ1zG_noticeList",
|
|
775
|
+
"linkIcon": "BiQ1zG_linkIcon",
|
|
776
|
+
"queueRowHead": "BiQ1zG_queueRowHead",
|
|
777
|
+
"restartLater": "BiQ1zG_restartLater",
|
|
778
|
+
"modalRow": "BiQ1zG_modalRow",
|
|
779
|
+
"noticeTextOk": "BiQ1zG_noticeTextOk",
|
|
746
780
|
"resultDesc": "BiQ1zG_resultDesc",
|
|
747
|
-
"
|
|
748
|
-
"noticeTime": "BiQ1zG_noticeTime",
|
|
749
|
-
"queueRowBody": "BiQ1zG_queueRowBody",
|
|
750
|
-
"failNetworkTarget": "BiQ1zG_failNetworkTarget",
|
|
751
|
-
"noticeVersion": "BiQ1zG_noticeVersion",
|
|
781
|
+
"detailPath": "BiQ1zG_detailPath",
|
|
752
782
|
"modal": "BiQ1zG_modal",
|
|
753
|
-
"
|
|
754
|
-
"
|
|
755
|
-
"
|
|
756
|
-
"
|
|
757
|
-
"
|
|
783
|
+
"noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
|
|
784
|
+
"progressTrack": "BiQ1zG_progressTrack",
|
|
785
|
+
"detailPathActions": "BiQ1zG_detailPathActions",
|
|
786
|
+
"aboutMeta": "BiQ1zG_aboutMeta",
|
|
787
|
+
"stripCancel": "BiQ1zG_stripCancel",
|
|
788
|
+
"overlayIn": "BiQ1zG_overlayIn",
|
|
789
|
+
"detailLink": "BiQ1zG_detailLink",
|
|
790
|
+
"modalWide": "BiQ1zG_modalWide",
|
|
791
|
+
"modalActions": "BiQ1zG_modalActions",
|
|
792
|
+
"noticeTextFail": "BiQ1zG_noticeTextFail",
|
|
793
|
+
"detailPathBtn": "BiQ1zG_detailPathBtn",
|
|
794
|
+
"failBigIssue": "BiQ1zG_failBigIssue",
|
|
758
795
|
"errorTitle": "BiQ1zG_errorTitle",
|
|
759
|
-
"
|
|
760
|
-
"
|
|
761
|
-
"
|
|
762
|
-
"
|
|
796
|
+
"noticeTime": "BiQ1zG_noticeTime",
|
|
797
|
+
"queueSection": "BiQ1zG_queueSection",
|
|
798
|
+
"failRepo": "BiQ1zG_failRepo",
|
|
799
|
+
"helpModal": "BiQ1zG_helpModal",
|
|
763
800
|
"noticeRow": "BiQ1zG_noticeRow",
|
|
764
|
-
"
|
|
765
|
-
"
|
|
766
|
-
"
|
|
767
|
-
"
|
|
768
|
-
"
|
|
801
|
+
"modalHead": "BiQ1zG_modalHead",
|
|
802
|
+
"errorBox": "BiQ1zG_errorBox",
|
|
803
|
+
"confirmIconWrap": "BiQ1zG_confirmIconWrap",
|
|
804
|
+
"confirmIconDanger": "BiQ1zG_confirmIconDanger",
|
|
805
|
+
"noticeRemove": "BiQ1zG_noticeRemove",
|
|
806
|
+
"restartNow": "BiQ1zG_restartNow",
|
|
807
|
+
"modalTitle": "BiQ1zG_modalTitle",
|
|
808
|
+
"modalBody": "BiQ1zG_modalBody",
|
|
809
|
+
"toastIn": "BiQ1zG_toastIn",
|
|
810
|
+
"failList": "BiQ1zG_failList",
|
|
811
|
+
"failKindUninstall": "BiQ1zG_failKindUninstall",
|
|
769
812
|
"detailMono": "BiQ1zG_detailMono",
|
|
770
|
-
"stripCancel": "BiQ1zG_stripCancel",
|
|
771
|
-
"errorCopySoft": "BiQ1zG_errorCopySoft",
|
|
772
|
-
"toastFail": "BiQ1zG_toastFail",
|
|
773
|
-
"resultCheck": "BiQ1zG_resultCheck",
|
|
774
|
-
"helpModal": "BiQ1zG_helpModal",
|
|
775
|
-
"modalCmdCopy": "BiQ1zG_modalCmdCopy",
|
|
776
|
-
"hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
|
|
777
|
-
"dangerConfirm": "BiQ1zG_dangerConfirm",
|
|
778
|
-
"queueRow": "BiQ1zG_queueRow",
|
|
779
|
-
"confirmIcon": "BiQ1zG_confirmIcon",
|
|
780
|
-
"noticeTextFail": "BiQ1zG_noticeTextFail",
|
|
781
|
-
"hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
|
|
782
|
-
"failHead": "BiQ1zG_failHead",
|
|
783
813
|
"aboutContent": "BiQ1zG_aboutContent",
|
|
784
|
-
"
|
|
785
|
-
"
|
|
786
|
-
"
|
|
787
|
-
"
|
|
788
|
-
"
|
|
789
|
-
"
|
|
790
|
-
"
|
|
791
|
-
"
|
|
814
|
+
"overlay": "BiQ1zG_overlay",
|
|
815
|
+
"noticeIgnore": "BiQ1zG_noticeIgnore",
|
|
816
|
+
"hubUpdateModal": "BiQ1zG_hubUpdateModal",
|
|
817
|
+
"modalCmd": "BiQ1zG_modalCmd",
|
|
818
|
+
"noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
|
|
819
|
+
"noticeHead": "BiQ1zG_noticeHead",
|
|
820
|
+
"queuedHint": "BiQ1zG_queuedHint",
|
|
821
|
+
"queueSectionTitle": "BiQ1zG_queueSectionTitle",
|
|
792
822
|
"queueRowDesc": "BiQ1zG_queueRowDesc",
|
|
793
|
-
"progressText": "BiQ1zG_progressText",
|
|
794
|
-
"modalRow": "BiQ1zG_modalRow",
|
|
795
|
-
"errorModal": "BiQ1zG_errorModal",
|
|
796
|
-
"modalBody": "BiQ1zG_modalBody",
|
|
797
|
-
"queueRowTarget": "BiQ1zG_queueRowTarget",
|
|
798
|
-
"errorBox": "BiQ1zG_errorBox",
|
|
799
|
-
"queueSection": "BiQ1zG_queueSection",
|
|
800
|
-
"detailStars": "BiQ1zG_detailStars",
|
|
801
|
-
"detailPathText": "BiQ1zG_detailPathText",
|
|
802
823
|
"pendingRowStatus": "BiQ1zG_pendingRowStatus",
|
|
803
|
-
"
|
|
804
|
-
"noticeHead": "BiQ1zG_noticeHead",
|
|
805
|
-
"failList": "BiQ1zG_failList",
|
|
806
|
-
"resultTitle": "BiQ1zG_resultTitle",
|
|
807
|
-
"noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
|
|
808
|
-
"progressTrack": "BiQ1zG_progressTrack",
|
|
809
|
-
"failKind": "BiQ1zG_failKind",
|
|
810
|
-
"detailPath": "BiQ1zG_detailPath",
|
|
811
|
-
"failedCopyHint": "BiQ1zG_failedCopyHint",
|
|
812
|
-
"detailDim": "BiQ1zG_detailDim",
|
|
813
|
-
"queueRowTrack": "BiQ1zG_queueRowTrack",
|
|
814
|
-
"modalInstall": "BiQ1zG_modalInstall",
|
|
815
|
-
"noticeRemove": "BiQ1zG_noticeRemove",
|
|
816
|
-
"queueRowPct": "BiQ1zG_queueRowPct",
|
|
817
|
-
"overlay": "BiQ1zG_overlay",
|
|
818
|
-
"uninstallConfirm": "BiQ1zG_uninstallConfirm",
|
|
819
|
-
"confirmIconWrap": "BiQ1zG_confirmIconWrap",
|
|
820
|
-
"failBigIssue": "BiQ1zG_failBigIssue",
|
|
821
|
-
"noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
|
|
822
|
-
"detailArrow": "BiQ1zG_detailArrow",
|
|
823
|
-
"detailLink": "BiQ1zG_detailLink",
|
|
824
|
+
"resultRestarting": "BiQ1zG_resultRestarting",
|
|
824
825
|
"detailValue": "BiQ1zG_detailValue",
|
|
825
|
-
"
|
|
826
|
-
"
|
|
827
|
-
"noticeFoot": "BiQ1zG_noticeFoot",
|
|
828
|
-
"modalTitleQueued": "BiQ1zG_modalTitleQueued",
|
|
829
|
-
"noticeTextOk": "BiQ1zG_noticeTextOk",
|
|
830
|
-
"progressFillFail": "BiQ1zG_progressFillFail",
|
|
826
|
+
"errorHint": "BiQ1zG_errorHint",
|
|
827
|
+
"dangerConfirm": "BiQ1zG_dangerConfirm",
|
|
831
828
|
"noticeRowMain": "BiQ1zG_noticeRowMain",
|
|
832
|
-
"
|
|
833
|
-
"
|
|
834
|
-
"
|
|
835
|
-
"
|
|
836
|
-
"
|
|
837
|
-
"
|
|
838
|
-
"
|
|
829
|
+
"confirmPrimary": "BiQ1zG_confirmPrimary",
|
|
830
|
+
"resultCheckIcon": "BiQ1zG_resultCheckIcon",
|
|
831
|
+
"detailModal": "BiQ1zG_detailModal",
|
|
832
|
+
"failEmpty": "BiQ1zG_failEmpty",
|
|
833
|
+
"failDiagBtn": "BiQ1zG_failDiagBtn",
|
|
834
|
+
"detailArrow": "BiQ1zG_detailArrow",
|
|
835
|
+
"detailStatusText": "BiQ1zG_detailStatusText",
|
|
836
|
+
"logModal": "BiQ1zG_logModal",
|
|
837
|
+
"modalLabel": "BiQ1zG_modalLabel",
|
|
838
|
+
"queueRowPct": "BiQ1zG_queueRowPct",
|
|
839
|
+
"queueRowStatus": "BiQ1zG_queueRowStatus",
|
|
840
|
+
"detailDim": "BiQ1zG_detailDim",
|
|
841
|
+
"modalInstall": "BiQ1zG_modalInstall",
|
|
842
|
+
"modalTitleBusy": "BiQ1zG_modalTitleBusy",
|
|
843
|
+
"detailStatusPending": "BiQ1zG_detailStatusPending",
|
|
844
|
+
"resultTitle": "BiQ1zG_resultTitle",
|
|
845
|
+
"noticeVersion": "BiQ1zG_noticeVersion",
|
|
846
|
+
"failNetworkTarget": "BiQ1zG_failNetworkTarget",
|
|
847
|
+
"detailStars": "BiQ1zG_detailStars",
|
|
839
848
|
"detailGrid": "BiQ1zG_detailGrid",
|
|
840
|
-
"
|
|
841
|
-
"
|
|
842
|
-
"
|
|
843
|
-
"
|
|
844
|
-
"
|
|
849
|
+
"modalLink": "BiQ1zG_modalLink",
|
|
850
|
+
"failCopy": "BiQ1zG_failCopy",
|
|
851
|
+
"pendingRowActions": "BiQ1zG_pendingRowActions",
|
|
852
|
+
"modalTitleQueued": "BiQ1zG_modalTitleQueued",
|
|
853
|
+
"hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
|
|
854
|
+
"noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
|
|
855
|
+
"restartNowWarning": "BiQ1zG_restartNowWarning",
|
|
856
|
+
"trustHint": "BiQ1zG_trustHint"
|
|
845
857
|
};
|
|
846
858
|
//#endregion
|
|
847
859
|
//#region src/client/logic/install-command.ts
|
|
@@ -911,7 +923,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
911
923
|
* tsdown 构建时用 define 把 __PLUGIN_VERSION__ 替换成 package.json 的版本号;
|
|
912
924
|
* node --test 直接 import 本模块时该标识符不存在,typeof 守卫兜底为空串。
|
|
913
925
|
*/
|
|
914
|
-
const PLUGIN_VERSION = "1.3.
|
|
926
|
+
const PLUGIN_VERSION = "1.3.9";
|
|
915
927
|
const CATEGORY_ORDER = [
|
|
916
928
|
"interface",
|
|
917
929
|
"session",
|
|
@@ -1544,7 +1556,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
1544
1556
|
*/
|
|
1545
1557
|
const hubHasUpdate = (() => {
|
|
1546
1558
|
if (!hubUpdateInfo) return false;
|
|
1547
|
-
return hubUpdateInfo.version !== "1.3.
|
|
1559
|
+
return hubUpdateInfo.version !== "1.3.9";
|
|
1548
1560
|
})();
|
|
1549
1561
|
(0, react.useMemo)(() => {
|
|
1550
1562
|
if (!plugins) return [];
|
|
@@ -1723,12 +1735,19 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
1723
1735
|
return next;
|
|
1724
1736
|
}
|
|
1725
1737
|
/**
|
|
1726
|
-
*
|
|
1738
|
+
* 失败归类,七态。无论底层机制如何(pnpm 白名单拦截 / 构建脚本被忽略 / prepare 失败),
|
|
1727
1739
|
* 对用户而言结果都一样 —— 当前安装通道(npm 或 git)装不上,就是插件分发/依赖的问题,
|
|
1728
|
-
* 一律引导提 Issue
|
|
1740
|
+
* 一律引导提 Issue;唯一的例外是本机环境问题(npm 版本过低 / 找不到 dsh / 找不到 pnpm / 网络不通):
|
|
1729
1741
|
* - npmTooOld:失败输出含 npm arborist 的 `edgesOut` 崩溃特征(build-ideal-tree.js 解 peer 依赖时
|
|
1730
1742
|
* 内部抛错,npm 11.6.0 前必现的已知缺陷,npm/cli#8261、#9787),或服务端已核实本机版本低于
|
|
1731
1743
|
* 阈值并打了 `[npm-too-low]` 标记 —— 是本机 npm 版本过低/自身缺陷,不是插件问题 → 引导升级 npm
|
|
1744
|
+
* - dshMissing:安装器 spawn 的 `dsh` 命令找不到(Windows cmd「不是内部或外部命令」/ POSIX
|
|
1745
|
+
* 「command not found」/ spawn ENOENT)—— 是本机 DSH 未正确安装或不在 PATH,不是插件问题
|
|
1746
|
+
* → 提示检查 PATH/重装 DSH,不引导提 Issue
|
|
1747
|
+
* - pnpmMissing:dsh 存在但调用的 `pnpm` 找不到(dsh 报 `pnpm not found on PATH`/POSIX
|
|
1748
|
+
* 「pnpm: command not found」/ spawn ENOENT)—— 本机缺 pnpm(dsh 用 pnpm 管理 profile 插件),
|
|
1749
|
+
* 不是插件问题(dsh-plugin-hub#13:Linux 下 `dsh: pnpm not found on PATH` 被误归插件侧失败)
|
|
1750
|
+
* → 提示安装/开启 pnpm,不引导提 Issue
|
|
1732
1751
|
* - network:安装前连通性预检拦截(服务端 `[network]` 标记)或底层连接失败
|
|
1733
1752
|
* (ERR_PNPM_GIT_FETCH_FAILED / ETIMEDOUT / DNS 解析 / TLS 握手 / 代理拒绝)——
|
|
1734
1753
|
* 是本机网络不通/被墙/代理有问题,不是插件问题 → 提示检查网络,不引导提 Issue
|
|
@@ -1742,6 +1761,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
1742
1761
|
*/
|
|
1743
1762
|
function classifyFailure(message) {
|
|
1744
1763
|
if (/\[npm-too-low\]|edgesOut/i.test(message)) return "npmTooOld";
|
|
1764
|
+
if (/\[pnpm-missing\]|pnpm not found|pnpm: command not found|spawn pnpm ENOENT|'pnpm' 不是内部或外部命令|"pnpm" 不是内部或外部命令|pnpm['"]?\s*is not recognized/i.test(message)) return "pnpmMissing";
|
|
1765
|
+
if (/\[dsh-missing\]|不是内部或外部命令|is not recognized as an internal or external command|command not found|spawn dsh ENOENT/i.test(message)) return "dshMissing";
|
|
1745
1766
|
if (/ERR_PNPM_IGNORED_BUILDS|Ignored build scripts:|ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED/i.test(message)) return "pnpmIgnoredBuild";
|
|
1746
1767
|
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";
|
|
1747
1768
|
if (/\[packaging\]|entry file missing/i.test(message)) return "pluginPrepare";
|
|
@@ -1834,6 +1855,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
1834
1855
|
function reasonTitleOf(kind) {
|
|
1835
1856
|
switch (kind) {
|
|
1836
1857
|
case "npmTooOld": return "npm too old to install";
|
|
1858
|
+
case "dshMissing": return "dsh command not found on the user machine";
|
|
1859
|
+
case "pnpmMissing": return "pnpm command not found on the user machine";
|
|
1837
1860
|
case "pnpmIgnoredBuild": return "build scripts blocked by pnpm allowlist";
|
|
1838
1861
|
case "pluginPrepare": return "plugin distribution incomplete";
|
|
1839
1862
|
case "network": return "network failure on the user side";
|
|
@@ -2035,6 +2058,11 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2035
2058
|
/** 安装/卸载请求超时(ms):服务端 preflight + npm 反查可能耗时(各自都有超时,合计约 20~30s),
|
|
2036
2059
|
* 给足余量;超时主动中止,避免服务端 preflight 网络挂起时前端永久卡「安装中 0%」。 */
|
|
2037
2060
|
const REQUEST_TIMEOUT_MS = 6e4;
|
|
2061
|
+
/** 入口渠道的 i18n key:NPM 包 / GitHub 源码 / DSH 命令。 */
|
|
2062
|
+
const channelKeyOf = (channel) => channel === "git" ? "installChannelGit" : channel === "dsh" ? "installChannelDsh" : "installChannelNpm";
|
|
2063
|
+
/** 失败消息的入口溯源前缀:自定义安装(带渠道)在错误正文顶部精准指出从哪张卡片发起;
|
|
2064
|
+
* 目录插件安装(无渠道)返回 null,错误正文保持原样。 */
|
|
2065
|
+
const entryLineOf = (t, channel) => channel ? t("installEntryLine", { c: t(channelKeyOf(channel)) }) : null;
|
|
2038
2066
|
function useTaskQueue(opts) {
|
|
2039
2067
|
const { t, langKey, refreshInstalled, onInstallDone, onUninstallDone, onError, installPlugin, installCustomTarget, installGlobalTarget, uninstallPlugin, uninstallName, installedName, resolvePending } = opts;
|
|
2040
2068
|
const [queue, setQueue] = (0, react.useState)([]);
|
|
@@ -2148,8 +2176,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2148
2176
|
onInstallDone(modalTaskRef.current === q.id, q.repo, q.needsRestart, q.action === "update");
|
|
2149
2177
|
}
|
|
2150
2178
|
} else {
|
|
2151
|
-
const
|
|
2152
|
-
|
|
2179
|
+
const rawDetail = lines.length > 0 ? [...lines].reverse().join("\n") : q.kind === "uninstall" ? t("uninstallFail") : t("installFail");
|
|
2180
|
+
const entry = entryLineOf(t, q.channel);
|
|
2181
|
+
onError(entry ? `${entry}\n${rawDetail}` : rawDetail, q.repo, q.kind, q.command, q.attempts, q.action === "update");
|
|
2153
2182
|
}
|
|
2154
2183
|
maybeStopPoll();
|
|
2155
2184
|
};
|
|
@@ -2247,7 +2276,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2247
2276
|
progress: typeof a.progress === "number" ? a.progress : prevTask?.progress ?? 0,
|
|
2248
2277
|
lines: Array.isArray(a.lines) ? a.lines : prevTask?.lines ?? [],
|
|
2249
2278
|
attempts: Array.isArray(a.attempts) ? a.attempts : prevTask?.attempts ?? [],
|
|
2250
|
-
needsRestart: typeof a.needsRestart === "boolean" ? a.needsRestart : prevTask?.needsRestart ?? true
|
|
2279
|
+
needsRestart: typeof a.needsRestart === "boolean" ? a.needsRestart : prevTask?.needsRestart ?? true,
|
|
2280
|
+
channel: a.installChannel === "npm" || a.installChannel === "git" || a.installChannel === "dsh" ? a.installChannel : prevTask?.channel
|
|
2251
2281
|
});
|
|
2252
2282
|
}
|
|
2253
2283
|
const keepOpt = prev.filter((q) => q.optimistic && !next.some((x) => x.id === q.id));
|
|
@@ -2292,7 +2322,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2292
2322
|
progress: typeof a.progress === "number" ? a.progress : 0,
|
|
2293
2323
|
lines: Array.isArray(a.lines) ? a.lines : [],
|
|
2294
2324
|
attempts: Array.isArray(a.attempts) ? a.attempts : [],
|
|
2295
|
-
needsRestart: typeof a.needsRestart === "boolean" ? a.needsRestart : true
|
|
2325
|
+
needsRestart: typeof a.needsRestart === "boolean" ? a.needsRestart : true,
|
|
2326
|
+
channel: a.installChannel === "npm" || a.installChannel === "git" || a.installChannel === "dsh" ? a.installChannel : void 0
|
|
2296
2327
|
};
|
|
2297
2328
|
});
|
|
2298
2329
|
if (items.length > 0 || pendingRef.current.length > 0) {
|
|
@@ -2330,6 +2361,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2330
2361
|
lines: [],
|
|
2331
2362
|
optimistic: true,
|
|
2332
2363
|
command: input.command,
|
|
2364
|
+
channel: input.channel,
|
|
2333
2365
|
action: input.update ? "update" : "add",
|
|
2334
2366
|
attempts: [],
|
|
2335
2367
|
needsRestart: true
|
|
@@ -2347,6 +2379,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2347
2379
|
source: input.source,
|
|
2348
2380
|
mode: input.update ? "update" : void 0,
|
|
2349
2381
|
...langKey ? { lang: langKey } : {},
|
|
2382
|
+
...input.channel ? { installChannel: input.channel } : {},
|
|
2350
2383
|
...input.globalNpm && input.globalNpm.length > 0 ? { globalNpm: input.globalNpm } : {}
|
|
2351
2384
|
}),
|
|
2352
2385
|
signal: controller.signal
|
|
@@ -2354,7 +2387,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2354
2387
|
const data = await res.json();
|
|
2355
2388
|
if (!data.ok || typeof data.task !== "number") {
|
|
2356
2389
|
applyQueue((prev) => prev.filter((x) => x.id !== tempId));
|
|
2357
|
-
|
|
2390
|
+
const entry = entryLineOf(t, input.channel);
|
|
2391
|
+
const msg = data.error || `HTTP ${res.status}`;
|
|
2392
|
+
onError(entry ? `${entry}\n${msg}` : msg, input.repo, "install", input.command, data.attempts);
|
|
2358
2393
|
return;
|
|
2359
2394
|
}
|
|
2360
2395
|
const taskId = data.task;
|
|
@@ -2372,7 +2407,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2372
2407
|
} catch (err) {
|
|
2373
2408
|
applyQueue((prev) => prev.filter((x) => x.id !== tempId));
|
|
2374
2409
|
const reason = err?.name === "AbortError" ? t("requestTimeout") : err instanceof Error && err.message ? err.message : String(err ?? "");
|
|
2375
|
-
|
|
2410
|
+
const entry = entryLineOf(t, input.channel);
|
|
2411
|
+
const msg = reason ? `${t("installFail")} — ${reason}` : t("installFail");
|
|
2412
|
+
onError(entry ? `${entry}\n${msg}` : msg, input.repo, "install", input.command);
|
|
2376
2413
|
} finally {
|
|
2377
2414
|
window.clearTimeout(timeout);
|
|
2378
2415
|
submittingRef.current.delete(input.repo);
|
|
@@ -2398,6 +2435,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2398
2435
|
};
|
|
2399
2436
|
/** 命令行安装:用户手输 npm 包名或 GitHub 地址,走 custom 源(受安全开关控制)。
|
|
2400
2437
|
* update=true 时对已安装目标放行覆盖重装(与目录插件「更新」同一语义)。
|
|
2438
|
+
* channel=入口渠道(NPM 包 / GitHub 源码 / DSH 命令卡片):上报服务端落日志,
|
|
2439
|
+
* 失败弹窗/通知据此精准溯源。
|
|
2401
2440
|
* 队列展示/防重一律用归一化身份(owner/repo 或 npm 包名):与服务端 /active 合并、
|
|
2402
2441
|
* 弹窗目标匹配同口径,npm 包名透传不受影响。 */
|
|
2403
2442
|
const installCustom = async (raw, opts) => {
|
|
@@ -2409,11 +2448,12 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2409
2448
|
repo,
|
|
2410
2449
|
command: `pnpm add ${target}`,
|
|
2411
2450
|
source: "custom",
|
|
2412
|
-
update: opts?.update
|
|
2451
|
+
update: opts?.update,
|
|
2452
|
+
channel: opts?.channel
|
|
2413
2453
|
});
|
|
2414
2454
|
};
|
|
2415
2455
|
/** 全局 npm 安装(官方 README 的 `npm install -g <pkgs>`):不进任何 profile、无需宿主重启。
|
|
2416
|
-
* 队列展示/防重用包列表空格拼接的身份(与服务端 target
|
|
2456
|
+
* 队列展示/防重用包列表空格拼接的身份(与服务端 target 同口径);入口渠道固定为 npm(NPM 包卡片)。 */
|
|
2417
2457
|
const installGlobalNpm = async (pkgs, opts) => {
|
|
2418
2458
|
const list = (pkgs ?? []).map((p) => p.trim()).filter((p) => p !== "");
|
|
2419
2459
|
if (list.length === 0) return;
|
|
@@ -2424,7 +2464,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
2424
2464
|
command: `npm install -g ${identity}`,
|
|
2425
2465
|
source: "custom",
|
|
2426
2466
|
globalNpm: list,
|
|
2427
|
-
update: opts?.update
|
|
2467
|
+
update: opts?.update,
|
|
2468
|
+
channel: opts?.channel ?? "npm"
|
|
2428
2469
|
});
|
|
2429
2470
|
};
|
|
2430
2471
|
/** 卸载入队核心:按 npm 包名直卸(目录插件与自定义安装共用,弹窗进度匹配同源)。 */
|
|
@@ -3212,7 +3253,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
3212
3253
|
}, repo) : null, (0, react.createElement)("button", {
|
|
3213
3254
|
className: Modal_module_css_default.errorCopySoft,
|
|
3214
3255
|
onClick: () => onCopy(copyText)
|
|
3215
|
-
}, 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 === "network" ? (0, react.createElement)("div", null, [
|
|
3256
|
+
}, 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 === "pnpmMissing" ? (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingHint")) : failureKind === "network" ? (0, react.createElement)("div", null, [
|
|
3216
3257
|
(() => {
|
|
3217
3258
|
const target = unreachableTargetOf(message);
|
|
3218
3259
|
return target ? (0, react.createElement)("div", { className: Modal_module_css_default.failNetworkTarget }, t("failNetworkTarget", { url: target })) : null;
|
|
@@ -3763,6 +3804,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
3763
3804
|
const v = npmTooLowVersion(r.message);
|
|
3764
3805
|
return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(v ? "failNpmTooLowV" : "failNpmTooLow", v ? { v } : void 0));
|
|
3765
3806
|
}
|
|
3807
|
+
if (kind === "dshMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failDshMissingHint"));
|
|
3808
|
+
if (kind === "pnpmMissing") return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t("failPnpmMissingHint"));
|
|
3766
3809
|
if (kind === "network") return (0, react.createElement)("div", null, [
|
|
3767
3810
|
(() => {
|
|
3768
3811
|
const target = unreachableTargetOf(r.message);
|
|
@@ -3968,40 +4011,40 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
3968
4011
|
css: css$9
|
|
3969
4012
|
});
|
|
3970
4013
|
var List_module_css_default = {
|
|
3971
|
-
"
|
|
3972
|
-
"
|
|
3973
|
-
"installBtn": "_3XaZHa_installBtn",
|
|
3974
|
-
"retryBtn": "_3XaZHa_retryBtn",
|
|
3975
|
-
"uninstallBtn": "_3XaZHa_uninstallBtn",
|
|
3976
|
-
"installBtnInstalled": "_3XaZHa_installBtnInstalled",
|
|
4014
|
+
"list": "_3XaZHa_list",
|
|
4015
|
+
"cardSide": "_3XaZHa_cardSide",
|
|
3977
4016
|
"state": "_3XaZHa_state",
|
|
4017
|
+
"star": "_3XaZHa_star",
|
|
4018
|
+
"installBtnInstalled": "_3XaZHa_installBtnInstalled",
|
|
4019
|
+
"verified": "_3XaZHa_verified",
|
|
4020
|
+
"stats": "_3XaZHa_stats",
|
|
3978
4021
|
"diagBtn": "_3XaZHa_diagBtn",
|
|
3979
|
-
"
|
|
3980
|
-
"
|
|
3981
|
-
"topics": "_3XaZHa_topics",
|
|
3982
|
-
"detailBtn": "_3XaZHa_detailBtn",
|
|
3983
|
-
"cardHead": "_3XaZHa_cardHead",
|
|
3984
|
-
"stateActions": "_3XaZHa_stateActions",
|
|
3985
|
-
"footer": "_3XaZHa_footer",
|
|
3986
|
-
"installBtnUpdate": "_3XaZHa_installBtnUpdate",
|
|
4022
|
+
"updateBadge": "_3XaZHa_updateBadge",
|
|
4023
|
+
"date": "_3XaZHa_date",
|
|
3987
4024
|
"actions": "_3XaZHa_actions",
|
|
3988
|
-
"
|
|
4025
|
+
"footer": "_3XaZHa_footer",
|
|
4026
|
+
"installBtnCopied": "_3XaZHa_installBtnCopied",
|
|
4027
|
+
"stateActions": "_3XaZHa_stateActions",
|
|
3989
4028
|
"stateTitle": "_3XaZHa_stateTitle",
|
|
3990
|
-
"
|
|
4029
|
+
"uninstallBtn": "_3XaZHa_uninstallBtn",
|
|
3991
4030
|
"topic": "_3XaZHa_topic",
|
|
3992
|
-
"
|
|
3993
|
-
"
|
|
3994
|
-
"verified": "_3XaZHa_verified",
|
|
3995
|
-
"stats": "_3XaZHa_stats",
|
|
3996
|
-
"date": "_3XaZHa_date",
|
|
4031
|
+
"versionBadge": "_3XaZHa_versionBadge",
|
|
4032
|
+
"installBtnUpdate": "_3XaZHa_installBtnUpdate",
|
|
3997
4033
|
"card": "_3XaZHa_card",
|
|
3998
|
-
"
|
|
3999
|
-
"
|
|
4000
|
-
"
|
|
4034
|
+
"stateDesc": "_3XaZHa_stateDesc",
|
|
4035
|
+
"desc": "_3XaZHa_desc",
|
|
4036
|
+
"cardMain": "_3XaZHa_cardMain",
|
|
4037
|
+
"fork": "_3XaZHa_fork",
|
|
4038
|
+
"cardHead": "_3XaZHa_cardHead",
|
|
4001
4039
|
"body": "_3XaZHa_body",
|
|
4040
|
+
"footLink": "_3XaZHa_footLink",
|
|
4041
|
+
"cardTitle": "_3XaZHa_cardTitle",
|
|
4042
|
+
"topics": "_3XaZHa_topics",
|
|
4043
|
+
"retryBtn": "_3XaZHa_retryBtn",
|
|
4002
4044
|
"moreSentinel": "_3XaZHa_moreSentinel",
|
|
4003
|
-
"
|
|
4004
|
-
"
|
|
4045
|
+
"detailBtn": "_3XaZHa_detailBtn",
|
|
4046
|
+
"categoryBadge": "_3XaZHa_categoryBadge",
|
|
4047
|
+
"installBtn": "_3XaZHa_installBtn"
|
|
4005
4048
|
};
|
|
4006
4049
|
//#endregion
|
|
4007
4050
|
//#region src/client/hooks/useIncrementalList.ts
|
|
@@ -4208,15 +4251,15 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4208
4251
|
css: css$8
|
|
4209
4252
|
});
|
|
4210
4253
|
var SectionTabs_module_css_default = {
|
|
4211
|
-
"
|
|
4212
|
-
"tabActive": "_7tvizq_tabActive",
|
|
4213
|
-
"noticeIcon": "_7tvizq_noticeIcon",
|
|
4214
|
-
"tabIcon": "_7tvizq_tabIcon",
|
|
4215
|
-
"noticeBtn": "_7tvizq_noticeBtn",
|
|
4254
|
+
"tabCount": "_7tvizq_tabCount",
|
|
4216
4255
|
"noticeCount": "_7tvizq_noticeCount",
|
|
4256
|
+
"noticeIcon": "_7tvizq_noticeIcon",
|
|
4217
4257
|
"root": "_7tvizq_root",
|
|
4218
|
-
"
|
|
4219
|
-
"
|
|
4258
|
+
"tab": "_7tvizq_tab",
|
|
4259
|
+
"noticeBtn": "_7tvizq_noticeBtn",
|
|
4260
|
+
"tabCountActive": "_7tvizq_tabCountActive",
|
|
4261
|
+
"tabActive": "_7tvizq_tabActive",
|
|
4262
|
+
"tabIcon": "_7tvizq_tabIcon"
|
|
4220
4263
|
};
|
|
4221
4264
|
//#endregion
|
|
4222
4265
|
//#region src/client/components/layout/SectionTabs.tsx
|
|
@@ -4293,42 +4336,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4293
4336
|
css: css$7
|
|
4294
4337
|
});
|
|
4295
4338
|
var InstalledView_module_css_default = {
|
|
4296
|
-
"
|
|
4339
|
+
"toolbar": "_1nXeGW_toolbar",
|
|
4340
|
+
"statusPending": "_1nXeGW_statusPending",
|
|
4341
|
+
"rowUninstall": "_1nXeGW_rowUninstall",
|
|
4297
4342
|
"rowDetail": "_1nXeGW_rowDetail",
|
|
4298
|
-
"
|
|
4299
|
-
"
|
|
4343
|
+
"segLabel": "_1nXeGW_segLabel",
|
|
4344
|
+
"searchWrap": "_1nXeGW_searchWrap",
|
|
4345
|
+
"rowSourceTag": "_1nXeGW_rowSourceTag",
|
|
4300
4346
|
"emptyTitle": "_1nXeGW_emptyTitle",
|
|
4301
|
-
"
|
|
4302
|
-
"
|
|
4303
|
-
"root": "_1nXeGW_root",
|
|
4304
|
-
"rowRepo": "_1nXeGW_rowRepo",
|
|
4305
|
-
"rowRestart": "_1nXeGW_rowRestart",
|
|
4347
|
+
"segBtn": "_1nXeGW_segBtn",
|
|
4348
|
+
"exampleBadge": "_1nXeGW_exampleBadge",
|
|
4306
4349
|
"emptyDesc": "_1nXeGW_emptyDesc",
|
|
4350
|
+
"statusDot": "_1nXeGW_statusDot",
|
|
4351
|
+
"empty": "_1nXeGW_empty",
|
|
4307
4352
|
"row": "_1nXeGW_row",
|
|
4308
|
-
"
|
|
4309
|
-
"
|
|
4310
|
-
"
|
|
4311
|
-
"versionBadge": "_1nXeGW_versionBadge",
|
|
4312
|
-
"rowUpdate": "_1nXeGW_rowUpdate",
|
|
4353
|
+
"statusInactive": "_1nXeGW_statusInactive",
|
|
4354
|
+
"rowRepo": "_1nXeGW_rowRepo",
|
|
4355
|
+
"rowMain": "_1nXeGW_rowMain",
|
|
4313
4356
|
"exampleRow": "_1nXeGW_exampleRow",
|
|
4314
|
-
"
|
|
4315
|
-
"segLabel": "_1nXeGW_segLabel",
|
|
4357
|
+
"searchInput": "_1nXeGW_searchInput",
|
|
4316
4358
|
"rowMeta": "_1nXeGW_rowMeta",
|
|
4317
|
-
"
|
|
4359
|
+
"versionBadge": "_1nXeGW_versionBadge",
|
|
4318
4360
|
"updateBadge": "_1nXeGW_updateBadge",
|
|
4319
|
-
"
|
|
4320
|
-
"
|
|
4321
|
-
"
|
|
4322
|
-
"
|
|
4323
|
-
"rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
|
|
4361
|
+
"root": "_1nXeGW_root",
|
|
4362
|
+
"segGroup": "_1nXeGW_segGroup",
|
|
4363
|
+
"list": "_1nXeGW_list",
|
|
4364
|
+
"rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
|
|
4324
4365
|
"rowTitleLine": "_1nXeGW_rowTitleLine",
|
|
4325
|
-
"empty": "_1nXeGW_empty",
|
|
4326
4366
|
"rowDesc": "_1nXeGW_rowDesc",
|
|
4327
|
-
"
|
|
4328
|
-
"
|
|
4367
|
+
"rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
|
|
4368
|
+
"rowUpdate": "_1nXeGW_rowUpdate",
|
|
4329
4369
|
"rowCategory": "_1nXeGW_rowCategory",
|
|
4330
|
-
"
|
|
4331
|
-
"
|
|
4370
|
+
"segRow": "_1nXeGW_segRow",
|
|
4371
|
+
"rowActions": "_1nXeGW_rowActions",
|
|
4372
|
+
"segBtnActive": "_1nXeGW_segBtnActive",
|
|
4373
|
+
"rowTitle": "_1nXeGW_rowTitle",
|
|
4374
|
+
"rowRestart": "_1nXeGW_rowRestart"
|
|
4332
4375
|
};
|
|
4333
4376
|
//#endregion
|
|
4334
4377
|
//#region src/client/components/views/InstalledView.tsx
|
|
@@ -4575,27 +4618,27 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4575
4618
|
});
|
|
4576
4619
|
var CustomInstallView_module_css_default = {
|
|
4577
4620
|
"desc": "zISxCG_desc",
|
|
4578
|
-
"
|
|
4579
|
-
"
|
|
4580
|
-
"installExample": "zISxCG_installExample",
|
|
4581
|
-
"installBtn": "zISxCG_installBtn",
|
|
4582
|
-
"channelOff": "zISxCG_channelOff",
|
|
4621
|
+
"root": "zISxCG_root",
|
|
4622
|
+
"installInputError": "zISxCG_installInputError",
|
|
4583
4623
|
"helpBody": "zISxCG_helpBody",
|
|
4584
|
-
"installCards": "zISxCG_installCards",
|
|
4585
|
-
"installInput": "zISxCG_installInput",
|
|
4586
|
-
"channelOffBtn": "zISxCG_channelOffBtn",
|
|
4587
|
-
"helpNote": "zISxCG_helpNote",
|
|
4588
4624
|
"helpCmd": "zISxCG_helpCmd",
|
|
4589
|
-
"
|
|
4625
|
+
"helpNote": "zISxCG_helpNote",
|
|
4626
|
+
"installCardDisabled": "zISxCG_installCardDisabled",
|
|
4627
|
+
"channelOff": "zISxCG_channelOff",
|
|
4628
|
+
"channelOffBtn": "zISxCG_channelOffBtn",
|
|
4629
|
+
"installExample": "zISxCG_installExample",
|
|
4630
|
+
"installError": "zISxCG_installError",
|
|
4590
4631
|
"helpLine": "zISxCG_helpLine",
|
|
4632
|
+
"channelOffText": "zISxCG_channelOffText",
|
|
4633
|
+
"installCard": "zISxCG_installCard",
|
|
4634
|
+
"installBtn": "zISxCG_installBtn",
|
|
4635
|
+
"installInput": "zISxCG_installInput",
|
|
4636
|
+
"installCards": "zISxCG_installCards",
|
|
4591
4637
|
"installRow": "zISxCG_installRow",
|
|
4592
|
-
"installHelpBtn": "zISxCG_installHelpBtn",
|
|
4593
|
-
"installCardDisabled": "zISxCG_installCardDisabled",
|
|
4594
|
-
"root": "zISxCG_root",
|
|
4595
4638
|
"installCardHead": "zISxCG_installCardHead",
|
|
4596
|
-
"
|
|
4597
|
-
"
|
|
4598
|
-
"
|
|
4639
|
+
"installHelpBtn": "zISxCG_installHelpBtn",
|
|
4640
|
+
"installLabel": "zISxCG_installLabel",
|
|
4641
|
+
"installInsertBtn": "zISxCG_installInsertBtn"
|
|
4599
4642
|
};
|
|
4600
4643
|
//#endregion
|
|
4601
4644
|
//#region src/client/components/views/CustomInstallView.tsx
|
|
@@ -4723,8 +4766,11 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4723
4766
|
setNpmError(t("npmInstallInvalid"));
|
|
4724
4767
|
return;
|
|
4725
4768
|
}
|
|
4726
|
-
if (parsed.kind === "global") onInstallCustom(raw, {
|
|
4727
|
-
|
|
4769
|
+
if (parsed.kind === "global") onInstallCustom(raw, {
|
|
4770
|
+
installChannel: "npm",
|
|
4771
|
+
globalNpm: parsed.pkgs
|
|
4772
|
+
});
|
|
4773
|
+
else onInstallCustom(parsed.target, { installChannel: "npm" });
|
|
4728
4774
|
setNpmQuery("");
|
|
4729
4775
|
setNpmError("");
|
|
4730
4776
|
};
|
|
@@ -4735,7 +4781,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4735
4781
|
setGitError(t("gitInstallInvalid"));
|
|
4736
4782
|
return;
|
|
4737
4783
|
}
|
|
4738
|
-
onInstallCustom(target);
|
|
4784
|
+
onInstallCustom(target, { installChannel: "git" });
|
|
4739
4785
|
setGitQuery("");
|
|
4740
4786
|
setGitError("");
|
|
4741
4787
|
};
|
|
@@ -4747,7 +4793,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4747
4793
|
setCmdError(t("dshCmdInvalid"));
|
|
4748
4794
|
return;
|
|
4749
4795
|
}
|
|
4750
|
-
onInstallCustom(parsed.target);
|
|
4796
|
+
onInstallCustom(parsed.target, { installChannel: "dsh" });
|
|
4751
4797
|
setCmdQuery("");
|
|
4752
4798
|
setCmdError("");
|
|
4753
4799
|
};
|
|
@@ -4882,30 +4928,30 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4882
4928
|
css: css$5
|
|
4883
4929
|
});
|
|
4884
4930
|
var SettingsView_module_css_default = {
|
|
4885
|
-
"proxyControl": "_506LLG_proxyControl",
|
|
4886
|
-
"settingRowStack": "_506LLG_settingRowStack",
|
|
4887
|
-
"settingDesc": "_506LLG_settingDesc",
|
|
4888
4931
|
"pageDesc": "_506LLG_pageDesc",
|
|
4889
|
-
"
|
|
4890
|
-
"controlDropdown": "_506LLG_controlDropdown",
|
|
4891
|
-
"pageHeader": "_506LLG_pageHeader",
|
|
4892
|
-
"root": "_506LLG_root",
|
|
4893
|
-
"navItem": "_506LLG_navItem",
|
|
4894
|
-
"content": "_506LLG_content",
|
|
4895
|
-
"settingControl": "_506LLG_settingControl",
|
|
4932
|
+
"settingDesc": "_506LLG_settingDesc",
|
|
4896
4933
|
"textInput": "_506LLG_textInput",
|
|
4897
|
-
"
|
|
4934
|
+
"proxyControl": "_506LLG_proxyControl",
|
|
4898
4935
|
"proxyHint": "_506LLG_proxyHint",
|
|
4899
|
-
"
|
|
4900
|
-
"navItemActive": "_506LLG_navItemActive",
|
|
4901
|
-
"card": "_506LLG_card",
|
|
4936
|
+
"settingControlStack": "_506LLG_settingControlStack",
|
|
4902
4937
|
"resetBtn": "_506LLG_resetBtn",
|
|
4903
|
-
"settingTitle": "_506LLG_settingTitle",
|
|
4904
4938
|
"settingLabel": "_506LLG_settingLabel",
|
|
4905
|
-
"
|
|
4939
|
+
"navIcon": "_506LLG_navIcon",
|
|
4940
|
+
"pageHeader": "_506LLG_pageHeader",
|
|
4941
|
+
"settingTitle": "_506LLG_settingTitle",
|
|
4942
|
+
"proxyHintFail": "_506LLG_proxyHintFail",
|
|
4943
|
+
"root": "_506LLG_root",
|
|
4944
|
+
"card": "_506LLG_card",
|
|
4906
4945
|
"sidebar": "_506LLG_sidebar",
|
|
4946
|
+
"navItemActive": "_506LLG_navItemActive",
|
|
4947
|
+
"content": "_506LLG_content",
|
|
4948
|
+
"settingControl": "_506LLG_settingControl",
|
|
4949
|
+
"proxyHintOk": "_506LLG_proxyHintOk",
|
|
4950
|
+
"navItem": "_506LLG_navItem",
|
|
4907
4951
|
"settingRow": "_506LLG_settingRow",
|
|
4908
|
-
"
|
|
4952
|
+
"controlDropdown": "_506LLG_controlDropdown",
|
|
4953
|
+
"settingRowStack": "_506LLG_settingRowStack",
|
|
4954
|
+
"pageTitle": "_506LLG_pageTitle"
|
|
4909
4955
|
};
|
|
4910
4956
|
//#endregion
|
|
4911
4957
|
//#region \0dsh-css:src/client/styles/Dropdown.module.css.mjs
|
|
@@ -4924,18 +4970,18 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4924
4970
|
css: css$4
|
|
4925
4971
|
});
|
|
4926
4972
|
var Dropdown_module_css_default = {
|
|
4927
|
-
"dropdownCount": "B_Gxsq_dropdownCount",
|
|
4928
|
-
"dropdownBtn": "B_Gxsq_dropdownBtn",
|
|
4929
|
-
"dropdownCountActive": "B_Gxsq_dropdownCountActive",
|
|
4930
|
-
"dropdownItemActive": "B_Gxsq_dropdownItemActive",
|
|
4931
4973
|
"dropdownLabel": "B_Gxsq_dropdownLabel",
|
|
4974
|
+
"dropdownArrow": "B_Gxsq_dropdownArrow",
|
|
4932
4975
|
"dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
|
|
4933
|
-
"dropdownFill": "B_Gxsq_dropdownFill",
|
|
4934
|
-
"dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
|
|
4935
|
-
"dropdown": "B_Gxsq_dropdown",
|
|
4936
4976
|
"dropdownPanel": "B_Gxsq_dropdownPanel",
|
|
4937
|
-
"
|
|
4938
|
-
"
|
|
4977
|
+
"dropdownItem": "B_Gxsq_dropdownItem",
|
|
4978
|
+
"dropdownCount": "B_Gxsq_dropdownCount",
|
|
4979
|
+
"dropdown": "B_Gxsq_dropdown",
|
|
4980
|
+
"dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
|
|
4981
|
+
"dropdownFill": "B_Gxsq_dropdownFill",
|
|
4982
|
+
"dropdownCountActive": "B_Gxsq_dropdownCountActive",
|
|
4983
|
+
"dropdownItemActive": "B_Gxsq_dropdownItemActive",
|
|
4984
|
+
"dropdownBtn": "B_Gxsq_dropdownBtn"
|
|
4939
4985
|
};
|
|
4940
4986
|
//#endregion
|
|
4941
4987
|
//#region \0dsh-css:src/client/styles/Toggle.module.css.mjs
|
|
@@ -4954,9 +5000,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
4954
5000
|
css: css$3
|
|
4955
5001
|
});
|
|
4956
5002
|
var Toggle_module_css_default = {
|
|
4957
|
-
"toggle": "k-cD4G_toggle",
|
|
4958
5003
|
"toggleOn": "k-cD4G_toggleOn",
|
|
4959
|
-
"knob": "k-cD4G_knob"
|
|
5004
|
+
"knob": "k-cD4G_knob",
|
|
5005
|
+
"toggle": "k-cD4G_toggle"
|
|
4960
5006
|
};
|
|
4961
5007
|
//#endregion
|
|
4962
5008
|
//#region src/client/components/ui/Toggle.tsx
|
|
@@ -5057,28 +5103,28 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
5057
5103
|
});
|
|
5058
5104
|
var DiagnosticsView_module_css_default = {
|
|
5059
5105
|
"envLabel": "k9eRya_envLabel",
|
|
5060
|
-
"
|
|
5061
|
-
"
|
|
5062
|
-
"row": "k9eRya_row",
|
|
5106
|
+
"meta": "k9eRya_meta",
|
|
5107
|
+
"badgeIdle": "k9eRya_badgeIdle",
|
|
5063
5108
|
"summaryFail": "k9eRya_summaryFail",
|
|
5064
5109
|
"head": "k9eRya_head",
|
|
5065
5110
|
"display": "k9eRya_display",
|
|
5066
|
-
"
|
|
5067
|
-
"
|
|
5068
|
-
"
|
|
5111
|
+
"runBtn": "k9eRya_runBtn",
|
|
5112
|
+
"summaryRunning": "k9eRya_summaryRunning",
|
|
5113
|
+
"badgeFail": "k9eRya_badgeFail",
|
|
5114
|
+
"envDesc": "k9eRya_envDesc",
|
|
5069
5115
|
"envCopyBtn": "k9eRya_envCopyBtn",
|
|
5116
|
+
"badge": "k9eRya_badge",
|
|
5070
5117
|
"badgeOk": "k9eRya_badgeOk",
|
|
5071
|
-
"badgeFail": "k9eRya_badgeFail",
|
|
5072
|
-
"envTitle": "k9eRya_envTitle",
|
|
5073
|
-
"name": "k9eRya_name",
|
|
5074
|
-
"meta": "k9eRya_meta",
|
|
5075
5118
|
"summaryOk": "k9eRya_summaryOk",
|
|
5076
|
-
"
|
|
5119
|
+
"badgeRunning": "k9eRya_badgeRunning",
|
|
5120
|
+
"row": "k9eRya_row",
|
|
5077
5121
|
"summary": "k9eRya_summary",
|
|
5078
|
-
"
|
|
5122
|
+
"diagPulse": "k9eRya_diagPulse",
|
|
5123
|
+
"panel": "k9eRya_panel",
|
|
5124
|
+
"envTitle": "k9eRya_envTitle",
|
|
5079
5125
|
"headHint": "k9eRya_headHint",
|
|
5080
|
-
"
|
|
5081
|
-
"
|
|
5126
|
+
"name": "k9eRya_name",
|
|
5127
|
+
"envRow": "k9eRya_envRow"
|
|
5082
5128
|
};
|
|
5083
5129
|
//#endregion
|
|
5084
5130
|
//#region src/client/components/views/DiagnosticsView.tsx
|
|
@@ -5253,57 +5299,57 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
5253
5299
|
css: css$1
|
|
5254
5300
|
});
|
|
5255
5301
|
var LogsView_module_css_default = {
|
|
5256
|
-
"
|
|
5257
|
-
"
|
|
5258
|
-
"pathDialogRow": "_3j77BW_pathDialogRow",
|
|
5259
|
-
"pathLabel": "_3j77BW_pathLabel",
|
|
5260
|
-
"pathText": "_3j77BW_pathText",
|
|
5261
|
-
"badge": "_3j77BW_badge",
|
|
5302
|
+
"head": "_3j77BW_head",
|
|
5303
|
+
"searchInput": "_3j77BW_searchInput",
|
|
5262
5304
|
"badgeSuccess": "_3j77BW_badgeSuccess",
|
|
5263
|
-
"
|
|
5264
|
-
"
|
|
5305
|
+
"badgeInfo": "_3j77BW_badgeInfo",
|
|
5306
|
+
"catBadge": "_3j77BW_catBadge",
|
|
5307
|
+
"catInstall": "_3j77BW_catInstall",
|
|
5265
5308
|
"empty": "_3j77BW_empty",
|
|
5266
|
-
"
|
|
5267
|
-
"
|
|
5268
|
-
"
|
|
5269
|
-
"
|
|
5270
|
-
"time": "_3j77BW_time",
|
|
5271
|
-
"headHint": "_3j77BW_headHint",
|
|
5272
|
-
"panel": "_3j77BW_panel",
|
|
5273
|
-
"headActions": "_3j77BW_headActions",
|
|
5309
|
+
"search": "_3j77BW_search",
|
|
5310
|
+
"clearBtn": "_3j77BW_clearBtn",
|
|
5311
|
+
"pathDialogDesc": "_3j77BW_pathDialogDesc",
|
|
5312
|
+
"filterBar": "_3j77BW_filterBar",
|
|
5274
5313
|
"linkBtn": "_3j77BW_linkBtn",
|
|
5314
|
+
"moreEnd": "_3j77BW_moreEnd",
|
|
5315
|
+
"catUninstall": "_3j77BW_catUninstall",
|
|
5316
|
+
"btn": "_3j77BW_btn",
|
|
5317
|
+
"panel": "_3j77BW_panel",
|
|
5275
5318
|
"pathDialogFoot": "_3j77BW_pathDialogFoot",
|
|
5276
|
-
"foot": "_3j77BW_foot",
|
|
5277
|
-
"catInstall": "_3j77BW_catInstall",
|
|
5278
|
-
"catDiagnostics": "_3j77BW_catDiagnostics",
|
|
5279
|
-
"pathDraft": "_3j77BW_pathDraft",
|
|
5280
|
-
"clearBtn": "_3j77BW_clearBtn",
|
|
5281
|
-
"footActions": "_3j77BW_footActions",
|
|
5282
|
-
"head": "_3j77BW_head",
|
|
5283
|
-
"footFail": "_3j77BW_footFail",
|
|
5284
|
-
"entry": "_3j77BW_entry",
|
|
5285
5319
|
"logList": "_3j77BW_logList",
|
|
5286
5320
|
"more": "_3j77BW_more",
|
|
5321
|
+
"footPath": "_3j77BW_footPath",
|
|
5322
|
+
"list": "_3j77BW_list",
|
|
5323
|
+
"footActions": "_3j77BW_footActions",
|
|
5324
|
+
"filterChipActive": "_3j77BW_filterChipActive",
|
|
5325
|
+
"previewRow": "_3j77BW_previewRow",
|
|
5326
|
+
"badgeWarn": "_3j77BW_badgeWarn",
|
|
5327
|
+
"pathDialog": "_3j77BW_pathDialog",
|
|
5328
|
+
"pathDraft": "_3j77BW_pathDraft",
|
|
5329
|
+
"pathDialogHint": "_3j77BW_pathDialogHint",
|
|
5330
|
+
"badge": "_3j77BW_badge",
|
|
5331
|
+
"headHint": "_3j77BW_headHint",
|
|
5332
|
+
"pathText": "_3j77BW_pathText",
|
|
5287
5333
|
"badgeDebug": "_3j77BW_badgeDebug",
|
|
5288
|
-
"footCount": "_3j77BW_footCount",
|
|
5289
5334
|
"catSettings": "_3j77BW_catSettings",
|
|
5290
|
-
"
|
|
5335
|
+
"actions": "_3j77BW_actions",
|
|
5336
|
+
"headActions": "_3j77BW_headActions",
|
|
5337
|
+
"badgeError": "_3j77BW_badgeError",
|
|
5291
5338
|
"event": "_3j77BW_event",
|
|
5292
|
-
"
|
|
5293
|
-
"
|
|
5294
|
-
"
|
|
5295
|
-
"
|
|
5296
|
-
"
|
|
5297
|
-
"
|
|
5298
|
-
"moreEnd": "_3j77BW_moreEnd",
|
|
5299
|
-
"footPath": "_3j77BW_footPath",
|
|
5300
|
-
"pathDialog": "_3j77BW_pathDialog",
|
|
5301
|
-
"badgeInfo": "_3j77BW_badgeInfo",
|
|
5339
|
+
"foot": "_3j77BW_foot",
|
|
5340
|
+
"catSystem": "_3j77BW_catSystem",
|
|
5341
|
+
"pathLabel": "_3j77BW_pathLabel",
|
|
5342
|
+
"pathDialogRow": "_3j77BW_pathDialogRow",
|
|
5343
|
+
"pathDialogReset": "_3j77BW_pathDialogReset",
|
|
5344
|
+
"footCount": "_3j77BW_footCount",
|
|
5302
5345
|
"catUpdate": "_3j77BW_catUpdate",
|
|
5303
|
-
"
|
|
5304
|
-
"
|
|
5305
|
-
"
|
|
5306
|
-
"
|
|
5346
|
+
"catDiagnostics": "_3j77BW_catDiagnostics",
|
|
5347
|
+
"entry": "_3j77BW_entry",
|
|
5348
|
+
"filterChip": "_3j77BW_filterChip",
|
|
5349
|
+
"time": "_3j77BW_time",
|
|
5350
|
+
"message": "_3j77BW_message",
|
|
5351
|
+
"pathRow": "_3j77BW_pathRow",
|
|
5352
|
+
"footFail": "_3j77BW_footFail"
|
|
5307
5353
|
};
|
|
5308
5354
|
//#endregion
|
|
5309
5355
|
//#region src/client/components/modals/LogsModal.tsx
|
|
@@ -6154,6 +6200,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6154
6200
|
/** 命令行安装确认弹窗:记录待安装的裸目标(npm 包名 / GitHub 地址,DSH 命令已剥成裸目标)——
|
|
6155
6201
|
* 与应用商店同一套确认/进度/结果弹窗,提供时 plugin 传 null 走 customTarget 模式 */
|
|
6156
6202
|
const [confirmCustomTarget, setConfirmCustomTarget] = (0, react.useState)(null);
|
|
6203
|
+
/** 自定义安装入口渠道(三张卡片之一):随确认弹窗记录,提交时上报服务端,
|
|
6204
|
+
* 报错/日志据此精准溯源「从哪个入口发起」(npm 全局安装固定为 'npm') */
|
|
6205
|
+
const [confirmCustomChannel, setConfirmCustomChannel] = (0, react.useState)(null);
|
|
6157
6206
|
/** 全局 npm 安装确认弹窗(官方 `npm install -g <pkgs>`):记录原始命令 + 解析出的包列表,
|
|
6158
6207
|
* 走与应用商店同一套确认/进度/结果弹窗(plugin 传 null,InstallModal 走 globalNpm 模式) */
|
|
6159
6208
|
const [confirmGlobalNpm, setConfirmGlobalNpm] = (0, react.useState)(null);
|
|
@@ -6306,6 +6355,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6306
6355
|
if (e.key === "Escape") {
|
|
6307
6356
|
setConfirmPlugin(null);
|
|
6308
6357
|
setConfirmCustomTarget(null);
|
|
6358
|
+
setConfirmCustomChannel(null);
|
|
6309
6359
|
setConfirmGlobalNpm(null);
|
|
6310
6360
|
setUninstallPlugin(null);
|
|
6311
6361
|
setUninstallItem(null);
|
|
@@ -6515,6 +6565,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6515
6565
|
queue.clearModalTask();
|
|
6516
6566
|
if (opts?.globalNpm && opts.globalNpm.length > 0) {
|
|
6517
6567
|
setConfirmCustomTarget(null);
|
|
6568
|
+
setConfirmCustomChannel(null);
|
|
6518
6569
|
setConfirmIsUpdate(false);
|
|
6519
6570
|
setConfirmGlobalNpm({
|
|
6520
6571
|
raw,
|
|
@@ -6523,6 +6574,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6523
6574
|
return;
|
|
6524
6575
|
}
|
|
6525
6576
|
setConfirmGlobalNpm(null);
|
|
6577
|
+
setConfirmCustomChannel(opts.installChannel);
|
|
6526
6578
|
setConfirmIsUpdate(customTargetInstalled(target));
|
|
6527
6579
|
setConfirmCustomTarget(target);
|
|
6528
6580
|
}
|
|
@@ -6542,7 +6594,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6542
6594
|
openSection: settingsSection,
|
|
6543
6595
|
onConsumedOpenSection: () => setSettingsSection(null)
|
|
6544
6596
|
}), showHubUpdate && (0, react.createElement)(HubUpdateModal, {
|
|
6545
|
-
info: catalog.hubUpdateInfo ?? { version: "1.3.
|
|
6597
|
+
info: catalog.hubUpdateInfo ?? { version: "1.3.9" },
|
|
6546
6598
|
lang,
|
|
6547
6599
|
t,
|
|
6548
6600
|
hasUpdate: catalog.hubHasUpdate,
|
|
@@ -6651,6 +6703,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6651
6703
|
onClose: () => {
|
|
6652
6704
|
setInstallDone(false);
|
|
6653
6705
|
setConfirmCustomTarget(null);
|
|
6706
|
+
setConfirmCustomChannel(null);
|
|
6654
6707
|
},
|
|
6655
6708
|
onCopy: () => {
|
|
6656
6709
|
doCopy(`pnpm add ${confirmCustomTarget}`);
|
|
@@ -6659,7 +6712,10 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6659
6712
|
kind: "copied"
|
|
6660
6713
|
});
|
|
6661
6714
|
},
|
|
6662
|
-
onInstall: () => void queue.installCustom(confirmCustomTarget,
|
|
6715
|
+
onInstall: () => void queue.installCustom(confirmCustomTarget, {
|
|
6716
|
+
update: confirmIsUpdate,
|
|
6717
|
+
channel: confirmCustomChannel ?? "npm"
|
|
6718
|
+
}),
|
|
6663
6719
|
onRestart: () => setShowRestartConfirm(true)
|
|
6664
6720
|
}), confirmGlobalNpm && (0, react.createElement)(InstallModal, {
|
|
6665
6721
|
plugin: null,
|
|
@@ -6676,6 +6732,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6676
6732
|
onClose: () => {
|
|
6677
6733
|
setInstallDone(false);
|
|
6678
6734
|
setConfirmGlobalNpm(null);
|
|
6735
|
+
setConfirmCustomChannel(null);
|
|
6679
6736
|
},
|
|
6680
6737
|
onCopy: () => {
|
|
6681
6738
|
doCopy(`npm install -g ${confirmGlobalNpm.pkgs.join(" ")}`);
|
|
@@ -6684,7 +6741,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
|
|
|
6684
6741
|
kind: "copied"
|
|
6685
6742
|
});
|
|
6686
6743
|
},
|
|
6687
|
-
onInstall: () => void queue.installGlobalNpm(confirmGlobalNpm.pkgs),
|
|
6744
|
+
onInstall: () => void queue.installGlobalNpm(confirmGlobalNpm.pkgs, { channel: "npm" }),
|
|
6688
6745
|
onRestart: () => setShowRestartConfirm(true)
|
|
6689
6746
|
}), (uninstallPlugin || uninstallItem) && (0, react.createElement)(UninstallModal, {
|
|
6690
6747
|
plugin: uninstallPlugin ?? pluginOfItem(uninstallItem),
|