Skip to content

♻️ anim-uxのTimeline文書購読契約へ移行する - #6

Merged
EllaCoat merged 2 commits into
mainfrom
refactor/anim-ux-timeline-client
Aug 21, 2026
Merged

♻️ anim-uxのTimeline文書購読契約へ移行する#6
EllaCoat merged 2 commits into
mainfrom
refactor/anim-ux-timeline-client

Conversation

@EllaCoat

Copy link
Copy Markdown
Owner

anim-uxのTimeline文書購読へ移行

Timelineが別窓へ移動した場合も、keyframe easingの入力処理・色・curve・popupを親窓と子窓へ追従させます。anim-uxの読み込み順に依存せず、未導入時は親documentだけで従来機能を維持します。

主な変更

対象 変更
共通購読 subscribeAnimUxDocumentsを追加し、現在のAPIとanimux:readyの両方からdocument集合を購読
easing popup document集合の切替ごとにlistenerを付け替え、解除時に全listenerを削除
easing表示 documentごとにstyleとMutationObserverを所有し、切替・終了時に破棄
旧連携 AnimUX.addDocumentListener、active popout取得、open/closeのCustomEvent依存を削除

設計判断

  • anim-uxが公開するwindow.AnimUX.timeline.subscribeDocumentsを唯一の状態通知として扱い、導入前はBlockbench標準eventのanimux:readyで接続します。
  • 同じserviceのready通知は再購読せず、serviceが変わった場合だけ旧購読を解除して付け替えます。
  • anim-uxが存在しない、または購読に失敗した場合も、親documentを通知してAnimated Java単体の操作を維持します。

動作確認

入力・command 結果
yarn test 106件成功、1件todo
変更4fileへのESLint 違反0件
yarn prod warning 0件、error 0件でproduction build成功

未対応・注意

  • blockbench-anim-ux #8と同時に適用する契約変更です。
  • Blockbench 5.1.4のheadless結合とWindows実機の別窓操作は未確認です。自動testとproduction buildの成功で代替していません。
  • repository全体の既存lint違反は、この変更の対象に含めていません。

@EllaCoat
EllaCoat merged commit 14e3d26 into main Aug 21, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant