{"_id":"dsh-mpkg-wallpaper","_rev":"58-d70535906d25be9d9af9cf95be129601","name":"dsh-mpkg-wallpaper","dist-tags":{"latest":"3.16.4"},"versions":{"3.1.0":{"name":"dsh-mpkg-wallpaper","version":"3.1.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"6fc7f74583524b59fe7690becb759eb57f7c9608","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.0.tgz","fileCount":7,"integrity":"sha512-pwtYq8ofz0uN5/oU03IDlWRRiRGE9XFQXQTFaucDN+wfL1/YwBJUkX93MMQwIZg+J8vk5xIWvD562KfD2FF2aA==","signatures":[{"sig":"MEYCIQCxT9iPleoTsa8DtJJ1qFfdNbII+Jks/qa/HBHp3sNvHgIhANnQEDVqFpwIZJulKdK8q6GLiLaqWjKlJE/EyBwpLScz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":252759},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"f60250fb8f6e6a06d8641ca5d40b5187c10e4c43","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/schemastery":"^3.18.1","@deepseek-ai/dsh-settings":"^0.1.0-rc.6"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.0_1787148723435_0.5261421672900639","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"dsh-mpkg-wallpaper","version":"3.1.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"c7152d5adffe1db891af0eb81c78e7d7ff5f98d1","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.1.tgz","fileCount":7,"integrity":"sha512-VczmRaOtlNRVjD4o2FlYsU/qjjoN6St3SLw9Gdc6SwY3Dms1Mevv5K9zSAd7n8hZkGTSy8d2kd7rnry/IlyR/A==","signatures":[{"sig":"MEUCIHjEiUU/kcNi8O6J2p9HjQMB2jxgVl6LC0OVfI/z21ASAiEAyXq30SDRhNv9eZqXpe0GgwawtTdolSNeixPqeL25PjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":252631},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"f60250fb8f6e6a06d8641ca5d40b5187c10e4c43","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.1_1787153683907_0.06850205391537623","host":"s3://npm-registry-packages-npm-production"}},"3.1.2":{"name":"dsh-mpkg-wallpaper","version":"3.1.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"82a24671cfa1f9f081ab0d84d03f8ffea4948ec0","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.2.tgz","fileCount":7,"integrity":"sha512-NlmxeDNJndqK6jUFOcT29WqA9cF8uZinasZCrWesvH3Pmtccl5dYmBfk1EF8FC40+GTr1LHnDK64sckYy1E7Vg==","signatures":[{"sig":"MEUCIBJrQ0X9+LF04Db5Hf7yfeRNHdoWM/B3aQJAJnBYfOugAiEAn8t3caSrcEizZB2g1+oqyPRfUNd49NfykiMp6A9uMgM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294532},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7843390c185f072963305f3e3bf56540e70f9515","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.2_1787179112118_0.2092741161205809","host":"s3://npm-registry-packages-npm-production"}},"3.1.3":{"name":"dsh-mpkg-wallpaper","version":"3.1.3","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.3","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"a1bcd44a3f56a7ddec7f3db240d7b6ddcdc7f8de","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.3.tgz","fileCount":7,"integrity":"sha512-45EXlU4+iVr6vQVn7Dzl6l9eVminUyFgobyOgl7BGPPINt3dIMm2/lM2rrHNoo+vtpkwc4hfcI1ZCPoKdvre9A==","signatures":[{"sig":"MEUCICmgx/TEXd5yQ/75XVtTPBqAXArNpDtWyAHIIJHgYAmSAiEA95ivEFfXY4zN936vLCGTa67tBCRxqIL1OkquWOzKyLQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":308672},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"2d718a437ad84a9902d189e41f4beabce78f2e76","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.3_1787186286612_0.14403721034344508","host":"s3://npm-registry-packages-npm-production"}},"3.1.4":{"name":"dsh-mpkg-wallpaper","version":"3.1.4","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.4","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"20f46d779cc9054427a07336665e633f70854fde","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.4.tgz","fileCount":8,"integrity":"sha512-GNRmC720/zyl3VMqJ8GmCqtQosvHz3fSCNSs6d2uLUFOZZ11KzCtH04YqmocHVBk0sOkOyuocX6/0yP21hurGQ==","signatures":[{"sig":"MEUCIQDQfl4r9DoN48r90KBmTtqz8g7FbOgslzyvcOXxdGMJJwIgb0zQNbTB+yPKOcoDxuqrrm0PyYGHjqPvTjoA9d7R0NM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":407129},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"8e98e76e8ea43064d0d2b2e2040f4118640c69a8","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.4_1787229497031_0.986415615505241","host":"s3://npm-registry-packages-npm-production"}},"3.1.5":{"name":"dsh-mpkg-wallpaper","version":"3.1.5","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.5","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"f32679fc26a1bbe4f23c8a9743e25ac53a3d1135","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.5.tgz","fileCount":8,"integrity":"sha512-IWN0NK8XFTs9M1PQ+TM3wMdxkLDDx4Pk4cTb6o6IR40bz3Zx5DNJA0yxoWCZUFyETJxREei2p0NzJ7khUVDtNQ==","signatures":[{"sig":"MEUCIQCKVoFE4Pcdw9sazyJSLvqSHnosrIV5C104GyNmdtYY0QIgJforpLrkBKB19hrxiyPyDATIEWKDEUCnB8d+j+DywMs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440593},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"728adabb9d6c6878e3869a34318ef61c77ab9873","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.5_1787236231925_0.31140741012814344","host":"s3://npm-registry-packages-npm-production"}},"3.1.6":{"name":"dsh-mpkg-wallpaper","version":"3.1.6","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.1.6","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"85984f448d996216edf7475c086b9aa027f4d8e9","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.1.6.tgz","fileCount":8,"integrity":"sha512-pwQJJCL1Gf+I1Ytd8HqejoI/KpsEUJpith6b4ZKRTrVxTDmp39HgszcHiXhqptaN7WtRoW550Gx0o8vCHDZMyw==","signatures":[{"sig":"MEQCIE53eLNvlVBQM44/W6BU11W9ExR5nbZBlElx5q5lOo7tAiA00gWzSUnDLBOTcTPz4Of7x1IDWVlBMrxCyhGvARmZQQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440878},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"ee09f41e1a8f895c2df05c6f5df89bb46e7a8df0","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.1.6_1787273508228_0.39887706929123645","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"dsh-mpkg-wallpaper","version":"3.2.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.2.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"fbef1ecb91f6b445d14725eabe29aea001bc3f47","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.2.0.tgz","fileCount":8,"integrity":"sha512-uRhU8xVyN1de5/GDx9gfhA/xwq8kziDQuDWhsJGC5ZQzzoM/wwEoi7sUVoDFVpfgTcxPB3wreMMbMuKpFHsv9g==","signatures":[{"sig":"MEQCIGWwlX2SQgqU1IcAWJ4iuidFYJOsbHOS16vdopNYP9bhAiAE59Ysp8L/3uEFgEYW+Fsp8BIAbzpb51VbQDRhKF+Eew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":508185},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"46961f005735c135cc92bb6a96e5c1f471022f85","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.2.0_1787344101465_0.35828072577998826","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"dsh-mpkg-wallpaper","version":"3.3.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.3.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"75a1ae4dc4c0fa432bec035ab82dd6b5237ff3bd","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.3.0.tgz","fileCount":8,"integrity":"sha512-gz3hT80qykG++vG9q0XpTsLXBuXMx64nBwmp2PwX0cG/vX4YJnJnNrjuATnuu3ot3AgRsJrQCdlNj7rSbebQEw==","signatures":[{"sig":"MEUCIQCT6JOcCt1PkNSFiYOOwMqOgYi6cqSOAmvaRKksLIk7TQIgZpn20umMJsd1XV1BZZrsC1mribXkaxSxtlp/jEmQSQM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":574063},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"cc55a7b0b7c0cfb9be9b5d9195bd650b0c0fb6a7","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.3.0_1787363924510_0.3461875778202306","host":"s3://npm-registry-packages-npm-production"}},"3.3.1":{"name":"dsh-mpkg-wallpaper","version":"3.3.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.3.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"076807bae60be9db2119ce567445d991e37e8cd4","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.3.1.tgz","fileCount":8,"integrity":"sha512-NuKo4P7qcOwwWQ9NCpvXytEBK0YY12DewfaLp85rThT3sCTqnk+kOw/FibRQxHpWbZeRll2r47JhTm2x5KyPIw==","signatures":[{"sig":"MEQCIEwFbgf/6qKcVkewpWpU9Sw4VE3Oz64yTPz+bZ0v0vAeAiAu8i7U90NNACxYqCa1VcoijHO+MglRn13MuFc+Osg63g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":574035},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"0fe1ed8c1879ee327a1c417a09eaaac1291802c0","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.3.1_1787374413752_0.2637040136623954","host":"s3://npm-registry-packages-npm-production"}},"3.3.2":{"name":"dsh-mpkg-wallpaper","version":"3.3.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.3.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"cd2b982e6d04ec53effb9bf7d4cbcbadac492c07","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.3.2.tgz","fileCount":8,"integrity":"sha512-tO6NIwoXiMD6kblsucqWiJtS/0omjbUohXduN65KMahLGBVPdzCfdsfGK2SkW823Q2ql6Hlh/JTISM9iyBumRA==","signatures":[{"sig":"MEUCIQDpo66K8sVrXGCzJPqbdefNzyUFnVkzZ7M9yhTm48KnIgIgfqk7W44FxAGz5i4kCfVdlVyhnODCKghSjRsDhIJ9QS8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":581906},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"23d42a3f3e5bdbb6d30a58a3d86d4434177097c8","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.3.2_1787380883278_0.49704735163270564","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"dsh-mpkg-wallpaper","version":"3.4.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.4.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"6884aecda57cf1ed4af9f1739add0c6a0438db62","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.4.0.tgz","fileCount":8,"integrity":"sha512-a6Cdp5sGmwpd2vKaEivSVZEoD4lqrWLTLtzPDrpZFehXbv3mrrtDEgU74u+E25A5P/zo9T/jsTvgSuLszUcBqg==","signatures":[{"sig":"MEUCIQDkeAmseUwfA9TNr94w74J6yinHkzOyQCXTMZgv+V1N6QIgX/NquZ/zo2+QDZ9+BFBgSB0XjbKiNkB7WAeTcNm0cf0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":618609},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"f9a7646dd935813666f37c5218465fec45e111c1","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.4.0_1787439359755_0.7003421744257339","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"name":"dsh-mpkg-wallpaper","version":"3.5.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.5.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"0cc544f3bb8b06d0451d31a83025b6f8a40feb0d","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.5.0.tgz","fileCount":18,"integrity":"sha512-Z+uQmI+cA/6YrnVYFc0i0eB8a/FIs2b6s9Nwk/rPihPn13PGb94NPHylbVn+L+tfVgnLHsVJMw1vzdRe/EZdPw==","signatures":[{"sig":"MEUCIQDt04Si0NJhe83USzY5Rg6aD1tgxg7OrtPZ1QC5yTmFTQIgF8X3vGdulDXFBz3OX8HYjODWdaSP6DulscquazsRbvU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":982124},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"eac67f4cae556097c128e3160867740ed7324e71","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.5.0_1787521680647_0.7452200977281385","host":"s3://npm-registry-packages-npm-production"}},"3.5.1":{"name":"dsh-mpkg-wallpaper","version":"3.5.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.5.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"24664f0a15106b4bb9c6aac95b45c0a7cc5d8d23","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.5.1.tgz","fileCount":18,"integrity":"sha512-NN2FN5+uH9J9yA0wTyRyN3Hp1TdZvT0PUXjXLdJy0h8rQZUD1SIBhAMbyiP8VzbZeh8KlpcvD55yCWqe+vZGBg==","signatures":[{"sig":"MEQCIDo61xorgrNJx+zqU/lfYEx44o8P8Qu0vFGx5WdxKw2RAiBafzAp2sg4zAs0Q9gIRZQDh4Cp7lqCSGlnpI6sjunAYQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":982738},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"3ec772f7cee2533d94d0cd5df0d14a752a899127","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.5.1_1787522535138_0.8601811387326137","host":"s3://npm-registry-packages-npm-production"}},"3.5.2":{"name":"dsh-mpkg-wallpaper","version":"3.5.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.5.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"973717c95f66b1398c4bf22ca3ddc6ac23aaf941","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.5.2.tgz","fileCount":18,"integrity":"sha512-/mqNfyGhFXy/F2gYfpNQ3ciJFNhkSf2H1/KwaCDQRR+lc++iIkv7ncmgdngnnU4DWdrK7FKr3+whFd90Wzvoaw==","signatures":[{"sig":"MEYCIQCbQhw2JQBooPw6/I+6K944GWTLFdJKMzEPCW1gTd8wCAIhAIRZbl4EZpXY0WRVB9qUaXqn+3oVSkVLYodA1/2RNG0f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":875031},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"035ce14e2cdf2ca2a4221e85fe2244db51ae8fa6","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.5.2_1787524428649_0.41631005566725143","host":"s3://npm-registry-packages-npm-production"}},"3.5.3":{"name":"dsh-mpkg-wallpaper","version":"3.5.3","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.5.3","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"8de35cf02ea9ec54bca5ebd54ca6690a3b1edf54","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.5.3.tgz","fileCount":18,"integrity":"sha512-Yy7f4OOyRvQaNYsZnbODvc+YRecZqenY65I4qI7WhfC0y4FTnBpJxM0EYk7BoIyu8LYCCNJ/DosfG/f1rPGiTQ==","signatures":[{"sig":"MEUCIQD8g0WtWAP+WQgwKeXrdbvHWl0RNmuNgDYymF7lZAAuvAIgGQJS7DtwoXr/uon1N2IAQeZmRmAet9Nxi3OdzaXlfqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":875920},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"d961276bab22216ea703f6e2481fe6499e557c8c","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.5.3_1787524918506_0.7717425905406057","host":"s3://npm-registry-packages-npm-production"}},"3.6.0":{"name":"dsh-mpkg-wallpaper","version":"3.6.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.6.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"8e495905cff7d623ea746668a5b9bd05e462ab35","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.6.0.tgz","fileCount":18,"integrity":"sha512-JA67a0PGevsvGiQ09sEF/yYfGaAWZLViByLVRbzYwuc7Oi/PmnV3dVYFaTYmBfcZ4DqPpHTeh3I5X7ZvW8psDg==","signatures":[{"sig":"MEQCIFGTml8A5iBDhwTMpwkouNLnrwEVwCn3LoJjb6SbsIO3AiBVChZ5CvsgNKsATbRyElwBT6pn/5y2dDh2mNVbIwPuRA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":890568},"type":"module","exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"ac972819463d23619f6eeadda1ade74a6cf95995","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.6.0_1787594450786_0.3136297542431137","host":"s3://npm-registry-packages-npm-production"}},"3.7.0":{"name":"dsh-mpkg-wallpaper","version":"3.7.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.7.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"e71bcec50f5cb265581ee0b01fe77804df9b46ef","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.7.0.tgz","fileCount":18,"integrity":"sha512-lO7hUR9XoPVqW3vVpOUG8aedjiGYCLhPdVY9n08/jDUWujraeO2N2rPirkuvDokg1jBWZJu5vi9xYvJ6yl3C0w==","signatures":[{"sig":"MEUCIG36BrHuO3jUhieEC+nQBvdqpUXPiWBbMNM9bP+ER3nvAiEApxamDDMNUiTki4Yk0ewqlWiqC9UT2JLrYImrWcKexAc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":916913},"type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"287dc65bf3729cc27b601e644120fca0fd56a66b","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.7.0_1787899026122_0.6737411357198624","host":"s3://npm-registry-packages-npm-production"}},"3.7.1":{"name":"dsh-mpkg-wallpaper","version":"3.7.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.7.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"cf52fdc569a40460d7a294177879c07951f73efd","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.7.1.tgz","fileCount":18,"integrity":"sha512-cgOsuLUpkR02koDE9JzIY4R/2L8sW9P3NRjODO07IHq9LBfCLFRufxSucM9EgjYl42Mj6VoCvcpWqQNqDK8UDQ==","signatures":[{"sig":"MEUCIQDzuxlN4YoQaGMeR+xm06AnZAsGO0xbPxoESnYhUHb6DwIgTRgA/+aOFFqL8CQEkwpJ8bs10wmqtAQ1RFlANe5lAAM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":928654},"type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"09c32864107b27bb35381bffc90730fb61819328","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.7.1_1788363569502_0.666630971956627","host":"s3://npm-registry-packages-npm-production"}},"3.7.2":{"name":"dsh-mpkg-wallpaper","version":"3.7.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.7.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"12e680061594da71e0dc5e54cbc1178f2ff2089b","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.7.2.tgz","fileCount":22,"integrity":"sha512-yeb0ezFeeLsj0BhLOA+SFwGX0r+9AH0c4YP19VD40tvEVSR/cDQUZf+jJuO18qMe2xrH0enSoRQUNq2qYhfW5A==","signatures":[{"sig":"MEQCIBifGaftetLRLMQJe4/pztC2CK94PNLzefM5TlVdyrnpAiARPF8evlN/9PGnHsdW0xfk8Uj7NNw5LIXAQ7g/ptbilg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCOlhZHgd4oaJVmAheOmkFOObxLbnvUp0Oi0yZVI5O/oAIhAN7+PNYMjSSBaW/e7+j+R8CuSyp2RUPkQCUvYL86Qqtn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1626235},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"cdc558da2a7422249dcacd99c79792b26c05c4f6","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.7.2_1789740448316_0.5580209205940496","host":"s3://npm-registry-packages-npm-production"}},"3.7.3":{"name":"dsh-mpkg-wallpaper","version":"3.7.3","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.7.3","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"0fb3580733c759baaba43e924390177c67afb449","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.7.3.tgz","fileCount":12,"integrity":"sha512-18e8vzSpXwAjKLe8WAUF85QR5zrA2fkl1BJuzi7/XavcgoYO7oTqLQKrNCqUxhhDhKAAVa6bwP4zlRyntC4RHA==","signatures":[{"sig":"MEQCIHb8mazKEFuBa7PFVnx3RS/9I90Rnu4xlhpifiaNjHLaAiAaqD+w0szvpT3HFLZylqnwa6VIw6TmZglwUZX2xBK7QA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGmDF93s/g4zIHwhz7hefl6xUsqSaqyVXrwmm/4ZdqKmAiEA5mTj81W5o/g/WvLer04kCaU2nD8yUlnHL+xO0fF+NF4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1398847},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"2997804a3056ce2fffb3f0123e0844a0ba7a7535","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.7.3_1789744718748_0.1947472780671855","host":"s3://npm-registry-packages-npm-production"}},"3.8.0":{"name":"dsh-mpkg-wallpaper","version":"3.8.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.8.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"27286f6905229472c285a132aa61d23d14aba666","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.8.0.tgz","fileCount":15,"integrity":"sha512-KfXjyen675uPoQSpZbBAHUoVV8mf3JGwCgbtKKdwI2jWCYMpBgFruCeLwcnzrmsNtt/RXKWuJr6lxBC6503BZw==","signatures":[{"sig":"MEUCIQDYMZzpyfOOxaTSJiUUxmznu3wXtmiQT1VeO61hmmWUhAIgeTHR7+lZtTfqZrIkywgfWKRw1N0R2WD0m7gbHPrWEK4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEZVowaJyA2JIdy0OmRWF4Z50HKoWJI6NN7qpe+OF+4cAiEAn1x34uBCz1UAEhvAwlIBN9MWhBwmBYMXTUJBlEKwtkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1868387},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"d37cd412f5255b5c6207e318976f5c7c7aaac363","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.8.0_1789805631355_0.9828547403008481","host":"s3://npm-registry-packages-npm-production"}},"3.8.1":{"name":"dsh-mpkg-wallpaper","version":"3.8.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.8.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"4fbaf5570aa4f25a545cfaa055500267b9284190","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.8.1.tgz","fileCount":15,"integrity":"sha512-3UeGRBhUk08KP8Asj4EIefGoz+zh2Qs10nUhZUY8c0n9bQ5VTWLgb2BvD+vCKHrL5jjVEPg5UOfwZsZtgHMF/g==","signatures":[{"sig":"MEQCIGoo75btCB2bvMoVfa7lADrKfTxxDcZ39QT4e+rwD573AiA4iVHRE5pR8mPMqQZlpX3sTA5plk6pR8hv6poC3lxjRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHpqwkZyN4t8VXxjQPxVZBTQWhVqFxK0Wqrb5jXzBGG3AiAGU+cBu1MMr92m6Bno45tub35XlL5SHWdR0VXR65/a8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1871236},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7ba5cdd4c3bf3da79f24d8e03fb02ea7f98cdb4b","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.8.1_1789809408191_0.17840611214693491","host":"s3://npm-registry-packages-npm-production"}},"3.8.2":{"name":"dsh-mpkg-wallpaper","version":"3.8.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.8.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"719246aae9a4e8144882c7b581737f4f40d27442","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.8.2.tgz","fileCount":15,"integrity":"sha512-FnTxrhismYtbgYrMkU1MdpkQFrXJGfPBCbpD8KZxnF1mHEjYd8LB8o1/rnglxiy/kynw3ylEHgBWFT5L2i3Y6w==","signatures":[{"sig":"MEQCIHBvsoqC20LSPUX3X+BJJ+NH6F4tBG1E9lhlmzhgJXpPAiAqR3PBt2VD99hjii5sHQOUTitQOaXziQOVGxT6sCjg+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDpr2a7gubO8zog66aQjZB/+/dTKJud4W27imHwry6bfQIgRNMx4B6ph3fO2BSgKiysmiKhcZJgdgtxphuB4wb5BUY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1954084},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"4d74d823888b7adaa11cb10922c08a3ba05fe05b","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.8.2_1789820120822_0.4192846822556606","host":"s3://npm-registry-packages-npm-production"}},"3.9.0":{"name":"dsh-mpkg-wallpaper","version":"3.9.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.9.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"897cd5605eed2001a6baab699845d22d92b0d23c","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.9.0.tgz","fileCount":15,"integrity":"sha512-l7VuCpicPvOawRUruBtKZz4a90QCX9AJ4EI6d7ftQIrQlO4XupqOQxrcI+OGJeICY2zh77+ek2v3z0pCMvsPQQ==","signatures":[{"sig":"MEYCIQCUPh1Sv7jw0Ec/sZy54WWGz2CKG5QKI+3TRWN4dxayLgIhAPLDYTXflI8fApgf6AOs5JGj46ZtlsbSGuIFZMKoiXIW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFKpkd9GtKwAUYzBeTjHm9m4zR73fit/0geJDEglzEiZAiARCouf9zS6PjqXC3NyHFl+8sS3/8AbTCK47+58mXgpPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2093027},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"ef48cb3fb5a411c3ee6f72417bd8086bc9e5467f","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.9.0_1789841303134_0.3769608237338056","host":"s3://npm-registry-packages-npm-production"}},"3.9.1":{"name":"dsh-mpkg-wallpaper","version":"3.9.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.9.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"39d955d40ba262fc16b319305a7dd0dd507aa7de","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.9.1.tgz","fileCount":15,"integrity":"sha512-TYKwo1WtHe6RK+S9epY4FRXW5umcw+wVWh6UUWJh6sdAbFXa64I6ZivBvGgFjqqYAfiPGg6VOaB4Iov/AuDxMw==","signatures":[{"sig":"MEUCIQC4v/siIFUvDK0z5Ca88TAlgsA2uE+6aXc7qQKR5q+RWwIgcWdW6bgt98vnEsXbTP/a073+SzhnNGOMkADM5hHRlJQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDBUEqdAEM8g2SmK7NqQ3/sR6O8MoTtIXCpoAXeVALBeAIgRVRtu+mJQiXKNUmzi+dfNak3EpDMwJtiamUVEQlkG6g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2098944},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"3d9443a09e72870d7472245dee1057c06bb6c0c2","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.9.1_1789845844180_0.12622081185469947","host":"s3://npm-registry-packages-npm-production"}},"3.10.0":{"name":"dsh-mpkg-wallpaper","version":"3.10.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.10.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"51b02f180490f778af68b51e76c3a7e1354a4670","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.10.0.tgz","fileCount":15,"integrity":"sha512-xPsRkBsdpT7rjWYKLrK8ChVV8gpFyBd2jKCtHMREnrAF/mYHd96gox50+2NW7desZs6S4J2qF0dOc0aRQ4QcTg==","signatures":[{"sig":"MEUCIQCHqKQq2x5nbV22HlwwikGXxwRVd0mi938r0HFbyZGX4gIgYNPKhhW11CRWrLP1o4XsXdRMzCpD2IZr/UrHgVjSlOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFaE2G11+brVKXUNXY0UuNpymgyVzanUFlJSYOqULqN5AiBxPFdevZKz9fyP4cUc6MGQi2s6EmBqnbJZTN1eSszumw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2114365},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"6186fe91989b992f8c7569c31f2230a643118a62","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.10.0_1789851173777_0.0584678455078711","host":"s3://npm-registry-packages-npm-production"}},"3.10.1":{"name":"dsh-mpkg-wallpaper","version":"3.10.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.10.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"2168257f09c852123f85c1b647ce0adb13f09fec","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.10.1.tgz","fileCount":15,"integrity":"sha512-02TB0jQ274B3PsUjgE/OHh66+ydrJjWV5w6L/jiEjM9PxEhsQ3fJHqLhm6DoEuP6Uq8zu6oMiWyuXLUdRWppwA==","signatures":[{"sig":"MEUCIB21YteMlQKcCmdBhYRM6fPe8wlpRRIc+h56jhzQSf1tAiEAw7TWksyl7funw1b7yHe1MU7daSBfoxYQgthQeSFOkRo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEGB3HrUzWduYURUL7QGtunddnGhpaKe2zY9sbLX7ttFAiBLhoMRqTY8hkDwtDb9VX1410vLr6lXaHyaxllrOOgDAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2116600},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"526de97e863be361fa3b06067f5592f1e8da2663","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.10.1_1789915860341_0.45778111237087415","host":"s3://npm-registry-packages-npm-production"}},"3.11.0":{"name":"dsh-mpkg-wallpaper","version":"3.11.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.11.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"ecffd78ecad3d7b1ccd5d647206a82048ad563ec","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.11.0.tgz","fileCount":15,"integrity":"sha512-H1zrlykaMRWIJC4ly9dCLNeNZFRsyatAlleHJ5gpwllh6q05DzKr3pG0x31vWn26H1zDTV4sltum8buB4x0xwg==","signatures":[{"sig":"MEQCIGVs3Pm5KbcKFtKcMDsxq/J82XyHS8HaEJCEeJ9HGeyAAiB+6MQDiFFarsFsjeS/DBSVOa8jHSQPOogCFG3bc64Fjw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDX+9CVecuMcRkkgnOCdNLDWJZWIix+CE9ty8mKDDE0rgIhAPD+kp873WbtwER6oKG6P3u1FuFEbydfPCEeiPCAQWkW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2184853},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"33409d73c97f2700926a381fc3c3501ee67308d7","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.11.0_1789935727952_0.04495634799784054","host":"s3://npm-registry-packages-npm-production"}},"3.12.0":{"name":"dsh-mpkg-wallpaper","version":"3.12.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.12.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"f3162e29c5a050acf397c62221e7e5d60232de08","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.12.0.tgz","fileCount":15,"integrity":"sha512-YInUT2V1pU34s7UHpAT6/LAZJf99osWgVbKCXWqyaybBxQb4m6k0jcHTrskEiV/ByDw0Ry2sXDnOvBBGtTcUxg==","signatures":[{"sig":"MEUCIBmyOgNSAd08fGME0a+e95VKtZEWZRwFAE02GBCe7tnwAiEAhLQnd590tQEr2YbGJFXL3+VSrhV5SM5hSOMwNI+e0es=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDCA8UNXdiIZ1Nb5ZH7v5HrcQkT1jsx79t1Gme1CHQNOQIhAPSN9G6Xqo6HxXPbduTvYvDQRvuxtG6fS12Zsodgq0lA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2190681},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7e4d5d967d075bbf7a29759379a913489d28437f","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.12.0_1789941167492_0.53963613377217","host":"s3://npm-registry-packages-npm-production"}},"3.13.0":{"name":"dsh-mpkg-wallpaper","version":"3.13.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"0b6e4074c7f57b3f602904e6bc8ae7194d7d247a","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.0.tgz","fileCount":16,"integrity":"sha512-q7rR8PZ8KLAApC6IOjiyZ/sAlK7dk9ykXbyCuWifdsqWSQds9VsID0k+0g+BEyAxbm1ft/0/H7IRd4x/ym+zAw==","signatures":[{"sig":"MEYCIQD/j5Eha/zt6xTzBtcoPiqG4FGukSGUULk8byNxVmjzywIhALnI04fj46tqa6vh0ax3Df3MHzohtEQVrkfGHyRwbOMt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEmUlvUBIM6fTdf4fujQzhStd1MCtVnTdo/aJzzXanbyAiA1VU7fKSscBU/lQAC8aCSQ7sBOtyzdEuFnzu9bvA5WTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2237392},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"97e06b423b3d1366905fd6647af0103efcf1b060","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.0_1790012796201_0.5353625581680959","host":"s3://npm-registry-packages-npm-production"}},"3.13.1":{"name":"dsh-mpkg-wallpaper","version":"3.13.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"ed162e36c77bc5202839e1a290eab7f95fb00cfc","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.1.tgz","fileCount":16,"integrity":"sha512-MwWINB4UzZ4dqCo307GFNqjuT0WDU1Mki5Q1nfia3nLmuzYG87VGkU8xfYbjdasyUsF3PBB+yFcJrI7zprv7zQ==","signatures":[{"sig":"MEUCIQCEipktXhwvmqHqpX0eWBRCk5DeBx38zZIaJBySDzZCwgIgWY95TMSXmeDB+tx2E1g74lPXLlmCN2/NWdjGMPR9CPE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDgqMoE7CZmaJZjVYb+TJMvXOa0U1YbYxURfF3dxX4yzgIhAJnY3d4VgyUvWvzkKqp4hg/Hp3s3SMXmLnPShWklvHsv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2268181},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7e2f3eda94790699e70af9ebaccd217c5ca9eaa0","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.1_1790048631202_0.6829553227812801","host":"s3://npm-registry-packages-npm-production"}},"3.13.2":{"name":"dsh-mpkg-wallpaper","version":"3.13.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"6303b79694caa536f9380fa12bbf104766276422","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.2.tgz","fileCount":16,"integrity":"sha512-ju2qRsy64wREM+WLgDbd8ahwb3qIWYbmTga3HuRg2dhBhWV+BheMMILID5KhBbgwHXVOC21diEYhsasICaAzDA==","signatures":[{"sig":"MEUCIE+V6XItMMZA9biqHpI45oOGx+5R+2UE0acWNWTEDXNLAiEAwBBSv/K1NJ4/90ZcUiFldt0q6KqsFYKdbvp6lyELicc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC4b5/OREjupe1OsYFOinaB3fJLjSIiybojy0xnIHfNRwIgNJk4wJPTPkfFl57fqrJu3dc663qp80MrTl/NtjPWI9I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2426019},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"0eebd7824fd9d0946d35ceb57e8e914b73fc0404","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.2_1790108004612_0.5810145975894176","host":"s3://npm-registry-packages-npm-production"}},"3.13.3":{"name":"dsh-mpkg-wallpaper","version":"3.13.3","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.3","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"2e4d3fcd10f7896f544392c7b8fabb8cd331dca7","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.3.tgz","fileCount":16,"integrity":"sha512-9hMB5+pEpe0aWzC8FbC5skg/Gl1/lSbMUes871G0bLH9SdJKmr5Frdn8hOChekEdUTvSWYA2E9HPVeeWOSkcag==","signatures":[{"sig":"MEQCICLNdLh4UsAz+y4v95ttMQ0mhUrpeTR9hrTfCc1fap9lAiAMU1c/fLuxVXW8phR7CbgNoBVI7Zwpkd9JUqbFBnG7NA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAinbLQUUm3N4dYOUfYs4WSmMOHjuGJ7OPyyaht92J7/AiEApdJiQ5oa+nfe79fsYCYt7fuGovrIeuYaX/hegDfBRTY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2433327},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"784e2d568fe4282ec23f6d875a80fe9386b1231f","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.3_1790139011449_0.3083242539095514","host":"s3://npm-registry-packages-npm-production"}},"3.13.4":{"name":"dsh-mpkg-wallpaper","version":"3.13.4","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.4","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"0bd27a016793de1ce9e8bc72e1a4aab9c03cb79b","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.4.tgz","fileCount":16,"integrity":"sha512-QM802vwGFJjju8epFJ8VWH50g1UCzQ2Cy3qTrzbkIAJOsMEWQN0VKRjjo4G7QGw/V8VCxyAhJmu3eu7p2L/wcw==","signatures":[{"sig":"MEUCIQC3JJxR/mHiX3bMgnUN1C3/b3RPML+RoV+OMvd0KqQtTwIgZUHMppGd3XeTR7xWVUw3C0UHAMwjzv3IkJUR6k94Dm8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC8SytjrPmGK6JLcWiKbWz68krBcuqc8UmGnoH6SoLA0AIgdnDNtAHN1LPqza3Wz6U1r+riTf1OKp6TMlZVJmNxtuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2451610},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"6f5a9f98677d2c99f08ebfba5ac65edecd0068b5","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.4_1790190749028_0.44835380709454653","host":"s3://npm-registry-packages-npm-production"}},"3.13.5":{"name":"dsh-mpkg-wallpaper","version":"3.13.5","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.5","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"6b4083665db20f66670673212f917b86a214f272","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.5.tgz","fileCount":16,"integrity":"sha512-QdaFcFqQcy7vLdFZU3VsO1A5zDTx85jQlsoB60B1tH7pgQbu5jq9cN7mcsyKilR5TwWztxGYg1Ts0QGBUqMCqA==","signatures":[{"sig":"MEUCIQDN6/rcHackHc/TfRFW3dYR5hyc7dPsbZeWSiNvqR2G0wIgLOrQPxbDAyJRNUqxdb2FOCmSHdpzqwnDfTBi+SpaiFU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC825SBN0Ta82sb0CSTUfeIwyeecFFkvf7QNoAR38jrWQIgPVynoPmzqG649bQlPjUqtkOFBMVUOMV1oQphc5REpdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2455625},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"5b1a1ea69ea1c97f9a7eef024136a09458644f8e","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.5_1790200895981_0.7965521528066972","host":"s3://npm-registry-packages-npm-production"}},"3.13.6":{"name":"dsh-mpkg-wallpaper","version":"3.13.6","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.6","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"77fbb96de5da628c3c3caff0e19f0723bda3ceff","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.6.tgz","fileCount":16,"integrity":"sha512-Fco5vk0S3H2N30mAbXK/C7OWmBhai1sA6kKCyKAU1E5L3QfgAYe5vms/wKqjdwMYBG2KYTG4IflbYy8rfWx6BQ==","signatures":[{"sig":"MEQCIDimGbXB7icohwMs1+i4GMnhwIZ4EegH+A3RJLOoQJjbAiA2oHmXQJWDM8fM1aY89b0dK1miBtQpI07fBV2is3lpAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCXPYUieJ7+xSbhsiz5gep4L1Aw8S2OFrwonzDEMQFDfgIgDmsdQwoAMBVYggPXgSR6foHOX9MnUPkabN34wE12Mv4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2458078},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7398b798e93fc0def1d8399c5db668882a080d67","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.6_1790210954881_0.5324268636963172","host":"s3://npm-registry-packages-npm-production"}},"3.13.7":{"name":"dsh-mpkg-wallpaper","version":"3.13.7","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.7","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"f085ecefd59fe361b29df20a3cf4cf5af8ea6ea6","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.7.tgz","fileCount":16,"integrity":"sha512-stnzJuQbGsIDT+tTKwXpw01I20ZgC0Qug9Qw0UbVF+PP+4Xb/+s3Alv9mJKbvFYvOOA9d2ktEUhyF+lvZFK96g==","signatures":[{"sig":"MEUCIQCCKXLkGCYnLrT0fPaq4/L5AfdP4/exiQQgqLfV6GPg8QIgQHjLt4DdvlSMwr8ruwdcGO1jMT/lKvKjqX/ESeTGZHY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFHjswjNB5fy2VbHwuJ9bT1TD6OPxbwGBWEPdN6+YvQ5AiEA0i3uN9fwljwvNZfE0HhCSlvL68on+JpouhW3DCaRVt4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2459109},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"5544f5574f24d15a94ef828abbf38e302c0dcec9","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.7_1790228380789_0.9174729127087038","host":"s3://npm-registry-packages-npm-production"}},"3.13.8":{"name":"dsh-mpkg-wallpaper","version":"3.13.8","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.8","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"be716468c9b1f3774c7df15415b6c07774fc2b91","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.8.tgz","fileCount":16,"integrity":"sha512-E1X26BDV+Qh2SBXe3DE9tF3vjO4B2yVn8Oby1SzVUm8AWQq95c0FHaciKIKdQBQjsj5CHfWgjv7JDttOZ4nhTg==","signatures":[{"sig":"MEYCIQDWRKmWuv6GVTYxrqpEjf1LBG3WOPQt6AaL44Tpk/oHVwIhAK0hjJWA4hItSw7A4zVD+mG0/jizcmaVWBFiQ2l6M8+B","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCAV+4khdgoWxS+f7Gq7zUPgHlb4zaTM/36yKiP74HXagIhAPGb583tylWh0WWDtIBQmgucvZ75ACVZZxyqJYpmrMlz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2492362},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"cfd8455dd36a381102c20c3c31eb0c9368735367","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.8_1790320217619_0.2944552686289359","host":"s3://npm-registry-packages-npm-production"}},"3.13.9":{"name":"dsh-mpkg-wallpaper","version":"3.13.9","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.9","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"0e382e2f4f37dec1ec57a3ac0e13595d2f398400","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.9.tgz","fileCount":16,"integrity":"sha512-WhuniphSjgvesO6ht1511/B01ho0yYzyd1g+EOrKoc9iOwH6ufMbnHzun0GV8v3DQFuWKBy9tMxK5NA1ryOf7A==","signatures":[{"sig":"MEYCIQD5litPFSyAktY01mFUfP2ggM3uODACoI2twbBYXGuQcQIhAN42oGTkkz4TxJUgoMP1YVYc6G+31dz1GjGR+ZlS9q8B","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEKn23ZqZ+p+8l3usCWTDNI1f+DuMh4Zp+B/8ziqed4lAiAQxyNzTpaAl0DYtcTxuqxmoE1LjdPgJ+s7TLdVg8h1MA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2519623},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"5e7407e8d35404509ef0a7269bc1ffa3f10cea5d","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.9_1790333210815_0.46993674938307817","host":"s3://npm-registry-packages-npm-production"}},"3.13.10":{"name":"dsh-mpkg-wallpaper","version":"3.13.10","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.10","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"0d7736f520f7a7a25d34298a35ef756fb81a0960","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.10.tgz","fileCount":16,"integrity":"sha512-oGUA6rXVcDcYCpDrHJ0zLmiojBg39/4CMIXTke/A9VoDG+UjDQZbMqCm/vQC5eyGGUSptyqaWDLcw85lICWeHg==","signatures":[{"sig":"MEUCIAduDTuA1v4Bp1/KgSrmLIzuJiwnintCa1epJeG0ZjDKAiEA0FsenSSB16+3YHLUJtFRwwZNDRGHW7IuZRZ7w3GgecY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDh6+2WDPGKurE1I+LeKqfRQsK16IPRZ3Ebiw//q5ihQAiBgMZhYz9WB1qhbOiBUaxtJY8kzQNSEmkGEBn2Zhfssrw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2654697},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"dfeb5fd242b37d2672701c715289ee8463db7503","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.10_1790539448540_0.7255793171301324","host":"s3://npm-registry-packages-npm-production"}},"3.13.11":{"name":"dsh-mpkg-wallpaper","version":"3.13.11","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.11","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"049b5830dc177502d51600f14f6930e3baace27e","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.11.tgz","fileCount":16,"integrity":"sha512-oy1tfA/8VKFNOja9dMxpgJcfVqrr1pR7vchk9ajsm4S4kQvqJspRB7/VTnU9IyJWB5uTQ0XLmkAuqbozjS5Efw==","signatures":[{"sig":"MEUCIA3WJs+X68UayXqCn8URJFwVGTOIkiUcS+b/RwyrxI/hAiEAg54YB16COlSa8IJHvgF94B432XtKfdWOTsbt5dBmW7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDV5VaTxy/yFNIyt2IhNTx5nk38icujMwLet6VvGHNemwIhAIKn7WOvs+zwIDb+gu9js3x1tVkERrgMC9kBM+eE732g","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2667113},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7931ba12298b65a18ef135fa3743a47c5f9c8dd8","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.11_1790882151520_0.7213784114502233","host":"s3://npm-registry-packages-npm-production"}},"3.13.12":{"name":"dsh-mpkg-wallpaper","version":"3.13.12","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.13.12","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"752584475009fa1a510b6cdfb1df1714b24c1732","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.13.12.tgz","fileCount":16,"integrity":"sha512-B6CzVBRILUWqvIjH1BH+IDnFgg4nBQvnCdWmryY1fH9Lq1gDXpXmoQbhhJl5XPqqDqkAXtcnLReNUc/lMJg0Pw==","signatures":[{"sig":"MEUCIQDh1G2iytT999i7hMVwszpnuCIUnCaVs3FOijQ6zXM1dgIgTHkcWV6DKLARrPI2INZ2VH1jV1E0TbkOkP2qtYlh0r8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICe3qfX5LGekut/ukmeTSRGrAGMgEY3sOBZYAu9kpUmMAiApNckhS8CJyB9xusmMzU1eBGZlN2n0jONSvk8hBe76gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2678151},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"03952e5a716bfbb7c233ebd7d2dae1a06b57e746","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.13.12_1790933556730_0.9669733261220108","host":"s3://npm-registry-packages-npm-production"}},"3.14.0":{"name":"dsh-mpkg-wallpaper","version":"3.14.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.14.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"53cb247c7baea13432f25a5b09fe643fe1068a26","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.14.0.tgz","fileCount":16,"integrity":"sha512-baXNeZYwXcq7ztQUd/tYepAALkZMEoOuOA9bkqIVG/mCQ71CYTN+5Atb6WaoSMA7nGt7pHB/JYV0Jhj84I07oA==","signatures":[{"sig":"MEQCIFNc/uXYWvZNXfbsH1xcpZZx2ZrEXahpQFiGtk3/KOEpAiBfifmPZtMH9zYmqj3mc2VEx21kinmWkFmpNYUZI3nMkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCzp0PGAAWQ4QZu2Vkvp84bXR3D6s3yPMEH5fUo6FmuoAIge3VSEWLPEOvFwmeUWGLWbE5SdH+LHOUUZsh++3TbS/Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2703619},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"113d386c884bbfb36542f467cd37951fcfcc211d","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.14.0_1790941496064_0.39861767805385306","host":"s3://npm-registry-packages-npm-production"}},"3.15.0":{"name":"dsh-mpkg-wallpaper","version":"3.15.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"21a92838dd77a978aa4ca46b58b86f0c8b73ea33","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.0.tgz","fileCount":16,"integrity":"sha512-QklGQxqTdjPULoHxYDCvqV5Tnwf5UEjW91sC3u1yxm/kHXf74PhF+bswfNk4PRiqA3ifpxhC12oKfJY/rachhQ==","signatures":[{"sig":"MEQCIAxrIBXw/2qQs/Qw+s1QNWfVXOErjPaY/b1RetxoMlpJAiBAq0QjiKZDyf8TY+R1dmV+gvUHY1uePiESlK70mA8oxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGqUuARvihwXeAXQ2eOyqmDFzCDInq9elGIhZDIVxW5UAiBY/T/t2BN4AuCZ/ikhmigZBmRll8oW/HQZOlehlh2e3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2735868},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"35481d76e1e58e0db61172c7c93d9b96a9b1d1b8","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.0_1790953468922_0.7903868019936748","host":"s3://npm-registry-packages-npm-production"}},"3.15.1":{"name":"dsh-mpkg-wallpaper","version":"3.15.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"c7e3a685046098e451fa1a2ffc8e91484bb387bd","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.1.tgz","fileCount":16,"integrity":"sha512-h4z5KCBorKg8eWlOFHl9XP+UZcbiraOKioUueY5RsbabfbPKp4aMMU0eIcFb6ZdX+MQd3xHk5BSRdJ4NGUfClg==","signatures":[{"sig":"MEUCIQCJavlzo6i9xPhVv9TMqOuhpeoDc0Omz3CVqiJUBJkqbAIgD06iLEjWl/AKrxDo8JNxghpSgiZqZTra3Cg4cEol7ls=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIA2byYn6gvvBUfQ5XL9HXm6Wie0glh6RfHK7eo0ODZHhAiAIm/ybs3L9vXSNTV7WffRnKe3ZlEbsrhtSIfBOWWJwJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2736888},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"46bf353e647de72ec4fee9b14129f6d193493deb","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.1_1790955161363_0.895298673244862","host":"s3://npm-registry-packages-npm-production"}},"3.15.2":{"name":"dsh-mpkg-wallpaper","version":"3.15.2","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.2","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"d6153bf56f581301e9af81fb23ec6710a49513b7","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.2.tgz","fileCount":16,"integrity":"sha512-GIzEMCGjpbqlyRAeEgNDl/+Y9XmyswoSyd9R1vbqP1/pKikWv52cuCrgjjrTekmTFyfB5prr7N9NSp3vKn5nXQ==","signatures":[{"sig":"MEYCIQC2DZ9JmCwH/oq2oaiMWiyjcgvB5OIUSKqjxKgk1ZwXHAIhAIQMaWzD7iKqrxVWV9mzlEIjHxx8Ncy64sB5kvh5xA0S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDcjDNiK9rbqybQRlqHeqpRYz1T5xTlQFTp7ovoYMKaUQIhAIUszfNKC1Rq9jCxD4LyT644tMPK3U4qzGqPzUXgPOBw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2746186},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"615832bdb7fb6c63c7bdb5daab5061fe35f05028","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.2_1790962472581_0.3543860212223482","host":"s3://npm-registry-packages-npm-production"}},"3.15.3":{"name":"dsh-mpkg-wallpaper","version":"3.15.3","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.3","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"9e175114cceb7c373e84913d06fc23cb16f6d33a","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.3.tgz","fileCount":16,"integrity":"sha512-P3ycKuFPAjU94AY8IKRT2h6OWnJr2MhtE1IftHdsA/HNvs4gD89J8cjGJgFuGjoM9X3pC2fEkOToADMZ6wb/MA==","signatures":[{"sig":"MEYCIQCcZGyZloTwhzbVhbZ7ADJnon6UZoTAeYXKGdawSO4nVgIhAOVilMIrwoTUu/5iN4OiV3MElElP9KYS2uyk7DJdJOqo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDdtU9oR+J5hkT92vZcM+WeykFqMIQ4u20WRm+mjVU23AIhAJosdgOpesMv7fPW5yOa9dfu3GPbRFo8aKZlrd2xROm8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2764741},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"d1291e11023ea05d60d2af2610c96a3d64c67538","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.3_1790967846456_0.46430692624443415","host":"s3://npm-registry-packages-npm-production"}},"3.15.4":{"name":"dsh-mpkg-wallpaper","version":"3.15.4","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.4","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"721fab637d8a160d1a750ef6ccbd28df744a5dfe","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.4.tgz","fileCount":16,"integrity":"sha512-bMpGd/TMtPZIbXNW53IHVkIyh2Hy1o9usJe9KTTbGRGSB0QQgh3zNKX3qkzoakR9PaM4EGsoZdv/2xFVvrmq4g==","signatures":[{"sig":"MEYCIQCXgoTegA+rySMZ6m/iqo8mRGOlrKDGMvCJKUSQtRqRAgIhAObGhNxXzju17wqsapyyg3d/qkY8GNNsINhqhyQ2DiIp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDK+hD8SzDwQwoSGP3yoyNf/NrN4CWmEjN5qPphPo4McAIhAM+Rx0/pdxORpzFWlZ3MYOXVGJkRciOXrWj1RaI/c3Mj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2768183},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"4b760d786119f6852e406a873d906baa07d5f387","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.4_1790970397645_0.9641156532012578","host":"s3://npm-registry-packages-npm-production"}},"3.15.5":{"name":"dsh-mpkg-wallpaper","version":"3.15.5","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.5","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"791c5b529575ba20bd1d056e6b6824c277a00f24","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.5.tgz","fileCount":16,"integrity":"sha512-ZNgCzpnpUd4vmoR46dLGXORmCUv4TGeot6kAtX62bwU9I8zd3Luor0MlWiMWcUEUtXIRLPSio9hwi0xK0AsgeQ==","signatures":[{"sig":"MEQCIApRCJyBBzVy4b+mC0piHd26PFwKXkUanDdG/X5awOgKAiB27O2EiF5jWTrxfWVWNtndlxSmcsTSracB0eDUMerwvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEZXsaLtorRxjTgVNp8nc5WRw5/DRHpSFvoTT1HkEIJNAiEAn70O5j20QDhurc5ZHkcVCcqy6m6fDFm7KomUUdfPyAA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2790976},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"47eb879b1af57b0c4e6cb5f621398d17c3e3e96e","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.5_1790983878689_0.11522526442368908","host":"s3://npm-registry-packages-npm-production"}},"3.15.6":{"name":"dsh-mpkg-wallpaper","version":"3.15.6","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.6","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"34396069ef27e8406c654510593483fecea825c5","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.6.tgz","fileCount":16,"integrity":"sha512-OHCO84CPMPcorteq7zUiAwAyH3JvqS8ROKBWGaAdUobf+SbdmCT8DG/QX4pWdHm36KGm4MdruEUA0jhyogrBDg==","signatures":[{"sig":"MEUCIF5kDSKXLWFFkqNCRJph2wIilPIUnF1EwaL2TZ2d3qd1AiEAr6Lc3G7tfXvBovFOX94JoyA0brvrcN4ANeTpk90cvlE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDQDxbjgaptrkv1U+vc8A8pEULss6a0CZELc37ieIE0SQIgTan+e/FYsgphZYhh1uM+6tcc9hFz4eUIII/00TX/5eY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2800428},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"1c94667e94ce0dd8d099b3369e4a0cefec022e28","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.6_1790987822718_0.3938184242394491","host":"s3://npm-registry-packages-npm-production"}},"3.15.7":{"name":"dsh-mpkg-wallpaper","version":"3.15.7","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.7","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"3ad60f74506cede1ef4d3666005d62d25f4547ae","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.7.tgz","fileCount":16,"integrity":"sha512-cFQaUsDe6WN8BS13gcKIXEwuBF1jiaYyn0+37tXYGL7f7SoMA6xiaO6n+BgTOaHcMlXfkqFArnCOWRsCNNXjAA==","signatures":[{"sig":"MEUCIQDfTKkVdNIVA7s+UdJ5Aud4XoZF3XV1PGPnH6A6SN4UYgIgSM+nRhsqfvrX9DeuMb0vD7B2yjwzxoXmVUW85vL8p/8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDFkDwE3o3rLa/5ODt1PA9mz6x99hJW/m0vScuvcZz3XAIgEReeym2D6Fwxxsz+0gOD0YvIoHrFoizyJvpP6lN9p4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2806004},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"8d5d282f33dd35e926f80be2de2ffbb6a21a5a2b","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.7_1791021991156_0.906466702247462","host":"s3://npm-registry-packages-npm-production"}},"3.15.8":{"name":"dsh-mpkg-wallpaper","version":"3.15.8","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.8","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"2534f39559988d76d47c432f58cf534b3128e36a","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.8.tgz","fileCount":16,"integrity":"sha512-qggCSqB6ASNLusmKRxemd4HLNTHCdhN2Tug7LBOyb2IlApqzGK8ll4wyvXB11E8icJtrM5ZA6ylOzLIK9Jd54g==","signatures":[{"sig":"MEUCIH0S3A9twl+lq6Faj49CMtgVQ8ZmU4V196SKyA6axoPVAiEAuHbm7eTzmSdKm+oBCZwwHpxPfVJblLOy7PNpezzA3aQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICWEBNKnEY5/5HZaWKUILEa22ZEPtJJ7HIPtkFmdaSvTAiEAopN6QjFtbv4NDUYro2FkuNzfJRp6paIlmC+pwZIMH4c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2808016},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"f5c39f3d20fa9be577b5a61dfd76785e0dbab09a","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.8_1791024882766_0.21672301612347944","host":"s3://npm-registry-packages-npm-production"}},"3.15.9":{"name":"dsh-mpkg-wallpaper","version":"3.15.9","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.15.9","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"251c21f3aa2ccc5d377456edb10733991c9139a0","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.15.9.tgz","fileCount":16,"integrity":"sha512-9bIfzOz/yUYl0BXdZabvnai7k9fF/k+RY7YH2kXwWVK5xbVD1Cbq9CEU4PfBfHrfP4OMeAa1EaSRoktXgS4Npg==","signatures":[{"sig":"MEUCIQCb1zGMSKHt5/1JM1SdH13exLKlgjjyAh4d3eCa1ghKeQIgEqbev+nswQnW2HTuMBjLvDIqOXm1dkyukEsx4XaFIPE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEtswqkCjIEsuxkIjA/IY+JrQpD1E94PHUMFZRRZPl1yAiAfmWrClAucyr9uw+Q+62C2qEgEBg0Ju2SGU7/MpMTfTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2812054},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"6243d38a40d721c43a792a83e400aaffe51a26b2","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.15.9_1791026855154_0.6287274646757088","host":"s3://npm-registry-packages-npm-production"}},"3.16.0":{"name":"dsh-mpkg-wallpaper","version":"3.16.0","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.16.0","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"3d88237098dd6c79d8529abfc76d9db1b39d6ef4","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.16.0.tgz","fileCount":16,"integrity":"sha512-Dxa1c3WF5iBIHNHKUCZCdmEh0nCdALzTVHzgnTtt6lv34sGvw0Q6mUxc8B68no7A5v2L9U0bI5GTlfLjoXDfdA==","signatures":[{"sig":"MEUCIGgRnqg0xqN9HrZN6YA701EDFuz5Wt7u1jvujfDPF7ZNAiEA5dMjXYXnsc9oVi4aUVDwUtsFjkygsOEjRKZwoDz0ezY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBwu4s0Gl5pMcelfYnPCGsIMrg0wvKdd0GOUTvR0Pih/AiBHXGBgKERr8PWK41lXtF7jOkk0xDzAleCtOh0Pgm4mnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2813551},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"83c82f2efc01e80c6d350d246c5cd7fe957238df","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.16.0_1791029488079_0.8121962909577523","host":"s3://npm-registry-packages-npm-production"}},"3.16.1":{"name":"dsh-mpkg-wallpaper","version":"3.16.1","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.16.1","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"57e3fe9d15294a4704348c3cf399df25e0e49c13","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.16.1.tgz","fileCount":16,"integrity":"sha512-1VPlEMLTGUPPwakO7HATPTyD1QZiikkx01P823cyIDD9s6jcS7LhW9rq7XWXBFyO6sxk7R0nWYYy9uzGZ/MFKg==","signatures":[{"sig":"MEUCICqHY2/eKqoMIkmwRl0aJZWAdqBPvF+H1mRG1Vf7mJ96AiEAzkZlG9jAsmarr32jMzKILFZloK7sNb9BjYdxvfgA2TY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICL9LFvbt7Hfzy7ywshNoBuOL/lhgHMqytD7R/tXavxbAiEAm6tASnI6siWWlGMs/tXf0OW6X+zLoYsjhHDNmuTBb04=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2811888},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"7d0708abe79f8b6be3a9eac26bd03ecefdaf8e31","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.16.1_1791031808218_0.7335584837454885","host":"s3://npm-registry-packages-npm-production"}},"3.16.3":{"name":"dsh-mpkg-wallpaper","version":"3.16.3","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"license":"MIT","_id":"dsh-mpkg-wallpaper@3.16.3","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"dist":{"shasum":"df6ac0101f1cecb9ee2f7da89df48da2c027dab1","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.16.3.tgz","fileCount":16,"integrity":"sha512-HP1AyGT+j4qsOW8vSNKUPDCY1MCj7QjZaW8ukU/xA9Mg5q66NY1iYOX0yLMv+UJwzLGnbSJpfGvR5orfM4bj3g==","signatures":[{"sig":"MEQCICivPzwlWYAVbwyBmlnygXzFpxLu4gSAOSuN6+3l0M6TAiAUXQy/UBJ3Qb7KMtzCcjkhxhk6kLyRHof22W+W4fE7yg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD6VONe6PQdgesex0/HdzgpY213O0A2x3Zvnp6M4wKFrQIhAO+97nlCMTnW9Rix/wYGVgQ3jJRq2s21ksOqhdMCD2S3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2823374},"icon":"icon.svg","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"644c741bcee9fd864fc129df0c2f6ba59f0a0895","private":false,"_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-mpkg-wallpaper_3.16.3_1791037768103_0.22378202622701804","host":"s3://npm-registry-packages-npm-production"}},"3.16.4":{"_id":"dsh-mpkg-wallpaper@3.16.4","dsh":{"icon":"icon.svg","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-api-remotes"],"platform":"web","immediately":true}},"bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"dist":{"shasum":"e64d6312751b5de771fb25061d5820180ec3b174","tarball":"https://registry.npmjs.org/dsh-mpkg-wallpaper/-/dsh-mpkg-wallpaper-3.16.4.tgz","fileCount":16,"integrity":"sha512-xZ9EPOyVi9SkWud+pE8L8q6PigOCvuz5zqC/9617W4iV9DLv+U1Dal9giN/Hzp/Cj/wUviElUJ+vts+SeDIqRw==","signatures":[{"sig":"MEQCIEN99xiCSJ8R9oLBiN9orMNBw36ZvmtX3FJXsVmFRL/yAiBqnvUKVAAb8SzsnkjlITTzobA/NKx7gzGkNUafePW67A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC6CxdtQd9Z9EW9Qi5n0E7QMd9xfcc8xWXL0n6iXC2IYAIhAMtgjs8/KrJkgOOQmD0hNPrMQNLHKzmtA5d/BftuCtMi"}],"unpackedSize":2832675},"icon":"icon.svg","name":"dsh-mpkg-wallpaper","type":"module","engines":{"node":">=20"},"exports":{".":"./lib/index.js","./client":"./lib/client.js","./package.json":"./package.json"},"gitHead":"4f51cae69aa28f9a9f0a0a3e523c7dfb06edacaa","license":"MIT","private":false,"version":"3.16.4","_npmUser":{"name":"xferoni66","email":"137442826@qq.com"},"homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","directories":{},"maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.62.1"},"peerDependencies":{"react":"^18.2.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-mpkg-wallpaper_3.16.4_1791127720816_0.03473309520520762"}}},"time":{"created":"2026-08-19T14:12:03.358Z","modified":"2026-10-04T15:28:41.153Z","3.1.0":"2026-08-19T14:12:03.590Z","3.1.1":"2026-08-19T15:34:44.184Z","3.1.2":"2026-08-19T22:38:32.272Z","3.1.3":"2026-08-20T00:38:06.783Z","3.1.4":"2026-08-20T12:38:17.207Z","3.1.5":"2026-08-20T14:30:32.078Z","3.1.6":"2026-08-21T00:51:48.372Z","3.2.0":"2026-08-21T20:28:21.594Z","3.3.0":"2026-08-22T01:58:44.713Z","3.3.1":"2026-08-22T04:53:33.896Z","3.3.2":"2026-08-22T06:41:23.421Z","3.4.0":"2026-08-22T22:55:59.917Z","3.5.0":"2026-08-23T21:48:00.784Z","3.5.1":"2026-08-23T22:02:15.327Z","3.5.2":"2026-08-23T22:33:48.812Z","3.5.3":"2026-08-23T22:41:58.658Z","3.6.0":"2026-08-24T18:00:50.929Z","3.7.0":"2026-08-28T06:37:06.302Z","3.7.1":"2026-09-02T15:39:29.658Z","3.7.2":"2026-09-18T14:07:28.472Z","3.7.3":"2026-09-18T15:18:38.857Z","3.8.0":"2026-09-19T08:13:51.480Z","3.8.1":"2026-09-19T09:16:48.327Z","3.8.2":"2026-09-19T12:15:20.939Z","3.9.0":"2026-09-19T18:08:23.222Z","3.9.1":"2026-09-19T19:24:04.288Z","3.10.0":"2026-09-19T20:52:53.947Z","3.10.1":"2026-09-20T14:51:00.437Z","3.11.0":"2026-09-20T20:22:08.056Z","3.12.0":"2026-09-20T21:52:47.622Z","3.13.0":"2026-09-21T17:46:36.317Z","3.13.1":"2026-09-22T03:43:51.328Z","3.13.2":"2026-09-22T20:13:24.727Z","3.13.3":"2026-09-23T04:50:11.553Z","3.13.4":"2026-09-23T19:12:29.153Z","3.13.5":"2026-09-23T22:01:36.096Z","3.13.6":"2026-09-24T00:49:14.988Z","3.13.7":"2026-09-24T05:39:40.929Z","3.13.8":"2026-09-25T07:10:17.735Z","3.13.9":"2026-09-25T10:46:50.918Z","3.13.10":"2026-09-27T20:04:08.628Z","3.13.11":"2026-10-01T19:15:51.715Z","3.13.12":"2026-10-02T09:32:36.822Z","3.14.0":"2026-10-02T11:44:56.242Z","3.15.0":"2026-10-02T15:04:29.042Z","3.15.1":"2026-10-02T15:32:41.537Z","3.15.2":"2026-10-02T17:34:32.703Z","3.15.3":"2026-10-02T19:04:06.618Z","3.15.4":"2026-10-02T19:46:37.821Z","3.15.5":"2026-10-02T23:31:18.816Z","3.15.6":"2026-10-03T00:37:02.841Z","3.15.7":"2026-10-03T10:06:31.255Z","3.15.8":"2026-10-03T10:54:42.889Z","3.15.9":"2026-10-03T11:27:35.273Z","3.16.0":"2026-10-03T12:11:28.208Z","3.16.1":"2026-10-03T12:50:08.374Z","3.16.3":"2026-10-03T14:29:28.217Z","3.16.4":"2026-10-04T15:28:40.983Z"},"bugs":{"url":"https://github.com/XHR666/dsh-mpkg-wallpaper/issues"},"license":"MIT","homepage":"https://github.com/XHR666/dsh-mpkg-wallpaper","keywords":["dsh","dsh-plugin","wallpaper-engine","mpkg","background","web-ui"],"repository":{"url":"git+https://github.com/XHR666/dsh-mpkg-wallpaper.git","type":"git"},"description":"DSH Web 壁纸引擎 Wallpaper Engine mpkg 背景插件：浏览器内直接解析 .mpkg（preview.gif 动态背景/内嵌 mp4 视频/多时段切换），整屏统一虚化/对话框/弹层/遮罩独立虚化、镜头缩放平移、时钟、冲突检测。","maintainers":[{"name":"xferoni66","email":"137442826@qq.com"}],"readme":"# dsh-mpkg-wallpaper — DSH 壁纸引擎背景插件\n\n[![Awesome DSH Plugin](https://awesome-dsh-plugin.com/badge.svg)](https://awesome-dsh-plugin.com)\n\n[中文](README.md) | [English](README.en.md)\n\n给 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) Web 界面（`dsh web`）添加背景壁纸的插件：**Wallpaper Engine `.mpkg` 解析、Steam 创意工坊目录、视频/网页/图片壁纸、时间变化壁纸的多时段切换、整屏虚化体系、主题色与玻璃外观、本地壁纸库、定时轮换、Now playing 控件、一键更新**。外观细节几乎全部可调。\n\n> 版本口径：本文件描述的是 `package.json` 里 **`3.10.1`** 这一版实现。发布面共 **15 个文件**（`lib/` 8 个运行时文件 + `package.json`、`icon.svg`、`cordis.patch.yml`、`README.md`、`README.en.md`、`THIRD-PARTY.md`、`LICENSE`；`npm pack --dry-run` 实测 15 文件 / unpacked 2 088 240 B）；`lib/liquid-glass/**`、`lib/liquid-glass-bundle.js`、`dist/`、`tools/`、`docs/` 都不进 npm 包（`package.json:8-21`）。本轮的默认档变化：**`npNowPlaying` 关 → 开**（3.8.0 起）与 **`powPauseHidden` 关 → 开**（3.9.0 起，只迁移\"从没设过\"的存量档；详见[这一版新增/变更](#这一版新增变更)）。\n\n---\n\n## 下载 · 安装\n\n插件已发布到 npm（`dsh-mpkg-wallpaper`）。四种装载方式——先按这张表选一条，再看对应小节：\n\n| 方式 | 适合谁 | 更新怎么做 | 客户端界面 |\n|---|---|---|---|\n| 一 `dsh plugin add`（推荐） | 默认选择；市场能识别「已安装」 | `dsh plugin --profile web update …` | 完整 |\n| 二 pnpm 手动装 | 自己管 profile 的依赖表 | 同上（走依赖表） | 完整 |\n| 三 GitHub 克隆 | 开发者 / 离线 / 要改代码 | `git pull` | 完整 |\n| 四 单文件 bundle | 离线应急；给非 DSH 宿主复用路由 | 重新生成并替换那个 `.mjs` | **只有宿主端** |\n\n### ⚠ 桌面版（DSH Desktop）怎么装（2026-10-02 补）\n\nDSH 桌面包目前只有 **macOS / Windows**。官方 README 写明：**`desktop` 这个 profile 名由 Electron 壳独占，\nCLI 会拒绝它的 `boot` / `config-dump` / 插件管理请求** ⇒ 桌面上**不能**照抄 `dsh plugin --profile desktop add …`。\n桌面档请按下面两条之一走（按你手上那个桌面版本的界面为准）：\n\n1. **桌面 App 自带的插件入口**（若有）：在设置/插件页添加 npm 包名 `dsh-mpkg-wallpaper`；\n2. **手动装进桌面 profile 的依赖树**：把包放进该 profile 的 `node_modules/`（或在其 `package.json` 里加依赖后装），\n   并在该 profile 的 `cordis.patch.yml` 里保留本包的挂载行（与「方式三」同形，只是 profile 换成一个由桌面壳管理的目录）。\n\n桌面档还有一条与网页档不同的前提：**宿主页面源可能不是回环 HTTP**（Electron 用 `file://` + IPC）。\n3.11.0 起客户端已按 DSH 第一方口径兜底（`location.origin` 缺失或为 `\"null\"` ⇒ `http://dsh.internal`），\n所以宿主路由在桌面档也能解析；若仍然连不上宿主，请跑 `window.__mpwCompat()` 与 `GET /api/mpkg-wallpaper/compat`\n把两段 JSON 发给我们（见 `docs/TRANSLUCENT-THEME.md` 同级的排查说明）。\n\n### 方式一：`dsh plugin add`（推荐，市场可识别）\n\n```bash\ndsh plugin --profile web add dsh-mpkg-wallpaper\n# 重启 dsh web 后浏览器 Ctrl+F5 生效\n```\n\n### 方式二：pnpm 手动安装\n\n```bash\npnpm --dir $DSH_HOME/profiles/<profile> add dsh-mpkg-wallpaper\n# 重启 dsh web，浏览器 Ctrl+F5 生效\n```\n\n与方式一同源，只是不经 `dsh plugin` 包装。\n\n### 方式三：GitHub 克隆（开发者 / 离线）\n\n```bash\ngit clone https://github.com/XHR666/dsh-mpkg-wallpaper.git $DSH_HOME/profiles/<profile>/node_modules/dsh-mpkg-wallpaper\n# 然后在 profile 的 cordis.patch.yml 注册：\n#   - insert:\n#       - id: dsh-mpkg-wallpaper\n#         name: dsh-mpkg-wallpaper\n# 重启后生效\n```\n\n> 方式三不写依赖表 ⇒ 市场不显示「已安装」（只影响显示，不影响功能）。\n\n### 方式四：单文件 bundle（离线 / 拷文件即装；**只装宿主端**）\n\n把宿主端内联成一个自包含 ESM 再登记：\n\n```bash\ncd /path/to/dsh-mpkg-wallpaper\nnode tools/build-bundle.mjs          # 产物：dist/dsh-mpkg-wallpaper.bundle.mjs（实测 449 671 B / 439.1KB；以 bundle-equivalence-test 的输出为准）\nnode tools/build-bundle.mjs --check  # 与源码对拍：导出面 / 路由表 / ping JSON 形状（20 条断言）\nnode tools/bundle-equivalence-test.mjs  # 更全的等价性门禁（38 条断言；门禁第 11 步）\n```\n\n把 `dist/dsh-mpkg-wallpaper.bundle.mjs` 拷到任意目录（例如 `~/.dsh/plugins/`），在 profile 的 `cordis.patch.yml` 里按**绝对路径**登记，然后重开 `dsh web`：\n\n```yaml\n# $DSH_HOME/profiles/<profile>/cordis.patch.yml\n- insert:\n    - id: dsh-mpkg-wallpaper\n      name: /绝对路径/dsh-mpkg-wallpaper.bundle.mjs   # ← 指向那个 .mjs 文件本身\n```\n\n**这条路装载了什么 / 没装载什么**（都是代码与门禁事实）：\n\n| 项 | 方式四的行为 | 依据 |\n|---|---|---|\n| 宿主端（上传/Range 流式播放、场景提取、音频清单、设置持久化、诊断上报等 **41 条路由**） | **完整**（`lib/index.js` + `pkg-extract.js` + `web-wallpaper.js` + `web-interaction.js` 全部内联；外部依赖只有 node 内建） | `node tools/bundle-equivalence-test.mjs`：路由表（kind + path）逐条相同 `[41 条]` |\n| `/api/mpkg-wallpaper/ping` | `{ok, version, betterSidebar, betterSidebarVersion}` 键集合与源码一致 | 同上 + `build-bundle.mjs --check` |\n| **客户端半（设置面板 / 壁纸层 / 磨砂 / Now playing）** | **不装载**。单文件里只有宿主端导出面（`apply` / `inject` / `__mpwTest`） | 客户端半由 DSH 客户端模块系统按**包**发现：扫描宿主 Loader 条目里声明了 `dsh.client` 的包并解析其 `exports[\"./client\"]`；裸 `.mjs` 没有 package.json ⇒ 没有 `dsh.client` 声明 |\n| `GET /api/mpkg-wallpaper/lg/*`（遗留 WebGL 托管路由，客户端已不调用） | bundle 旁边没有 `liquid-glass/` 时 **404**；`cp -r lib/liquid-glass <bundle 目录>/` 即与源码逐字节一致 | 该路由以 `import.meta.url` 定位同目录 `liquid-glass/`（`lib/index.js:3453`）；门禁两种布局都断言过 |\n| `ping.version` | 上一级目录没有 `package.json` 时返回 `null`（只影响版本号显示） | `new URL('../package.json', import.meta.url)`（`lib/index.js:1622`） |\n| 「检查更新 / 一键更新」 | 无伴生 `package.json` 时 `update-check` 返回 500，`update-apply` 会往 bundle 同级/上级目录写文件 ⇒ **不建议在方式四下使用** | `lib/index.js:1792-1860` |\n| 卸载 | 删掉那个 `.mjs` 与 `cordis.patch.yml` 里那一行即可 | — |\n\n> 结论：**方式四是\"宿主端能力\"的降级装载**（离线/应急/给非 DSH 宿主复用路由时好用）；要完整界面请用方式一/二/三。产物**不入库**（`dist/` 在 `.gitignore` 里：它是 `lib/*.js` 的纯派生物，两次构建 sha256 逐字节相同，`tools/bundle-equivalence-test.mjs` 第②节；发布时现生成并公布哈希）。\n\n### 更新\n\n```bash\n# 方式一 / 二：走 npm 的 latest 标签\ndsh plugin --profile web update dsh-mpkg-wallpaper\n\n# 方式三：在克隆目录里\ngit pull\n\n# 方式四：重新生成并替换那个 .mjs\nnode tools/build-bundle.mjs\n```\n\n更新后都要：重启 `dsh web` → 浏览器 `Ctrl+F5`。\n\n### 卸载\n\n方式一/二/三：`dsh plugin --profile web remove dsh-mpkg-wallpaper`。\n方式四：删 `.mjs` + `cordis.patch.yml` 里那一行。\n残留数据（可选清理）：浏览器 `localStorage['dsh.mpkg-wallpaper.v2']`、宿主端 `~/.dsh-mpkg-wallpaper/`（`settings.json`、`web-store.json`、`media-audio.json`、上传的 mpkg、转码缓存、`diag-*.json`）。\n\n## 30 秒快速开始\n\n这节给最短路径：装完到看见壁纸，只走三步。\n\n1. **装好并重启**：按上一节任选一种方式装完，重启 `dsh web`，浏览器 `Ctrl+F5`。\n2. **打开面板**：左侧栏「设置」→「壁纸引擎背景」。\n3. **选一张壁纸**，任选其一：\n   - 拖入 `.mpkg` 文件（视频类直接播；场景类走静态帧/图层合成）\n   - 选本地图片 / 视频，或填一个图片链接\n   - 「自定义目录」选一个文件夹（可直接选 Steam 的 `steamapps/workshop/content/431960`，每个子文件夹算一张）\n\n默认档就已经能用：总开关开、大文件混合模式开、整屏虚化开（30px）、Now playing 挂在左侧栏。\n想微调，先动这三处就够：**壁纸设置 → 磨砂模糊**（0–40）、**界面统一 → 整屏虚化程度**（0–40）、**壁纸设置 → 镜头缩放**（10–2000%）。\n\n> 没反应时先去「其他」tab 点一次 **一键诊断上报**（宿主不可用会自动下载 JSON），再带上它去[反馈](#反馈-bug)。\n\n## 核心能力\n\n这节按**你能感知到的东西**分组（来源、时间变化、虚化、外观、播放、库与轮换、安全、备份），不按代码模块。\n\n**📦 壁纸来源**\n- **Wallpaper Engine `.mpkg`**：浏览器内直接解析容器（不上传第三方）；视频类播放内嵌 mp4 / 视频纹理；场景类解析容器提取素材；**时间变化**按系统时间选时段素材\n- **Steam 创意工坊目录**：自动发现 WE 安装（注册表 + `libraryfolders.vdf`，支持非默认盘），列出 `video / web / scene` 三类；也可把 **workshop 主目录**（`steamapps/workshop/content/431960`）直接设为自定义目录——每个子文件夹自动识别为一张壁纸\n- **视频**：`.mp4/.webm/.mov/.m4v` 直接播放；**网页**：HTML 在沙箱 iframe 中加载（带风险预检）；**图片/动图/链接**：本地图片或 URL（含 `data:image`）\n- **自定义目录**：任意文件夹，`.mpkg`、workshop 子目录、图片/视频/`scene.pkg` 混放都能识别\n\n**⏰ 时间变化壁纸（Time Variation）**\n- 识别 WE 的时间变化属性（`morningtime / daytime / dusktime / nighttime / timevarying`，默认 5/8/17/20 时，`lib/client.js:10419-10423`）\n- **按需懒加载**：只提取当前时段素材（单槽峰值几十 MB），切换时段时才读，避免一次导入全部时段导致 OOM\n- **手动锁定时段**：时段按钮只在容器里真的有该时段素材时出现（`lib/client.js:12797-12813`），键名 `timeOverride`；点「自动」恢复随时间切换\n- **不串台**：切换壁纸时清空上一张的时段缓存\n\n**🌊 整屏虚化（磨砂）体系**\n- **统一虚化**：一条滑条控制整屏壁纸模糊度 + 侧边栏/标题栏白雾厚度；聊天区是否跟随、新会话按钮是否跟随各自独立\n- **界面虚化（各自独立开关 + 程度）**：对话框（通用居中窗口 + 聊天输入框）、设置面板、下载/确认弹窗、弹层（菜单/下拉/提示）、遮罩（全屏背景）、左侧边栏磨砂\n- **透出壁纸**：左侧边栏 / 标题栏 / 右侧边栏 dock 各自独立，标题栏磨砂可单独指定半径\n\n**🎨 主题色与玻璃外观（Aqua 实验默认全关）**\n- **主题颜色（`themeColor`）**：取色盘 + 预置，驱动侧栏/标题栏/新会话按钮/设置弹窗底色；**配色（`accent`）**驱动品牌交互色（按钮/滑条/选中/链接/发送键）\n- **面板颜色匹配壁纸（`aquaTint`）**：自动采样壁纸主色（视频/GIF 每 2 秒刷新）；**统一雾**（全屏色调雾罩）、**自适应文字色 + 蓝色清理**、**深底文字可读增强**、**任务列表磨砂**\n- **液态玻璃（CSS/SVG 版）**：`lgCss` + 折射强度，作用于输入框/左侧边栏/标题栏；`lib/liquid-glass/` 的 WebGL 运行时不参与生成（见[文件结构](#文件结构)）\n\n**🧩 dsh-better-sidebar 适配（检测到该插件后显示）**\n- 已安装时「其他」tab 出现**适配分类**：总开关 `bsCompat`（**默认开**）+ `bsFloat`（悬浮双层修复：14px 圆角外壳 + 内层透明 + 零外边距 + resize strip 挪进面板）/ `bsFont` / `bsReveal` + `bsRevealAlpha` / `bsAqua`\n- 宿主 `/ping` 返回 `{ok, version, betterSidebar, betterSidebarVersion}`；客户端写 `body[data-mpw-bs-version]`，版本专属规则用 `[data-mpw-bs-version^=\"…\"]` 门控（`lib/index.js:1626-1643`、`lib/client.js:255-269`）\n- 详见 [`docs/BETTER-SIDEBAR-COMPAT.md`](docs/BETTER-SIDEBAR-COMPAT.md)、[`docs/BETTER-SIDEBAR-DOM-CONTRACT-0.19.1.md`](docs/BETTER-SIDEBAR-DOM-CONTRACT-0.19.1.md)，回归 `node tools/better-sidebar-compat-test.mjs`\n\n**⏯️ 播放控制与省电**\n- 视频/网页壁纸可**暂停/播放**（设置页「壁纸设置」下的按钮），暂停状态实时反映视频实际状态；**调整无关设置不会触发重播**（`video.src` 判等已修）\n- **省电三档**：页面隐藏/切页暂停、窗口失焦暂停、电池供电暂停（`getBattery` 缺失则静默跳过）；任一档触发即暂停，全部恢复才继续；与手动暂停共用一套门控\n\n**🚀 大文件混合模式（hybrid，默认开）**\n- mpkg **流式上传**到 DSH 宿主 → 磁盘存储 → HTTP Range 流式播放（`lib/index.js:1688-1728`、`:1730-1790`）；**>600MB 也能放**，因为流不进内存；关掉则回纯浏览器模式（600MB 上限）\n\n**🖼️ 本地壁纸库与轮换**\n- Steam 自动发现 + 自定义目录（跨平台目录选择器）；WE 原生播放列表（`config.json` 的 `general.playlists`）导入为轮换列表\n- 上一个/下一个一键切换、定时自动轮换（`rotate` + `rotateMin`，1–120 分钟）；列表勾选后滚动不跳顶\n\n**🛡️ 安全与共存**\n- **冲突检测**：检测到其他壁纸/主题插件时自动关闭本功能（可手动强开，写 `forceEnabled`）\n- `.exe/application` 壁纸完全排除（`lib/web-wallpaper.js:101`、`:199`）；自定义目录只读媒体文件；宿主路由有路径穿越校验；网页壁纸 iframe 沙箱隔离\n\n**💾 备份与恢复 / 设置持久化**\n- 「其他」tab 的**备份与恢复**导出外观类设置为可分享 JSON（`BACKUP_FIELDS`，`lib/client.js:11979-11993`），导入即还原\n- 设置除浏览器 `localStorage`（键 `dsh.mpkg-wallpaper.v2`，`lib/client.js:48`）外另存宿主端 `~/.dsh-mpkg-wallpaper/settings.json`，换端口/清浏览器数据不丢\n\n## 支持的壁纸类型与边界\n\n这节回答「我手上的素材能不能用、能用到什么程度」；表后的边界清单说明为什么有些事做不到。\n\n| 类型 | 表现 | 能控制什么 / 做不到什么 |\n|---|---|---|\n| **mpkg（视频类）** | ✅ 完整 | 内嵌 mp4/视频纹理直接播放；静音、倍速、暂停、模糊/缩放/亮度全可调 |\n| **mpkg（场景类）** | 🟡 折中 | 容器素材提取：静态帧 / 图层合成 / 内嵌视频时段；**Live2D 木偶、shader、脚本做不到**（见下） |\n| **时间变化壁纸** | ✅ 多时段 | 自动切换 + 手动锁定；只提取当前时段 |\n| **视频（mp4/webm/mov/m4v）** | ✅ 完整 | 直接播放；解码帧率上限/分辨率上限需 ffmpeg 转码 |\n| **网页（HTML）** | 🟡 实验性 | 沙箱 iframe + WE API shim；**只读设置项的 Live2D 类可改**；外网 SDK / 重交互类未适配 |\n| **scene.pkg 原始目录** | 🟡 折中 | 同 mpkg 场景类 |\n| **preview.gif / 图片 / 动图** | ✅ 完整 | 场景壁纸无更多素材时回退作者预览图（`lib/client.js:887`、`:12272`） |\n| **Application（exe）** | ❌ 排除 | 内容判定即 `unknown/excluded-application`，绝不读取/执行（`lib/web-wallpaper.js:199`） |\n| **自定义目录（混合）** | ✅ 完整 | mpkg 与 workshop 子目录混放；深度 ≤4、条数 ≤4000 的有界扫描（`lib/web-wallpaper.js:213-232`） |\n\n**明确的边界**（都不是\"以后再说\"，是当前实现的事实）：\n\n- 场景壁纸的**完整动态还原做不到**——MDL 木偶骨架无公开格式文档、shader/脚本无 Web 端运行时（见[场景适配](#场景scene壁纸适配现状)）\n- **纯 Scene 渲染方式选择器目前未接线**：「其他」tab 的 `sceneRender`（webgl/static/elysia）有按钮、有写入，但全仓没有读取点；实际路径由渲染器可用性决定（在线走 `:8899` iframe，离线回退静态帧，`lib/client.js:3133-3138`）\n- 网页壁纸的 CSS `:hover/:active`、`isTrusted:true`、帧内 `contextmenu`、指针锁定/全屏/下载弹窗**做不到**（合成事件的固有边界，`docs/WEB-WALLPAPER.md` §11.4）\n- 超过 600MB 的素材只在 **hybrid 模式**下可用；纯浏览器模式另有 250MB（视频纹理）/200MB（图片）/100MB（本地图片文件）上限\n\n## 设置项总表（7 个 tab）\n\n这是**全部设置项的权威表**：每行 = 面板文案 + 内部键名 + 默认值 + 作用 + 关闭/回退。tab 顺序与面板一致，固定为 `TAB_ORDER = [\"source\",\"wallpaper\",\"appearance\",\"unify\",\"blur\",\"other\",\"liquid\"]`（`lib/client.js:10730`），界面文案：**背景来源 / 壁纸设置 / 外观 / 界面统一 / 界面虚化 / 其他 / 测试项**。\n\n### 1. 背景来源（source）\n\n| 面板文案 | 内部键 | 默认 | 作用 | 关闭 / 回退 |\n|---|---|---|---|---|\n| 启用壁纸引擎背景功能 | `enabled` | 开 | 总开关；关闭即不应用任何背景 | 关 |\n| 上传到 dsh 进程流式播放 | `hybrid` | 开 | 大文件混合模式（上传宿主 → 磁盘 → Range 播放，无 600MB 上限） | 关 = 纯浏览器模式 |\n| mpkg 文件 / 图片 / 视频 / 图片链接 | — | — | 文件选择与 URL 输入（`http(s)` 或 `data:image`） | 「清除壁纸」按钮 |\n| 自定义目录 | `customDirPath` | 空 | 任意目录；可指 workshop 主目录，每个子文件夹识别为一张壁纸 | 清空输入 |\n| 本地壁纸库（Steam 扫描） | — | — | 扫描 WE 安装与创意工坊，导入壁纸与 `config.json` 播放列表 | 重新扫描覆盖 |\n| 轮换（定时自动切换） | `rotate` / `rotateMin` | 关 / 5 分钟 | 到点切换下一个壁纸（1–120 分钟） | 关 |\n| 时段 | `timeOverride` | 自动 | 手动锁定清晨/白天/黄昏/夜晚；按钮只列容器里真实存在的时段 | 点「自动」 |\n| 当前壁纸卡片 | — | — | 预览图、显示名、容器内文件名、类型；暂停/播放、刷新、清除 | — |\n\n### 2. 壁纸设置（wallpaper）\n\n含「壁纸画面」与「省电」两个子分组。\n\n| 面板文案 | 内部键 | 默认 | 作用 | 关闭 / 回退 |\n|---|---|---|---|---|\n| 静音（网页壁纸） | `mute` | 开 | 网页壁纸音频；关 = 放壁纸声音 | 关 |\n| **Now playing（左侧栏「设置」上方）** | `npNowPlaying` | **开** | 左侧栏挂可展开播放器（传输行 = 壁纸声音控制）；**关掉仍是零注入**；同一位置被别的插件占用时自动让位（`data-mpw-np-yield`） | 关 / 恢复默认 |\n| 播放/暂停同时控制壁纸 | `npLinkWallpaper` | 开 | Now playing 的播放/暂停与进度同时驱动壁纸自身；关 = 只驱动本插件播放器（壁纸媒体是唯一声源时控件**如实 disabled**） | 关 |\n| Web 帧模式（网页壁纸） | `webFrameMode` | `auto` | 网页壁纸 iframe 的**三档**：`auto` = 隔离沙箱，被浏览器策略挡住 / shim 没报到时**只在沙箱内降档**（去掉 shim 标记重载，仍是不透明源），**不会自动升同源**（默认）；`sandbox` = 强制隔离，**不**自动降档（原因写进状态，可查）；`compat` = 兼容档（同源 + 不带 shim 标记，**只有用户显式选它才到得了**）。判定表只有一份（`lib/web-wallpaper.js`），状态见 `window.__mpwWebFrame` 与 `#mpw-bgWrap[data-mpw-webframe-mode\\|-reason\\|-attr\\|-fallback\\|-autocompat\\|-degraded]`，台账 `window.__mpwWebFrameGuard`（详见 [docs/WEB-WALLPAPER.md](docs/WEB-WALLPAPER.md) §3.0） | 选 `auto`；也可用 `?webframe=auto\\|sandbox\\|compat` 临时覆盖（不改设置） |\n| 自动降级到兼容档（高风险） | `webFrameAutoCompat` | 关 | **风险回退口**：打开后 auto 档才允许在\"被策略挡住\"时自动降 `compat` —— 那意味着**这张第三方壁纸的脚本与 DSH 同源**（可读宿主界面/本地存储、可带 cookie 打插件路由）。关着时只记账 + 面板提示手动切。判据 `tools/web-frame-origin-guard-test.mjs`（详见 [docs/SECURITY-ROUTES.md](docs/SECURITY-ROUTES.md) F5） | 关 |\n| 渲染器上游白名单 | `sceneUrlWhitelist` | 空 | **跨源回退口**：`sceneRendererUrl`/`sceneExtUrl` 默认只允许 http(s) **回环**（127.0.0.1/localhost/::1）与\"和页面同主机的字面 IP\"；跨源上游必须把它的 **origin** 填在这里（逗号/空格分隔）才会被使用，否则一律拒绝并回落 `127.0.0.1:8902`（记账 + 日志，不静默）。⚠ 登记进来的上游会**连同场景令牌 `st` 一起放行**（详见 [docs/SECURITY-ROUTES.md](docs/SECURITY-ROUTES.md) F6） | 清空 = 只允许回环 |\n| 水平翻转（镜像） | `flipX` | 关 | 壁纸左右镜像 | 关 |\n| 垂直翻转（镜像） | `flipY` | 关 | 壁纸上下镜像 | 关 |\n| 解码帧率上限 | `fpsCap` | 无限制 | 源帧率超限时宿主 ffmpeg 抽帧转码（24/30/48/60） | 选「无限制」 |\n| 分辨率上限 | `resMax` | 原始分辨率 | ffmpeg 缩放（720p/1080p/2K，保持宽高比） | 选「原始分辨率」 |\n| 视频倍速 | `playbackRate` | 1x | 0.5–2x（档位 0.5/0.75/1/1.25/1.5/2） | 1x |\n| ffmpeg 状态 | — | — | 显示系统/缓存/环境变量来源；未装可下载，缓存装的可卸载（不动系统） | — |\n| 可调参数（折叠区） | `propEdits` | 空 | **可改且改完即生效**：mpkg 场景壁纸走 P-203 跨源属性通道（`mpw-user-props`，渲染器回执确认；见 `docs/WE-USER-PROPS.md` §3）；网页壁纸走 shim 同源通道（分辨率/语言/音量等，见下） | 壁纸级重置 |\n| 磨砂模糊 | `blur` | 12px | 壁纸层模糊（0–40） | 0 |\n| 镜头缩放 | `zoom` | 100% | 10–2000% | 100% |\n| 画面亮度 | `brightness` | 100% | 50–150% 滤镜 | 100% |\n| 镜头位置（平移） | `lensX` / `lensY` | 0 / 0 | 水平/垂直平移，各自 ±2000 | 0 |\n| 省电·页面隐藏/切页暂停 | `powPauseHidden` | 关 | `visibilitychange` | 关 |\n| 省电·失焦暂停 | `powPauseBlur` | 关 | `blur/focus` | 关 |\n| 省电·电池供电暂停 | `powPauseBattery` | 关 | `getBattery`；API 缺失静默跳过 | 关 |\n\n### 3. 外观（appearance）\n\n含「透出壁纸」子分组。\n\n| 面板文案 | 内部键 | 默认 | 作用 | 关闭 / 回退 |\n|---|---|---|---|---|\n| 悬浮效果 | `float` | 关 | 左侧边栏/标题栏变悬浮卡片（圆角+阴影+透出） | 关 |\n| 主题颜色 | `themeColor` | 空 | 侧栏/标题栏/新会话/设置弹窗底色 tint（取色盘 + 预置） | 空 = 不启用 |\n| 面板颜色匹配壁纸 | `aquaTint` | 关 | 自动采样壁纸主色作面板底色（视频/GIF 每 2s 刷新） | 关 = 用取色盘 |\n| 配色 | `accent` | 空 | 品牌交互色（按钮/滑条/选中/链接/发送键） | 空 = DSH 默认 |\n| 遮罩自定义色 | `aquaColor` | 空 | 统一雾/面板的自定义色 | 空 = 灰色 |\n| 自定义灰字颜色 | `fontColorGray` | 关 | 灰字走自定义色（配 `fontColorGrayColor`） | 关 |\n| 左侧边栏透出壁纸 | `sidebar` | 开 | 关 = 侧栏纯色不透明 | 关 |\n| 左侧边栏磨砂 | `sidebarBlur` | 关 | 侧栏自身 `backdrop-filter`；弹窗打开时自动摘除 | 关（需先开侧栏透出） |\n| 左侧边栏磨砂程度 | `sidebarBlurAmount` | 14px | 0–40；统一虚化开启时被接管 | — |\n| 标题栏透出壁纸 | `headerBg` | 开 | 关 = 标题栏纯白 | 关 |\n| 标题栏磨砂 | `headerBlur` | 开 | 统一虚化开启时被接管 | 关 |\n| 标题栏磨砂程度 | `headerBlurAmount` | 0% | 白雾厚度 0–100%（默认 0 = 透明） | 0 |\n| 单独调节标题栏磨砂 | `headerFrostOwn` | 关 | 开 = 用 `headerFrostAmount` 覆盖磨砂半径 | 关 |\n| 标题栏磨砂强度 | `headerFrostAmount` | 30px | 0–60 | 0 |\n\n### 4. 界面统一（unify）\n\n| 面板文案 | 内部键 | 默认 | 作用 | 关闭 / 回退 |\n|---|---|---|---|---|\n| 统一虚化 | `unifyTint` | 开 | 整屏模糊感由一个条控制；开启后接管侧边栏/标题栏/右栏磨砂 | 关 |\n| 整屏虚化程度 | `unifyAmount` | 30px | 0–40（控制壁纸层 blur） | — |\n| 界面透明度 | `sidebarAlpha` | 65% | **0% = 完全不透明（正常界面）、100% = 完全透明（看到壁纸）**；同时驱动左栏/标题栏/右栏·dock；与模糊互不影响 | — |\n| 聊天区跟随整屏虚化 | `chatFollow` | 开 | 关 = 聊天区由「磨砂模糊」条控制 | 关 |\n| 新会话按钮跟随面板不透明度 | `sessionFollow` | 开 | 关 = 回到宿主原色 | 关 |\n| 统一雾（全屏遮罩） | `aquaMask` | 关 | 所有表面共享一种雾色（原 Aqua 实验项） | 关 |\n| 统一雾强度 | `aquaMaskAlpha` | 82% | 0–100% | — |\n\n> **两个条的语义（2026-10-02 起口径固定，判据 `tools/fog-model-test.mjs`）**：\n> 「整屏虚化程度」= 模糊半径（**0 = 完全不虚化**）；\n> 「界面透明度」= 整个界面外壳的透明程度（**0% = 完全不透明（正常界面，用宿主自己的表面色）、100% = 完全透明（看到壁纸）**）——\n> 它与模糊**互不影响**：模糊 0 时照样按它透出，只是背后壁纸是清晰的。\n> 另外：**透明度 = 0 时插件完全不覆盖宿主**（不写背景/不写模糊/不动宿主 token）。\n> 两者对**整个界面外壳**生效（左栏/标题栏/右栏/dock 共用同一套表面 token）。\n\n### 5. 界面虚化（blur）\n\n| 面板文案 | 内部键 | 默认 | 程度键 / 默认 | 关 |\n|---|---|---|---|---|\n| 跟随统一虚化 | `blurFollowUnify` | **开** | 开 = 被接管的项（左栏磨砂/标题栏磨砂/右侧边栏·dock）与统一值一致；**其中任一项你自己调过之后就独立**；关 = 全部独立；重新打开 = 清空独立标记 | — |\n| 虚化对话框 | `dialogBlur` | 开 | `dialogAmount` 14px | 关 |\n| 虚化设置面板 | `settingsBlur` | 开 | `settingsAmount` 14px | 关 |\n| 虚化下载/确认弹窗 | `confirmBlur` | 开 | `confirmAmount` 12px | 关 |\n| 虚化弹层 | `popoverBlur` | 开 | `popoverAmount` 10px；另有 `popoverAlpha` 94% 表面不透明度 | 关 |\n| 虚化遮罩（全屏背景） | `maskBlur` | 开 | `maskAmount` 8px | 关 |\n| 右侧边栏/dock 虚化 | `rightSidebarBlur` | 开 | `rightSidebarBlurAmount` 14px + `rightSidebarAlpha` 45%；跟随统一虚化时两项都被接管 | 关 |\n\n### 6. 其他（other）\n\n| 面板文案 | 内部键 | 默认 | 作用 | 关闭 / 回退 |\n|---|---|---|---|---|\n| 轻度锐化 | `sharp` | 开 | 提升低清 GIF 观感；卡顿请关 | 关 |\n| Deep diving 背景方框 | `thinkBg` | 关 | 开 = 思考状态显示模糊背景方框 | 关 |\n| 任务列表磨砂 | `todoBlur` | 关 | todo 卡片背景模糊 | 关 |\n| 第三方 UI 圆角兼容 | `roundCompat` | 关 | 兼容第三方插件圆角 | 关 |\n| 自适应文字色 + 蓝色清理 | `aquaInk` | 关 | 文字色随遮罩亮度自适应 + 品牌色统一（配 `aquaInkColor`） | 关 |\n| 深底文字可读增强 | `aquaTextEnhance` | 关 | 文字双色描边（近似方案） | 关 |\n| ≥4K 源自动降 1080p | `resMax`（自动写 1920） | 自动 | 检测到 ≥4K 且宿主转码可用、且你没设过「分辨率上限」时，自动把该壁纸降到 1080p（每张壁纸一次；`?autocap=off` 关闭；设置里可改回） | `?autocap=off` |\n| 纯 Scene 壁纸渲染方式 | `sceneRender` | — | ⚠ 有按钮、有写入，**无读取点**（未接线） | — |\n| 场景渲染上报（排障） | `sceneReport` | 开 | 壁纸每 10s 把渲染器现场写到 `reports/` | 关 |\n| 场景首帧看门狗 | `sceneWatchdog` | 开 | 超时未出画自动回退静态帧；等待时长 `sceneWatchdogSecs` 8s（3–30） | 关 |\n| 重试渲染器 / 渲染器调试参数 / 扩展钩子地址 | `sceneDebugParams` / `sceneExtUrl` | 空 | 白名单透传（`ln/eye/audit/isolate/parallax/…`）；扩展钩子按 `extbase` 拼进 iframe | 清空 / 一键清空 |\n| 一键诊断上报 | — | — | 收集子系统状态 → `POST /diag`；宿主不可用则下载 JSON | — |\n| 诊断开关速查（渲染器） | — | — | 10 个常用渲染器诊断开关 + 「复制」URL 片段 | — |\n| better-sidebar 适配 | `bsCompat` / `bsFloat` / `bsFont` / `bsReveal` / `bsRevealAlpha` / `bsAqua` | 开 / 关 / 关 / 关 / 62% / 关 | 见上文；仅在检测到 better-sidebar 时显示 | 总开关关 = 全部不生效 |\n| 备份与恢复 | — | — | 导出/导入 `BACKUP_FIELDS` 白名单内的设置（不含当前壁纸与扫描目录） | — |\n| 恢复所有默认设置 / 前往反馈 / 检查更新 | — | — | 重置外观数值；一键更新从 GitHub 拉最新代码 | — |\n\n### 7. 测试项（liquid）\n\n| 面板文案 | 内部键 | 默认 | 作用 | 关闭 / 回退 |\n|---|---|---|---|---|\n| 测试模式总开关 | `lgTest` | 关 | 只保留壁纸 + 悬浮 + 布局，禁用全部外观类 | 关 |\n| 液态玻璃（CSS 版） | `lgCss` | 关 | 纯 CSS/SVG 折射 + 高光（不占 WebGL 上下文，可与场景壁纸共存） | 关 / URL `?lgcss=off` |\n| 折射强度 | `lgCssAmount` | 14px | 0–40（0 = 纯模糊） | — |\n| 输入框 / 左侧边栏 / 标题栏液态玻璃 | `lgComposer` / `lgSidebar` / `lgHeader` | 关 | 各自选择作用目标（JS 打 `[data-mpw-lg-css]` 标记） | 关 |\n| 独立演示页（端口 3081） | — | — | `tools/liquid-demo/` 的 WebGL2 演示页（独立服务，不影响插件） | — |\n\n### 没有面板控件的设置键\n\n这些键**存在且参与逻辑**，但设置页里没有对应控件；只能通过备份导入、`localStorage` 手工改写或 URL 参数触达（`lib/client.js:101-232` 是全部默认值，`tools/switch-wiring-test.mjs:41-64` 是「只影响运行时」的白名单与理由）。\n\n| 键 | 默认 | 说明 |\n|---|---|---|\n| `clock` / `clock24h` / `clockSec` / `clockDate` / `clockPos` / `clockSize` | 关 / 开 / 关 / 关 / `tr` / 40 | 时钟是**运行时兼容项**：旧配置仍会渲染，设置页已无开关 |\n| `bsAlpha` | 关 | better-sidebar 面板跟随主题底色；CSS 有读取点，面板无控件 |\n| `bsBottomAvoid` | 关 | 已定案的**故意空操作**（对齐交给 better-sidebar 自己的 ResizeObserver） |\n| `newStyle` | 关 | 只改设置页控件外观（JS 选 className），不进 `buildCss` |\n| `forceEnabled` | 关 | 冲突检测下手动强开的运行时优先级标记 |\n| `opacity` | 82 | 「面板不透明度」滑条已删除（统一虚化下由 `sidebarAlpha` 取代）；值仍被读取（`lib/client.js:5887`、`:5981`） |\n| `aquaTintStrength` | 45 | 面板取色的壁纸主色混合比例；运行时读取（`lib/client.js:5575`），无控件 |\n| `glassColor` / `glassAlpha` | 空 / 12 | 早期 WebGL 液态玻璃的遗留键：只随备份导出/导入与「恢复默认」走动，**无控件、无读取点**（`lib/client.js:11968`、`:11986`） |\n| `webInteraction` | `pointer` | 网页壁纸交互档位（`off`/`pointer`/`full`）：**无面板控件**，用 URL `?mpwinteract=…` 或写存档 |\n| `sceneRendererUrl` | `http://127.0.0.1:8902/webloader/` | 场景渲染器地址，可覆盖（默认 = 一站式测试台 :8902 自己直供的 `/webloader/`；旧默认是 `:8899`，2026-09-25 改） |\n| `npVolume` | 100 | Now playing 卡片里的**音量电平**（0..100，落到真实元素）；默认档**从不写元素音量**，只有你动过才写 |\n| `glassWindow` | — | **已退役删除**（2026-09-19）：无控件、无读取点，功能已被 `settingsBlur` + `dialogBlur`/`popoverBlur` 覆盖；源码与 zh/en 字典 0 残留 |\n\n## Now playing 与壁纸声音\n\n这节说明左侧栏那个播放器**挂在哪、显示什么、能控什么**——它控制的是壁纸自己的声音。\n\n> 定位口径：本节按**符号名**引用实现（`lib/now-playing.js` 的 `resolveAnchor` / `shouldHide` / `occupantOf` / `PlayMark` / `markYield`，`lib/now-playing-math.js` 的 `opsX` 等，`lib/client.js` 的 `npResolveMedia` / `npActiveVideo` / `npAudioScope` / `npApplyMute` / `applyNowPlaying`）——**行号会随版本漂移，以符号为准**。形态是「源 + 生成内联」：`lib/now-playing-math.js` + `lib/now-playing.js` 由 `tools/build-now-playing.mjs` 逐字节内联进 `lib/client.js` 的 `MPW-NP-GEN-START/END` 生成区。\n\n- **挂载点**：宿主 slot `sidebar.footer.action`（`lib/client.js` 里 `createSlotAction` 的注册项：`id:\"mpw-now-playing\"`、`order:60`）。拿不到 slot 时 `resolveAnchor()` 按模式降级：`slot` → `settings-slot`（宿主设置格子之前）→ `settings-area`（`[class*=\"settingsArea\"]` 之前）→ `foot`（`[class*=\"footArea\"]` 首位）；一条都不成立就**不建任何节点**并打一行 `console.warn`。**锚点晚出现也照样挂上**：找不到落点时盯住文档，宿主 slot 出口渲染出来后自动补挂（旧写法只 warn 就 `return` ⇒ 真机切壁纸后控件再也不出现）。\n- **让位（默认开的配套）**：`occupantOf(container, mode, selfNode)` 逐个看容器子节点，放行三类——我们自己的节点、宿主自有节点（slot 出口 / 设置格子）、实质空节点；剩下第一个即算「占用者」⇒ 不挂（挂载前）或撤下（挂载后，`MutationObserver` 且 `subtree:true`），写 `data-mpw-np-yield=\"foreign-occupant\"` 并打一行可读 warn；占用者走了会自己回来。判据是**双向**的：我们自己的节点与宿主的格子都不许被误判成占用者。\n- **左侧栏收起即隐藏**：`data-mpw-np-hidden` + CSS `display:none`。判据以**物理宽度优先**（`shouldHide(width, hostCollapsed)`：量到 ≥ `NP_COLLAPSE_MAX_W = 96` 就不隐藏），宿主信号（slot `wide` / `data-sidebar-collapsed` / 根类名 `collapsed`）只在宽度**量不到**时兜底；锚点搬动后做**一次性**补判。宽度不够时整体按 `--mpw-np-fit = clamp(avail/260, 0.5, 1)` 缩放，`avail` 量的是**我们自己的容器**（不是 `[class*=\"sidebarCol\"]`——真机上同类名不止一处）。\n- **形态**：一颗胶囊展开成卡片——封面（当前壁纸缩略图）、标题/副标题、进度条 + 时钟、整块点击热区。**展开态四个键**：上一首 / 播放-暂停 / 下一首 / 静音-取消静音；**收起态三个键**——静音键随卡片出现，因为收起态的传输行是按 `opsX(0) = 206` 的 88px 三键行定位的，硬塞第四键会溢出右边距。展开是自停的 0→1 补间（无常驻 rAF）；播放/暂停**不是换图标**，而是那对八点四边形，形状由**播放状态自己的补间**（`mark`：0=暂停 1=播放）驱动，形变进度 `p` 只管尺寸/位置。\n- **数据源**（`npResolveMedia`：**只报我们真的知道的东西**）：\n\n| 当前壁纸 | NP 显示 | 能控什么 |\n|---|---|---|\n| 视频壁纸（当前**真的在放**的那个 `<video>`） | 真实播放状态 + 时长/进度；明确知道没有音轨时副标题写「该视频没有音轨」 | 播放 / 暂停 / 静音-取消静音（判断不了有没有音轨时**不猜**，静音键照给）；**没有曲目清单 ⇒ 上一首/下一首如实 disabled** |\n| 壁纸目录里**真实存在**的音频文件（自定义目录 / 库 / 场景目录） | 文件名 + 清单序号；进度与时长来自媒体元素 | 我们自己的 `<audio>`：播放 / 暂停 / **上一首·下一首按清单顺序环形切换**（只有一条 ⇒ 两侧键 disabled）/ 静音 |\n| 网页壁纸（目录里没有独立音频） | 副标题写「网页壁纸声音」 | **只有静音**这一条通道（`canPlay=false`，不假装能暂停帧内 WebAudio） |\n| 无源（静态图 / 清单还没到 / 场景无独立音轨） | 空闲态（曲名 = 未在播放） | 不显示\"点了没用\"的键；点播放给出面板提示 + console 一行，**不做假动作** |\n\n- **两个新控制（NP-4）**：① **音量电平** —— 卡片里的音量条，设置键 `npVolume`（0..100），真的落到元素；默认档**从不写元素音量**，只有你动过才写；② **可拖动进度（seek）** —— 拖进度条即定位。两者都受下面这个开关管辖。\n- **「播放/暂停同时控制壁纸」（`npLinkWallpaper`，默认开）**：开 = 传输键与进度条**同时**驱动壁纸自身的播放/进度（默认开 = 与改动前逐字节同行为）；关 = 只驱动本插件自己的播放器，壁纸媒体**一个字节都不碰**；壁纸媒体是唯一声源时控件**如实 disabled** 并在副标题说明（`np.note.linkOff`）。\n- **做不到的**（明确列出，不做假动作；`docs/NOW-PLAYING-DSH.md` §7.7.7 与 §7.8）：没有系统媒体源（那是 `lib/media-session.js` 的事，且尚未接线）；web 壁纸帧内那份声音**只有静音**，它自己的播放/暂停做不到；视频壁纸没有上一首/下一首；**静音键只在展开态出现**（要取消静音先展开卡片 —— 几何取舍，不是坏键）；心形按钮不渲染；没有波形、没有键盘快捷键；包里（`scene.pkg`）的音轨**只能列清单、不能播**（`np.note.pkgListOnly`）；进度条可拖动，但**联动关掉或没有可定位媒体时如实不可拖**（`np.note.noseek`）。「壁纸自己也播同一首」的叠音组合**没有真机样例可验**（已做的防护：我们放音时强制静音帧内）。\n- **回退**：把 `npNowPlaying` 关掉（或「恢复所有默认设置」）⇒ 回到零注入（不建 DOM、不装观察者、产物里一行 NP 规则都没有）。回归：`node tools/now-playing-test.mjs`（**83 通过 / 0 失败**，含 7 组变异）+ `node tools/np-media-test.mjs`（**82 通过 / 0 失败**，含 12 组变异自证；`--no-mutations` 时主体 70 条），两条都已接入 `tools/check.sh` 第 2 步。真机探针（需 `:3080` + headless Firefox，不入常驻门禁）：`node tools/np-sidebar-live-probe.mjs`（12 条判据）与 `node tools/np-media-live-probe.mjs`（修前 16 PASS / 22 FAIL → 修后 45 PASS / 0 FAIL）。\n- **归属**：组件为 **Bencho 的 \"Now playing\"（MIT）逐行移植**（注释原文保留）；侧栏挂载控制器、让位判据、自绘图标、token 映射、数据接入与门禁是本仓自写。登记见 `THIRD-PARTY.md` §6。\n\n## 系统媒体会话（MPRIS / SMTC）\n\n这节说明「显示系统正在播放什么」这条链路的**宿主半边**：能力矩阵、诚实不可用路径，以及当前接线状态。\n\n`lib/media-session.js`（1052 行，MIT，本仓自写，零第三方代码）是「Now playing 显示**系统**正在播放什么」这条链路的**宿主半边**。契约：`createMediaSession({run, platform, env, now, timeoutMs, log})` → `{probe(), snapshot(), control(op,arg), stats(), lastProbe()}`（`lib/media-session.js:22-40`）。\n\n**能力矩阵**\n\n| 平台 | 通道 | 适配器（按优先级） | 元数据 / 状态 / 进度 / 封面 | 控制 |\n|---|---|---|---|---|\n| Linux / FreeBSD / OpenBSD | MPRIS over D-Bus（`org.mpris.MediaPlayer2.*`） | `playerctl` → `dbus-send` | 一次调用取 7 个字段：`status / mpris:length / position / xesam:title / xesam:artist / xesam:album / mpris:artUrl` | `play` `pause` `playpause` `next` `prev` `seek` |\n| Windows 10/11 | SMTC（`GlobalSystemMediaTransportControlsSessionManager`） | `smtc`（`powershell.exe -NoProfile -NonInteractive`） | 真 WinRT 调用取属性 / 时间线 / 播放控制 / 缩略图（转 base64 data URL） | 同上（op 与位置作为独立 argv 元素下发） |\n| macOS | — | — | ❌ 未实现：`unsupported-platform`，**0 条命令** | ❌ |\n| 其它 / 无适配器 | — | `none` | ❌ `not-installed` | ❌ |\n\n- **形状**：`snapshot` 21 个键**恒在**，拿不到就是空/中性值（`duration`/`position` 单位毫秒，拿不到是 `null`，**不编 0**）；`available:true` 时 `title` 非空（`lib/media-session.js:42-56`、`:220-244`）。\n- **没有桌面会话总线时如实显示不可用**：`probe()` 会真的探测（`dbus-send --session ListNames`，必要时退 `busctl --user list`），拿不到就回 `available:false / reason:'no-session-bus'`，并在 `detail` 里写「总线不可达（via dbus-send）：…」（`lib/media-session.js:684-706`、`:775-783`）。这条是**推导出来的，不是硬编码**——本机（无桌面环境的容器/Termux）实测就是这一路。\n- **绝不抛异常**：`snapshot()` / `control()` 永不 reject；失败全部是返回值（`reason` 落在 15 个取值内：`unsupported-platform / disabled-by-env / not-installed / no-session-bus / no-player / no-metadata / empty-output / unparsable / timeout / not-available / bad-op / bad-arg / bad-player / error`）。\n- **安全**：命令名与参数**分开传**（argv 数组，从不经过 `sh -c`）；播放器名白名单 `/^[A-Za-z0-9_.-]{1,64}$/`，不合规 ⇒ `bad-player` + 0 条命令；`op` 白名单 + `seek` 范围 `0..24h`；超时默认 800ms（50–5000ms）；读操作单飞 + 全局串行（同一时刻最多一条命令）。\n- **零依赖**：只用 `node:child_process`；`package.json` 里没有新增任何依赖。\n- **环境变量**：`MPW_MEDIA_ADAPTER`（强指适配器）、`MPW_MEDIA_PLAYER`（钉播放器名）、`MPW_MEDIA_TIMEOUT_MS`。\n\n### 宿主路由的来源闸门（P-204，2026-09-27）\n\n插件挂在 DSH 宿主上的路由此前**零鉴权、零 Origin 校验**，`/raw` 还会对**任意 Origin** 回显 `Access-Control-Allow-Origin` +\n`Allow-Credentials: true` ⇒ 任意网页可以「盲改自定义目录 → 跨源读回本机文件」。现在：\n\n- **三处 ACAO 回显白名单化**（`/raw`、场景音频、缩略图上报，外加 `/lg` 静态 JS）：只放 `Origin: null`（沙箱帧）\n  与 `http://127.0.0.1:3080|8899|8902`（含 `localhost`）；非白名单**一个 `Access-Control-Allow-*` 都不发**；\n- **非 GET 写请求过闸门**：`Sec-Fetch-Site`（有则必须 `same-origin`/`none`）+ `Origin` 白名单；`/scene-thumb-token`\n  与 `/settings` 连 GET 也过闸，且**令牌只签给本机真实存在的场景**、不透明源不能自签；\n- **`/custom-dir` 拒敏感目录**（点开头的路径段、家目录自身、系统目录）；**`/raw` 的 `file` 有扩展名白名单**\n  （容器/图片/视频/音频/json）；\n- **回退口**（默认关，排障用）：`MPW_CSRF=0`、`MPW_CORS_LEGACY=1`、`MPW_CORS_ORIGINS=a,b`、\n  `MPW_CUSTOM_DIR_ALLOW_ANY=1`；`GET /api/mpkg-wallpaper/security` 只读播报当前生效值。\n\n完整规格（漏洞 → 修法 → 回退口 → 判据 → 未验证边界）见 [`docs/SECURITY-ROUTES.md`](docs/SECURITY-ROUTES.md)，\n判据 `node tools/sec-route-guard-test.mjs`（45 断言，含审计那条攻击链的修前/修后对拍）。\n\n### 网页帧同源逃逸 + 可控上游（P-205，2026-09-28）\n\n审计里剩下的两条（当时 `lib/client.js` 被并行线占用 ⇒ 留给本轮）：\n\n- **F5 网页壁纸同源逃逸**：改前入站只校验 `ev.source === frame.contentWindow`，而两条自动兜底\n  （2.5s shim 没报到 / 帧内上报\"策略类错误\"）会把 iframe 的 `sandbox` 换成含 `allow-same-origin` 的\n  兼容集 ⇒ **作者页一条 `postMessage` 就能把第三方脚本升到与 DSH 同源**。现在：自动降档落点恒为\n  沙箱档（`allow-scripts`，不透明源）；入站消息**同时**校验 `ev.origin` 与\"这个帧应有的来源\"\n  （按我们自己写的 `src`/`sandbox` 推导；不符即拒收并记账）；`compat` 只能由用户显式设置，\n  风险回退口 = 设置项 `webFrameAutoCompat`（默认关，打开时台账标 `risk:\"same-origin\"`）。\n- **F6 可控上游 + `st` 下发**：改前 `sceneRendererUrl`/`sceneExtUrl` 读到什么就拼进渲染器 iframe，\n  宿主签发的场景令牌 `st` 也随 `pkgurl` 一路下发。现在：设置里的外链只认 http(s) **回环** /\n  \"与页面同主机的字面 IP\" / **显式白名单**（设置项 `sceneUrlWhitelist`）；`st` 只在目标过闸门时下发；\n  非法目标一律拒绝使用（回落默认回环）+ 记账（`window.__mpwSceneUrlGuard`）+ `console.warn` + `/diag` 信标。\n\n判据（都注册在 `tools/check.sh` 第 5 步，各自带**变异自证**子进程）：\n`node tools/web-frame-origin-guard-test.mjs`（45 断言：伪造 policy 错误/来源不符 ⇒ 不降档且记账、\n显式 `compat` 零回归、回退口打开才降 compat、3 组变异必红）与\n`node tools/scene-url-token-guard-test.mjs`（41 断言：回环带 `st` / 跨源拒绝且 URL 里 0 处攻击者源 /\n白名单放行带 `st` / 同主机字面 IP 口径 / 非 http(s) 拒绝 / 4 组变异必红）。\n本仓**没有新增 env / URL / localStorage 开关**（两个回退口都是设置项）⇒ 渲染器仓\n`tests/diag-flag-check.mjs` 的双向比对读数不变（0/0）。\n\n⚠ **接线现状（如实）**：该模块**尚未接进插件**——`lib/index.js` / `lib/client.js` / `tools/build-bundle.mjs` 都没有 import 它，也没有 `/media-session`、`/media-control` 之类的宿主路由，所以 **Now playing 控件显示的仍是「壁纸自己的媒体」，不是系统播放器**。宿主路由与 UI 展示已在 [`docs/MEDIA-SESSION.md`](docs/MEDIA-SESSION.md) §9/§10 规划但标注为未做。判据：`node tools/media-session-test.mjs`（95 断言 = 89 主体 + 6 变异自证），**目前未接入 `tools/check.sh`**。\n\n## 诊断与排障\n\n出问题先来这里：一次点击把状态发回本机宿主；只有需要缩小范围时才打开个别诊断开关。\n\n### 插件侧（本插件自己的开关）\n\n- **一键诊断上报**（「其他」tab）：把磨砂/侧栏/时间线是否被影响、壁纸类型与路径、shim 是否注入、视频解码、表面 token、场景健康打成一个 payload → `POST /api/mpkg-wallpaper/diag`，落在 `~/.dsh/.dsh-mpkg-wallpaper/diag-<epochms>.json`（`lib/index.js:1605-1620`；目录上限 50 个文件 / 32MB，`lib/index.js:1523-1524`；客户端单份上限 512KB）。**宿主不可用时自动改为下载 `mpw-diag-<ISO>.json`**，离线也能把状态发回来。字段表带 `provenance`，读不到就是 `value:null + degraded`（[`docs/DIAGNOSTICS.md`](docs/DIAGNOSTICS.md)）。\n- **后台自动上报**：开关是 **`localStorage['mpwdiag']='1'`**（不是 URL 参数——DSH 鉴权 303 会剥掉 query，`lib/client.js:4953-4957`），刷新后在载入 6 秒时上报一次（每会话 ≤6 次）；`window.onerror` 走同一采集器。\n- **插件侧 URL 逃生口**（刷新即生效，不改设置）：\n\n| 参数 | 作用 |\n|---|---|\n| `?hdrfrost=legacy\\|off` | 标题栏磨砂：旧门控 / 彻底关 |\n| `?hdrblur=pseudo\\|element` | 磨砂载体：伪元素 / 元素层对照 |\n| `?railink=off` | 关右侧时间线条的反色补偿 |\n| `?sbfill=wide` | 恢复旧的全局侧栏底色覆盖 |\n| `?lgcss=off` | 一键回退液态玻璃 |\n| `?mpwtranscode=legacy\\|aggressive` | 视频转码：回旧行为 / 连用户设的上限也先探测 |\n| `?mpwinteract=1\\|on`（自动进入交互）/ `off\\|0\\|pointer\\|full`（仅改档位，不自动进入） | 网页壁纸交互 |\n| `?mpwstore=0\\|mem` | 关帧内存储 facade / 只留内存不落盘 |\n| `?mpwpersist=legacy` | 设置持久化回旧行为 |\n| `?bgwrapfix=legacy`、`?hdrfrostwatch=off` | 壁纸层可见性 / 磨砂看门狗 |\n| `?hiddengate=legacy` | **隐藏闸门整族回旧行为**（后台挂载/冻结/切页时不再拦我们的起播与重试；A/B 与线上救急用。默认档＝页面隐藏时一律不起播、隐藏时停住所有我们的出声面、回到可见按当时策略恢复；详见 [`docs/WALLPAPER-LIFECYCLE.md`](docs/WALLPAPER-LIFECYCLE.md) §6.4） |\n\n### 渲染器侧诊断开关（纯 Scene 壁纸）\n\n这两个数字口径不同，别混：\n\n- **主表共 158 个开关**，在**渲染器仓**的 [`we-scene-demo/docs/README-DIAGNOSTICS.md`](../we-scene-demo/docs/README-DIAGNOSTICS.md)（由 `diag-flag-check.mjs` 生成、与 `web/diag-flags.json` 对拍）。\n- 插件面板里只放**常用/逃生口那一张小表**（10 个，`common:true` 集合），拼在渲染器地址后面用，例如 `http://127.0.0.1:8902/webloader/?id=3719111841&audit=3`：\n\n| 开关 | 用途 | 默认 |\n|---|---|---|\n| `att=legacy` | 附件锚点走旧自算路径（A/B 对照） | 新路径 |\n| `mcc=1` | 强制网格包围盒中心补偿 | 关 |\n| `piv=1` / `piv=0` | 子网格 pivot 全开 / 全关 | 只对眼睛组合生效 |\n| `align=0` | 复现旧对齐（origin 恒几何中心） | 官方对齐 |\n| `parallax=legacy` | 鼠标视差退回旧近似式 | 官方公式 |\n| `audio=1` | 播放场景 sound 层（每层一条流） | 静音 |\n| `whitefallback=0` | 缺纹理层改透明 | 白块（与官方一致） |\n| `hier=0` | 放弃父链合成，回退绝对定位兜底 | 父链合成 |\n| `isolate=<层名>` | 只保留名字含关键词的层可见（逗号分隔） | 全可见 |\n| `audit=N` | 首帧逐层审计 N 帧 | 1 |\n\n> 这些是**渲染器**的 URL 参数，不是本插件的设置；插件只负责把它们拼进场景 iframe（`lib/client.js:13981-14000`、`lib/client.js:3163`）。面板文案与离线副本必须与 `diag-flags.json` 的 `common` 集合一致，由 `tools/panel-smoke.mjs` 断言（`tools/panel-smoke.mjs:316-372`）。\n\n## 兼容性、限制与做不到清单\n\n这节把「什么环境能用、什么规模能用、什么做不到」集中在一处；类型各自的边界在上一节，网页壁纸与 Now playing 的做不到清单在各自小节。\n\n### 浏览器兼容性（实测参考）\n\n| 浏览器 | 推荐度 | 表现与注意 |\n|---|---|---|\n| Chrome / Chromium（桌面） | ⭐⭐⭐ 强 | 功能最完整：`backdrop-filter` 与 `color-mix` 实现最佳、`iframe.muted` 生效、muted 自动播放放行 |\n| Edge（桌面） | ⭐⭐⭐ 强 | 视频壁纸走**独立 canvas 渲染路径**（规避 Edge 悬浮工具栏，`lib/client.js:1464-1520`）；个别版本仅有首帧静态（非空白/崩溃） |\n| Firefox | ⭐⭐ 中 | 功能全支持（`backdrop-filter` 103+、编码不支持自动转码兜底）；有三点减分，见下表后的说明 |\n| Android WebView / 移动端 | ⭐⭐ 中偏弱 | autoplay 政策取决于宿主 WebView 配置；`getBattery` 可能缺失（有守卫跳过）；极端组合建议静态图/GIF 或关 blur |\n\n> **Firefox 的三点减分**：① `backdrop-filter` 性能弱于 Chromium（多模糊同开时低端机掉帧）；② `iframe.muted` 不支持 ⇒ 有声 web 壁纸首次可能被自动播放策略拦停首帧；③ `color-mix` 需要 113+（旧版只有外观回退）。\n> 源码已为各浏览器做了降级（无 `requestVideoFrameCallback` 回退 rAF、`ResizeObserver`/`getBattery` 有守卫、全部 `play()` 带 `.catch`、`backdrop-filter` 用 `CSS.supports` 检测并降级）。\n\n### 没有 Wallpaper Engine 安装时（缺失 / 非 Windows）\n\n「WE 安装」指 Steam 版 Wallpaper Engine（appid **431960**）。宿主端 `locateWallpaperEngine()`（`lib/index.js:311-399`）按这个顺序找：Windows 注册表 `HKCU\\Software\\Valve\\Steam\\SteamPath` → 常见 Steam 目录 → 非 Windows 的 Steam 目录（macOS `~/Library/Application Support/Steam`、Linux/Android `~/.local/share/Steam`、WSL `/mnt/c/...` 与按盘符枚举的 `/mnt/d`…`/mnt/z`）→ 各库 `steamapps/libraryfolders.vdf` 里含 431960 的库 → 只认 `<库>/steamapps/common/wallpaper_engine/wallpaper32.exe` 存在的那一个。**找不到就返回 `null`**，后续走降级路径：\n\n| 场景 | 真实行为（含代码位置） |\n|---|---|\n| 没装 WE（或找不到 `wallpaper32.exe`） | `steam-inventory` 返回 **200 `{ok:true, installDir:null, wallpapers:[]}`** —— 不是错误、不抛 500（`lib/index.js:3120-3180`） |\n| 点「扫描本地壁纸库」 | 列表空 + 顶部报错条「未检测到壁纸引擎安装」（`lib/client.js:8781`/`:11555`）；空列表另有「未发现可用的壁纸」。**扫描本身不报错** |\n| 装了 WE 但素材目录都不存在 | 每个根目录单独判存在 ⇒ 清单为空、**且不弹「未检测到安装」**；界面只剩空提示。**未实现**：这种情况没有专用提示 |\n| 非 Windows / 移动端 | 同\"没装 WE\"（注册表分支直接在非 win32 返回 null）；探测串都是纯字符串，无副作用 |\n| WE 原生播放列表 | 只在 `installDir` 存在且 `config.json` 可解析时才有；否则写 `rotSeeded:true` 并**不再重播种**（`lib/client.js:8782-8793`） |\n| **没装 WE 时仍然可用的** | 手动目录、直接导入、URL/本地文件、场景提取与诊断都不依赖 WE —— 逐条见下 |\n| 宿主端整体不可用（方式四没装/端口不通） | 探测 `/ping` 失败 ⇒ 回退**纯浏览器模式**（`lib/client.js:10203`/`:11603`）；超过 600MB 的素材无法处理 |\n| `ffmpeg` 缺失 | `ffmpeg-check` 返回 **200 `{ok:true, found:false, …}`**（`lib/index.js:3245-3259`）；面板显示\"未安装\"，只在点按后才走下载链，可直读的视频不转码 |\n\n**没装 WE 时仍然可用的**：① 手动选目录（`/list-dirs` + `/custom-dir`）；② 直接导入 `.mpkg`（hybrid 无 600MB 上限）；③ 网页/视频壁纸走 URL 或本地文件；④ 场景提取、音频清单、设置持久化、诊断上报都不依赖 WE。\n\n> 一句话：**没有 WE 安装 = 少了\"自动发现本地壁纸库\"这一条便利通道**，插件照常工作；所有降级都是\"返回空清单 + 明确文案 + 保留手动目录/上传通道\"，不静默失败、也不报 500。\n\n## 场景（Scene）壁纸适配现状\n\n**结论先说：WE 场景壁纸无法在 Web 端完整还原，这是引擎层面的限制。** 场景由专有引擎渲染——Live2D 式**木偶骨架（.mdl 二进制）**、**shader 特效**、**脚本**；浏览器没有官方渲染器，格式也未公开（RePKG 只逆向过 PKG/TEX，MDL 骨架无公开文档；开源方案 [we-layerd](https://github.com/Aromatic05/we-layerd) 打包了官方渲染器但仅限 Linux Wayland 桌面）。\n\n插件提供两条路径：\n\n1. **外部渲染器 iframe（首选）**：本机渲染器（默认 `http://127.0.0.1:8902/webloader/`，旧默认 `:8899`）在线时，场景以 iframe 挂载（`lib/client.js:3133-3190`）。渲染器离线/首帧超时则由**看门狗**回退静态帧并在提示条说明，可手动「重新挂载渲染器」。渲染器地址可用 `sceneRendererUrl` 覆盖。\n2. **容器内素材提取（兜底，`lib/pkg-extract.js`，MIT，采用自 [elysia395/dsh-wallpaper-engine](https://github.com/elysia395/dsh-wallpaper-engine)）**：\n   - **静态帧**：解析 PKG（LZ4 解压）+ TEX 纹理解码，按\"面积 × 格式权重 × 路径惩罚\"选主纹理（`lib/pkg-extract.js:1422-1491`）\n   - **图层合成**：解析 `scene.json` 的全部 image 图层，按源坐标/尺寸在 canvas 上合成（最多 24 层，`lib/pkg-extract.js:1734-1829`）\n   - **内嵌视频时段**：`scene.pkg` 与 mpkg 同为 PKG 容器，含内嵌视频纹理的时段按 mpkg 方式解析 → 多时段切换（索引先行，只读目录表 + 候选项前缀）\n\n**无法覆盖的**：MDL 木偶人物（纹理层几乎为空）、shader 波浪/粒子、脚本交互。这些回退**官方预览动图**（preview.gif）。\n\n**格式与上限**（`lib/pkg-extract.js`）：PKG 魔数 `PKGV####`、条目 ≤1 048 576；TEX `TEXV0005` + `TEXI0001`，mipmap 容器 `TEXB0001`–`0004`，GI F 帧表 `TEXS0001`–`0003`；可解码像素格式 = RGBA8888 / R8 / RG88 / DXT1 / DXT3 / DXT5（内嵌 JPEG/PNG 直通），其余抛出 `unsupported format`；尺寸上限 16384、mip ≤32、帧数 ≤4096；静态帧缓存 96MB / 单帧 24MB / 64 条，图层缓存 256 条 / 128MB。\n\n> 需要完整动态效果的现实路径：**外部渲染成视频 → 用本插件的视频壁纸功能**（Windows 用 WE 官方版录屏、Linux 用 we-layerd 录屏、移动端用壁纸引擎 App 录屏）。\n\n### 渲染可行性：为什么浏览器做不到\n\n- 完整场景（含 Live2D 木偶）只能由专有渲染器完成：壁纸引擎 App 的原生库（内嵌 Chromium + 专有 puppet 渲染）；开源方案 [we-layerd](https://github.com/Aromatic05/we-layerd)（Rust）打包了官方渲染器，但**仅限 Linux Wayland** 桌面\n- 浏览器端没有成熟的 WE 场景渲染器——**与操作系统无关，任何浏览器都无法直接渲染 Live2D 场景**；官方渲染器 `.so` 为闭源二进制，无源码无法编译成 WASM\n- 本插件的可行路径：**外部渲染器 iframe（首选）+ 静态帧提取 + 图层合成 +（时间变化的）mpkg 方式时段切换**；需要完整动态时用「外部渲染成视频 → 视频壁纸」方案\n\n## 网页壁纸（Web，实验性）\n\n这节说明网页（HTML）壁纸怎么加载、怎么隔离、能改哪些设置，以及明确做不到的部分。\n\n- **类型判定按内容，不只看声明**：`detectWebWallpaperKind()` 返回四态 `web / scene / video / unknown`，`project.json` 的 `general.type` 只是线索——谎报 `web` 但目录里是 `scene.pkg` 的按**场景**处理，谎报 `scene`/`video` 但只有 `index.html` 的按**网页**处理；`application/exe/app` 一律 `unknown/excluded-application`（`lib/web-wallpaper.js:163-207`）\n- **两条加载模式**（确认弹窗里选，模式记在 URL 里，刷新后照旧）：\n  - **沙箱模式（默认，推荐）**：`sandbox=\"allow-scripts\"`（**不透明源**）。宿主在入口 HTML 的 `<head>` 最前注入 **WE API shim**，`?mpwshim=1` 是注入闸门。壁纸脚本**读不到宿主 DOM / `localStorage` / cookie**；帧内 `fetch()` 是跨源（`Origin: null`），宿主只对字面量 `null` 回 CORS 头（`lib/web-wallpaper.js:84`、`:529-537`）\n  - **兼容模式（同源）**：`allow-scripts allow-same-origin allow-pointer-lock`，等价于改动前的裸 iframe。Live2D 类的「网页壁纸选项」（分辨率/语言/音量，写同源 `localStorage`）需要它\n- **WE API shim（10 个全局，注入在作者脚本之前）**：`wallpaperPropertyListener`、`wallpaperRegisterAudioListener`、`wallpaperRegisterMedia{Properties,Thumbnail,Playback,Timeline,Status}Listener`、`wallpaperRequestRandomFileForProperty`、`wallpaperMediaIntegration`、`wallpaperPluginListener`（`lib/web-wallpaper.js:540-551`、`:498-517`）\n- **存储持久化**：帧内 facade（真 `localStorage` 一读就抛时安装）+ 宿主 `POST/GET /api/mpkg-wallpaper/web-store`，按壁纸隔离（`sha1(label|wallKey|relFile)` 前 12 位）；上限 64 键 / 单值 4096 字符 / 每壁纸 64KB / 最多 64 张壁纸，落 `~/.dsh-mpkg-wallpaper/web-store.json`\n- **风险预检**：`⚠重动画`（目录里有 `.skel/.atlas` 或名字含 spine/live2d，深度 ≤3）与 `🌐外网`（入口 HTML 前 256KB 含 `http(s)://`），只在 `type === \"web\"` 时显示（`lib/index.js:1937-1953`、`lib/client.js:12867-12868`）\n- **CSP**：命中阻断型 CSP 时**不注入** shim、回原字节并加 `x-mpw-shim-skipped: csp`（`lib/web-wallpaper.js:424-439`，这一处**照抄**上游 `web-rewrite.ts:26-43`，MIT，登记在 `THIRD-PARTY.md` §5）；客户端 2.5 秒没收到 ready 则去掉标记**在沙箱档内**重载一次（`sandbox` 属性保持 `allow-scripts`，**不**自动升同源；①P-205 F5）\n- **交互模式**：壁纸层是背景层（不吃指针），点右下角「交互」按钮或 URL `?mpwinteract=1` 后，指针/滚轮/触摸（`full` 档再含键盘与文本输入）会被送进壁纸内的作者脚本；**一定会退出**——60 秒无操作 / 180 秒总时长 / `Esc` / 右上角「退出交互」/ 切换壁纸。⚠ **窗口失焦不会退出**（只释放按键、发 `op:\"blur\"`，`lib/client.js:2732-2769`）；`?mpwinteract=full` 只改档位、**不自动进入**，自动进入只认 `1|on`。交互**不放宽沙箱**（仍只要 `allow-scripts`）、**不读帧内 DOM**；`F5/F11/F12/浏览器前进后退刷新`、`Tab`、`Backspace`、`Ctrl/Cmd+R/W/T/N/Q/L/P` 被拦下\n- **作者脚本报错不拖垮插件**：帧内 shim 兜住 listener 异常 / 全局 `error` / 未捕获 Promise，限流上报父页（`console.warn` + `/diag`）\n- **已知限制**：音频频谱通道仍为空（WE 的频谱语义是**系统音频**，拿壁纸自身声音当频谱是语义造假，故不伪造）；媒体通道已实现但未接系统媒体会话；`innerHTML` 里拼出来的 `file:///` 不覆盖；绝对系统路径映射不了；被导航到外部的页面拿不到 shim\n\n> 细节（类型判定表、sandbox 逐项理由、shim API 表与控制协议、交互注入方案与安全边界、文件 URL 改写、错误边界、与参考实现的差异清单）：[`docs/WEB-WALLPAPER.md`](docs/WEB-WALLPAPER.md)。\n> 回归：`node tools/web-wallpaper-test.mjs` + `node tools/web-interaction-test.mjs`（都在 `tools/check.sh` 第 5 步）。\n\n## 可调参数与网页壁纸的设置接入\n\n这节说明壁纸自带的参数在插件里能读到什么、能改什么。\n\n- **mpkg 壁纸**：项目自带的**可调参数**在「壁纸设置 → 可调参数」折叠区**可改且改完即生效** —— 场景壁纸由浏览器里的场景渲染器出画，改动走 P-203 跨源属性通道即时下发（渲染器回执确认，见 `docs/WE-USER-PROPS.md` §3）；静态帧/视频类 mpkg（浏览器只有预渲染素材）的画面仍要等下次应用才可能反映\n- **网页壁纸（部分已接入，Live2D 立绘类）**：含 `loadJson.json` / `SettingModel` 的网页壁纸，其设置项已接入**同一个折叠区**：分辨率（2k/4k/8k，重载生效）、语言（按壁纸实际提供）、背景音乐与语音音量（实时）、显示触摸区域框/文本框等开关。改动写入壁纸 iframe 的存储（沙箱模式下走 facade → `/web-store`），重载生效。\n- **隐藏壁纸自带设置面板**：这类壁纸右上角自带「设置」按钮且无法交互，插件在 iframe 加载后自动隐藏它，防挡住画面。\n- **未适配的**：依赖外网 SDK / 特殊交互逻辑的网页壁纸，其内置设置项尚未接入，插件内的可调参数不可用（可正常显示）。\n\n> 这些按钮只在识别到对应壁纸的设置结构后出现；普通图片/视频/无设置项的网页壁纸不显示。\n\n## 性能与稳定性\n\n这节是**已经做过的优化与它们换来的数字**，也是排查「卡 / 慢 / 占内存」时的对照表。\n\n- **mpkg 只读头部**：容器解析只读前 2MB 头（`lib/index.js:44`），834MB 大 mpkg 冷启动接近秒开\n- **音频清单不必等整包**：`scene.pkg` 的目录表在文件开头 ⇒ 只读目录表 + 候选条目各 16 字节魔数（整条音轨永不进内存）。`/custom-scene-audio` / `/library-scene-audio` 直接返回 `{count,tracks:[…],stats}`；`/raw` 支持 **Range/206**。实测整包读 1.7–379ms ⇒ 索引读 1.3–6.9ms（冷）/0.4–0.9ms（热）\n- **场景内嵌视频探测\"索引先行\"**：只读目录表 + 候选项前缀（`.tex` 头部与首 mipmap 记录、载荷前 12 字节判 `ftyp`；mip0 为 LZ4 时只解第一个 sequence），不确定一律回退整条读。实测 11 个真包 **2894ms → 532ms（冷）/ 7ms（热）**；门禁 `node tools/scene-video-test.mjs`\n- **场景缓存按体积限流**：静态帧缓存 96MB/64 条、图层缓存 128MB/256 条，双兜底\n- **重启自愈**：自定义目录壁纸重启后按文件名 token 重建（media 404 重试耗尽后按 `mpkgKey` 重新解析）\n- **防重入锁**：`applyFromStorage` 与 Aqua 主题监听带防重入标志 + 去抖，杜绝 `overrideTokens → theme/change →` 重入死循环\n- **监听/定时器只注册一次**：storage 监听、60s 时段检查、内联样式 watcher 均去重，反复 apply/RTC 重连不累积\n- **懒加载防 OOM**：时间变化只提取当前时段；hybrid 大文件流式播放内存占用极低\n- **转码资源上限集中一处**：产物 12 个 / 512MB、并发 1、排队 30s、单任务 15min、默认降采样 1920 宽、内存准入 1024MB（见[历史台账](#视频壁纸转码判定与资源上限)）\n- **弱设备降级**：高负载合成（全屏 `backdrop-filter` + 流媒体视频叠加）整体节流；极端组合建议 Edge / 桌面浏览器\n\n## 安全说明\n\n这节列出插件的网络行为、数据落点与隔离边界，便于自查与合规核对。\n\n- **默认无被动对外网络请求**：插件后台不主动访问外部网络；日常播放只与本机 DSH 宿主（`127.0.0.1`）通信。例外都是**用户显式触发**：检查更新/一键更新访问 GitHub（`raw.githubusercontent.com`、`api.github.com`）、下载 ffmpeg 访问 GitHub Releases / npm 二进制镜像；**打开设置面板后 0.8s 会自动静默检查一次版本**（只点亮徽标，不弹窗、不下载、不上传）。此外用户手输的网络图片 URL、网页壁纸自身加载的资源也属外部访问。\n- **无敏感内容**：源码不含路径、密钥、令牌、个人信息；`node tools/secret-scan-test.mjs` 扫描全部 tracked 文件（凭据 12 条模式、本机路径 3 条模式）必须 0 命中。\n- **网页壁纸沙箱**：默认模式下 iframe 是不透明源，作者脚本读不到宿主 DOM / `localStorage` / cookie，也摘不掉自己的 sandbox；帧↔父页只走 `postMessage`（op 白名单 + **`ev.source` 与 `ev.origin` 双重校验**，期望来源按我们自己写的 `src`/`sandbox` 推导）。壁纸资源的跨源读取**只对 `Origin: null`**放行。**自动路径不会把帧升到同源**（①P-205 F5：降档落点恒为沙箱档；`compat` 只由用户显式设置），每次拒收/拦截/降档都写进 `window.__mpwWebFrameGuard`。\n- **网页壁纸交互**：交互事件只从插件建的**交互舞台**发出（舞台默认 `display:none`，未开交互时一个事件都不注入）；开启才给宿主页面打 `data-mpw-interact=\"on\"`（此时宿主界面整体让位，右上角常驻退出按钮）；60s 无操作 / 180s 总时长 / `Esc` / 切壁纸都会退出；交互**不放宽沙箱**、**不读帧内 DOM**。\n- **宿主路由**：自定义目录/库路由都做了路径穿越校验（`..`、绝对路径、前导点一律拒），`/raw` 只服务已登记的容器条目。\n- **数据边界**：所有解析在本机完成；`localStorage` 只存背景与参数；设置另存宿主端 `~/.dsh-mpkg-wallpaper/settings.json`；网页壁纸的帧内存储在 `~/.dsh-mpkg-wallpaper/web-store.json`。\n- **系统媒体会话模块**：命令名与参数分开传（argv 数组，从不经过 `sh -c`），播放器名白名单 + op 白名单 + seek 范围校验，不合规 ⇒ 0 条命令；超时后 `SIGKILL`（`lib/media-session.js:519-540`）。\n\n## 归属与许可\n\n这节说明本包自己的许可、随包发布的第三方归属台账，以及「GPL 永不进插件」这条边界。\n\n- **本包许可：MIT**（`LICENSE`；`package.json` 的 `license` 字段 = `\"MIT\"`）。第三方来历、洁净室记录、逐项归属与\"抄了什么/为什么抄/哪些不是抄的\"全部登记在 **`THIRD-PARTY.md`**（**随包发布**，是 MIT 署名义务的载体）。\n- **唯一 vendored 的第三方代码**是 `lib/liquid-glass/**`（液态玻璃渲染器库）：**自 P-127 起移出发布面**（`files` 负向模式 `!lib/liquid-glass/**` + `!lib/liquid-glass-bundle.js`），**仓库内一个不少**、仍如实登记 10 个 sha256（`THIRD-PARTY.md` §1.3）。宿主的 `/api/mpkg-wallpaper/lg/*` 托管路由仍是活路径（命中时真的读 `lib/liquid-glass/<file>`），从 npm 安装的副本上按设计返回 404。\n- **Now playing 组件**：Bencho 的 \"Now playing\"（MIT）**逐行移植**（注释原文保留）；侧栏挂载控制器、自绘图标、token 映射与门禁为本仓自写（`THIRD-PARTY.md` §6）。\n- **网页壁纸**：`lib/web-wallpaper.js` 的 API 名单与语义**参考** `oneincase/webwallgl`（MIT），**未 vendored**；其中 `hasBlockingCsp` 一处**照抄**（逐行出处见 `THIRD-PARTY.md` §5）。差异清单见 `docs/WEB-WALLPAPER.md` §10。\n- **场景提取**：`lib/pkg-extract.js` 采用自 [elysia395/dsh-wallpaper-engine](https://github.com/elysia395/dsh-wallpaper-engine)（MIT，文件头署名）；`lib/pkg-extract.js` 的音频索引段已于 2026-09-16 依 `docs/AUDIO-TRACK-SPEC.md` 洁净室重写。\n- **GPL 边界（永不进插件）**：`MIT 插件 → GPL 渲染器 ✅`；`GPL 渲染器 → MIT 插件 ❌`（本包只出不进）。本包**不得** import / 内嵌渲染器（`we-scene-demo`，GPL-3.0-or-later）的任何代码，与渲染器的交互只走进程/HTTP 协议。**若将来引入任何其它第三方代码（含 GPL-3.0 的渲染器侧代码），不得进入本 MIT 包**（`THIRD-PARTY.md:97`、`:128-135`）。机器判据：`tools/web-wallpaper-test.mjs` F1（注释剥离后 grep：无 GPL-2.0-only 项目派生标识符、无 GPL 许可文本）。\n- 参考项目：[dsh-bg-image](https://github.com/lyh9712/dsh-bg-image)（MIT，模板）、[unmpkg](https://github.com/aqnya/unmpkg)（GPL-3.0，仅参考 mpkg 二进制格式）、[repkg](https://github.com/notscuffed/repkg)（MIT，仅研究 .tex 格式）。\n- 致谢：[Bil812](https://github.com/Bil812)（[PR #2](https://github.com/XHR666/dsh-mpkg-wallpaper/pull/2) 的取色/自适应文字色/统一遮罩构想 → 已吸收为 Aqua 实验模式，全部可开关、默认关）、[elysia395/dsh-wallpaper-engine](https://github.com/elysia395/dsh-wallpaper-engine)（场景提取器与\"设置持久化到宿主端文件\"\"Edge canvas 兼容渲染\"思路）、[oneincase/webwallgl](https://github.com/oneincase/webwallgl)（网页壁纸沙箱 + WE API shim 的 API 名单与语义参考）、[awesome-dsh-plugin](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin) 社区（收录与推广）。\n\n> **命名说明（2026-09-18）**：本插件对接的渲染器产品名为 **WEwebLoader**（渲染器仓的 npm 包名与仓库名保持不变，见该仓 README）。\n\n## 文件结构\n\n这节是仓库逐文件地图：哪些进 npm 包、哪些只留在仓库、为什么。\n\n```text\ndsh-mpkg-wallpaper/\n├── package.json      # 版本 3.10.1；dsh.bundle + dsh.client 声明；files 白名单 = 发布面（15 文件）\n├── cordis.patch.yml  # 插件安装声明（dsh plugin add 使用）\n├── LICENSE           # MIT\n├── THIRD-PARTY.md    # 第三方来历/洁净室记录与许可归属（随包发布）\n├── icon.svg\n├── README.md / README.en.md\n├── lib/\n│   ├── index.js            # 宿主端：41 条路由（上传/Range 流式播放、场景提取、音频清单、\n│   │                       #   网页壁纸与 shim、web-store、media-audio、设置持久化、诊断、更新、ffmpeg）\n│   ├── client.js           # 浏览器端（宿主按 exports[\"./client\"] 单文件下发）：mpkg 解析 + 设置页 +\n│   │                       #   背景 DOM + 虚化体系 + 壁纸库 + 时间变化 + 网页设置 + 播放/省电 + NP 挂载\n│   ├── pkg-extract.js      # scene.pkg 静态帧 / 图层合成 / 音轨索引 / 内嵌视频索引（MIT，来自 elysia395）\n│   ├── web-wallpaper.js    # 网页壁纸：内容优先类型判定 + WE API shim 源码 + 入口注入 + 跨源策略 + 存储 facade\n│   ├── web-interaction.js  # 网页壁纸交互：坐标换算 / 事件整形（含 touch）/ 状态机 / 舞台契约（MIT，自写）\n│   ├── media-session.js    # 系统媒体会话宿主侧适配器（MPRIS / SMTC；**已实现、尚未接线**）\n│   ├── now-playing.js      # Now playing 组件 + 侧栏挂载控制器（Bencho MIT 逐行移植 + 本仓的锚点/收起/让位判据）\n│   ├── now-playing-math.js # Now playing 纯数学（零 DOM）\n│   ├── liquid-glass/       # 遗留 WebGL 液态玻璃库（**仓库保留 · 不进发布面**）\n│   └── liquid-glass-bundle.js  # 上者的打包产物（**仓库保留 · 不进发布面**）\n├── tools/            # 门禁/测试/基准/探针（**不进发布包**）\n│                     #   check.sh（12 步门禁）/ integrity-check.mjs / secret-scan-test.mjs /\n│                     #   panel-smoke.mjs / switch-wiring-test.mjs / style-scope-guard.mjs /\n│                     #   token-namespace-test.mjs / now-playing-test.mjs（83）+ build-now-playing.mjs（生成区内联与漂移门禁）/\n│                     #   np-media-test.mjs（声音接线 82，含 12 组变异；第 2 步）/ media-session-test.mjs（未接入门禁）/\n│                     #   web-wallpaper-test.mjs / web-interaction-test.mjs /\n│                     #   np-sidebar-live-probe.mjs、np-media-live-probe.mjs（真机探针，需 :3080 + headless Firefox）/\n│                     #   bundle-equivalence-test.mjs / pre-commit.sh + ../.githooks/pre-commit\n├── docs/             # 研发笔记（**不进发布包**）：WEB-WALLPAPER.md / NOW-PLAYING-DSH.md / MEDIA-SESSION.md /\n│                     #   DIAGNOSTICS.md / RELEASE.md / STYLE-SCOPE-GUARD.md / TOKEN-NAMESPACE.md / PRE-COMMIT.md /\n│                     #   SCENE-STALE-COMMIT.md（B1 迟到 8s 的旧 scene 翻盘：根因/修法/判据/未验证边界）…\n└── dist/             # 构建产物（**不入库、不进包**）：dsh-mpkg-wallpaper.bundle.mjs（方式四用，现生成）\n```\n\n> 排除规则：`lib/liquid-glass/**`、`lib/liquid-glass-bundle.js`、`lib/**/*.bak*` 由 `files` 负向模式排除；`tools/`、`docs/`、`dist/`、`package-lock.json` 不在 `files` 白名单里。`tools/integrity-check.mjs` 第 ⑨ 节对\"不在发布面\"和\"仓库内不能少\"做**双向**机器断言。\n> `lib/now-playing.js` / `lib/now-playing-math.js` 是**源 + 生成内联**形态：`tools/build-now-playing.mjs` 把它们逐字节内联进 `lib/client.js` 的生成区（为什么必须这样：宿主把 `exports[\"./client\"]` 指向的那**一个文件**整体下发，`lib/client.js` 里出现任何相对 `import/require` 线上就会模块解析失败——判据是 `tools/integrity-check.mjs` 第 ⑩ 节）。代价是必须有漂移门禁，所以有**两条独立实现**常驻在门禁第 2 步。\n\n## 判据与门禁\n\n这节是**改完代码怎么自证没坏**：一条命令跑完的四道判据，加上 12 步门禁各自看什么。\n\n```sh\nnode tools/integrity-check.mjs     # 72 通过 / 0 失败：文件齐全、元数据、白名单、无本机路径、客户端自包含\nnode tools/secret-scan-test.mjs    # 凭据 0 命中、本机绝对路径 0 命中、白名单无腐烂条目\nbash tools/check.sh                # 12 步全量门禁（第 9 步需无头 Firefox 做真机复刻 A/B）\nnode tools/style-scope-guard.mjs   # 判据是末行「… OK / … ALLOWLISTED / 0 RED / 0 REVIEW」：RED/REVIEW 必须为 0（OK 条数随规则演进）\n```\n\n`tools/check.sh` 的 12 步：① 语法 ② 面板冒烟 + P-66 + 选择器 + 壁纸层可见性 + 持久化 + NP（生成区漂移双门禁 83 断言 + 声音接线 82 断言）③ CSS 组合矩阵（512 全组合 + 600 随机 + 边界）④ 场景看门狗/调试参数 ⑤ 沙箱与场景 token + 网页壁纸 shim + 转码资源 ⑥ 发布完整性自检 ⑦ 音频扫描提速 ⑧ scene 视频索引 ⑨ 真机复刻 A/B ⑩ better-sidebar 适配 ⑪ 单文件 bundle 等价性 ⑫ 样式作用域护栏 + 表面 token 命名空间。\n\n## 这一版新增/变更\n\n当前版本 = `package.json` 的 **3.12.0**（本轮发布线 3.8.0 → 3.8.1 → 3.8.2 → 3.9.0 → 3.9.1 → 3.10.0 → 3.10.1 → 3.11.0 → **3.12.0**）。发布前置/命令/回滚见 [`docs/RELEASE.md`](docs/RELEASE.md)，本轮改动清单见 [`docs/RELEASE-READY-3.8.0.md`](docs/RELEASE-READY-3.8.0.md)，Now playing / 壁纸声音的根因与真机读数见 [`docs/NOW-PLAYING-DSH.md`](docs/NOW-PLAYING-DSH.md) §7.7。\n\n- **3.12.0：WSL 上 Steam 装在别的盘也能扫到（安装目录候选抽成可注入纯函数 + 盘符枚举）+ 插件侧跨平台静态门禁** ——\n  ①真漏网：WSL 分支原来只写死 `/mnt/c/...`，Steam 装在 D:/E:/… 的 WSL 用户**永远扫不到**（Windows 与 WSL 双装、Steam 装 D 盘都很常见）。现在 `lib/index.js` 的 `steamProbeDirs(env)`（**纯函数**，`platform`/`release`/`homedir`/`exists`/`procVersion` 全可注入）在 `platform === 'linux'` 且判为 WSL 时枚举 `/mnt/d` … `/mnt/z` × `Program Files (x86)/Steam`、`Program Files/Steam`、`SteamLibrary`、`Steam` 四个相对路径；WSL 判据两条（`os.release()` 含 `microsoft`，老 WSL1 再读 `/proc/version`，读失败一律吞掉不抛）。非 WSL 的 linux/darwin **不**产出 `/mnt/d…z`；win32/darwin/linux/android 四个平台的候选集合与改动前**逐字节相同**（门禁逐项断言）。\n  ②新增 `tools/cross-platform-test.mjs`（**63 断言 / 1.2s**，无浏览器无网络；登记进 `tools/check.sh` 的既有第 6 步，**不新增 step 编号**）：WSL 分支可判（在非 WSL 机器上用注入入参断言 —— 含 `/mnt/d/SteamLibrary`，换普通内核后 0 条 `/mnt/d…z`）、三平台各自成根且互不串台、纯函数纪律（确定性/无重复/退化入参不抛）、代码里的 `/tmp` 字面量与五类宿主绝对路径必须\"同行可覆盖\"（存量 25 处走逐条带理由的账本，**每条反查必须仍命中**，腐烂即判红）、shell 可移植（9 种 bash 4+ 写法 + shebang 与语法匹配）、文件名可移植、BOM/CRLF、G 段逐类合成反例必红 + 干净样本零发现，以及两处**变异自证**（删掉盘符枚举 ⇒ 判红；把路径写死 ⇒ 判红）。\n- **3.11.0：音乐卡片 seek 落错元素（真机 P0）+ 音频格式路由 + 预览框几何 + 网页帧三档 + 风险预检接口** ——\n  ①**seek 落错元素**（真机：卡片显示总时长 `−3:22`、点轨道 90% 视频只从 11.53 → 12.69）：根因两条 —— `npActiveVideo` 把 `display:none` 当成\"这不是壁纸媒体\"（容器档换档窗口里画面确实不可见，于是卡片掉进曲目分支、绑到**上一张壁纸残留的游离 `<audio>`**），且 `npTransport(\"seek\")` 会\"顺手\"也 seek 那个游离 audio、`npSyncAudio` 的 `timeupdate` 又**无条件**把 audio 的时钟写进同一根进度条。现在卡片的**数据源/时长/进度/seek/静音/上报全部走唯一目标** `npMediaTarget()`（`{el, kind:'video'|'audio'|'none'}`，判据 = src 非空 + 视频档 + 非 web 档；残留 audio 只在**这张壁纸真有曲目清单**时才认）；判据 `tools/np-control-test.mjs` T 组 9 条 + **2 条变异自证**（改回旧写法 ⇒ T 组红 6/1 条），真机探针 `tools/np-seek-live-probe.mjs`（`--selftest` 8/0；**真机那一次要等宿主重启后同步生效才跑**，见诚实清单）。\n  ②**更多音频格式**：真凶在**路由**而不是扫描表 —— `/raw` 对非 mpkg/pkg/json 一律 `application/octet-stream`、`/custom-media` 没有音频分支、`/custom-dir` 白名单没有音频后缀，另有 `AUDIO_MAGIC_MIME` 的 ISO-BMFF 分支写成 `fByp`（ftyp 在偏移 4）且整体被 `n>=12` 包住。现在**唯一表** `AUDIO_SUFFIX_MIME`（`.mp3/.ogg/.oga/.opus/.wav/.flac/.m4a/.aac`，与渲染器 `server/upload-policy.mjs` 同一份名单）+ `audioMimeFor(path, head)`（magic 优先 / 后缀兜底 / 带 ID3 前缀的 `.flac` 例外），四条路由改查表（`audio-scan` 79/0、`scene-audio-route` 37/0，实测 `/raw` 与 `/custom-folder` 的 `.flac` 都是 `audio/flac`）。\n  ③**预览框「半张图 + 白块 mp4」**：`.mpw_wallThumb` 原本是 flex 行，媒体（`width:100%` + `cover`）与类型占位是**兄弟** ⇒ 占位一露就把图压到 3/4、cover 再裁一块；现在媒体 `position:absolute;inset:0;object-fit:contain`、占位同层铺满、显隐收口到唯一落点（候选链 = 扫描到的 `preview.*` → 容器 preview → 目录约定名 → 视频首帧 → 图片；`thumb-chain` 26/0，含**旧 CSS 对照**：并排 + 裁切、白块占框 ≈32%）。\n  ④**换目录后预览不加载**：缩略图 URL 缓存键 = 原 URL + **目录身份** + **单调纪元时间戳**，React key 同源 ⇒ 换目录换新节点，旧的内联 display / 失败标记不可能粘住，失败不缓存。\n  ⑤**网页帧三档**（`webFrameMode`，见设置项总表）与**风险预检接口** `GET /api/mpkg-wallpaper/web-probe?folder=|ltoken=`（`{ok,target,probe{heavy,external,heavyHits,externalRefs,htmlFile,scannedBytes,reasons,limits}}`；回环地址不算外网；形状契约 [docs/WEB-WALLPAPER.md](docs/WEB-WALLPAPER.md) §3.4；`web-wallpaper` 429/0、`web-probe` 26/0），选中带风险标记的网页壁纸时给**一次性、非阻塞**提示（不弹窗、不拦选）。\n  ⑥**卡片细节**：收起态描述行不再压住切歌键（`lib/now-playing-math.js` 的 `transportRow/sayRect/sayRowBandsMeet`，全枚举 101/101 不相交、旧公式对照 27 个采样重叠）；**左右键只控曲目、绝不切壁纸**（视频档 no-op 且壁纸媒体前后逐字段相同）；video 档音轨接入卡片（`kind:'video'`、`1/1`、`/media-audio` 的 `source='video'`、`canVolume` 取 `mozHasAudio|audioTracks`，判不出给 `null` 不禁用）。\n\n- **Now playing 默认挂载 + 会让位**：设置项 `npNowPlaying` **默认开**（`lib/client.js` 的 `DEFAULT_NP_NOW_PLAYING`），仍在「壁纸设置」tab、紧挨既有 `mute` 下方（`lib/client.js` 的 `toggleRow(t(\"npNowPlaying\"), …)`）。关掉即回到零注入（机制与判据见 [Now playing 与壁纸声音](#now-playing-与壁纸声音)）。默认开的前提是**礼让**：宿主同一位置已经有别的插件注入的元素时不挂/撤下，并留一个可查询状态 `data-mpw-np-yield`（`lib/now-playing.js` 的 `occupantOf()`；挂载前与挂载后都判，占用者走了再回来）。组件本体是 **Bencho 的 \"Now playing\"（MIT）逐行移植**（注释原文保留，归属见 `THIRD-PARTY.md` §6）；纯数学与组件拆成 `lib/now-playing-math.js` / `lib/now-playing.js`，由 `tools/build-now-playing.mjs` **逐字节内联**进 `lib/client.js` 的 `MPW-NP-GEN-START/END` 生成区，配两道漂移门禁（生成器自比 + 产物反抠比对）。挂载与收起判据见 [Now playing 与壁纸声音](#now-playing-与壁纸声音)。\n- **壁纸声音真的接线**：数据源只认**当前真的在放**的那个媒体元素（页面里那个隐藏空壳 `#mpw-bgVideo` 在**任何壁纸类型下都在 DOM 里**，旧实现按选择器命中它就当\"当前媒体\"）⇒ 视频壁纸的播放/暂停/静音落在真实元素上（**`mute` 开关真的落到元素上：关掉静音就真的出声**，旧写法把 `video.muted` 写死 `true`，之后再没有代码按设置赋值）；壁纸目录里**真实存在**的音频文件由我们自己的 `<audio>` 播（作用域认 `mpkgKey=\"custom|<folder>\"`，旧写法只认 `folderName` ⇒ 自定义目录里的 web 壁纸永远拼成 library 路由 404）⇒ **上一首/下一首按清单顺序环形切换**，不再是\"回到开头\"；web 壁纸帧内那份声音只有**静音**这一条真通道（`canPlay=false`，如实显示，不假装能暂停帧内 WebAudio）；我们放音时帧内被强制静音（防同一首放两遍）。\n- **悬浮态卡片不再被裁切**：贴合缩放改量**我们自己的容器**（旧写法量 `[class*=\"sidebarCol\"]`，而真机上同类名不止一处，量到 280 而容器只有 256），`.mpw_np` 宽度按 `math.W` 钉住并让溢出均分；web 壁纸分支补上 `data-mpw-float` 门控与 `applyNowPlaying()`（旧写法提前 `return`，切到 web 壁纸后控件根本不挂）。\n- **门禁扩容**：`tools/now-playing-test.mjs` **83 通过 / 0 失败**（含 7 组变异）；新增 `tools/np-media-test.mjs`（清单作用域 / 数据源判定 / 播放落点 / 静音落点 / 让位 / 标记 / web 路径不跳过 apply / 卡片几何，**82 通过 / 0 失败**，含 **12 组变异自证**），已注册进 `tools/check.sh` 第 2 步；真机探针新增 `tools/np-media-live-probe.mjs`（`:3080` + headless Firefox；修前 16 PASS / 22 FAIL → 修后 45 PASS / 0 FAIL，不入常驻门禁）。\n- **若干真机修复**：Now playing「slot 后渲染那一帧 `wide=false` 把展开态判成收起 ⇒ 刷新后控件自己消失」（判定改为**物理宽度优先**，阈值 `NP_COLLAPSE_MAX_W = 96`；锚点晚出现时盯住文档自动补挂）；播放/暂停那两个四边形改由**播放状态自己的补间**驱动（旧写法由展开进度驱动 ⇒ 收起态恒画三角、展开态恒画双条）；标题栏磨砂 `syncHeaderFrost()` 的 `ReferenceError` 与右侧时间线条被弄透明（见[历史台账](#历史台账)）；`lgCss` 整块因 TDZ 从未执行；`sessionFollow` 有开关无人读；选择文件夹的滚动跳顶。\n- **3.9.0：真机壁纸流水线批次 + 声音语义收口（用户点名的六条 bug 与三条音频问题）** ——\n  ①设置面板被压缩进左侧栏（`backdrop-filter` 让侧栏成为 `fixed` 弹层的包含块，真机 `{x:320,w:800} → {x:13,w:254}` 可逆实锤）；\n  ②「清除壁纸」清不掉（`undefined` 在不变量Ⅰ里是\"不覆盖\" + 粘性护栏把 `webUrl` 带回来）、换档残留 `webUrl` 抢先武装（黑屏 + 破图）、\n  web 档预览框空白（预览分支没有 web 档那条）、源不可用被当成素材渲染（现在留 `data-mpw-bg-error` 并给面板人话）；\n  ③沙箱档被浏览器策略挡住时父页毫不知情（shim 能力自证 `probeCaps` + 按**策略类**错误一次性降级，作者自身 bug 不触发）；\n  ④卡片暂停管不住帧内音频（`npFrameSoundBlocked()`：卡片暂停 ∨ 我们在放 ⇒ 压住帧内那一半）；\n  ⑤切页不静音（`powPauseHidden` **默认改为开**，只迁移从没设过的存量档；覆盖我们自己的 `<audio>` + `pagehide/pageshow` 按原状态续播）；\n  A 交互音分类（`mpwClassifyWebAudio` 纯分类器 + `?npvoice=keep|drop`，语料实测清单只剩 `BGM.wav`）；\n  B 联动开关关闭 = **只控声音**（视频档暂停/播放 = 静音/取消静音那条音轨，画面继续）；\n  C 切页后\"过一会儿又响一下\"（唯一闸门 `mpwHiddenAudioBlock()`，所有起播入口过闸）；\n  **NP-5 卡片暂停意图持久化**（新键 `npPaused`，唯一写入口只在用户显式操作时写；刷新后**不得**自动变播放 —— 真机探针\n  `tools/np-pause-persist-live-probe.mjs` 11 PASS/0 FAIL：刷新后 59 拍×500ms 全程 `paused` + 零次 `play()` 调用）；\n  **音频审计**（hook `play`/`volume`/`muted`/`new Audio`/`AudioContext`，有界环形 ≤200，可疑转变即 POST `/diag`；`?npaudit=0` 关）；\n  **宿主超限语义**：两个 POST 接收端超限从\"先掐连接\"改成 **413 + JSON 说明**（旧行为客户端只看到 ECONNRESET）。\n  真机读数、根因链与 10 条诚实清单见 [`docs/WALLPAPER-LIFECYCLE.md`](docs/WALLPAPER-LIFECYCLE.md)；发布记录见 [`docs/RELEASE.md`](docs/RELEASE.md)。\n- **3.8.1 / 3.8.2：Now playing 第二次真机批次（NP-4）** —— 起播顺序（旧写法先取消静音再 `play()`，等于一次有声自动播放 ⇒ 被浏览器拒绝且被吞掉）、被浏览器策略停住（muted 起播 resolve 后取消静音，元素被直接停住）、**新增音量电平**（0..100，落到真实元素）与**可拖动进度（seek）**、**新增「播放/暂停同时控制壁纸」开关（`npLinkWallpaper`，默认开 = 与改动前逐字节同行为）**、悬浮态卡片放大、音轨清单的\"能不能播\"如实分类。可交付口径：**首次用户手势后必定出声**（被策略停住时退回 muted 保画面并记 `window.__mpwNpSoundBlocked`）。详见 [`docs/RELEASE.md`](docs/RELEASE.md) 的 3.8.1/3.8.2 发布记录与 [`docs/NOW-PLAYING-DSH.md`](docs/NOW-PLAYING-DSH.md) §7.8。\n- **仍在同一发布面上的前一轮能力**：网页壁纸渲染 / API 覆盖（帧内存储 facade + 宿主 `/web-store`、主音量、源级 `file:///` 改写、CSP 跳过注入、`/media-audio`）与网页壁纸触控（`op:'touch'` 真 `TouchEvent`）；系统媒体会话的**宿主端适配器** `lib/media-session.js`（MPRIS / SMTC）**已接线**：宿主 `GET /media-session`（21 键快照）/`POST /media-control`（六个 op，能力位先判）/`GET /media-art`（`file://` 封面代理），客户端 `npSystemMedia*` 自适应轮询（有系统媒体 2s、本机无会话总线 30s）⇒ 卡片显示**真实系统曲目/封面/进度**，本机如实 `available:false / no-session-bus`（接线判据 `tools/media-session-wiring-test.mjs` 24 断言 + 3 变异）。\n- **门禁与护栏**：CSS 组合矩阵、样式作用域护栏、表面 token 命名空间等价性、开关接线审计、秒级 pre-commit（见[历史台账](#历史台账)与「[判据](#判据与门禁)」）。\n\n## 历史台账\n\n以下各节是**已经落账的证据**（事故、根因、判据、回退开关），保留原文事实、不做删改；它们描述的是\"为什么现在是这样\"。\n\n### P-66 面板健壮性修复（2026-09-15）\n\n> 口径：当次报的 9 条界面问题经确认属于 **webwallgl 测试台（:8901）**，与 DSH 插件面板无关；按此口径本轮**只保留两个与那个界面无关、可独立复现的插件真 bug 修复**，其余界面改动已全部回退。回归：`node tools/panel-fixes-test.mjs`（门禁第 2 步）。\n\n| 真 bug | 根因 | 修法 | 复现/断言 |\n| --- | --- | --- | --- |\n| **渲染错误边界失效，真因被吞** | `MpkgSectionImpl` 的外层 `catch (err)` 里用 `h(...)`，而 `h` 是**外层 `try` 块内的 `const`**（块作用域不可见）→ 边界自身抛 `h is not defined`，用户看到的是「壁纸引擎设置区渲染异常：h is not defined」，**真实错误信息丢失** | 该 catch 内改用 `react.createElement` | `node tools/panel-fixes-test.mjs --client <修复前副本>` → 红（显示 `h is not defined`）；对当前代码 → 绿（显示真实错误 `boom-body`） |\n| **zh/en 字典键集合不一致** | `en` 缺 18 个键（`glass.*`、`glassWindow*`、`flipX/Y*`、`themeColor*`、`rightSidebarBlur.overridden`）→ 英文界面直接显示 **key 原文**；`clock.*` 10 个键只存在于 `en` → 中文界面反而显示英文；另有两处硬编码中文 | 只增不删地把两套字典补到**键集合完全一致**（条数以 `node tools/panel-fixes-test.mjs` 实跑输出为准）；两处硬编码中文改走 `t()` | 同一测试：键集合一致 / 静态 `t(\"k\")` 键两套齐全 / 英文渲染零中文 / 中文渲染零键名残留 |\n\n### 两个真机 bug 根治（2026-09-16）：标题栏磨砂 / 右侧时间线条\n\n| bug | 根因（判据） | 修法 | 回退开关 | 回归 |\n| --- | --- | --- | --- | --- |\n| **标题栏磨砂\"一直没有\"** | `syncHeaderFrost()` 第一行调用 `normalizeSection(...)`，而该函数当时定义在**另一个函数的函数体内** ⇒ 每次调用抛 `ReferenceError`，又被自己的 `catch {}` 吞掉 ⇒ 磨砂层从未注入、诊断 `reason` 恒为空（真机 diag 实锤 `injected:false` / `reason:\"\"`） | 归一化函数**提升到模块作用域**；异常改为写进 `hdrFrostState.reason`（不再静默）；\"真实磨砂元素 + header 半透明底\"成对出现（半透明底色走我们自己的 `--mpw-hdr-frost-bg`）；`wanted=false` 时**清理**而不是留一个空层（空层会抑制伪元素兜底，反而彻底没磨砂） | `?hdrfrost=legacy`、`?hdrfrost=off`、`?hdrblur=pseudo\\|element` | `node tools/frost-rail-test.mjs` |\n| **壁纸模式下右侧时间线（轮次导航条）变透明** | DSH 的 `TurnNavigator rail` 条颜色 token 是 `--dsw-alias-border-l4` 与 `--dsw-alias-label-*`。插件 ①用 `var(--mpw-aqua-ink, inherit)` 与自引用 fallback 覆盖 `--dsw-alias-label-*`（DSH 把它们定义在 `body`、`html` 上没有）⇒ body 上成为 **guaranteed-invalid** ⇒ 激活/preview 条 `background` 变 unset = 透明；②裸 `html body { --dsw-specific-sidebar-fill: transparent }` **全局**改宿主 token，并把聊天区表面透明化 ⇒ 16% 淡条画在壁纸上 = 看不见 | token 覆盖**收窄**到白名单容器；aqua/文字色覆盖加 `data-mpw-*` 门控并**去掉 inherit/自引用**；给条补一个按主题计算的、**我们命名空间**的对比色（只作用于白名单节点，不碰宿主 token、不用 `!important`） | `?railink=off`、`?sbfill=wide` | `node tools/frost-rail-test.mjs` |\n\n> 细节与诊断字段表：[`docs/HEADER-FROST.md`](docs/HEADER-FROST.md)、[`docs/TIMELINE-RAIL-TOKEN.md`](docs/TIMELINE-RAIL-TOKEN.md)。\n\n### 样式作用域护栏：为什么\"这类 bug 不会再复发\"（2026-09-17）\n\n上面两个 bug 的共同机制是**选择器作用域没人管**：改样式的人在本地看不出\"这条规则会命中宿主界面\"。门禁第 12 步把它变成会变红的机器判据（`node tools/style-scope-guard.mjs`）：\n\n* **拿真实产物**：不重写 `buildCss`，用 `tools/_stub.mjs` 在 Node 里跑 `lib/client.js`，调用插件自己暴露的 `__mpwBuildCss(patch)`，按源码里的 `boolFields`/`numFields` 自动枚举 **600+ 组设置**（本轮 615：默认段 / 每个布尔开关单独开 / 核心 9 开关全 512 组合 / bsCompat 家族 / 数值 0 与 100 / 无壁纸 / lgTest），再对生成的 CSS 逐条解析（含 `@media`/`@supports`）。\n* **判据**：每条规则的选择器必须命中我们自己的标记（`.mpw*` / `[data-mpw*]` / `#mpw-*`），或命中**已登记**的宿主/第三方作用域——`bsCompat` 那句故意打第三方 DOM 的 `[data-dsh-better-sidebar] …` 也在其列，**必须登记 reason + `docs/*.md:行号` 指针**（指针运行时校验，漂了直接红）。裸元素选择器、裸 `*`、`:root` 上覆盖宿主 token、宿主 token 被设成 transparent/inherit、未登记 token 的 `!important`、未门控碰宿主轮次导航条、`[data-dsh-panel-host]`、顶栏描边透明化 ⇒ **判红**。\n* **自证有分辨力**：`node tools/style-scope-guard.mjs --selftest` 把 `lib/client.js` 复制到临时目录注入变异（含一条\"我们自己的标记必须仍然放行\"的阴性对照），逐条断言必须 RED/REVIEW/PASS。\n* 判据、允许清单账本与\"怎么加一条登记项\"：[`docs/STYLE-SCOPE-GUARD.md`](docs/STYLE-SCOPE-GUARD.md)。\n\n### 表面 token 命名空间：顶栏 / 侧栏 / 面板 / 时间线条 读同一套 `--mpw-*`（2026-09-18）\n\n「四处视觉一致性用**同一套 token 命名空间**（`--mpw-*`），**永不覆盖宿主 token** ⇒ 从结构上消灭\"我们弄坏宿主新功能\"这类 bug」。第 12 步的第二个判据把它机器化（`node tools/token-namespace-test.mjs`）：\n\n* **一个来源**：宿主 token 只在 `emitSurfaceTokens()` 里被消费成 `--mpw-surface-*`，产物里唯一那一块 `body{…}` 是全部表面取值的定义点（实测 41 枚共享 token 各 1 处）；四个表面的规则**只写** `var(--mpw-surface-*)`。\n* **为什么是 `body` 而不是 `:root`**：DSH 把 `--dsw-static-*` / `--dsw-alias-*` 定义在 **`body`**（`html` 上没有）。自定义属性里的 `var()` 在**声明所在元素**上求值 ⇒ 写 `:root` 会变成 guaranteed-invalid 并**继承给所有后代**（消费者全部 `unset` = 透明）。这正是历史上\"右侧时间线条变透明\"的同一机制，判据里有专门断言 + 变异盯着。\n* **宿主 token 覆盖只剩一处**：`buildSidebarFillCss()`（`--dsw-specific-sidebar-fill`，只在侧栏白名单容器、只在「侧栏透出」对应档位）。登记表（`HOST_OVERRIDE_REGISTRY`）逐条要求 token + 选择器 + 值形态 + **生效条件**：产物里 39 处覆盖声明必须全部登记命中，且**功能关闭的组合里一次都不许出现**。\n* **等价性证据**：以 `git HEAD` 的 `lib/client.js` 为 before，606 组设置 × 亮/暗 × 默认/门控两态比对四表面**生效值**（极小层叠模型 + `var()` 递归代换）⇒ 25 428 个键逐键相等 —— 这是重构，不是重设计。\n* 清单：[`docs/TOKEN-NAMESPACE.md`](docs/TOKEN-NAMESPACE.md)。\n\n### 开关接线审计：不许再有\"开关能点、没有效果\"（2026-09-18）\n\n**真事故**：「配色」(`accent`) 与「深底文字可读增强」(`aquaTextEnhance`) 两段 CSS 被一起包在 `if (aquaOn(section))` 里 ⇒ **只开这两个开关时规则根本不生成**：界面上能点、没有任何效果、控制台也不报错。已修，并加了通用判据 `node tools/switch-wiring-test.mjs`（门禁第 2 步）：\n\n* 每个布尔开关都必须在\"默认档 / 富上下文 / 其它全开\"三个上下文之一里**改变 `buildCss` 产物**；只影响运行时的开关必须逐条登记 `reason`（如 `mute`/`rotate`/省电三档/时钟文案…，见表 `tools/switch-wiring-test.mjs:41-64`）。\n* 非布尔功能（`accent`/`aquaTextEnhance` 设值必须改变产物）；`themeColor` 属\"CSS 常驻 + 运行时属性门控\"，判据改为断言门控规则确实在产物里。\n* **已证实失效**的开关进 `KNOWN_DEAD` 并在每次运行时显式列出（双向断言：修好了必须从表里删）。**该表现已清空**；**退役**（删掉）的开关改由 A0 段看住\"源码 0 悬空引用 + zh/en 两套字典 0 孤儿文案\"，各配一条常驻变异。\n* 已修的三条：**`lgCss` 整块从未执行**（块内引用声明在其后的 `bdSupported` ⇒ 同函数作用域 TDZ `ReferenceError`，被外层 `catch` 吞掉）；**`sessionFollow` 设置页有开关 + 文案但全仓无人读**（按**用户可见文案**实现：开 = 跟随面板不透明度，关 = 回到宿主原色）；**`glassWindow` 按\"不留看得见却点不动\"的政策删除**（既无 toggleRow 也无读取点，文案承诺的功能已由 `settingsBlur` + `dialogBlur`/`popoverBlur` 覆盖）。删除点 6 处（zh/en i18n 各 2 行 + `lgTest` 预设默认值 + 重置默认值 + `BACKUP_FIELDS` + 导入 `boolFields`），删前删后**默认档产物 sha256 逐字节相同**。\n* **`bsCompat`（better-sidebar 适配总开关）默认已改为开**：底部面板悬浮适配已真机定案，默认关 = 没人看得见；存量用户**只在\"从没显式设过\"时**被迁移，**手动关过的绝不覆盖**（写入口打 `bsCompatUserSet` 标记，迁移不打）。判据 `node tools/bs-compat-default-test.mjs`（门禁第 10 步，15 断言 + 3 变异）。\n* **顶栏那一份折射放在伪元素上**（`html body[data-mpw-hdr-frost-el] .wSkVaW_header::before`，`z-index:0`）：加在 `.wSkVaW_header` 本体会让它变成 **backdrop root** ⇒ 顶栏内浮层的 backdrop 采样被隔离 ⇒ 浮层磨砂失效、背后文字锐利透出。伪元素不是浮层的祖先 ⇒ 浮层照常采样；且**只在顶栏本来就在磨砂时才生成**。\n* 分辨力自证：把 `accent` / `aquaTextEnhance` 的门控改回被 `aquaOn` 包住 ⇒ 必须变红（两条变异）。\n\n### 提交前门禁（秒级 pre-commit，2026-09-19 / P-129）\n\n上面这条审计（以及面板渲染回归）已抽成**秒级 pre-commit**，**提交前 4 秒**就能拦住\"开关没接线\"\"面板渲染坏了\"这两类**已经真实发生过多次**的事故：\n\n```sh\ncd dsh-mpkg-wallpaper\ngit config core.hooksPath .githooks    # 装载（只影响本机 clone；git config --unset core.hooksPath 卸载）\ngit commit --no-verify                 # 单次绕过\nMPW_SKIP_PRECOMMIT=1 git commit -m …   # 单次绕过（走脚本内显式口，恒 exit 0）\n```\n\n* **跑什么**：`tools/panel-smoke.mjs`（面板渲染 + 语言字典，~0.3s）+ `tools/switch-wiring-test.mjs`（每个开关必须真的改变产物 + 退役开关 0 悬空引用 + 分辨力变异自证，~2.5s），**串行**。\n* **不跑什么**：`tools/check.sh` 的 12 步（第 3 步 615 组 CSS 矩阵、第 9 步起无头 Firefox）**不进** pre-commit。\n* **不阻塞开发**：装载是显式的；暂存区只动了非产物路径（无 `lib/`·`tools/`·`package.json`）⇒ 直接跳过；缺 `node`/缺脚本 ⇒ 打印一句就 `exit 0`；失败会原样打印红行并提示绕过方式，不改文件、不自动 fix。\n* **细节与实测输出**：[`docs/PRE-COMMIT.md`](docs/PRE-COMMIT.md)。\n\n### 视频壁纸转码：判定与资源上限\n\n> 事实：一条 `~/.dsh-mpkg-wallpaper/transcodes/src_*.bin` 常驻、RSS ≈ 690MB —— 插件在后台转用户**正在播放**的壁纸。\n\n**判定：那次转码是误判（bug）**。判据：那条 `src_*.bin` 是 `h264 High L5.2 + aac / MP4`（`ffprobe` 实读，浏览器必可直读），而 `settings.json` 里 `fpsCap=0 / resMax=0`（没有开转码）⇒ 触发者是客户端 `video.error`（`code 3/4`）后的**自动降级** `/transcode?fps=24`——`code 3/4` 只表示\"这一帧解不出来\"，**不等于\"浏览器不支持该编码\"**。\n\n**修法**：新增**可播性闸门**（`/probe` 只读元数据、不起 ffmpeg；判据 = 编码/容器白名单 + MP4 里 h264+opus、HEVC Main10 这类确定性缺口；探测不出来一律不改行为）——可直读就**直读原片**，只有真吃不下才转码。顺带修掉三个真 bug：旧 `direct-spec` 直读判据**不看编码**（HEVC 会被直读→黑屏）、字节上限淘汰**从最新开始删**（刚转好的产物被自己删掉 ⇒ 缓存永久 miss）、**取消后仍换编码器重试**。资源上限集中一处：产物 12 个 / **512MB**、并发 **1**、排队 30s、单任务 15min、**转码默认降采样到 1920 宽**（实测 4K 656MB → 1080p 275MB）、**内存准入 1024MB**；启动清理一次并打日志；三种状态（直读/转码中/已缓存）写进日志与 `window.__mpwWallpaperState`。\n\n> 细节、判据表与内存实测：[`docs/TRANSCODE-RESOURCE.md`](docs/TRANSCODE-RESOURCE.md)；回退开关 `?mpwtranscode=legacy|aggressive`；回归 `node tools/transcode-limit-test.mjs`（43 断言，门禁第 5/12 步）。\n\n**②（2026-09-28）「切档 → 立刻切回 ⇒ 壁纸加载不出来，过一会儿又好了」+「关掉预缩档后感觉过曝」**\n\n**根因（两层，都已修）**：①**宿主**——一次 `/transcode` 实际来**两个**请求（`<video>` 播放请求 + 客户端 `Range: bytes=0-0` 验活请求），旧实现两者命中**同一份** in-flight 转码 ⇒ 播放请求一断开（用户切档）就 `kill` 掉共享 ffmpeg，**验活请求**反而收到 `502 {ok:false,error:'cancelled'}` ⇒ 客户端把\"被取消\"读成\"源不可用\"⇒ 撤 `src` + 把壁纸层 `display:none`；②**客户端**——验活裁决**没有代际**（迟到的 `{ok:false}` 撤掉已经换好的原片），且否定答案被缓存 **20s** ⇒ 期间每次 apply（**刷新壁纸 / 清空重选 / 无关设置落点**）都复发，20s 过期后才自愈 ＝ 用户说的\"过一会儿又能加载出来\"（另：`refreshBg` 的 `&_t=` 只击穿直读 URL ⇒ 转码档上\"刷新壁纸\"完全没动作，也一并修）。\n\n**修法**：宿主侧 `TRANSCODE_INFLIGHT` 升级为 **引用计数 + 代际**（`acquire/releaseTranscodeRef`、`gen`、`killTranscodeProcs` 只杀本任务），验活请求走独立角色 **`player=verify`**（有产物给产物、没有回 `202 pending`，**绝不为它起/续 ffmpeg**），产物命中判据收紧为「最终名 + ≥1024B + ISO-BMFF `ftyp` 魔数」（0 字节/垃圾一律删掉重转），取消是**独立终态** `phase:'cancelled'`（写台账 + `/transcode-progress` 可读）；客户端侧裁决过 `mpwArmVerdictApplies`（URL + 挂载签名双闸门）、否定 TTL 收到 **3s**、换源即 `abort` 悬挂验活并清缓存、回退原片收敛到**唯一落点** `mpwFallbackToDirect`（内含清\"源不可用\"状态 ⇒ 换回来的原片看得见）。\n\n**色彩（\"过曝\"）实测**：8bit 源**不丢色彩**——tv·bt709 标签逐字保留、YAVG Δ **−0.05/255**；全范围 `pc` 源产物仍 `pc`、Δ **+0.21/255**；未标注语料（4K→1920）Δ **+0.02/255**（阈值 1.0/255）。真问题是 **>8bit / HDR**：旧 argv 不带 `-pix_fmt` ⇒ 产物**仍是 `High 10 / yuv420p10le`**（多数浏览器无 High10 解码器 ⇒ 黑屏，而这条路的理由正是\"浏览器吃不下才转\"）；现按 `transcodeColorPlan` 显式降 8bit + 声明 `bt709/tv` 并**记台账**（8bit 源一个参数都不加 ⇒ 既有产物继续命中、与改动前逐字节相同）。回退口 `DSH_WE_TRANSCODE_COLOR=legacy|force8`。\n\n> 细节、链路图、逐条 ffmpeg 路径排查表与全部读数：[`docs/TRANSCODE-LIFECYCLE.md`](docs/TRANSCODE-LIFECYCLE.md)；回归 `node tools/prescale-switch-race-test.mjs`（44 断言）+ `node tools/transcode-color-fidelity-test.mjs`（24 断言，含 7+4 组变异）。\n\n### 选择文件夹 / 选择文件：行为契约与快捷键（2026-09-17）\n\n**根因（判据式，详见 [`docs/DIR-PICKER-SCROLL.md`](docs/DIR-PICKER-SCROLL.md)）**：旧实现里那段\"事后补偿滚动位置\"的代码是**死代码**——`dirScrollRef.current` 只被写成 `{anchorIdx, anchorOff}` 而**从不写 `ratio`**，于是 `if (ratio === void 0 || ratio === null) return;` 恒真早退，其后的锚点补偿与按比例恢复**一行都没执行过**；同时容器没有 `overscroll-behavior: contain`（滚轮到边界会串联给宿主设置面板），且没有任何机制在 React 重建列表节点后把 `scrollTop` 补回来（新节点天然 `scrollTop = 0`）。三者叠加 = \"自动弹跳 / 锁定在最顶\"。\n\n**修法（无新增第三方依赖）**：选择器改为**自己持有滚动主权**——容器按路径记忆 `scrollTop`（滚动事件只写 ref、不 setState），在 `useLayoutEffect` 里**绘制前同步写回**（幂等，不与用户滚动打架，时间窗 hack 全部删除）；滚动容器统一带 `overscroll-behavior: contain` + `overflow-anchor: none`；行 key 改为\"完整路径 + 目录名\"（增量更新而非整表重建）；弹窗元素加稳定 key；**全程没有任何 `focus()`/`autoFocus`**。\n\n| 行为契约 | 说明 |\n|---|---|\n| **滚动位置保持** | 刷新 / 过滤 / 条目变少 / 500 项大目录 / 宿主重渲染 / **容器节点被重建**后，滚动位置都在原位（不会出现\"跳回顶\"的一帧） |\n| **不抢焦点** | 打开弹窗只把焦点给**列表容器自己**且带 `focus({preventScroll:true})`；行一律 `tabindex=\"-1\"` + `mousedown` 阻止默认聚焦 ⇒ **任何行都不会成为 `document.activeElement`**；重渲染不再抢焦点 |\n| **每个目录各自记位置** | A 目录滚到 60、B 目录滚到 20，来回切换互不串位 |\n| **滚轮不串联** | 列表滑到边界后不会带着背后的设置面板一起滚 |\n| **行级增量更新** | 目录刷新只增删差集（行 key = 完整路径，测试断言行节点 uid 不变） |\n| **锚点缺失不回 0** | 记住的位置若超出新列表范围 ⇒ **夹到新范围**；记忆值缺失/非法（`null`/`\"\"`/`NaN`）一律当\"无锚点\" ⇒ 认领当前位置 |\n\n| 按键 | 行为 |\n|---|---|\n| `↑` / `↓` | 上下移动活动行（不抢焦点、只在按键时做最小位移 `block:\"nearest\"`） |\n| `Home` / `End` | 跳到第一个 / 最后一个目录 |\n| `Enter` | 进入活动行对应目录；**未选中任何行时 = 「选择此文件夹」** |\n| `Backspace` / `Alt`+`↑` | 上一级目录 |\n| `Esc` | 关闭弹窗 |\n\n**回归门禁**：`node tools/dir-picker-test.mjs`（**57 断言**；A 组 10 条源码级断言对 `git show HEAD:lib/client.js` 旧实现会**变红 9 条**，证明用例有分辨力；B 组用假 DOM + 迷你 React 跑生产实现的切片）。\n\n## 反馈 Bug\n\n反馈问题时附上这些材料，一轮就能定位：\n\n- **原始 .mpkg 或 workshop 文件夹**（复现问题所必需）\n- 一次「一键诊断上报」的结果（设置页「其他」→ 一键诊断上报；宿主不可用时会自动下载 JSON）\n- 浏览器控制台输出（F12 → Console），如有\n- 你的 DSH 版本与平台（Windows / Linux / 移动端）\n","readmeFilename":"README.md"}