dsh-plugin 1.3.0 → 1.3.2

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
@@ -607,42 +607,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
607
607
  document.head.appendChild(tag);
608
608
  }
609
609
  var Header_module_css_default = {
610
- "copyIcon": "qikqja_copyIcon",
611
- "hubUpdateBadge": "qikqja_hubUpdateBadge",
612
- "adArrow": "qikqja_adArrow",
610
+ "brandTitle": "qikqja_brandTitle",
613
611
  "githubLink": "qikqja_githubLink",
614
- "tagline": "qikqja_tagline",
615
- "controls": "qikqja_controls",
616
- "adText": "qikqja_adText",
617
- "tabCount": "qikqja_tabCount",
618
- "tabsRow": "qikqja_tabsRow",
612
+ "headerTitleRow": "qikqja_headerTitleRow",
613
+ "hubUpdateBadge": "qikqja_hubUpdateBadge",
614
+ "copyIcon": "qikqja_copyIcon",
619
615
  "logoIcon": "qikqja_logoIcon",
620
- "root": "qikqja_root",
621
- "resultCount": "qikqja_resultCount",
622
- "version": "qikqja_version",
623
- "segLabel": "qikqja_segLabel",
624
- "aboutBtn": "qikqja_aboutBtn",
625
- "segBtn": "qikqja_segBtn",
626
- "tabs": "qikqja_tabs",
627
- "adBanner": "qikqja_adBanner",
616
+ "sortGroup": "qikqja_sortGroup",
628
617
  "segGroup": "qikqja_segGroup",
629
- "resultSeg": "qikqja_resultSeg",
630
- "githubIcon": "qikqja_githubIcon",
618
+ "segBtn": "qikqja_segBtn",
619
+ "tabActive": "qikqja_tabActive",
620
+ "controls": "qikqja_controls",
631
621
  "tab": "qikqja_tab",
632
- "langBtn": "qikqja_langBtn",
633
- "brandTitle": "qikqja_brandTitle",
634
- "taglineLink": "qikqja_taglineLink",
635
- "search": "qikqja_search",
636
- "searchRow": "qikqja_searchRow",
622
+ "adBadge": "qikqja_adBadge",
637
623
  "segBtnActive": "qikqja_segBtnActive",
638
- "title": "qikqja_title",
639
- "sortGroup": "qikqja_sortGroup",
624
+ "aboutBtn": "qikqja_aboutBtn",
640
625
  "header": "qikqja_header",
641
- "tabActive": "qikqja_tabActive",
626
+ "tabs": "qikqja_tabs",
627
+ "version": "qikqja_version",
628
+ "taglineLink": "qikqja_taglineLink",
642
629
  "headerRight": "qikqja_headerRight",
630
+ "resultCount": "qikqja_resultCount",
631
+ "adArrow": "qikqja_adArrow",
632
+ "tabsRow": "qikqja_tabsRow",
633
+ "tagline": "qikqja_tagline",
634
+ "adText": "qikqja_adText",
635
+ "tabCount": "qikqja_tabCount",
643
636
  "versionBtn": "qikqja_versionBtn",
644
- "headerTitleRow": "qikqja_headerTitleRow",
645
- "adBadge": "qikqja_adBadge"
637
+ "searchRow": "qikqja_searchRow",
638
+ "search": "qikqja_search",
639
+ "adBanner": "qikqja_adBanner",
640
+ "title": "qikqja_title",
641
+ "resultSeg": "qikqja_resultSeg",
642
+ "root": "qikqja_root",
643
+ "githubIcon": "qikqja_githubIcon",
644
+ "segLabel": "qikqja_segLabel",
645
+ "langBtn": "qikqja_langBtn"
646
646
  };
647
647
  //#endregion
648
648
  //#region \0dsh-css:src/client/styles/Modal.module.css.mjs
@@ -656,129 +656,129 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
656
656
  document.head.appendChild(tag);
657
657
  }
