--- name: smarthr-ui-remote-dialog-trigger description: "RemoteDialogTriggerは、別コンポーネント階層から離れた位置のダイアログを開くためのトリガーコンポーネントです。ボタン配置とダイアログ定義を分離して管理するときに使います。" metadata: version: "1.0.0" source: smarthr-design-system generated-from: layer1+layer2+layer3 --- 別コンポーネント階層から離れた位置のダイアログを開くためのトリガーコンポーネントです。ボタン配置とダイアログ定義を分離して管理するときに使います。 たとえば、一覧テーブルの各行に置いた「削除」ボタンから、共通の削除確認ダイアログを開きたい場合に使えます。各行ごとに同じダイアログを書く必要がなく、テーブルの外に1つだけ配置したダイアログを、各行のボタンから共通で開くことができます。 ## import ```ts import { RemoteDialogTrigger } from 'smarthr-ui' ``` ## Props | Props 名 | 型 | デフォルト値 | 必須 | 説明 | |---|---|---|---|---| | targetId | string | - | ✓ | - | | onClick | (open: () => void) => void | - | - | - | ## 実装ルール ### best-practice-for-remote-trigger-dialog RemoteDialogTrigger、RemoteTriggerXxxxDialogのベストプラクティスをチェックするルールです。 ❌ NG: ```jsx open. content. ``` ✅ OK: ```jsx open. content. ``` 詳細は eslint-plugin-smarthr の各ルール README を参照してください。 ## 使い方チェックリスト ### 使用上の注意 > ボタンとダイアログを同じ場所に書ける場合は、通常のダイアログコンポーネントを使用する - [must] ボタンとダイアログを同じ場所に書ける場合は ActionDialog や FormDialog などのダイアログコンポーネントを使う - `RemoteDialogTrigger` は、同じダイアログを複数の場所から開きたい場合や、ボタンとダイアログを同じ場所に置きづらい場合にのみ使う