dsh-plugin-wallpaper-engine-parallax 1.4.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -82,7 +82,7 @@ window.__ModuleLoader__.load({
82
82
  * (见 src/styles.js 的视差段)。
83
83
  * · **各层各自的百分比**:壁纸走 `parallaxBg`;吉祥物跟着壁纸(`parallaxMascot` 可关);界面四组
84
84
  * 与插件组见 ④ / ⑤(滑杆域 0..10% / 分度 0.1%;缺值兜底见 PARALLAX_GROUP_*)。
85
- * · **点击与拖尾效果(`src/fx-layer.js` 那一层)刻意不参与**(用户口径第 3 条):那层画的是"屏上的笔迹",
85
+ * · **点击与拖尾效果(`packages/fx/src/fx-layer.js` 那一层)刻意不参与**(用户口径第 3 条):那层画的是"屏上的笔迹",
86
86
  * 跟着挪会让落点与光效错位。
87
87
  * · **自检开关**:`localStorage.weParallaxDebug = '1'` ⇒ 记每帧的回调耗时、写入次数与帧间隔,
88
88
  * 一次手势收工(或停用)时打一行 p50 / p95 / max + 长帧(≥ 8ms)计数,再附一份**界面组清点**
@@ -539,7 +539,7 @@ window.__ModuleLoader__.load({
539
539
  * 与屏上表现同源(同一个挑选)⇒ "会动的组一定有开关,有开关的组一定在动"。唯一的例外是
540
540
  * **组里有 `position: fixed` 后代**那一条(`parallaxGroupBlocked`:那种组层的写法是整组不动,
541
541
  * 因为 `translate` 会让它变成那些后代的包含块)—— 那要遍历子树、只在帧外做,面板这边不筛,
542
- * 改成把这条写进每一行的 tooltip(`src/ext-parallax.js` 的插件槽位那一行)。
542
+ * 改成把这条写进每一行的 tooltip(`packages/parallax/src/ext-parallax.js` 的插件槽位那一行)。
543
543
  * 纯读 DOM、零副作用;没有 DOM 的环境返回空数组(面板那边退回一句说明)。 */
544
544
  function parallaxDiscoveredGroups() {
545
545
  const groups = parallaxPluginEffectiveGroups();
@@ -1304,7 +1304,7 @@ window.__ModuleLoader__.load({
1304
1304
  * ══ 它是什么 ══════════════════════════════════════════════════════════════════
1305
1305
  * 一个**模块描述符**(形状 `{ id, title, desc?, render? }`,契约写在 src/panel-tabs.js 的
1306
1306
  * `extensionModules()` 上方):panel-tabs 只负责把它排在「扩展」页签里,具体的控件与文案
1307
- * 全在本文件。视差本体在 `src/parallax-layer.js`(只有变量与事件、不建 DOM),设置项的
1307
+ * 全在本文件。视差本体在 `packages/parallax/src/parallax-layer.js`(只有变量与事件、不建 DOM),设置项的
1308
1308
  * 真源在 `lib/settings-schema.js` 的 11 个 `parallax*` 键。
1309
1309
  *
1310
1310
  * 契约:
@@ -1321,7 +1321,7 @@ window.__ModuleLoader__.load({
1321
1321
  * · 参数的可调范围与默认值**不在这里写死**:`SliderRow` 的 min/max/step 与设置白名单的
1322
1322
  * KINDS 一致(改范围要同时看 lib/settings-schema.js —— 那份是唯一真源)。**例外是插件槽位
1323
1323
  * 那一档**:它不在 KINDS 里(`parallaxPluginDepths` 是 map 档,宿主不校验值)⇒ 那一档的
1324
- * 缺省值直接读 `src/parallax-layer.js` 的 `PARALLAX_PLUGIN_DEFAULT`,回显的钳制范围也读层
1324
+ * 缺省值直接读 `packages/parallax/src/parallax-layer.js` 的 `PARALLAX_PLUGIN_DEFAULT`,回显的钳制范围也读层
1325
1325
  * 同一对常量 `PARALLAX_GROUP_DEPTH_MIN` / `PARALLAX_GROUP_DEPTH_MAX`,不另外抄数(层与面板
1326
1326
  * 必须对"没这一行时算多少 / 越界值算多少"给出同一个答案;单独 import 本文件的测试要给这
1327
1327
  * 三枚符号补替身,见 test/verify-scene-live.mjs 的岛那一段)。
@@ -1339,7 +1339,7 @@ window.__ModuleLoader__.load({
1339
1339
  * m02697-③)。存档与面板从此同一个单位,不再有"面板说百分比、存档说倍率"的换算。
1340
1340
  * · **方向不是设置项**:壁纸与吉祥物的口径是"关于屏幕中心对称"(光标在右上 ⇒ 整块往左下)、
1341
1341
  * 界面整块与壁纸**同向**(用户口径 m01371:"希望输入框和背景同向运动" ⇒ 像镜头横移,近处
1342
- * 多走一点),要换向改 src/parallax-layer.js 的 `PARALLAX_DIRECTION` / `PARALLAX_UI_SIGN`。
1342
+ * 多走一点),要换向改 packages/parallax/src/parallax-layer.js 的 `PARALLAX_DIRECTION` / `PARALLAX_UI_SIGN`。
1343
1343
  * · 界面那一组的距离**各自独立**(用户口径 m01915-①:「各个区域的缓动距离支持单独调节」的
1344
1344
  * 升级版):总倍率 `parallaxUiDepth` 已退役(用户口径 m02697-①③),四个区域键就是四组各自
1345
1345
  * 的绝对距离。它动的是真实界面,所以默认关。
@@ -1386,7 +1386,7 @@ window.__ModuleLoader__.load({
1386
1386
  // ── 背景:壁纸那一层与挂在它上面的吉祥物 ──────────────────────────────
1387
1387
  on && parallaxSection(weT("背景"), "parallax-sec-bg", [
1388
1388
  // 距离的单位是**最长对角线的百分比**:光标贴到屏幕角上时,这一层最多挪 pct% 个对角线
1389
- // (壁纸额外放大 1 + pct/50 补边,见 src/parallax-layer.js 文件头)。
1389
+ // (壁纸额外放大 1 + pct/50 补边,见 packages/parallax/src/parallax-layer.js 文件头)。
1390
1390
  SliderRow(weT("背景缓动距离"), 0, 10, 0.1, sel.parallaxBg, onParallaxBg, "%", "parallax-bg",
1391
1391
  { tooltip: weT("光标贴到屏幕角时,壁纸挪动的距离占屏幕最长对角线的百分比(壁纸会同时放大同样多,免得边上露出底色)") }),
1392
1392
  switchRow(weT("吉祥物跟随"), sel.parallaxMascot !== false, onParallaxMascot,
@@ -1438,7 +1438,7 @@ window.__ModuleLoader__.load({
1438
1438
  // 屏上位置(与 avatar=1 / fx=2 对齐):三份 bundle 的求值顺序不保证,
1439
1439
  // 「扩展」页签由 panel-tabs 的注册表按 (order, 注册序) 排序,不能靠注册先后。
1440
1440
  order: 3,
1441
- // 模块级重置的分组名(issue #192):键集住在 lib/settings-schema.js 的 RESET_GROUPS。
1441
+ // 模块级重置的分组名(issue #192):键集住在 lib/settings-schema.js 的 RESET_MODULES。
1442
1442
  resetGroup: 'parallax',
1443
1443
  get title() { return weT("3D 效果"); },
1444
1444
  get desc() { return weT("光标移动时,壁纸与吉祥物沿屏幕中心的对称方向轻轻偏移,界面整块则与壁纸同向轻挪(视差纵深)"); },
@@ -1471,14 +1471,14 @@ window.__ModuleLoader__.load({
1471
1471
  /* ===== 贡献 ===== */
1472
1472
 
1473
1473
  // ① 「扩展」页签的三号模块描述符(id='parallax',resetGroup 同为 'parallax',与包名无关)。
1474
- // 主包 src/panel-tabs.js 自 P-A(3842584e)起已不再硬编码清单:extensionModules() 只问注册表
1475
- // (现见 :274-276 → weExtensionModules(),实现 src/extension-registry.js:89-97),这一行就是它的来源。
1474
+ // 主包 src/panel-tabs.js 不再硬编码清单:extensionModules() 只问注册表
1475
+ // (`weExtensionModules()`,实现 src/extension-registry.js),这一行就是它的来源。
1476
1476
  registerExtensionModule('parallax', PARALLAX_EXTENSION_MODULE);
1477
1477
 
1478
- // ② 行为层生命周期 + 插件槽位发现。主包 src/client.js 的作用域里**已经没有**这些裸名
1479
- // (P-A 起只在注册表里流动,主包只按注册表调用):挂载期订阅 :5393(→ :5383 `subscribe(hooks.sync)`)、
1480
- // 挂载后首次对时 :5512、拆卸期 :5559-5560 `hooks.dispose()`(另 :5521 退订);
1481
- // 插件槽位 :4360 `parallaxPluginSlots: sel.parallaxPlugin === true ? weDiscoveredGroupsOf('parallax').sort() : [],`
1478
+ // ② 行为层生命周期 + 插件槽位发现。主包 src/client.js 的作用域里**没有**这些裸名 ——
1479
+ // 主包只按注册表调用:挂载期订阅(`attachLayer` 里 `subscribe(hooks.sync)`)、挂载后首次对时、
1480
+ // 拆卸期 `hooks.dispose()`(并退订);插件槽位在 `sync` 里经 host 键取
1481
+ // `parallaxPluginSlots`(= `weDiscoveredGroupsOf('parallax').sort()`)。
1482
1482
  // ⇒ discoveredGroups 与 sync/dispose 一起注册(主包只调用、不接管实现)。
1483
1483
  registerLayerHooks('parallax', {
1484
1484
  sync: syncParallaxLayer,
package/lib/index.js CHANGED
@@ -17,7 +17,7 @@
17
17
  * 宿主半边零副作用 ⇒ dispose 是空操作,但形状与 lib/components/<组件>/index.js 同形。
18
18
  *
19
19
  * 纪律:不再注册额外 ctx.effect(不留残留,ADR-0014 S6.2)、不读 config、不 acquireKernelLease、
20
- * 模块顶层只有 import/声明(无求值期副作用、无定时器、无 window/DOM)。产物(lib/client.parallax.js)
20
+ * 模块顶层只有 import/声明(无求值期副作用、无定时器、无 window/DOM)。产物(packages/parallax/lib/client.parallax.js)
21
21
  * 落盘前不要声明 dsh.client / exports["./client"]:声明了却没有产物,客户端会按 id 去取那个
22
22
  * lazy factory 然后抛错(ADR-0014 S3.4)。
23
23
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-plugin-wallpaper-engine-parallax",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "description": "3D parallax for the DSH wallpaper engine: cursor-driven depth offsets for the wallpaper layers, the mascot, plugin-registered element groups and the UI block.",
5
5
  "icon": "./icon.png",
6
6
  "type": "module",
@@ -17,7 +17,7 @@
17
17
  "patch": "./cordis.patch.yml"
18
18
  },
19
19
  "client": {
20
- "inject": ["@deepseek-ai/dsh-client-runtime"],
20
+ "inject": ["@deepseek-ai/dsh-client-runtime", "dsh-plugin-wallpaper-engine"],
21
21
  "platform": "web",
22
22
  "immediately": true
23
23
  }