658
658
  var Modal_module_css_default = {
659
- "resultDesc": "BiQ1zG_resultDesc",
659
+ "noticeRemove": "BiQ1zG_noticeRemove",
660
+ "pendingRowActions": "BiQ1zG_pendingRowActions",
661
+ "queueRowHead": "BiQ1zG_queueRowHead",
662
+ "modalCmdCopy": "BiQ1zG_modalCmdCopy",
663
+ "noticeRowOk": "BiQ1zG_noticeRowOk",
664
+ "modalLink": "BiQ1zG_modalLink",
665
+ "pendingRowStatus": "BiQ1zG_pendingRowStatus",
666
+ "modalInstall": "BiQ1zG_modalInstall",
667
+ "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
660
668
  "detailLabel": "BiQ1zG_detailLabel",
661
- "errorModal": "BiQ1zG_errorModal",
662
- "resultCheckIcon": "BiQ1zG_resultCheckIcon",
669
+ "modalBody": "BiQ1zG_modalBody",
670
+ "detailRow": "BiQ1zG_detailRow",
671
+ "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
672
+ "modalCloseIcon": "BiQ1zG_modalCloseIcon",
673
+ "modalTitleBusy": "BiQ1zG_modalTitleBusy",
674
+ "queueRowBody": "BiQ1zG_queueRowBody",
663
675
  "progressText": "BiQ1zG_progressText",
664
- "failRepo": "BiQ1zG_failRepo",
665
- "pendingRowActions": "BiQ1zG_pendingRowActions",
666
- "detailStatusText": "BiQ1zG_detailStatusText",
667
- "overlayIn": "BiQ1zG_overlayIn",
668
- "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
669
- "errorHint": "BiQ1zG_errorHint",
670
- "trustHint": "BiQ1zG_trustHint",
671
- "stripCancel": "BiQ1zG_stripCancel",
672
- "noticeHead": "BiQ1zG_noticeHead",
676
+ "noticeTextOk": "BiQ1zG_noticeTextOk",
677
+ "detailStatusPending": "BiQ1zG_detailStatusPending",
678
+ "progressFillFail": "BiQ1zG_progressFillFail",
679
+ "noticeFoot": "BiQ1zG_noticeFoot",
680
+ "failPrepareHint": "BiQ1zG_failPrepareHint",
681
+ "detailStatusRunning": "BiQ1zG_detailStatusRunning",
682
+ "toastIn": "BiQ1zG_toastIn",
683
+ "aboutModal": "BiQ1zG_aboutModal",
684
+ "noticeList": "BiQ1zG_noticeList",
685
+ "noticeMain": "BiQ1zG_noticeMain",
673
686
  "queuedHint": "BiQ1zG_queuedHint",
674
- "modalHead": "BiQ1zG_modalHead",
675
- "uninstallConfirm": "BiQ1zG_uninstallConfirm",
676
- "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
677
- "aboutContent": "BiQ1zG_aboutContent",
678
- "modalCmd": "BiQ1zG_modalCmd",
679
- "aboutMeta": "BiQ1zG_aboutMeta",
680
- "failCopy": "BiQ1zG_failCopy",
681
- "queueRowBody": "BiQ1zG_queueRowBody",
682
- "detailModal": "BiQ1zG_detailModal",
683
- "modalRow": "BiQ1zG_modalRow",
687
+ "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
688
+ "failKind": "BiQ1zG_failKind",
689
+ "errorModal": "BiQ1zG_errorModal",
690
+ "restartLater": "BiQ1zG_restartLater",
684
691
  "noticeVersion": "BiQ1zG_noticeVersion",
685
- "failKindUninstall": "BiQ1zG_failKindUninstall",
686
- "failedCopyHint": "BiQ1zG_failedCopyHint",
692
+ "failKindInstall": "BiQ1zG_failKindInstall",
687
693
  "overlay": "BiQ1zG_overlay",
688
- "noticeRemove": "BiQ1zG_noticeRemove",
689
- "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
690
694
  "modalTitle": "BiQ1zG_modalTitle",
691
- "noticeTextFail": "BiQ1zG_noticeTextFail",
692
- "logModal": "BiQ1zG_logModal",
693
- "detailLink": "BiQ1zG_detailLink",
694
- "helpModal": "BiQ1zG_helpModal",
695
- "modalValue": "BiQ1zG_modalValue",
696
- "toastFail": "BiQ1zG_toastFail",
697
- "detailStatusRunning": "BiQ1zG_detailStatusRunning",
698
- "restartNow": "BiQ1zG_restartNow",
699
- "modalTitleQueued": "BiQ1zG_modalTitleQueued",
700
- "detailStars": "BiQ1zG_detailStars",
701
- "noticeTime": "BiQ1zG_noticeTime",
702
- "modalInstall": "BiQ1zG_modalInstall",
703
- "detailPathBtn": "BiQ1zG_detailPathBtn",
695
+ "failList": "BiQ1zG_failList",
696
+ "failRow": "BiQ1zG_failRow",
697
+ "detailStatusText": "BiQ1zG_detailStatusText",
704
698
  "resultCheck": "BiQ1zG_resultCheck",
699
+ "queueRow": "BiQ1zG_queueRow",
700
+ "detailGrid": "BiQ1zG_detailGrid",
701
+ "errorHint": "BiQ1zG_errorHint",
702
+ "modalCancel": "BiQ1zG_modalCancel",
703
+ "modalWide": "BiQ1zG_modalWide",
704
+ "uninstallConfirm": "BiQ1zG_uninstallConfirm",
705
+ "progressFill": "BiQ1zG_progressFill",
706
+ "cliOnlyHint": "BiQ1zG_cliOnlyHint",
707
+ "modalLabel": "BiQ1zG_modalLabel",
708
+ "queueRowDesc": "BiQ1zG_queueRowDesc",
709
+ "detailMono": "BiQ1zG_detailMono",
705
710
  "queueRowTarget": "BiQ1zG_queueRowTarget",
706
- "queueRowHead": "BiQ1zG_queueRowHead",
707
- "progressTrack": "BiQ1zG_progressTrack",
711
+ "resultRestarting": "BiQ1zG_resultRestarting",
712
+ "noticeRow": "BiQ1zG_noticeRow",
713
+ "modalCmdText": "BiQ1zG_modalCmdText",
714
+ "logModal": "BiQ1zG_logModal",
715
+ "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
716
+ "queueSectionTitle": "BiQ1zG_queueSectionTitle",
717
+ "failClear": "BiQ1zG_failClear",
718
+ "overlayIn": "BiQ1zG_overlayIn",
708
719
  "progressHead": "BiQ1zG_progressHead",
709
- "failRow": "BiQ1zG_failRow",
720
+ "noticeTime": "BiQ1zG_noticeTime",
721
+ "trustHint": "BiQ1zG_trustHint",
710
722
  "detailArrow": "BiQ1zG_detailArrow",
723
+ "detailModal": "BiQ1zG_detailModal",
711
724
  "result": "BiQ1zG_result",
725
+ "detailPath": "BiQ1zG_detailPath",
712
726
  "toast": "BiQ1zG_toast",
713
- "failClear": "BiQ1zG_failClear",
714
- "detailGrid": "BiQ1zG_detailGrid",
715
- "detailPathActions": "BiQ1zG_detailPathActions",
716
- "noticeFoot": "BiQ1zG_noticeFoot",
717
- "progressFill": "BiQ1zG_progressFill",
718
- "noticeTextOk": "BiQ1zG_noticeTextOk",
719
- "cliOnlyHint": "BiQ1zG_cliOnlyHint",
720
727
  "resultTitle": "BiQ1zG_resultTitle",
721
- "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
722
- "aboutModal": "BiQ1zG_aboutModal",
723
- "modal": "BiQ1zG_modal",
724
- "detailRow": "BiQ1zG_detailRow",
725
- "queueRowDesc": "BiQ1zG_queueRowDesc",
726
- "errorTitle": "BiQ1zG_errorTitle",
727
- "failBigIssue": "BiQ1zG_failBigIssue",
728
- "hubUpdateModal": "BiQ1zG_hubUpdateModal",
729
- "modalLink": "BiQ1zG_modalLink",
730
- "modalIn": "BiQ1zG_modalIn",
731
728
  "modalActions": "BiQ1zG_modalActions",
732
- "modalDesc": "BiQ1zG_modalDesc",
733
- "toastIn": "BiQ1zG_toastIn",
734
- "modalLabel": "BiQ1zG_modalLabel",
735
- "errorBox": "BiQ1zG_errorBox",
736
- "restartNowWarning": "BiQ1zG_restartNowWarning",
737
- "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
738
- "detailStatusPending": "BiQ1zG_detailStatusPending",
739
- "modalWide": "BiQ1zG_modalWide",
740
- "noticeRow": "BiQ1zG_noticeRow",
741
- "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
729
+ "detailPathText": "BiQ1zG_detailPathText",
730
+ "detailStars": "BiQ1zG_detailStars",
731
+ "queueSection": "BiQ1zG_queueSection",
732
+ "failKindUninstall": "BiQ1zG_failKindUninstall",
733
+ "modalRow": "BiQ1zG_modalRow",
734
+ "stripCancel": "BiQ1zG_stripCancel",
742
735
  "linkIcon": "BiQ1zG_linkIcon",
743
- "failKindInstall": "BiQ1zG_failKindInstall",
744
- "modalCmdText": "BiQ1zG_modalCmdText",
745
- "detailUpdateHint": "BiQ1zG_detailUpdateHint",
746
- "noticeMain": "BiQ1zG_noticeMain",
736
+ "detailPathActions": "BiQ1zG_detailPathActions",
737
+ "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
747
738
  "modalCopy": "BiQ1zG_modalCopy",
748
- "resultRestarting": "BiQ1zG_resultRestarting",
749
- "modalCancel": "BiQ1zG_modalCancel",
750
- "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
751
- "detailValue": "BiQ1zG_detailValue",
752
- "queueRowTrack": "BiQ1zG_queueRowTrack",
753
- "progress": "BiQ1zG_progress",
754
- "failEmpty": "BiQ1zG_failEmpty",
739
+ "errorCopySoft": "BiQ1zG_errorCopySoft",
740
+ "detailDim": "BiQ1zG_detailDim",
755
741
  "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
742
+ "detailUpdateHint": "BiQ1zG_detailUpdateHint",
743
+ "aboutMeta": "BiQ1zG_aboutMeta",
744
+ "detailValue": "BiQ1zG_detailValue",
745
+ "restartNowWarning": "BiQ1zG_restartNowWarning",
746
+ "failHead": "BiQ1zG_failHead",
747
+ "modalCmd": "BiQ1zG_modalCmd",
748
+ "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
749
+ "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
756
750
  "modalClose": "BiQ1zG_modalClose",
757
- "queueRow": "BiQ1zG_queueRow",
758
- "modalTitleBusy": "BiQ1zG_modalTitleBusy",
759
- "progressFillFail": "BiQ1zG_progressFillFail",
751
+ "failRepo": "BiQ1zG_failRepo",
752
+ "failBigIssue": "BiQ1zG_failBigIssue",
760
753
  "noticeRowMain": "BiQ1zG_noticeRowMain",
761
- "noticeRowOk": "BiQ1zG_noticeRowOk",
762
- "modalCloseIcon": "BiQ1zG_modalCloseIcon",
763
- "detailMono": "BiQ1zG_detailMono",
764
- "failPrepareHint": "BiQ1zG_failPrepareHint",
765
- "failKind": "BiQ1zG_failKind",
754
+ "noticeIgnore": "BiQ1zG_noticeIgnore",
755
+ "detailLink": "BiQ1zG_detailLink",
756
+ "modalHead": "BiQ1zG_modalHead",
757
+ "restartNow": "BiQ1zG_restartNow",
766
758
  "queueRowPct": "BiQ1zG_queueRowPct",
759
+ "detailPathBtn": "BiQ1zG_detailPathBtn",
760
+ "helpModal": "BiQ1zG_helpModal",
761
+ "progress": "BiQ1zG_progress",
762
+ "progressTrack": "BiQ1zG_progressTrack",
763
+ "errorTitle": "BiQ1zG_errorTitle",
764
+ "resultDesc": "BiQ1zG_resultDesc",
765
+ "failedCopyHint": "BiQ1zG_failedCopyHint",
766
+ "toastFail": "BiQ1zG_toastFail",
767
767
  "queueRowStatus": "BiQ1zG_queueRowStatus",
768
- "noticeList": "BiQ1zG_noticeList",
769
- "detailPath": "BiQ1zG_detailPath",
770
- "modalCmdCopy": "BiQ1zG_modalCmdCopy",
771
- "modalBody": "BiQ1zG_modalBody",
772
- "errorCopySoft": "BiQ1zG_errorCopySoft",
773
- "restartLater": "BiQ1zG_restartLater",
774
- "queueSection": "BiQ1zG_queueSection",
775
- "noticeIgnore": "BiQ1zG_noticeIgnore",
776
- "detailDim": "BiQ1zG_detailDim",
777
- "detailPathText": "BiQ1zG_detailPathText",
778
- "pendingRowStatus": "BiQ1zG_pendingRowStatus",
779
- "failList": "BiQ1zG_failList",
780
- "queueSectionTitle": "BiQ1zG_queueSectionTitle",
781
- "failHead": "BiQ1zG_failHead"
768
+ "hubUpdateModal": "BiQ1zG_hubUpdateModal",
769
+ "errorBox": "BiQ1zG_errorBox",
770
+ "noticeHead": "BiQ1zG_noticeHead",
771
+ "noticeTextFail": "BiQ1zG_noticeTextFail",
772
+ "modalDesc": "BiQ1zG_modalDesc",
773
+ "failEmpty": "BiQ1zG_failEmpty",
774
+ "aboutContent": "BiQ1zG_aboutContent",
775
+ "modalValue": "BiQ1zG_modalValue",
776
+ "queueRowTrack": "BiQ1zG_queueRowTrack",
777
+ "failCopy": "BiQ1zG_failCopy",
778
+ "resultCheckIcon": "BiQ1zG_resultCheckIcon",
779
+ "modalTitleQueued": "BiQ1zG_modalTitleQueued",
780
+ "modalIn": "BiQ1zG_modalIn",
781
+ "modal": "BiQ1zG_modal"
782
782
  };
