dsh-plugin 1.3.0 → 1.3.1

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
+ "root": "qikqja_root",
611
+ "header": "qikqja_header",
612
+ "adBanner": "qikqja_adBanner",
613
+ "headerTitleRow": "qikqja_headerTitleRow",
614
+ "tabs": "qikqja_tabs",
615
+ "tab": "qikqja_tab",
610
616
  "copyIcon": "qikqja_copyIcon",
617
+ "search": "qikqja_search",
618
+ "tabCount": "qikqja_tabCount",
619
+ "segBtnActive": "qikqja_segBtnActive",
611
620
  "hubUpdateBadge": "qikqja_hubUpdateBadge",
612
- "adArrow": "qikqja_adArrow",
613
- "githubLink": "qikqja_githubLink",
614
- "tagline": "qikqja_tagline",
615
- "controls": "qikqja_controls",
621
+ "segGroup": "qikqja_segGroup",
622
+ "resultSeg": "qikqja_resultSeg",
616
623
  "adText": "qikqja_adText",
617
- "tabCount": "qikqja_tabCount",
618
- "tabsRow": "qikqja_tabsRow",
619
- "logoIcon": "qikqja_logoIcon",
620
- "root": "qikqja_root",
621
624
  "resultCount": "qikqja_resultCount",
622
- "version": "qikqja_version",
623
- "segLabel": "qikqja_segLabel",
624
- "aboutBtn": "qikqja_aboutBtn",
625
+ "tagline": "qikqja_tagline",
625
626
  "segBtn": "qikqja_segBtn",
626
- "tabs": "qikqja_tabs",
627
- "adBanner": "qikqja_adBanner",
628
- "segGroup": "qikqja_segGroup",
629
- "resultSeg": "qikqja_resultSeg",
627
+ "headerRight": "qikqja_headerRight",
628
+ "logoIcon": "qikqja_logoIcon",
630
629
  "githubIcon": "qikqja_githubIcon",
631
- "tab": "qikqja_tab",
632
- "langBtn": "qikqja_langBtn",
633
- "brandTitle": "qikqja_brandTitle",
630
+ "aboutBtn": "qikqja_aboutBtn",
631
+ "versionBtn": "qikqja_versionBtn",
634
632
  "taglineLink": "qikqja_taglineLink",
635
- "search": "qikqja_search",
633
+ "adArrow": "qikqja_adArrow",
634
+ "adBadge": "qikqja_adBadge",
635
+ "langBtn": "qikqja_langBtn",
636
636
  "searchRow": "qikqja_searchRow",
637
- "segBtnActive": "qikqja_segBtnActive",
637
+ "tabsRow": "qikqja_tabsRow",
638
+ "controls": "qikqja_controls",
639
+ "githubLink": "qikqja_githubLink",
640
+ "version": "qikqja_version",
641
+ "tabActive": "qikqja_tabActive",
638
642
  "title": "qikqja_title",
643
+ "brandTitle": "qikqja_brandTitle",
639
644
  "sortGroup": "qikqja_sortGroup",
640
- "header": "qikqja_header",
641
- "tabActive": "qikqja_tabActive",
642
- "headerRight": "qikqja_headerRight",
643
- "versionBtn": "qikqja_versionBtn",
644
- "headerTitleRow": "qikqja_headerTitleRow",
645
- "adBadge": "qikqja_adBadge"
645
+ "segLabel": "qikqja_segLabel"
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
+ "modalCloseIcon": "BiQ1zG_modalCloseIcon",
660
+ "detailPathText": "BiQ1zG_detailPathText",
661
+ "modalClose": "BiQ1zG_modalClose",
662
+ "modalTitle": "BiQ1zG_modalTitle",
663
+ "queueRowTrack": "BiQ1zG_queueRowTrack",
664
+ "failKindInstall": "BiQ1zG_failKindInstall",
665
+ "queueSection": "BiQ1zG_queueSection",
666
+ "failRepo": "BiQ1zG_failRepo",
667
+ "noticeTextFail": "BiQ1zG_noticeTextFail",
668
+ "noticeVersion": "BiQ1zG_noticeVersion",
669
+ "detailValue": "BiQ1zG_detailValue",
670
+ "queueRowHead": "BiQ1zG_queueRowHead",
671
+ "failClear": "BiQ1zG_failClear",
672
+ "queueSectionTitle": "BiQ1zG_queueSectionTitle",
659
673
  "resultDesc": "BiQ1zG_resultDesc",
