Repository navigation
Releases: lilcandi/dsh-music-on
Release list
0.2.1
0.2.1
一次只改文案的补丁版:把随包分发的商店条目对齐到审核后的措辞。代码路径未动。
为什么会有这一版
0.2.0 的 tag 打在 6551308 上,而 docs/marketplace-entry.yml 的措辞修正发生在 tag 之后(远端 e2a4a66,本地 968f61c)。结果是:插件市场里展示的条目已经是改好的版本,但 npm pack 出来的包里那个文件仍写着三句代码做不到的话 ——
- 「本地文件在重开后可以恢复」:
ShellDock.js把本地曲目标成missing: true,restore()的两遍循环都会跳过它。Blob 地址刷新后就是死地址,本地文件从来没有被恢复过。 - 「逐曲封面」未加限定:本地文件不走解析,
sources.js不产出 cover,落的是黑胶占位。现在写明「仅解析出的链接曲目」。 - 「整排在任意窗口宽度下精确铺满」偏绝对:
Spectrum.jsx在间隙被压到DOT_GAP_FLOOR以下时会如实略微溢出,这是刻意的(不重叠优先)。现在把这条边界一并写出。
一个包的元数据与它的实际行为不一致,就是 0.2.0 的真缺陷 —— 只是它不在运行时代码里,所以现有 537 项测试一条都不会失败。这一版补上。
同时做的
- 版本号
version与dsh.version两处 0.2.0 → 0.2.1 - 新增
docs/release-0.2.1-notes.md即本文件(不进 npm 包,files逐条列举)
校验
npm pack 后解包比对:
src/下 20 个.js/.jsx与工作区逐字节一致presets/不存在- 包内
docs/marketplace-entry.yml含「半像素」与「本地文件用黑胶占位」,不含「重开」 package.json两处版本号均为0.2.1
升级:dsh plugin --profile web add github:lilcandi/dsh-music-on,或换成新的 tarball 地址(资产名刻意不带版本号,latest/download/dsh-music-on.tgz 会一直解析到最新一版)。
dsh-music-on 0.2.0
0.2.0
底部频谱、配色主题与设置页在这一版重做,同时把「音景」功能区整块移除。
频谱
之前无论窗口多宽,频谱最多只铺到 286px:柱宽被夹在 [2,4]、缝被夹在 [1.5,2],pitch 上限 6px,48 根柱就此封顶。现在宽度由剩余空间反解 —— gap = (w - barW * n) / (n - 1) —— 整排在任意尺寸下都精确等于容器宽度。1440px × 48 柱实测柱宽 15.00px、缝 15.32px、整排 1440.0px。
- 柱数上限 96 → 160
- 新增频谱宽度设置(占窗口宽度 20–100%,按 5 对齐)
- 样式扩到七种:圆点、粗柱、方块阵列、对称声波、折线、时域波形、关闭。
blocks与mirror是本版真实绘制的新画法,不是选项名
主题
七套配色:鲸鱼蓝白(默认)、极光青紫、薄荷绿、落日橙、玫瑰粉、霓虹赛博、极简灰白。
它们此前视觉上完全相同,原因是不在调色板而在权重:主题块写成了 :where([data-dmo-theme='x']),:where() 把选择器权重归零,而默认令牌块是 (0,1,0),主题块永远赢不了。改用真选择器后七套才真正区分开,60 余处硬编码颜色也收敛成 rgba(var(--dmo-rgb), α) 三元组,半透明的线、光晕、玻璃一并跟着主题走。
移除
「音景」是从界面到落盘整链摘掉的,不只是把入口藏起来:控制器、IndexedDB 缓存、静态资源路由、面板分区、七条随包分发的 WAV 全部移除。宿主 inject 从 ['connection', 'webServer'] 收窄为 ['connection'],HTTP 路由从三条减到两条。
修复
设置分区的说明文字原先直接落在宿主半透明面板上,#5a6c92 的 11.5px 小字对比度只有 2.0:1,几乎看不见。现在分区自带玻璃底,并加了断言把对比度钉住。
商店截图
截图脚本改为先真拖入一段音频再拍:页内现场合成 24 秒 WAV 交给插件,等自动播放与频谱跑起来。所以一次干净的运行同时就是「拖入即播」的端到端验证 —— 链路断了,频谱那张会拍成一条平底噪。
dsh-music-on 0.1.3
Bottom-right music dock for the DSH web GUI: draggable capsule, player card with a queue
and a draggable progress bar, volume knob, per-track covers, drag-and-drop local audio,
Bilibili / NetEase Cloud Music / QQ Music playlists (their audio reaches the browser as an
opaque HMAC token, never a plain CDN URL), a live blue-white spectrum, and seven bundled
CC0 soundscapes.
Install:
dsh plugin --profile web add github:lilcandi/dsh-music-on
Or from the tarball below.
dsh-music-on 0.1.1
Adds the soundscape row: seven bundled CC0 WAVs (white noise, rain, cafe, beat loop, jazz piano, lo-fi, late-night bar) are now playable straight from the card, each looping seamlessly. 0.1.0 shipped the WAVs but no way to reach them.
Install:
dash plugin --profile web add github:lilcandi/dsh-music-onOr grab the prebuilt tarball below (no build step, no �llowBuilds approval).
0.1.0
First release of dsh-music-on.
A music dock for the DSH web GUI: a draggable capsule in the bottom-right corner
opens into a player card with queue, progress bar, volume knob, three loop modes
and drag-and-drop local audio. Bilibili, NetEase Cloud Music and QQ Music
playlist and track links are resolved by the host; NetEase and QQ audio reaches
the browser as an opaque HMAC token instead of a plain URL. A spectrum canvas on
the page bottom draws from a real AnalyserNode. Seven CC0 soundscapes ship in the
package.
Install into a dsh profile:
dsh plugin --profile web add github:lilcandi/dsh-music-on