783
783
  //#endregion
784
784
  //#region src/client/logic/install-command.ts
@@ -848,7 +848,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
848
848
  * tsdown 构建时用 define 把 __PLUGIN_VERSION__ 替换成 package.json 的版本号;
849
849
  * node --test 直接 import 本模块时该标识符不存在,typeof 守卫兜底为空串。
850
850
  */
851
- const PLUGIN_VERSION = "1.3.0";
851
+ const PLUGIN_VERSION = "1.3.2";
852
852
  const CATEGORY_ORDER = [
853
853
  "interface",
854
854
  "session",
@@ -1182,6 +1182,33 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1182
1182
  function isRepoLike(value) {
1183
1183
  return /^[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+$/.test(value);
1184
1184
  }
1185
+ /**
1186
+ * 提 Issue 的仓库身份解析:失败目标可能是 owner/repo 也可能是 npm 包名(含 @scope/pkg、
1187
+ * 可带 @version,如 dsh-plugin、@scope/pkg@1.2.3)。
1188
+ * - 目标本身就能解析出 owner/repo → 直接用;
1189
+ * - npm 包名 → 反查仓库身份:先查已安装表(该包名的条目若带仓库身份即命中),再查目录插件
1190
+ * (source.npmPackage 与包名一致,取目录收录的仓库身份)。
1191
+ * 反查到才返回,查不到返回 null —— 调用方据此不显示「一键提 Issue」按钮,避免把 Issue
1192
+ * 提到错误的地址(别人发的 npm 包名不是 GitHub 仓库,直接拼 github.com/<包名> 是打不开的)。
1193
+ */
1194
+ function issueRepoOf(target, installedItems, plugins) {
1195
+ const input = target.trim();
1196
+ if (!input) return null;
1197
+ const parsed = repoFromInstallTarget(input);
1198
+ if (isRepoLike(parsed)) return parsed;
1199
+ const pkg = parsed.replace(/@[^@]*$/, "").toLowerCase();
1200
+ for (const item of installedItems) {
1201
+ if (item.name.toLowerCase() !== pkg) continue;
1202
+ if (item.repo) return item.repo;
1203
+ const repo = repoFromInstallTarget(item.spec);
1204
+ if (isRepoLike(repo)) return repo;
1205
+ }
1206
+ for (const p of plugins ?? []) {
1207
+ const pkgName = (p.source?.npmPackage ?? "").trim();
1208
+ if (pkgName !== "" && pkgName.toLowerCase() === pkg && p.source?.repo) return p.source.repo;
1209
+ }
1210
+ return null;
1211
+ }
1185
1212
  /** 已安装项 → 弹窗可用的伪插件对象:卸载确认弹窗只读名称/来源行,
1186
1213
  * 自定义安装(目录外)没有完整目录数据,用它把 InstalledItem 适配成 HubPlugin。 */
1187
1214
  function pluginOfItem(item) {
@@ -1204,7 +1231,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1204
1231
  if (name !== "dsh-plugin") return false;
1205
1232
  if (spec.startsWith("file:") || spec.startsWith("link:")) return true;
1206
1233
  const repo = repoFromInstallTarget(spec);
1207
- return isRepoLike(repo) && repo.toLowerCase() === "dshplugin/dsh-plugin-hub".toLowerCase();
1234
+ if (isRepoLike(repo) && repo.toLowerCase() === "dshplugin/dsh-plugin-hub".toLowerCase()) return true;
1235
+ return !isRepoLike(repo);
1208
1236
  }
1209
1237
  /**
1210
1238
  * 构建已安装项列表:目录插件按命中关系合并(拥有完整元数据),
@@ -1410,7 +1438,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
1410
1438
  */
1411
1439
  const hubHasUpdate = (() => {
1412
1440
  if (!hubUpdateInfo) return false;
1413
- return hubUpdateInfo.version !== "1.3.0";
1441
+ return hubUpdateInfo.version !== "1.3.2";
1414
1442
  })();
1415
1443
  (0, react.useMemo)(() => {
1416
1444
  if (!plugins) return [];
@@ -3349,7 +3377,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3349
3377
  strokeLinecap: "round"
3350
3378
  }));
3351
3379
  }