660
- "detailLabel": "BiQ1zG_detailLabel",
661
- "errorModal": "BiQ1zG_errorModal",
674
+ "restartNowWarning": "BiQ1zG_restartNowWarning",
675
+ "progress": "BiQ1zG_progress",
676
+ "queueRowBody": "BiQ1zG_queueRowBody",
677
+ "detailPath": "BiQ1zG_detailPath",
678
+ "queueRowPct": "BiQ1zG_queueRowPct",
679
+ "errorTitle": "BiQ1zG_errorTitle",
680
+ "noticeRowUpdate": "BiQ1zG_noticeRowUpdate",
681
+ "pendingRowStatus": "BiQ1zG_pendingRowStatus",
682
+ "modalValue": "BiQ1zG_modalValue",
683
+ "hubUpdateMetaItem": "BiQ1zG_hubUpdateMetaItem",
684
+ "failEmpty": "BiQ1zG_failEmpty",
685
+ "modalIn": "BiQ1zG_modalIn",
686
+ "detailStatusRunning": "BiQ1zG_detailStatusRunning",
687
+ "modalActions": "BiQ1zG_modalActions",
662
688
  "resultCheckIcon": "BiQ1zG_resultCheckIcon",
663
- "progressText": "BiQ1zG_progressText",
664
- "failRepo": "BiQ1zG_failRepo",
665
- "pendingRowActions": "BiQ1zG_pendingRowActions",
666
- "detailStatusText": "BiQ1zG_detailStatusText",
689
+ "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
690
+ "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
691
+ "modalBody": "BiQ1zG_modalBody",
667
692
  "overlayIn": "BiQ1zG_overlayIn",
668
- "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
669
- "errorHint": "BiQ1zG_errorHint",
670
- "trustHint": "BiQ1zG_trustHint",
671
- "stripCancel": "BiQ1zG_stripCancel",
672
- "noticeHead": "BiQ1zG_noticeHead",
693
+ "modalInstall": "BiQ1zG_modalInstall",
694
+ "progressHead": "BiQ1zG_progressHead",
695
+ "failList": "BiQ1zG_failList",
696
+ "errorBox": "BiQ1zG_errorBox",
697
+ "noticeTime": "BiQ1zG_noticeTime",
673
698
  "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
699
  "modalRow": "BiQ1zG_modalRow",
684
- "noticeVersion": "BiQ1zG_noticeVersion",
700
+ "modalCancel": "BiQ1zG_modalCancel",
701
+ "modalWide": "BiQ1zG_modalWide",
702
+ "detailPathBtn": "BiQ1zG_detailPathBtn",
703
+ "modalTitleBusy": "BiQ1zG_modalTitleBusy",
685
704
  "failKindUninstall": "BiQ1zG_failKindUninstall",
686
- "failedCopyHint": "BiQ1zG_failedCopyHint",
687
- "overlay": "BiQ1zG_overlay",
688
- "noticeRemove": "BiQ1zG_noticeRemove",
689
- "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
690
- "modalTitle": "BiQ1zG_modalTitle",
691
- "noticeTextFail": "BiQ1zG_noticeTextFail",
692
- "logModal": "BiQ1zG_logModal",
705
+ "errorHint": "BiQ1zG_errorHint",
706
+ "modalCopy": "BiQ1zG_modalCopy",
707
+ "modalDesc": "BiQ1zG_modalDesc",
708
+ "detailArrow": "BiQ1zG_detailArrow",
709
+ "restartLater": "BiQ1zG_restartLater",
710
+ "failCopy": "BiQ1zG_failCopy",
711
+ "queueRow": "BiQ1zG_queueRow",
712
+ "detailGrid": "BiQ1zG_detailGrid",
713
+ "detailUpdateHint": "BiQ1zG_detailUpdateHint",
714
+ "aboutMeta": "BiQ1zG_aboutMeta",
715
+ "queueRowTarget": "BiQ1zG_queueRowTarget",
716
+ "modalCmdCopy": "BiQ1zG_modalCmdCopy",
717
+ "progressTrack": "BiQ1zG_progressTrack",
718
+ "resultCheck": "BiQ1zG_resultCheck",
719
+ "trustHint": "BiQ1zG_trustHint",
720
+ "detailLabel": "BiQ1zG_detailLabel",
721
+ "pendingRowActions": "BiQ1zG_pendingRowActions",
722
+ "errorCopySoft": "BiQ1zG_errorCopySoft",
723
+ "noticeRowMain": "BiQ1zG_noticeRowMain",
724
+ "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
725
+ "noticeRowOk": "BiQ1zG_noticeRowOk",
726
+ "aboutContent": "BiQ1zG_aboutContent",
727
+ "modalHead": "BiQ1zG_modalHead",
728
+ "noticeIgnore": "BiQ1zG_noticeIgnore",
693
729
  "detailLink": "BiQ1zG_detailLink",
