dshmarket 1.11.3 → 1.12.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/README.md +15 -3
- package/README.zh.md +13 -3
- package/client/client.js +247 -125
- package/client/client.js.map +1 -1
- package/lib/index.js +6 -0
- package/lib/settings.js +51 -0
- package/lib/types/settings.d.ts +45 -0
- package/package.json +13 -4
- package/src/client/Market.module.css +20 -1
- package/src/client/MarketSection.tsx +13 -5
- package/src/client/SettingsCard.tsx +96 -0
- package/src/client/index.ts +28 -0
- package/src/client/locales.ts +8 -0
- package/src/client/market-data.ts +36 -0
- package/src/index.ts +6 -0
- package/src/settings.ts +67 -0
package/README.md
CHANGED
|
@@ -17,6 +17,10 @@ One-click themes — install, switch live, no restart:
|
|
|
17
17
|
|
|
18
18
|

|
|
19
19
|
|
|
20
|
+
On dsh 0.1.0-rc.7 and newer the market puts its own option where the host keeps every other plugin's — no YAML:
|
|
21
|
+
|
|
22
|
+

|
|
23
|
+
|
|
20
24
|
## Install
|
|
21
25
|
|
|
22
26
|
```sh
|
|
@@ -25,9 +29,15 @@ dsh plugin --profile web add dshmarket
|
|
|
25
29
|
|
|
26
30
|
Restart `dsh web`, then open **Settings → Plugin Market**.
|
|
27
31
|
|
|
32
|
+
**Requires dsh web 0.1.0-rc.6 or newer.** On an older host the market
|
|
33
|
+
disables itself and says so in the browser console rather than rendering
|
|
34
|
+
against primitives that are not there — if the Plugin Market entry never
|
|
35
|
+
appears, that is usually why. Worth checking when a desktop build bundles
|
|
36
|
+
its own dsh: it may be older than the one `npm` would give you (#139).
|
|
37
|
+
|
|
28
38
|
## What you get
|
|
29
39
|
|
|
30
|
-
- **Browse & search** the full community catalog (
|
|
40
|
+
- **Browse & search** the full community catalog (1250+ plugins, growing daily) — category filters, star counts, top/new sorting, bilingual descriptions that follow your UI language
|
|
31
41
|
- **Screenshots** — AppStore-style screenshots in the install dialog: author-curated via the registry, with automatic README extraction as fallback; images load from GitHub hosting only, and only after you open the dialog
|
|
32
42
|
- **Themes** — a dedicated tab for community themes and skins: install → active immediately, switch with one click (themes are mutually exclusive, your choice survives restarts), uninstall to revert
|
|
33
43
|
- **One-click install** — confirm the source, watch live progress; most plugins go live after a page refresh, no restart
|
|
@@ -38,6 +48,7 @@ Restart `dsh web`, then open **Settings → Plugin Market**.
|
|
|
38
48
|
- **Restart when needed** — changes that cannot hot-load show a one-click restart beside the pending-change banner; the action is restricted to same-origin loopback requests
|
|
39
49
|
- **Zero jargon** — if a component is missing (pnpm), the market detects it and offers a one-click automatic setup
|
|
40
50
|
- **Log export** — one click produces a sanitized plain-text log for bug reports (home paths and credential shapes are masked; nothing is ever sent anywhere). The market's version sits next to the page heading, so a screenshot of a problem already carries it
|
|
51
|
+
- **Settings card** — on dsh 0.1.0-rc.7 and newer the market puts its own option (whether one-click restart is allowed) on **Settings → Plugins → Plugin configuration**, so a host owned by systemd, launchd or pm2 is a switch rather than a hand-edited YAML line
|
|
41
52
|
- **Diagnostics** — the plugin load order and conflict surface, one page: bundle stack with official/community badges, duplicate loader entries, dependency version mismatches, multi-version core packages, overrides and invalid config entries. Plain-language terms, problem blocks highlighted, everything collapsible
|
|
42
53
|
|
|
43
54
|
- **Load order** — drag community bundles into the order you want, or take the suggested one derived from the plugins' own before/after rules. Nothing is written until a trial composition passes, and the panel tells you what the new order would change (overrides, invalid or duplicate entries) before you apply it
|
|
@@ -65,8 +76,9 @@ Installs prefer npm tarballs over full-repo GitHub downloads whenever a plugin p
|
|
|
65
76
|
|
|
66
77
|
## Roadmap & feedback
|
|
67
78
|
|
|
68
|
-
-
|
|
69
|
-
-
|
|
79
|
+
- **Bugs** go in [issues](https://github.com/dsh-market/dsh-market/issues) — attaching the market's "Export log" makes diagnosis roughly ten times faster
|
|
80
|
+
- **Feature ideas** go on the [Roadmap](https://github.com/orgs/dsh-market/projects/1). Issues are kept for things that are broken, so a proposal filed as an issue gets moved there and closed; the discussion stays where you wrote it either way
|
|
81
|
+
- Every roadmap item welcomes community PRs — say so on the item before starting, so two people don't build it twice
|
|
70
82
|
|
|
71
83
|
## Data source
|
|
72
84
|
|
package/README.zh.md
CHANGED
|
@@ -17,6 +17,10 @@
|
|
|
17
17
|
|
|
18
18
|

|
|
19
19
|
|
|
20
|
+
dsh 0.1.0-rc.7 起,市场自己的选项也放在宿主统一管理插件配置的地方——不用改 YAML:
|
|
21
|
+
|
|
22
|
+

|
|
23
|
+
|
|
20
24
|
## 安装
|
|
21
25
|
|
|
22
26
|
```sh
|
|
@@ -25,9 +29,13 @@ dsh plugin --profile web add dshmarket
|
|
|
25
29
|
|
|
26
30
|
重启 `dsh web`,打开 **设置 → 插件市场**。
|
|
27
31
|
|
|
32
|
+
**需要 dsh web 0.1.0-rc.6 或更新版本。** 宿主太旧时市场会自我禁用,并在浏览器
|
|
33
|
+
控制台说明原因,而不是拿缺失的原语去渲染——如果设置里根本没出现「插件市场」这
|
|
34
|
+
一项,通常就是这个原因。桌面端要留意:它可能内置了比 `npm` 装到的更旧的 dsh(#139)。
|
|
35
|
+
|
|
28
36
|
## 你会得到
|
|
29
37
|
|
|
30
|
-
- **逛与搜**——完整社区目录(
|
|
38
|
+
- **逛与搜**——完整社区目录(1250+ 插件,每天在涨),分类筛选、star 数、最热/最新排序,中英描述跟随界面语言
|
|
31
39
|
- **截图展示**——安装弹窗内 App Store 式截图:作者可在 registry 里策展,没有则自动从 README 抽取;图片仅从 GitHub 图床加载,且只在你打开弹窗后才发请求
|
|
32
40
|
- **主题**——独立主题页:装完立即生效,点一下切换(主题互斥、选择跨重启保留),卸载即恢复
|
|
33
41
|
- **一键安装**——确认来源,实时进度;多数插件刷新页面即可用,无需重启
|
|
@@ -38,6 +46,7 @@ dsh plugin --profile web add dshmarket
|
|
|
38
46
|
- **按需重启**——无法热加载的变更会在待重启提示旁显示一键重启;操作仅接受本机同源请求
|
|
39
47
|
- **零术语**——缺组件(pnpm)时市场自己发现、一键自动装好,全程不见命令行
|
|
40
48
|
- **导出日志**——一键生成脱敏纯文本日志方便反馈(home 路径与密钥形状已打码;任何数据都不会被上传)。市场版本号就在标题旁边,截图反馈时自带版本信息
|
|
49
|
+
- **设置卡片**——dsh 0.1.0-rc.7 起,市场把自己的选项(是否允许一键重启)放到 **设置 → 插件 → 插件配置** 里。宿主由 systemd / launchd / pm2 托管时,这就是一个开关,不用再手改 YAML
|
|
41
50
|
- **诊断**——插件加载顺序与冲突一页看全:bundle 栈(官方/社区徽标)、重复的 loader 条目、依赖版本不一致、核心包多版本共存、覆盖项与非法配置条目。术语说人话,问题块高亮,全部可折叠
|
|
42
51
|
- **加载顺序**——拖拽调整社区 bundle 的顺序,或直接采用按插件自身 before/after 规则推导出的建议顺序。写入前先跑一次静态组合校验,通过才落盘;应用之前面板会告诉你这个顺序会改变什么(多少处覆盖、多少无效或重复条目)
|
|
43
52
|
- **AI 修复**——一键把诊断结果生成的修复 prompt(错误/警告/顺序冲突 + 保守的改动范围约束)复制到剪贴板,你粘进新对话,自己决定发不发
|
|
@@ -64,8 +73,9 @@ dsh plugin --profile web add dshmarket
|
|
|
64
73
|
|
|
65
74
|
## 路线图与反馈
|
|
66
75
|
|
|
67
|
-
-
|
|
68
|
-
-
|
|
76
|
+
- **Bug** 提 [issue](https://github.com/dsh-market/dsh-market/issues),附上市场页面的「导出日志」能让排查快十倍
|
|
77
|
+
- **功能建议**放 [Roadmap](https://github.com/orgs/dsh-market/projects/1)。issues 只留「坏掉的东西」,所以提成 issue 的建议会被移到那边并关闭;讨论仍留在你写的地方
|
|
78
|
+
- 路线图上的每一项都欢迎社区 PR——动手前在对应条目里说一声,免得两个人重复造
|
|
69
79
|
|
|
70
80
|
## 数据源
|
|
71
81
|
|