3352
- function NotificationsModal({ records, tasks, pendingRestarts, t, env, onClose, onCopy, onClear, onRemove, onUpdate, onIgnoreUpdate, cancelTask, restarting, onRestart }) {
3380
+ function NotificationsModal({ records, tasks, pendingRestarts, t, env, onClose, onCopy, onClear, onRemove, onUpdate, onIgnoreUpdate, cancelTask, restarting, onRestart, resolveRepo }) {
3353
3381
  return (0, react.createElement)("div", {
3354
3382
  className: Modal_module_css_default.overlay,
3355
3383
  onClick: (e) => {
@@ -3401,6 +3429,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3401
3429
  style: { width: `${q.progress}%` }
3402
3430
  })), (0, react.createElement)("span", { className: Modal_module_css_default.queueRowPct }, `${q.progress}%`))))) : null]) : null, records.length === 0 ? (0, react.createElement)("div", { className: Modal_module_css_default.failEmpty }, t("notificationsEmpty")) : (0, react.createElement)("div", { className: Modal_module_css_default.noticeList }, records.map((r) => {
3403
3431
  const isUpdate = r.kind === "update";
3432
+ const shownRepo = resolveRepo ? resolveRepo(r.repo) ?? "" : r.repo;
3404
3433
  return (0, react.createElement)("div", {
3405
3434
  key: r.id,
3406
3435
  className: r.ok ? `${Modal_module_css_default.noticeRow} ${Modal_module_css_default.noticeRowOk}${isUpdate ? ` ${Modal_module_css_default.noticeRowUpdate}` : ""}` : Modal_module_css_default.noticeRow,
@@ -3414,13 +3443,13 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3414
3443
  }, `v${r.version}`) : null, r.repo ? isUpdate ? (0, react.createElement)("span", {
3415
3444
  className: Modal_module_css_default.failRepo,
3416
3445
  title: r.repo
3417
- }, r.repo) : (0, react.createElement)("a", {
3446
+ }, r.repo) : shownRepo ? (0, react.createElement)("a", {
3418
3447
  className: Modal_module_css_default.failRepo,
3419
- href: pluginSiteUrl(r.repo),
3448
+ href: pluginSiteUrl(shownRepo),
3420
3449
  target: "_blank",
3421
3450
  rel: "noopener noreferrer",
3422
- title: r.repo
3423
- }, r.repo) : null, !r.ok && (0, react.createElement)("button", {
3451
+ title: shownRepo
3452
+ }, shownRepo) : null : null, !r.ok && (0, react.createElement)("button", {
3424
3453
  className: Modal_module_css_default.failCopy,
3425
3454
  onClick: () => onCopy(r.message)
3426
3455
  }, t("failCopy")), r.ok ? (0, react.createElement)("span", {
@@ -3452,16 +3481,16 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3452
3481
  const v = npmTooLowVersion(r.message);
3453
3482
  return (0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, t(v ? "failNpmTooLowV" : "failNpmTooLow", v ? { v } : void 0));
3454
3483
  }
3455
- if (kind === "pluginPrepare" || kind === "pnpmIgnoredBuild") return (0, react.createElement)("div", null, [(0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, kind === "pnpmIgnoredBuild" ? t("failIgnoredBuild") : /\[packaging\]/i.test(r.message) ? t("failPackagingHint") : t("failPrepareHint")), r.repo ? (0, react.createElement)("a", {
3484
+ if (kind === "pluginPrepare" || kind === "pnpmIgnoredBuild") return (0, react.createElement)("div", null, [(0, react.createElement)("div", { className: Modal_module_css_default.failPrepareHint }, kind === "pnpmIgnoredBuild" ? t("failIgnoredBuild") : /\[packaging\]/i.test(r.message) ? t("failPackagingHint") : t("failPrepareHint")), r.repo && shownRepo ? (0, react.createElement)("a", {
3456
3485
  className: Modal_module_css_default.failBigIssue,
3457
- href: pluginIssueUrl(r.repo, r.message, env, r.command, r.attempts),
3486
+ href: pluginIssueUrl(shownRepo, r.message, env, r.command, r.attempts),
3458
3487
  target: "_blank",
3459
3488
  rel: "noopener noreferrer",
3460
3489
  title: t("failIssueHint")
3461
3490
  }, t("failIssueBig")) : null]);
3462
- return r.repo ? (0, react.createElement)("a", {
3491
+ return r.repo && shownRepo ? (0, react.createElement)("a", {
3463
3492
  className: Modal_module_css_default.failBigIssue,
3464
- href: pluginIssueUrl(r.repo, r.message, env, r.command, r.attempts),
3493
+ href: pluginIssueUrl(shownRepo, r.message, env, r.command, r.attempts),
3465
3494
  target: "_blank",
3466
3495
  rel: "noopener noreferrer",
3467
3496
  title: t("failIssueHint")
@@ -3619,38 +3648,38 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3619
3648
  document.head.appendChild(tag);
3620
3649
  }
3621
3650
  var List_module_css_default = {
3651
+ "cardTitle": "_3XaZHa_cardTitle",
3652
+ "installBtnInstalled": "_3XaZHa_installBtnInstalled",
3653
+ "topic": "_3XaZHa_topic",
3654
+ "body": "_3XaZHa_body",
3655
+ "cardHead": "_3XaZHa_cardHead",
3656
+ "card": "_3XaZHa_card",
3657
+ "detailBtn": "_3XaZHa_detailBtn",
3658
+ "cardSide": "_3XaZHa_cardSide",
3659
+ "state": "_3XaZHa_state",
3660
+ "footLink": "_3XaZHa_footLink",
3661
+ "actions": "_3XaZHa_actions",
3662
+ "verified": "_3XaZHa_verified",
3663
+ "installBtnUpdate": "_3XaZHa_installBtnUpdate",
3622
3664
  "fork": "_3XaZHa_fork",
3623
- "installBtn": "_3XaZHa_installBtn",
3624
- "detailBtn": "_3XaZHa_detailBtn",
3625
- "moreSentinel": "_3XaZHa_moreSentinel",
3665
+ "footer": "_3XaZHa_footer",
3626
3666
  "cardMain": "_3XaZHa_cardMain",
3627
- "cardSide": "_3XaZHa_cardSide",
3628
- "star": "_3XaZHa_star",
3629
- "card": "_3XaZHa_card",
3630
- "installBtnCopied": "_3XaZHa_installBtnCopied",
3667
+ "moreSentinel": "_3XaZHa_moreSentinel",
3668
+ "list": "_3XaZHa_list",
3669
+ "retryBtn": "_3XaZHa_retryBtn",
3631
3670
  "categoryBadge": "_3XaZHa_categoryBadge",
3632
- "body": "_3XaZHa_body",
3671
+ "uninstallBtn": "_3XaZHa_uninstallBtn",
3672
+ "stats": "_3XaZHa_stats",
3633
3673
  "versionBadge": "_3XaZHa_versionBadge",
3634
- "topics": "_3XaZHa_topics",
3635
- "installBtnUpdate": "_3XaZHa_installBtnUpdate",
3636
- "stateDesc": "_3XaZHa_stateDesc",
3637
3674
  "desc": "_3XaZHa_desc",
3638
- "cardHead": "_3XaZHa_cardHead",
3639
- "list": "_3XaZHa_list",
3640
3675
  "updateBadge": "_3XaZHa_updateBadge",
3641
- "actions": "_3XaZHa_actions",
3642
- "footLink": "_3XaZHa_footLink",
3643
- "uninstallBtn": "_3XaZHa_uninstallBtn",
3644
- "state": "_3XaZHa_state",
3645
- "topic": "_3XaZHa_topic",
3646
- "footer": "_3XaZHa_footer",
3647
- "stats": "_3XaZHa_stats",
3648
- "retryBtn": "_3XaZHa_retryBtn",
3649
- "cardTitle": "_3XaZHa_cardTitle",
3650
- "date": "_3XaZHa_date",
3651
- "installBtnInstalled": "_3XaZHa_installBtnInstalled",
3652
- "verified": "_3XaZHa_verified",
3653
- "stateTitle": "_3XaZHa_stateTitle"
3676
+ "topics": "_3XaZHa_topics",
3677
+ "installBtnCopied": "_3XaZHa_installBtnCopied",
3678
+ "stateDesc": "_3XaZHa_stateDesc",
3679
+ "star": "_3XaZHa_star",
3680
+ "installBtn": "_3XaZHa_installBtn",
3681
+ "stateTitle": "_3XaZHa_stateTitle",
3682
+ "date": "_3XaZHa_date"
3654
3683
  };
3655
3684
  //#endregion
3656
3685
  //#region src/client/hooks/useIncrementalList.ts
@@ -3847,14 +3876,14 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3847
3876
  document.head.appendChild(tag);
3848
3877
  }
3849
3878
  var SectionTabs_module_css_default = {
3850
- "noticeBtn": "_7tvizq_noticeBtn",
3879
+ "tabActive": "_7tvizq_tabActive",
3880
+ "noticeIcon": "_7tvizq_noticeIcon",
3881
+ "noticeCount": "_7tvizq_noticeCount",
3851
3882
  "root": "_7tvizq_root",
3883
+ "noticeBtn": "_7tvizq_noticeBtn",
3852
3884
  "tab": "_7tvizq_tab",
3853
3885
  "tabCount": "_7tvizq_tabCount",
3854
3886
  "tabIcon": "_7tvizq_tabIcon",
3855
- "noticeIcon": "_7tvizq_noticeIcon",
3856
- "tabActive": "_7tvizq_tabActive",
3857
- "noticeCount": "_7tvizq_noticeCount",
3858
3887
  "tabCountActive": "_7tvizq_tabCountActive"
3859
3888
  };
3860
3889
  //#endregion
@@ -3927,42 +3956,42 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
3927
3956
  document.head.appendChild(tag);
3928
3957
  }
3929
3958
  var InstalledView_module_css_default = {
3930
- "exampleRow": "_1nXeGW_exampleRow",
3931
- "segBtn": "_1nXeGW_segBtn",
3932
- "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
3933
- "searchWrap": "_1nXeGW_searchWrap",
3934
- "updateBadge": "_1nXeGW_updateBadge",
3935
- "rowSourceTag": "_1nXeGW_rowSourceTag",
3936
- "segLabel": "_1nXeGW_segLabel",
3937
- "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
3938
- "segGroup": "_1nXeGW_segGroup",
3939
- "toolbar": "_1nXeGW_toolbar",
3940
3959
  "segRow": "_1nXeGW_segRow",
3941
- "rowMeta": "_1nXeGW_rowMeta",
3960
+ "root": "_1nXeGW_root",
3961
+ "emptyDesc": "_1nXeGW_emptyDesc",
3962
+ "row": "_1nXeGW_row",
3942
3963
  "rowCategory": "_1nXeGW_rowCategory",
3964
+ "emptyTitle": "_1nXeGW_emptyTitle",
3965
+ "empty": "_1nXeGW_empty",
3966
+ "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
3967
+ "rowMeta": "_1nXeGW_rowMeta",
3968
+ "segLabel": "_1nXeGW_segLabel",
3969
+ "rowSourceTag": "_1nXeGW_rowSourceTag",
3943
3970
  "exampleBadge": "_1nXeGW_exampleBadge",
3944
- "versionBadge": "_1nXeGW_versionBadge",
3945
- "rowRepo": "_1nXeGW_rowRepo",
3971
+ "segBtn": "_1nXeGW_segBtn",
3972
+ "rowDetail": "_1nXeGW_rowDetail",
3946
3973
  "rowUpdate": "_1nXeGW_rowUpdate",
3947
- "rowUninstall": "_1nXeGW_rowUninstall",
3948
- "rowRestart": "_1nXeGW_rowRestart",
3949
- "searchInput": "_1nXeGW_searchInput",
3974
+ "segBtnActive": "_1nXeGW_segBtnActive",
3975
+ "toolbar": "_1nXeGW_toolbar",
3950
3976
  "list": "_1nXeGW_list",
3977
+ "statusPending": "_1nXeGW_statusPending",
3978
+ "rowRepo": "_1nXeGW_rowRepo",
3979
+ "updateBadge": "_1nXeGW_updateBadge",
3980
+ "rowTitle": "_1nXeGW_rowTitle",
3981
+ "rowRestart": "_1nXeGW_rowRestart",
3982
+ "searchWrap": "_1nXeGW_searchWrap",
3983
+ "segGroup": "_1nXeGW_segGroup",
3984
+ "rowDesc": "_1nXeGW_rowDesc",
3951
3985
  "statusInactive": "_1nXeGW_statusInactive",
3952
- "rowMain": "_1nXeGW_rowMain",
3986
+ "rowUninstall": "_1nXeGW_rowUninstall",
3987
+ "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
3988
+ "searchInput": "_1nXeGW_searchInput",
3989
+ "exampleRow": "_1nXeGW_exampleRow",
3953
3990
  "rowActions": "_1nXeGW_rowActions",
3954
- "segBtnActive": "_1nXeGW_segBtnActive",
3955
3991
  "rowTitleLine": "_1nXeGW_rowTitleLine",
3956
- "emptyDesc": "_1nXeGW_emptyDesc",
3957
- "row": "_1nXeGW_row",
3958
- "rowDesc": "_1nXeGW_rowDesc",
3959
- "statusPending": "_1nXeGW_statusPending",
3960
- "rowTitle": "_1nXeGW_rowTitle",
3961
- "emptyTitle": "_1nXeGW_emptyTitle",
3962
- "rowDetail": "_1nXeGW_rowDetail",
3963
- "root": "_1nXeGW_root",
3992
+ "rowMain": "_1nXeGW_rowMain",
3964
3993
  "statusDot": "_1nXeGW_statusDot",
3965
- "empty": "_1nXeGW_empty"
3994
+ "versionBadge": "_1nXeGW_versionBadge"
3966
3995
  };
3967
3996
  //#endregion
3968
3997
  //#region src/client/components/views/InstalledView.tsx
@@ -4203,27 +4232,27 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4203
4232
  document.head.appendChild(tag);
4204
4233
  }
4205
4234
  var CustomInstallView_module_css_default = {
4206
- "root": "zISxCG_root",
4207
- "helpBody": "zISxCG_helpBody",
4208
- "installHelpBtn": "zISxCG_installHelpBtn",
4209
- "installRow": "zISxCG_installRow",
4210
- "installCardHead": "zISxCG_installCardHead",
4211
- "helpCmd": "zISxCG_helpCmd",
4212
- "helpNote": "zISxCG_helpNote",
4213
4235
  "helpLine": "zISxCG_helpLine",
4214
- "installExample": "zISxCG_installExample",
4236
+ "installError": "zISxCG_installError",
4237
+ "installCards": "zISxCG_installCards",
4238
+ "installLabel": "zISxCG_installLabel",
4215
4239
  "installCardDisabled": "zISxCG_installCardDisabled",
4216
- "desc": "zISxCG_desc",
4240
+ "helpBody": "zISxCG_helpBody",
4241
+ "installInput": "zISxCG_installInput",
4217
4242
  "installCard": "zISxCG_installCard",
4243
+ "helpCmd": "zISxCG_helpCmd",
4244
+ "channelOffText": "zISxCG_channelOffText",
4245
+ "helpNote": "zISxCG_helpNote",
4246
+ "installCardHead": "zISxCG_installCardHead",
4247
+ "installRow": "zISxCG_installRow",
4218
4248
  "channelOff": "zISxCG_channelOff",
4219
- "installError": "zISxCG_installError",
4220
4249
  "installInputError": "zISxCG_installInputError",
4221
4250
  "channelOffBtn": "zISxCG_channelOffBtn",
4222
- "installInput": "zISxCG_installInput",
4223
4251
  "installBtn": "zISxCG_installBtn",
4224
- "channelOffText": "zISxCG_channelOffText",
4225
- "installCards": "zISxCG_installCards",
4226
- "installLabel": "zISxCG_installLabel"
4252
+ "installExample": "zISxCG_installExample",
4253
+ "installHelpBtn": "zISxCG_installHelpBtn",
4254
+ "desc": "zISxCG_desc",
4255
+ "root": "zISxCG_root"
4227
4256
  };
4228
4257
  //#endregion
4229
4258
  //#region src/client/components/views/CustomInstallView.tsx
@@ -4492,25 +4521,25 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4492
4521
  }
4493
4522
  var SettingsView_module_css_default = {
4494
4523
  "pageTitle": "_506LLG_pageTitle",
4495
- "settingControl": "_506LLG_settingControl",
4496
- "settingRowStack": "_506LLG_settingRowStack",
4497
- "navItem": "_506LLG_navItem",
4498
- "pageDesc": "_506LLG_pageDesc",
4499
4524
  "settingControlStack": "_506LLG_settingControlStack",
4500
- "navIcon": "_506LLG_navIcon",
4501
- "resetBtn": "_506LLG_resetBtn",
4502
- "root": "_506LLG_root",
4503
- "sidebar": "_506LLG_sidebar",
4525
+ "navItem": "_506LLG_navItem",
4526
+ "navItemActive": "_506LLG_navItemActive",
4527
+ "content": "_506LLG_content",
4504
4528
  "settingLabel": "_506LLG_settingLabel",
4505
- "card": "_506LLG_card",
4529
+ "sidebar": "_506LLG_sidebar",
4530
+ "settingRowStack": "_506LLG_settingRowStack",
4506
4531
  "settingDesc": "_506LLG_settingDesc",
4507
- "textInput": "_506LLG_textInput",
4508
4532
  "pageHeader": "_506LLG_pageHeader",
4509
- "settingRow": "_506LLG_settingRow",
4510
- "content": "_506LLG_content",
4511
- "settingTitle": "_506LLG_settingTitle",
4512
4533
  "controlDropdown": "_506LLG_controlDropdown",
4513
- "navItemActive": "_506LLG_navItemActive"
4534
+ "root": "_506LLG_root",
4535
+ "card": "_506LLG_card",
4536
+ "textInput": "_506LLG_textInput",
4537
+ "pageDesc": "_506LLG_pageDesc",
4538
+ "settingTitle": "_506LLG_settingTitle",
4539
+ "settingRow": "_506LLG_settingRow",
4540
+ "navIcon": "_506LLG_navIcon",
4541
+ "settingControl": "_506LLG_settingControl",
4542
+ "resetBtn": "_506LLG_resetBtn"
4514
4543
  };
4515
4544
  //#endregion
4516
4545
  //#region \0dsh-css:src/client/styles/Dropdown.module.css.mjs
@@ -4524,17 +4553,17 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4524
4553
  document.head.appendChild(tag);
4525
4554
  }
4526
4555
  var Dropdown_module_css_default = {
4556
+ "dropdown": "B_Gxsq_dropdown",
4557
+ "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
4527
4558
  "dropdownCountActive": "B_Gxsq_dropdownCountActive",
4528
- "dropdownItem": "B_Gxsq_dropdownItem",
4529
- "dropdownCount": "B_Gxsq_dropdownCount",
4530
- "dropdownItemActive": "B_Gxsq_dropdownItemActive",
4531
- "dropdownBtn": "B_Gxsq_dropdownBtn",
4532
4559
  "dropdownPanel": "B_Gxsq_dropdownPanel",
4533
4560
  "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
4561
+ "dropdownLabel": "B_Gxsq_dropdownLabel",
4562
+ "dropdownCount": "B_Gxsq_dropdownCount",
4563
+ "dropdownBtn": "B_Gxsq_dropdownBtn",
4534
4564
  "dropdownArrow": "B_Gxsq_dropdownArrow",
4535
- "dropdown": "B_Gxsq_dropdown",
4536
- "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
4537
- "dropdownLabel": "B_Gxsq_dropdownLabel"
4565
+ "dropdownItem": "B_Gxsq_dropdownItem",
4566
+ "dropdownItemActive": "B_Gxsq_dropdownItemActive"
4538
4567
  };
4539
4568
  //#endregion
4540
4569
  //#region src/client/components/ui/Dropdown.tsx
@@ -4607,9 +4636,9 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4607
4636
  document.head.appendChild(tag);
4608
4637
  }
4609
4638
  var Toggle_module_css_default = {
4639
+ "knob": "k-cD4G_knob",
4610
4640
  "toggle": "k-cD4G_toggle",
4611
- "toggleOn": "k-cD4G_toggleOn",
4612
- "knob": "k-cD4G_knob"
4641
+ "toggleOn": "k-cD4G_toggleOn"
4613
4642
  };
4614
4643
  //#endregion
4615
4644
  //#region src/client/components/ui/Toggle.tsx
@@ -4645,29 +4674,29 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4645
4674
  document.head.appendChild(tag);
4646
4675
  }
4647
4676
  var DiagnosticsView_module_css_default = {
4648
- "head": "k9eRya_head",
4649
- "headHint": "k9eRya_headHint",
4650
- "meta": "k9eRya_meta",
4651
- "summaryOk": "k9eRya_summaryOk",
4677
+ "envDesc": "k9eRya_envDesc",
4678
+ "panel": "k9eRya_panel",
4679
+ "envRow": "k9eRya_envRow",
4680
+ "badge": "k9eRya_badge",
4681
+ "display": "k9eRya_display",
4682
+ "envLabel": "k9eRya_envLabel",
4683
+ "badgeFail": "k9eRya_badgeFail",
4652
4684
  "envTitle": "k9eRya_envTitle",
4653
- "summaryFail": "k9eRya_summaryFail",
4685
+ "head": "k9eRya_head",
4654
4686
  "badgeRunning": "k9eRya_badgeRunning",
4655
4687
  "badgeIdle": "k9eRya_badgeIdle",
4656
- "badge": "k9eRya_badge",
4657
- "panel": "k9eRya_panel",
4658
- "envLabel": "k9eRya_envLabel",
4659
- "display": "k9eRya_display",
4660
4688
  "summary": "k9eRya_summary",
4661
- "badgeFail": "k9eRya_badgeFail",
4662
- "summaryRunning": "k9eRya_summaryRunning",
4663
4689
  "runBtn": "k9eRya_runBtn",
4664
- "name": "k9eRya_name",
4665
4690
  "envCopyBtn": "k9eRya_envCopyBtn",
4666
- "badgeOk": "k9eRya_badgeOk",
4667
- "envDesc": "k9eRya_envDesc",
4668
- "row": "k9eRya_row",
4691
+ "summaryOk": "k9eRya_summaryOk",
4669
4692
  "diagPulse": "k9eRya_diagPulse",
4670
- "envRow": "k9eRya_envRow"
4693
+ "summaryRunning": "k9eRya_summaryRunning",
4694
+ "name": "k9eRya_name",
4695
+ "badgeOk": "k9eRya_badgeOk",
4696
+ "headHint": "k9eRya_headHint",
4697
+ "meta": "k9eRya_meta",
4698
+ "summaryFail": "k9eRya_summaryFail",
4699
+ "row": "k9eRya_row"
4671
4700
  };
4672
4701
  //#endregion
4673
4702
  //#region src/client/components/views/DiagnosticsView.tsx
@@ -4825,56 +4854,56 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4825
4854
  document.head.appendChild(tag);
4826
4855
  }
4827
4856
  var LogsView_module_css_default = {
4828
- "pathDialogHint": "_3j77BW_pathDialogHint",
4857
+ "pathDialogFoot": "_3j77BW_pathDialogFoot",
4858
+ "pathLabel": "_3j77BW_pathLabel",
4859
+ "footCount": "_3j77BW_footCount",
4860
+ "headHint": "_3j77BW_headHint",
4829
4861
  "actions": "_3j77BW_actions",
4862
+ "panel": "_3j77BW_panel",
4863
+ "btnPrimary": "_3j77BW_btnPrimary",
4864
+ "badgeInfo": "_3j77BW_badgeInfo",
4830
4865
  "message": "_3j77BW_message",
4831
- "pathDraft": "_3j77BW_pathDraft",
4832
- "pathDialogDesc": "_3j77BW_pathDialogDesc",
4833
- "head": "_3j77BW_head",
4834
- "filterChip": "_3j77BW_filterChip",
4866
+ "linkBtn": "_3j77BW_linkBtn",
4867
+ "badgeSuccess": "_3j77BW_badgeSuccess",
4868
+ "pathText": "_3j77BW_pathText",
4835
4869
  "search": "_3j77BW_search",
4836
- "more": "_3j77BW_more",
4837
- "badgeError": "_3j77BW_badgeError",
4838
4870
  "catInstall": "_3j77BW_catInstall",
4839
- "event": "_3j77BW_event",
4840
- "badge": "_3j77BW_badge",
4841
- "catUpdate": "_3j77BW_catUpdate",
4842
- "badgeInfo": "_3j77BW_badgeInfo",
4843
- "footCount": "_3j77BW_footCount",
4844
- "catSystem": "_3j77BW_catSystem",
4845
- "time": "_3j77BW_time",
4846
- "filterBar": "_3j77BW_filterBar",
4847
- "badgeWarn": "_3j77BW_badgeWarn",
4848
- "foot": "_3j77BW_foot",
4849
- "btnPrimary": "_3j77BW_btnPrimary",
4850
- "footFail": "_3j77BW_footFail",
4851
- "footActions": "_3j77BW_footActions",
4852
- "btn": "_3j77BW_btn",
4853
4871
  "badgeDebug": "_3j77BW_badgeDebug",
4854
- "linkBtn": "_3j77BW_linkBtn",
4855
- "pathDialog": "_3j77BW_pathDialog",
4856
- "footPath": "_3j77BW_footPath",
4857
- "badgeSuccess": "_3j77BW_badgeSuccess",
4858
- "pathLabel": "_3j77BW_pathLabel",
4859
4872
  "catBadge": "_3j77BW_catBadge",
4860
- "headHint": "_3j77BW_headHint",
4861
- "logList": "_3j77BW_logList",
4862
- "filterChipActive": "_3j77BW_filterChipActive",
4863
- "catUninstall": "_3j77BW_catUninstall",
4864
- "moreEnd": "_3j77BW_moreEnd",
4865
- "list": "_3j77BW_list",
4866
- "entry": "_3j77BW_entry",
4867
- "pathDialogFoot": "_3j77BW_pathDialogFoot",
4873
+ "badgeError": "_3j77BW_badgeError",
4874
+ "empty": "_3j77BW_empty",
4868
4875
  "pathDialogReset": "_3j77BW_pathDialogReset",
4869
- "pathDialogRow": "_3j77BW_pathDialogRow",
4870
4876
  "searchInput": "_3j77BW_searchInput",
4877
+ "catSystem": "_3j77BW_catSystem",
4871
4878
  "catSettings": "_3j77BW_catSettings",
4872
- "panel": "_3j77BW_panel",
4873
- "pathRow": "_3j77BW_pathRow",
4874
- "pathText": "_3j77BW_pathText",
4879
+ "footFail": "_3j77BW_footFail",
4880
+ "filterChipActive": "_3j77BW_filterChipActive",
4881
+ "more": "_3j77BW_more",
4882
+ "pathDialogHint": "_3j77BW_pathDialogHint",
4883
+ "foot": "_3j77BW_foot",
4884
+ "filterBar": "_3j77BW_filterBar",
4885
+ "event": "_3j77BW_event",
4886
+ "filterChip": "_3j77BW_filterChip",
4887
+ "pathDraft": "_3j77BW_pathDraft",
4888
+ "footPath": "_3j77BW_footPath",
4875
4889
  "catDiagnostics": "_3j77BW_catDiagnostics",
4890
+ "pathRow": "_3j77BW_pathRow",
4891
+ "list": "_3j77BW_list",
4876
4892
  "previewRow": "_3j77BW_previewRow",
4877
- "empty": "_3j77BW_empty"
4893
+ "moreEnd": "_3j77BW_moreEnd",
4894
+ "entry": "_3j77BW_entry",
4895
+ "head": "_3j77BW_head",
4896
+ "footActions": "_3j77BW_footActions",
4897
+ "logList": "_3j77BW_logList",
4898
+ "badge": "_3j77BW_badge",
4899
+ "badgeWarn": "_3j77BW_badgeWarn",
4900
+ "pathDialog": "_3j77BW_pathDialog",
4901
+ "pathDialogRow": "_3j77BW_pathDialogRow",
4902
+ "catUninstall": "_3j77BW_catUninstall",
4903
+ "catUpdate": "_3j77BW_catUpdate",
4904
+ "pathDialogDesc": "_3j77BW_pathDialogDesc",
4905
+ "time": "_3j77BW_time",
4906
+ "btn": "_3j77BW_btn"
4878
4907
  };
4879
4908
  //#endregion
4880
4909
  //#region src/client/components/modals/LogsModal.tsx
@@ -5706,16 +5735,17 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5706
5735
  }));