730
+ "modalCmd": "BiQ1zG_modalCmd",
731
+ "modalLabel": "BiQ1zG_modalLabel",
732
+ "aboutModal": "BiQ1zG_aboutModal",
694
733
  "helpModal": "BiQ1zG_helpModal",
695
- "modalValue": "BiQ1zG_modalValue",
696
- "toastFail": "BiQ1zG_toastFail",
697
- "detailStatusRunning": "BiQ1zG_detailStatusRunning",
698
- "restartNow": "BiQ1zG_restartNow",
734
+ "noticeList": "BiQ1zG_noticeList",
735
+ "noticeHead": "BiQ1zG_noticeHead",
699
736
  "modalTitleQueued": "BiQ1zG_modalTitleQueued",
700
- "detailStars": "BiQ1zG_detailStars",
701
- "noticeTime": "BiQ1zG_noticeTime",
702
- "modalInstall": "BiQ1zG_modalInstall",
703
- "detailPathBtn": "BiQ1zG_detailPathBtn",
704
- "resultCheck": "BiQ1zG_resultCheck",
705
- "queueRowTarget": "BiQ1zG_queueRowTarget",
706
- "queueRowHead": "BiQ1zG_queueRowHead",
707
- "progressTrack": "BiQ1zG_progressTrack",
708
- "progressHead": "BiQ1zG_progressHead",
737
+ "noticeTextOk": "BiQ1zG_noticeTextOk",
709
738
  "failRow": "BiQ1zG_failRow",
710
- "detailArrow": "BiQ1zG_detailArrow",
711
739
  "result": "BiQ1zG_result",
712
- "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",
740
+ "restartNow": "BiQ1zG_restartNow",
719
741
  "cliOnlyHint": "BiQ1zG_cliOnlyHint",
720
- "resultTitle": "BiQ1zG_resultTitle",
721
- "noticeBadgeIcon": "BiQ1zG_noticeBadgeIcon",
722
- "aboutModal": "BiQ1zG_aboutModal",
742
+ "overlay": "BiQ1zG_overlay",
723
743
  "modal": "BiQ1zG_modal",
724
- "detailRow": "BiQ1zG_detailRow",
725
- "queueRowDesc": "BiQ1zG_queueRowDesc",
726
- "errorTitle": "BiQ1zG_errorTitle",
744
+ "noticeUpdateGo": "BiQ1zG_noticeUpdateGo",
745
+ "errorModal": "BiQ1zG_errorModal",
727
746
  "failBigIssue": "BiQ1zG_failBigIssue",
747
+ "detailMono": "BiQ1zG_detailMono",
728
748
  "hubUpdateModal": "BiQ1zG_hubUpdateModal",
749
+ "queueRowDesc": "BiQ1zG_queueRowDesc",
750
+ "queueRowStatus": "BiQ1zG_queueRowStatus",
751
+ "noticeFoot": "BiQ1zG_noticeFoot",
752
+ "failPrepareHint": "BiQ1zG_failPrepareHint",
753
+ "stripCancel": "BiQ1zG_stripCancel",
754
+ "progressFillFail": "BiQ1zG_progressFillFail",
729
755
  "modalLink": "BiQ1zG_modalLink",
730
- "modalIn": "BiQ1zG_modalIn",
731
- "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",
756
+ "toast": "BiQ1zG_toast",
757
+ "noticeRemove": "BiQ1zG_noticeRemove",
758
+ "failKind": "BiQ1zG_failKind",
738
759
  "detailStatusPending": "BiQ1zG_detailStatusPending",
739
- "modalWide": "BiQ1zG_modalWide",
740
- "noticeRow": "BiQ1zG_noticeRow",
741
- "noticeBadgeOk": "BiQ1zG_noticeBadgeOk",
742
760
  "linkIcon": "BiQ1zG_linkIcon",
743
- "failKindInstall": "BiQ1zG_failKindInstall",
744
761
  "modalCmdText": "BiQ1zG_modalCmdText",
745
- "detailUpdateHint": "BiQ1zG_detailUpdateHint",
746
- "noticeMain": "BiQ1zG_noticeMain",
747
- "modalCopy": "BiQ1zG_modalCopy",
762
+ "detailStatusText": "BiQ1zG_detailStatusText",
763
+ "noticeBadgeFail": "BiQ1zG_noticeBadgeFail",
764
+ "progressFill": "BiQ1zG_progressFill",
765
+ "failedCopyHint": "BiQ1zG_failedCopyHint",
766
+ "failHead": "BiQ1zG_failHead",
767
+ "detailModal": "BiQ1zG_detailModal",
768
+ "detailPathActions": "BiQ1zG_detailPathActions",
769
+ "progressText": "BiQ1zG_progressText",
748
770
  "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",
