dshmarket 1.21.4 → 1.22.0
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.md +1 -1
- package/README.zh.md +1 -1
- package/client/client.js +8 -0
- package/client/client.js.map +1 -1
- package/lib/profile.js +40 -0
- package/lib/routes.js +21 -2
- package/lib/sources.js +45 -4
- package/lib/types/profile.d.ts +17 -0
- package/lib/types/registry.d.ts +1 -0
- package/lib/types/sources.d.ts +4 -4
- package/package.json +1 -1
- package/src/client/MarketSection.tsx +11 -0
- package/src/client/locales.ts +2 -0
- package/src/client/market-data.ts +1 -0
- package/src/profile.ts +39 -0
- package/src/registry.ts +1 -0
- package/src/routes.ts +21 -2
- package/src/sources.ts +41 -5
package/README.md
CHANGED
|
@@ -50,7 +50,7 @@ its own dsh: it may be older than the one `npm` would give you (#139).
|
|
|
50
50
|
|
|
51
51
|
## Speed
|
|
52
52
|
|
|
53
|
-
Installs prefer npm
|
|
53
|
+
Installs prefer repo-verified npm packages, then author-supplied prebuilt GitHub Release tarballs, before falling back to full-repo GitHub source downloads. Prebuilt installs are typically seconds and do not need local build scripts; source-only plugins depend on your connection to GitHub.
|
|
54
54
|
|
|
55
55
|
## Security
|
|
56
56
|
|
package/README.zh.md
CHANGED
|
@@ -47,7 +47,7 @@ dsh plugin --profile web add dshmarket
|
|
|
47
47
|
|
|
48
48
|
## 速度
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
安装依次优先使用经仓库验证的 npm 包、作者提供的 GitHub Release 预构建 tarball,最后才回退到整仓 GitHub 源码下载。预构建安装通常只需数秒且无需执行本地构建脚本;仅提供源码的插件仍取决于你到 GitHub 的网络。
|
|
51
51
|
|
|
52
52
|
## 安全
|
|
53
53
|
|
package/client/client.js
CHANGED
|
@@ -296,6 +296,7 @@ window.__ModuleLoader__.load({ id: "dshmarket", factory: (require) => {
|
|
|
296
296
|
packagesDone: "已处理 {0} 个包",
|
|
297
297
|
updatedLive: "✓ 已更新,已生效",
|
|
298
298
|
partialNote: "已取消,部分变更已写入",
|
|
299
|
+
reconciledNote: "已移除,但 pnpm 收尾时报错(通常是文件被占用);配置已同步,无需重试",
|
|
299
300
|
actWhy: "为什么未生效?",
|
|
300
301
|
tabList: "列表",
|
|
301
302
|
tabGroups: "分组",
|
|
@@ -671,6 +672,7 @@ window.__ModuleLoader__.load({ id: "dshmarket", factory: (require) => {
|
|
|
671
672
|
packagesDone: "{0} packages processed",
|
|
672
673
|
updatedLive: "✓ Updated — live",
|
|
673
674
|
partialNote: "Cancelled — some changes were applied",
|
|
675
|
+
reconciledNote: "Removed, but pnpm reported an error while finishing up (usually a locked file). The profile is already reconciled — no retry needed.",
|
|
674
676
|
actWhy: "Why not live?",
|
|
675
677
|
tabList: "List",
|
|
676
678
|
tabGroups: "Groups",
|
|
@@ -5036,6 +5038,12 @@ window.__ModuleLoader__.load({ id: "dshmarket", factory: (require) => {
|
|
|
5036
5038
|
if (body.partial === true) setInstallError(t("partialNote"));
|
|
5037
5039
|
return;
|
|
5038
5040
|
}
|
|
5041
|
+
if (body.reconciled === true) {
|
|
5042
|
+
if (!body.hot) setRemovedCount((n) => n + 1);
|
|
5043
|
+
refreshInstalled();
|
|
5044
|
+
setInstallError(t("reconciledNote"));
|
|
5045
|
+
return;
|
|
5046
|
+
}
|
|
5039
5047
|
const text = (v) => typeof v === "string" ? v : v && typeof v.text === "string" ? v.text : v == null ? "" : JSON.stringify(v);
|
|
5040
5048
|
setInstallError((text(body.error) || humanOutput(text(body.stderr)) || "error").trim().slice(-600));
|
|
5041
5049
|
}
|