5707
5736
  },
5708
5737
  onError: (message, repo, kind, command, attempts) => {
5738
+ const issueRepo = issueRepoOf(repo ?? "", catalog.installedItems, catalog.plugins);
5709
5739
  setErrorMsg({
5710
5740
  message,
5711
- repo,
5741
+ repo: issueRepo,
5712
5742
  kind,
5713
5743
  command,
5714
5744
  attempts
5715
5745
  });
5716
5746
  setNotifications(addFailure({
5717
5747
  kind,
5718
- repo: repo ?? "",
5748
+ repo: issueRepo ?? "",
5719
5749
  message,
5720
5750
  command,
5721
5751
  attempts
@@ -5841,7 +5871,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
5841
5871
  const needle = repo.toLowerCase();
5842
5872
  return catalog.installedItems.some((i) => i.repo !== null && i.repo.toLowerCase() === needle || repoFromInstallTarget(i.spec).toLowerCase() === needle);
5843
5873
  }
5844
- return catalog.installedItems.some((i) => i.name === target);
5874
+ const pkg = repo.replace(/@[^@]*$/, "").toLowerCase();
5875
+ return catalog.installedItems.some((i) => i.name.toLowerCase() === pkg) || Object.keys(catalog.installed).some((k) => k.toLowerCase() === pkg);
5845
5876
  };
5846
5877
  /** 弹窗动作一:复制安装命令到剪贴板,引导去终端粘贴执行(npm 通道显示包名命令)。 */
5847
5878
  const copyCommand = async (p) => {
@@ -6009,7 +6040,7 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
6009
6040
  });
6010
6041
  }
6011
6042
  }), showHubUpdate && (0, react.createElement)(HubUpdateModal, {
6012
- info: catalog.hubUpdateInfo ?? { version: "1.3.0" },
6043
+ info: catalog.hubUpdateInfo ?? { version: "1.3.2" },
6013
6044
  lang,
6014
6045
  t,
6015
6046
  hasUpdate: catalog.hubHasUpdate,
@@ -6061,7 +6092,8 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
6061
6092
  restarting,
6062
6093
  onRestart: () => {
6063
6094
  requestRestart();
6064
- }
6095
+ },
6096
+ resolveRepo: (repo) => issueRepoOf(repo, catalog.installedItems, catalog.plugins)
6065
6097
  }), ignoreTarget && (0, react.createElement)("div", {
6066
6098
  className: Modal_module_css_default.overlay,
6067
6099
  onClick: (e) => {