755
- "hubUpdateNotes": "BiQ1zG_hubUpdateNotes",
756
- "modalClose": "BiQ1zG_modalClose",
757
- "queueRow": "BiQ1zG_queueRow",
758
- "modalTitleBusy": "BiQ1zG_modalTitleBusy",
759
- "progressFillFail": "BiQ1zG_progressFillFail",
760
- "noticeRowMain": "BiQ1zG_noticeRowMain",
761
- "noticeRowOk": "BiQ1zG_noticeRowOk",
762
- "modalCloseIcon": "BiQ1zG_modalCloseIcon",
763
- "detailMono": "BiQ1zG_detailMono",
764
- "failPrepareHint": "BiQ1zG_failPrepareHint",
765
- "failKind": "BiQ1zG_failKind",
766
- "queueRowPct": "BiQ1zG_queueRowPct",
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",
771
+ "detailRow": "BiQ1zG_detailRow",
772
+ "toastFail": "BiQ1zG_toastFail",
773
+ "logModal": "BiQ1zG_logModal",
774
+ "uninstallConfirm": "BiQ1zG_uninstallConfirm",
775
+ "noticeMain": "BiQ1zG_noticeMain",
776
776
  "detailDim": "BiQ1zG_detailDim",
777
- "detailPathText": "BiQ1zG_detailPathText",
778
- "pendingRowStatus": "BiQ1zG_pendingRowStatus",
779
- "failList": "BiQ1zG_failList",
780
- "queueSectionTitle": "BiQ1zG_queueSectionTitle",
781
- "failHead": "BiQ1zG_failHead"
777
+ "hubUpdateMeta": "BiQ1zG_hubUpdateMeta",
778
+ "noticeRow": "BiQ1zG_noticeRow",
779
+ "resultTitle": "BiQ1zG_resultTitle",
780
+ "detailStars": "BiQ1zG_detailStars",
781
+ "toastIn": "BiQ1zG_toastIn"
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.1";
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.1";
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
+ "installBtnUpdate": "_3XaZHa_installBtnUpdate",
3622
3652
  "fork": "_3XaZHa_fork",
3623
- "installBtn": "_3XaZHa_installBtn",
3624
- "detailBtn": "_3XaZHa_detailBtn",
3625
- "moreSentinel": "_3XaZHa_moreSentinel",
3626
- "cardMain": "_3XaZHa_cardMain",
3627
- "cardSide": "_3XaZHa_cardSide",
3628
- "star": "_3XaZHa_star",
3629
- "card": "_3XaZHa_card",
3630
- "installBtnCopied": "_3XaZHa_installBtnCopied",
3631
- "categoryBadge": "_3XaZHa_categoryBadge",
3632
3653
  "body": "_3XaZHa_body",
3633
- "versionBadge": "_3XaZHa_versionBadge",
3634
- "topics": "_3XaZHa_topics",
3635
- "installBtnUpdate": "_3XaZHa_installBtnUpdate",
3636
- "stateDesc": "_3XaZHa_stateDesc",
3654
+ "categoryBadge": "_3XaZHa_categoryBadge",
3637
3655
  "desc": "_3XaZHa_desc",
3638
- "cardHead": "_3XaZHa_cardHead",
3656
+ "stateTitle": "_3XaZHa_stateTitle",
3639
3657
  "list": "_3XaZHa_list",
3640
- "updateBadge": "_3XaZHa_updateBadge",
3641
- "actions": "_3XaZHa_actions",
3658
+ "topic": "_3XaZHa_topic",
3642
3659
  "footLink": "_3XaZHa_footLink",
3643
- "uninstallBtn": "_3XaZHa_uninstallBtn",
3644
3660
  "state": "_3XaZHa_state",
3645
- "topic": "_3XaZHa_topic",
3646
- "footer": "_3XaZHa_footer",
3661
+ "installBtn": "_3XaZHa_installBtn",
3662
+ "moreSentinel": "_3XaZHa_moreSentinel",
3647
3663
  "stats": "_3XaZHa_stats",
3648
- "retryBtn": "_3XaZHa_retryBtn",
3649
- "cardTitle": "_3XaZHa_cardTitle",
3664
+ "actions": "_3XaZHa_actions",
3650
3665
  "date": "_3XaZHa_date",
3651
3666
  "installBtnInstalled": "_3XaZHa_installBtnInstalled",
3667
+ "cardTitle": "_3XaZHa_cardTitle",
3668
+ "stateDesc": "_3XaZHa_stateDesc",
3669
+ "cardSide": "_3XaZHa_cardSide",
3670
+ "footer": "_3XaZHa_footer",
3671
+ "detailBtn": "_3XaZHa_detailBtn",
3672
+ "versionBadge": "_3XaZHa_versionBadge",
3673
+ "cardMain": "_3XaZHa_cardMain",
3674
+ "topics": "_3XaZHa_topics",
3652
3675
  "verified": "_3XaZHa_verified",
