コンポーネント
← すべてのコンポーネント

無操作検知

stimeo--idle

一定時間操作が無ければ idle(任意で事前に prompt)、再操作で active を発火。

stimeo--idle コントローラは document 上のユーザー操作(mousemove / keydown / scroll など、加えてタブが可視に戻ったとき)を監視し、timeout ミリ秒のあいだ操作が無ければコントローラ要素に data-idle を付与して stimeo--idle:idle を発火します。任意の stimeo--idle:prompt を promptBefore ミリ秒前に発火でき、確定タイムアウト前に警告を出す設計(WCAG 2.2.1 を支援)を促します。操作があるたびタイマを張り直し、idle / prompt 中に再操作すると stimeo--idle:active を発火して data-idle を外します。操作は document に capture + passive で監視するため、非バブルの scroll もどこで起きても拾えます。挙動のみで警告 UI は描画せず(Dialog / Confirm と組む)、サーバセッションには触れません。タイマとリスナは disconnect(Turbo 遷移含む)で解除します。通常はルート要素に 1 つ置き、data-turbo-permanent で遷移をまたいで計測を継続します。

実行中

ページの操作を止めてください。3 秒で警告、6 秒で idle になります。マウスを動かすかキーを押すと active に戻ります。