haori 0.59.3 → 0.59.4

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/dist/index.d.ts CHANGED
@@ -1402,6 +1402,22 @@ declare class ElementFragment extends Fragment {
1402
1402
  * @return 除去のPromise
1403
1403
  */
1404
1404
  remove(unmount?: boolean): Promise<void>;
1405
+ /**
1406
+ * 監視が観測した取り外しを、内部の木を保ったまま反映します。
1407
+ *
1408
+ * 外部のスクリプトによる移動は「取り外し → 追加」として観測されます。木を捨てると、
1409
+ * 付け直しで描画済みの DOM から作り直すことになり、描いた結果を宣言として読み込み
1410
+ * ます(仕様「監視対象」の「走査した要素を外部のスクリプトが DOM の中で移したり、
1411
+ * 外して後で戻したりしても、宣言は保ちます」)。付け直しでは `Core.addNode()` が
1412
+ * この断片をそのまま挿入して走査します。
1413
+ *
1414
+ * DOM は既に動いているため、DOM からの除去は行いません(同じ親の中で順を変えた
1415
+ * 場合、ノードはまだ親の下にあります)。外部ライブラリ連携は、DOM から外れる要素と
1416
+ * 同じく破棄します。
1417
+ *
1418
+ * @returns 戻り値はありません。
1419
+ */
1420
+ detachObserved(): void;
1405
1421
  /**
1406
1422
  * `data-external` の要素を、内部のフラグメント木を保ったまま親から外します。
1407
1423
  *
@@ -2405,6 +2421,22 @@ declare class ElementFragment extends Fragment {
2405
2421
  * @returns 挿入位置。解決できない場合はnull
2406
2422
  */
2407
2423
  private resolveInsertionPointFromDom;
2424
+ /**
2425
+ * 子ノードを HTML で置き換えます(`{{{ }}}` の描画)。
2426
+ *
2427
+ * 外す子ノードと挿入した子ノードは、監視の取り込みの対象外へ登録します。取り込むと、
2428
+ * 式を持つテキストの断片が取り外しとして木から外れ、挿入した HTML が新しい子として
2429
+ * 走査されます。以降のバインドの更新で式が評価されなくなり、挿入した HTML の中まで
2430
+ * 評価されます(仕様「`{{{ expression }}}`」の「バインドの更新のたびに評価し直し」と
2431
+ * 「挿入した HTML は走査の対象外です」)。
2432
+ *
2433
+ * 描画キューの中から呼びます。登録は、監視が書き込みを処理した後に、戻り値の関数で
2434
+ * 解除します。
2435
+ *
2436
+ * @param html 挿入する HTML
2437
+ * @returns 監視の除外の登録を解除する関数
2438
+ */
2439
+ replaceChildNodesWithHtml(html: string): () => void;
2408
2440
  /**
2409
2441
  * 子ノードを参照ノードの前に挿入します。
2410
2442
  * 参照ノードがnullの場合、親の最後に追加されます。
@@ -4826,7 +4858,7 @@ declare interface ValueChangeOrigin {
4826
4858
  * リリース時に `package.json` と揃えて更新します(`tests/version.test.ts` が
4827
4859
  * 一致を検査します)。
4828
4860
  */
4829
- export declare const version = "0.59.3";
4861
+ export declare const version = "0.59.4";
4830
4862
 
4831
4863
  /**
4832
4864
  * すべてのレンダリングタスク(追従投入分を含む)の完了を待ちます。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "haori",
3
- "version": "0.59.3",
3
+ "version": "0.59.4",
4
4
  "description": "A lightweight HTML-first UI engine powered by declarative data bindings and expressions.",
5
5
  "scripts": {
6
6
  "dev": "vite",