3653
- "stateTitle": "_3XaZHa_stateTitle"
3676
+ "installBtnCopied": "_3XaZHa_installBtnCopied",
3677
+ "cardHead": "_3XaZHa_cardHead",
3678
+ "updateBadge": "_3XaZHa_updateBadge",
3679
+ "retryBtn": "_3XaZHa_retryBtn",
3680
+ "card": "_3XaZHa_card",
3681
+ "star": "_3XaZHa_star",
3682
+ "uninstallBtn": "_3XaZHa_uninstallBtn"
3654
3683
  };
3655
3684
  //#endregion
3656
3685
  //#region src/client/hooks/useIncrementalList.ts
@@ -3847,15 +3876,15 @@ 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",
3851
- "root": "_7tvizq_root",
3852
- "tab": "_7tvizq_tab",
3853
- "tabCount": "_7tvizq_tabCount",
3854
- "tabIcon": "_7tvizq_tabIcon",
3855
3879
  "noticeIcon": "_7tvizq_noticeIcon",
3880
+ "tabIcon": "_7tvizq_tabIcon",
3881
+ "tab": "_7tvizq_tab",
3856
3882
  "tabActive": "_7tvizq_tabActive",
3857
3883
  "noticeCount": "_7tvizq_noticeCount",
3858
- "tabCountActive": "_7tvizq_tabCountActive"
3884
+ "tabCountActive": "_7tvizq_tabCountActive",
3885
+ "tabCount": "_7tvizq_tabCount",
3886
+ "root": "_7tvizq_root",
3887
+ "noticeBtn": "_7tvizq_noticeBtn"
3859
3888
  };
3860
3889
  //#endregion
3861
3890
  //#region src/client/components/layout/SectionTabs.tsx
@@ -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",
3959
+ "statusDot": "_1nXeGW_statusDot",
3960
+ "emptyTitle": "_1nXeGW_emptyTitle",
3961
+ "rowTitleLine": "_1nXeGW_rowTitleLine",
3962
+ "rowMain": "_1nXeGW_rowMain",
3963
+ "rowCategory": "_1nXeGW_rowCategory",
3964
+ "rowUpdate": "_1nXeGW_rowUpdate",
3965
+ "rowMeta": "_1nXeGW_rowMeta",
3966
+ "versionBadge": "_1nXeGW_versionBadge",
3967
+ "segLabel": "_1nXeGW_segLabel",
3968
+ "toolbar": "_1nXeGW_toolbar",
3931
3969
  "segBtn": "_1nXeGW_segBtn",
3970
+ "row": "_1nXeGW_row",
3971
+ "rowSourceTag": "_1nXeGW_rowSourceTag",
3932
3972
  "rowSourceTagManual": "_1nXeGW_rowSourceTagManual",
3973
+ "list": "_1nXeGW_list",
3974
+ "rowUninstall": "_1nXeGW_rowUninstall",
3933
3975
  "searchWrap": "_1nXeGW_searchWrap",
3934
- "updateBadge": "_1nXeGW_updateBadge",
3935
- "rowSourceTag": "_1nXeGW_rowSourceTag",
3936
- "segLabel": "_1nXeGW_segLabel",
3937
- "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
3938
3976
  "segGroup": "_1nXeGW_segGroup",
3939
- "toolbar": "_1nXeGW_toolbar",
3940
- "segRow": "_1nXeGW_segRow",
3941
- "rowMeta": "_1nXeGW_rowMeta",
3942
- "rowCategory": "_1nXeGW_rowCategory",
3977
+ "emptyDesc": "_1nXeGW_emptyDesc",
3978
+ "rowSourceTagHub": "_1nXeGW_rowSourceTagHub",
3943
3979
  "exampleBadge": "_1nXeGW_exampleBadge",
3944
- "versionBadge": "_1nXeGW_versionBadge",
3945
- "rowRepo": "_1nXeGW_rowRepo",
3946
- "rowUpdate": "_1nXeGW_rowUpdate",
3947
- "rowUninstall": "_1nXeGW_rowUninstall",
3948
- "rowRestart": "_1nXeGW_rowRestart",
3949
- "searchInput": "_1nXeGW_searchInput",
3950
- "list": "_1nXeGW_list",
3951
- "statusInactive": "_1nXeGW_statusInactive",
3952
- "rowMain": "_1nXeGW_rowMain",
3953
3980
  "rowActions": "_1nXeGW_rowActions",
