@wcstack/intersection 1.15.0 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.ja.md CHANGED
@@ -137,7 +137,8 @@ export default {
137
137
 
138
138
  | コマンド | 説明 |
139
139
  |---------------|-------------|
140
- | `observe()` | DOM から `target` / `root` を再解決し、観測を(再)開始する。 |
140
+ | `observe()` | DOM から `target` / `root` を再解決し、観測を(再)開始する。冪等: ターゲット + オプションが不変なら no-op(新しいコールバックは発火しない)。 |
141
+ | `reobserve()` | ターゲット / オプションが不変でも強制的に新規観測を行う — オブザーバを破棄して作り直すため、*現在の*可視状態に対して新しい初回コールバックが発火する。可視状態の遷移を伴わずレイアウトが変化した後(例: 無限スクロールで短いページが追加された)にエッジ駆動のコンシューマを再武装するのに使う。再武装成功中も `observing` は `true` のまま(誤った瞬断が起きない)。 |
141
142
  | `unobserve()` | 現在のターゲットの観測を停止する。 |
142
143
  | `disconnect()`| すべての観測を停止する。 |
143
144
  | `reset()` | `visible` ラッチをクリアし、後の交差が再びそれを設定できるようにする。 |
@@ -159,7 +160,7 @@ IntersectionCore.wcBindable = {
159
160
  { name: "observing", event: "wcs-intersect:observing-changed" },
160
161
  ],
161
162
  commands: [
162
- { name: "observe" }, { name: "unobserve" }, { name: "disconnect" }, { name: "reset" },
163
+ { name: "observe" }, { name: "reobserve" }, { name: "unobserve" }, { name: "disconnect" }, { name: "reset" },
163
164
  ],
164
165
  };
165
166
  ```
package/dist/index.d.ts CHANGED
@@ -125,7 +125,9 @@ interface WcsIntersectInputs {
125
125
  trigger: boolean;
126
126
  }
127
127
  interface WcsIntersectCoreCommands {
128
- observe(element: Element, options?: IntersectOptions): void;
128
+ observe(element: Element, options?: IntersectOptions): Promise<void>;
129
+ /** Force a fresh observation even when target+options are unchanged (rebuilds the observer). */
130
+ reobserve(element: Element, options?: IntersectOptions): void;
129
131
  unobserve(element: Element): void;
130
132
  disconnect(): void;
131
133
  /** Clear the `visible` latch so it can be set again by a later intersection. */
@@ -134,6 +136,8 @@ interface WcsIntersectCoreCommands {
134
136
  interface WcsIntersectCommands {
135
137
  /** Re-resolve the target/root from the DOM and (re)start observing. */
136
138
  observe(): void;
139
+ /** Re-resolve the target/root and force a fresh observation (rebuilds the observer). */
140
+ reobserve(): void;
137
141
  unobserve(): void;
138
142
  disconnect(): void;
139
143
  reset(): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wcstack/intersection",
3
- "version": "1.15.0",
3
+ "version": "1.16.0",
4
4
  "description": "Declarative IntersectionObserver component for Web Components. Framework-agnostic visibility primitive via wc-bindable-protocol.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.esm.js",