3954
- "segBtnActive": "_1nXeGW_segBtnActive",
3955
- "rowTitleLine": "_1nXeGW_rowTitleLine",
3956
- "emptyDesc": "_1nXeGW_emptyDesc",
3957
- "row": "_1nXeGW_row",
3958
- "rowDesc": "_1nXeGW_rowDesc",
3959
3981
  "statusPending": "_1nXeGW_statusPending",
3960
- "rowTitle": "_1nXeGW_rowTitle",
3961
- "emptyTitle": "_1nXeGW_emptyTitle",
3982
+ "statusInactive": "_1nXeGW_statusInactive",
3983
+ "segRow": "_1nXeGW_segRow",
3984
+ "updateBadge": "_1nXeGW_updateBadge",
3985
+ "rowRepo": "_1nXeGW_rowRepo",
3986
+ "searchInput": "_1nXeGW_searchInput",
3962
3987
  "rowDetail": "_1nXeGW_rowDetail",
3988
+ "rowTitle": "_1nXeGW_rowTitle",
3989
+ "empty": "_1nXeGW_empty",
3990
+ "exampleRow": "_1nXeGW_exampleRow",
3991
+ "rowDesc": "_1nXeGW_rowDesc",
3963
3992
  "root": "_1nXeGW_root",
3964
- "statusDot": "_1nXeGW_statusDot",
3965
- "empty": "_1nXeGW_empty"
3993
+ "rowRestart": "_1nXeGW_rowRestart",
3994
+ "segBtnActive": "_1nXeGW_segBtnActive"
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
4235
  "installCardHead": "zISxCG_installCardHead",
4211
- "helpCmd": "zISxCG_helpCmd",
4212
- "helpNote": "zISxCG_helpNote",
4236
+ "installError": "zISxCG_installError",
4237
+ "helpBody": "zISxCG_helpBody",
4213
4238
  "helpLine": "zISxCG_helpLine",
4239
+ "root": "zISxCG_root",
4214
4240
  "installExample": "zISxCG_installExample",
4215
- "installCardDisabled": "zISxCG_installCardDisabled",
4241
+ "installInput": "zISxCG_installInput",
4242
+ "channelOffBtn": "zISxCG_channelOffBtn",
4243
+ "helpCmd": "zISxCG_helpCmd",
4244
+ "installHelpBtn": "zISxCG_installHelpBtn",
4216
4245
  "desc": "zISxCG_desc",
4217
- "installCard": "zISxCG_installCard",
4218
4246
  "channelOff": "zISxCG_channelOff",
4219
- "installError": "zISxCG_installError",
4220
- "installInputError": "zISxCG_installInputError",
4221
- "channelOffBtn": "zISxCG_channelOffBtn",
4222
- "installInput": "zISxCG_installInput",
4247
+ "helpNote": "zISxCG_helpNote",
4248
+ "installLabel": "zISxCG_installLabel",
4249
+ "installCardDisabled": "zISxCG_installCardDisabled",
4250
+ "installCard": "zISxCG_installCard",
4223
4251
  "installBtn": "zISxCG_installBtn",
4252
+ "installRow": "zISxCG_installRow",
4224
4253
  "channelOffText": "zISxCG_channelOffText",
4225
- "installCards": "zISxCG_installCards",
4226
- "installLabel": "zISxCG_installLabel"
4254
+ "installInputError": "zISxCG_installInputError",
4255
+ "installCards": "zISxCG_installCards"
4227
4256
  };
4228
4257
  //#endregion
4229
4258
  //#region src/client/components/views/CustomInstallView.tsx
@@ -4491,26 +4520,26 @@ window.__ModuleLoader__.load({ id: "dsh-plugin", factory: (require) => {
4491
4520
  document.head.appendChild(tag);
4492
4521
  }
4493
4522
  var SettingsView_module_css_default = {
4494
- "pageTitle": "_506LLG_pageTitle",
4495
- "settingControl": "_506LLG_settingControl",
4496
- "settingRowStack": "_506LLG_settingRowStack",
4523
+ "settingRow": "_506LLG_settingRow",
4524
+ "textInput": "_506LLG_textInput",
4525
+ "content": "_506LLG_content",
4497
4526
  "navItem": "_506LLG_navItem",
4498
- "pageDesc": "_506LLG_pageDesc",
4499
4527
  "settingControlStack": "_506LLG_settingControlStack",
4500
- "navIcon": "_506LLG_navIcon",
4501
- "resetBtn": "_506LLG_resetBtn",
4502
- "root": "_506LLG_root",
4503
4528
  "sidebar": "_506LLG_sidebar",
4529
+ "controlDropdown": "_506LLG_controlDropdown",
4530
+ "settingTitle": "_506LLG_settingTitle",
4504
4531
  "settingLabel": "_506LLG_settingLabel",
4505
4532
  "card": "_506LLG_card",
4506
- "settingDesc": "_506LLG_settingDesc",
4507
- "textInput": "_506LLG_textInput",
4533
+ "root": "_506LLG_root",
4534
+ "pageTitle": "_506LLG_pageTitle",
4535
+ "pageDesc": "_506LLG_pageDesc",
4536
+ "navItemActive": "_506LLG_navItemActive",
4537
+ "resetBtn": "_506LLG_resetBtn",
4538
+ "settingControl": "_506LLG_settingControl",
4508
4539
  "pageHeader": "_506LLG_pageHeader",
4509
- "settingRow": "_506LLG_settingRow",
4510
- "content": "_506LLG_content",
4511
- "settingTitle": "_506LLG_settingTitle",
4512
- "controlDropdown": "_506LLG_controlDropdown",
4513
- "navItemActive": "_506LLG_navItemActive"
4540
+ "settingDesc": "_506LLG_settingDesc",
4541
+ "navIcon": "_506LLG_navIcon",
4542
+ "settingRowStack": "_506LLG_settingRowStack"
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 = {
4527
- "dropdownCountActive": "B_Gxsq_dropdownCountActive",
4528
- "dropdownItem": "B_Gxsq_dropdownItem",
4529
- "dropdownCount": "B_Gxsq_dropdownCount",
4530
- "dropdownItemActive": "B_Gxsq_dropdownItemActive",
4556
+ "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
4557
+ "dropdownLabel": "B_Gxsq_dropdownLabel",
4531
4558
  "dropdownBtn": "B_Gxsq_dropdownBtn",
4532
4559
  "dropdownPanel": "B_Gxsq_dropdownPanel",
4533
- "dropdownItemLabel": "B_Gxsq_dropdownItemLabel",
4560
+ "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
4534
4561
  "dropdownArrow": "B_Gxsq_dropdownArrow",
4562
+ "dropdownItemActive": "B_Gxsq_dropdownItemActive",
4563
+ "dropdownCountActive": "B_Gxsq_dropdownCountActive",
4564
+ "dropdownCount": "B_Gxsq_dropdownCount",
4535
4565
  "dropdown": "B_Gxsq_dropdown",
4536
- "dropdownArrowOpen": "B_Gxsq_dropdownArrowOpen",
4537
- "dropdownLabel": "B_Gxsq_dropdownLabel"
4566
+ "dropdownItem": "B_Gxsq_dropdownItem"
4538
4567
  };
4539
4568
  //#endregion
4540
4569
  //#region src/client/components/ui/Dropdown.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",
4677
+ "badgeRunning": "k9eRya_badgeRunning",
4650
4678
  "meta": "k9eRya_meta",
4679
+ "envLabel": "k9eRya_envLabel",
4651
4680
  "summaryOk": "k9eRya_summaryOk",
4652
- "envTitle": "k9eRya_envTitle",
4653
- "summaryFail": "k9eRya_summaryFail",
4654
- "badgeRunning": "k9eRya_badgeRunning",
4655
- "badgeIdle": "k9eRya_badgeIdle",
4681
+ "runBtn": "k9eRya_runBtn",
4682
+ "head": "k9eRya_head",
4656
4683
  "badge": "k9eRya_badge",
4684
+ "badgeOk": "k9eRya_badgeOk",
4685
+ "badgeFail": "k9eRya_badgeFail",
4657
4686
  "panel": "k9eRya_panel",
4658
- "envLabel": "k9eRya_envLabel",
4659
4687
  "display": "k9eRya_display",
4660
- "summary": "k9eRya_summary",
4661
- "badgeFail": "k9eRya_badgeFail",
4662
- "summaryRunning": "k9eRya_summaryRunning",
4663
- "runBtn": "k9eRya_runBtn",
4664
- "name": "k9eRya_name",
4665
4688
  "envCopyBtn": "k9eRya_envCopyBtn",
4666
- "badgeOk": "k9eRya_badgeOk",
4667
- "envDesc": "k9eRya_envDesc",
4689
+ "summaryFail": "k9eRya_summaryFail",
4668
4690
  "row": "k9eRya_row",
4691
+ "badgeIdle": "k9eRya_badgeIdle",
4692
+ "envRow": "k9eRya_envRow",
4693
+ "envTitle": "k9eRya_envTitle",
4669
4694
  "diagPulse": "k9eRya_diagPulse",
4670
- "envRow": "k9eRya_envRow"
4695
+ "summary": "k9eRya_summary",
4696
+ "summaryRunning": "k9eRya_summaryRunning",
4697
+ "envDesc": "k9eRya_envDesc",
4698
+ "headHint": "k9eRya_headHint",
4699
+ "name": "k9eRya_name"
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",
4829
- "actions": "_3j77BW_actions",
4830
- "message": "_3j77BW_message",
4831
- "pathDraft": "_3j77BW_pathDraft",
4832
- "pathDialogDesc": "_3j77BW_pathDialogDesc",
4833
- "head": "_3j77BW_head",
4834
- "filterChip": "_3j77BW_filterChip",
4857
+ "filterBar": "_3j77BW_filterBar",
4858
+ "pathDialog": "_3j77BW_pathDialog",
4835
4859
  "search": "_3j77BW_search",
4836
- "more": "_3j77BW_more",
4860
+ "logList": "_3j77BW_logList",
4837
4861
  "badgeError": "_3j77BW_badgeError",
4838
- "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",
4862
+ "pathLabel": "_3j77BW_pathLabel",
4849
4863
  "btnPrimary": "_3j77BW_btnPrimary",
4850
- "footFail": "_3j77BW_footFail",
4851
- "footActions": "_3j77BW_footActions",
4852
- "btn": "_3j77BW_btn",
4864
+ "head": "_3j77BW_head",
4853
4865
  "badgeDebug": "_3j77BW_badgeDebug",
4866
+ "message": "_3j77BW_message",
4867
+ "filterChip": "_3j77BW_filterChip",
4868
+ "pathText": "_3j77BW_pathText",
4869
+ "pathDialogDesc": "_3j77BW_pathDialogDesc",
4870
+ "pathDialogFoot": "_3j77BW_pathDialogFoot",
4854
4871
  "linkBtn": "_3j77BW_linkBtn",
4855
- "pathDialog": "_3j77BW_pathDialog",
4856
- "footPath": "_3j77BW_footPath",
4857
- "badgeSuccess": "_3j77BW_badgeSuccess",
4858
- "pathLabel": "_3j77BW_pathLabel",
4872
+ "searchInput": "_3j77BW_searchInput",
4873
+ "footCount": "_3j77BW_footCount",
4859
4874
  "catBadge": "_3j77BW_catBadge",
4860
- "headHint": "_3j77BW_headHint",
4861
- "logList": "_3j77BW_logList",
4862
- "filterChipActive": "_3j77BW_filterChipActive",
4875
+ "catInstall": "_3j77BW_catInstall",
4863
4876
  "catUninstall": "_3j77BW_catUninstall",
4864
- "moreEnd": "_3j77BW_moreEnd",
4865
- "list": "_3j77BW_list",
4877
+ "catDiagnostics": "_3j77BW_catDiagnostics",
4878
+ "footPath": "_3j77BW_footPath",
4879
+ "footFail": "_3j77BW_footFail",
4880
+ "badgeSuccess": "_3j77BW_badgeSuccess",
4881
+ "footActions": "_3j77BW_footActions",
4866
4882
  "entry": "_3j77BW_entry",
4867
- "pathDialogFoot": "_3j77BW_pathDialogFoot",
4868
- "pathDialogReset": "_3j77BW_pathDialogReset",
4883
+ "more": "_3j77BW_more",
4884
+ "list": "_3j77BW_list",
4885
+ "pathRow": "_3j77BW_pathRow",
4886
+ "time": "_3j77BW_time",
4869
4887
  "pathDialogRow": "_3j77BW_pathDialogRow",
4870
- "searchInput": "_3j77BW_searchInput",
4871
- "catSettings": "_3j77BW_catSettings",
4888
+ "pathDialogHint": "_3j77BW_pathDialogHint",
4889
+ "foot": "_3j77BW_foot",
4890
+ "badge": "_3j77BW_badge",
4891
+ "btn": "_3j77BW_btn",
4892
+ "badgeWarn": "_3j77BW_badgeWarn",
4893
+ "catUpdate": "_3j77BW_catUpdate",
4894
+ "catSystem": "_3j77BW_catSystem",
4895
+ "empty": "_3j77BW_empty",
4896
+ "pathDialogReset": "_3j77BW_pathDialogReset",
4897
+ "actions": "_3j77BW_actions",
4872
4898
  "panel": "_3j77BW_panel",
4873
- "pathRow": "_3j77BW_pathRow",
4874
- "pathText": "_3j77BW_pathText",
4875
- "catDiagnostics": "_3j77BW_catDiagnostics",
4876
4899
  "previewRow": "_3j77BW_previewRow",
4877
- "empty": "_3j77BW_empty"
4900
+ "event": "_3j77BW_event",
4901
+ "pathDraft": "_3j77BW_pathDraft",
4902
+ "badgeInfo": "_3j77BW_badgeInfo",
4903
+ "headHint": "_3j77BW_headHint",
4904
+ "filterChipActive": "_3j77BW_filterChipActive",
4905
+ "moreEnd": "_3j77BW_moreEnd",
4906
+ "catSettings": "_3j77BW_catSettings"
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.1" },
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) => {