背景
InputSearch を実装するにあたり、Input(src/components/ui/input/index.tsx)が内部で使っている以下のロジックを再利用したい。
useMergeRefs(または同等の ref マージ処理): 複数の ref を1つにまとめるロジック。InputSearch では外部 ref と内部 innerRef を同時に扱うために自前実装している
- コンテナクリックフォーカスロジック(
handleContainerClick 相当): コンテナの余白部分クリック時に内部の <input> へフォーカスを移す処理
現状これらは Input の index.tsx 内にローカル実装されており、named export されていないため、internal 側から import できない。
提案
以下のいずれかの対応をお願いしたい。
useMergeRefs を src/hooks/useMergeRefs.ts(または同等のパス)に切り出して named export する
- コンテナクリックフォーカスロジックを
useInputContainerFocus のような hook として切り出して named export する
InputSearch 側の暫定対応
InputSearchにて自前実装済み。
combinedRef: callback ref パターンで外部 ref と内部 ref をマージ
handleContainerClick: ボタン要素を除外しつつ input にフォーカスを移す
本 issue で対応がリリースされたら、自前実装を削除して import に切り替える別 PR を立てる予定。
背景
InputSearchを実装するにあたり、Input(src/components/ui/input/index.tsx)が内部で使っている以下のロジックを再利用したい。useMergeRefs(または同等の ref マージ処理): 複数の ref を1つにまとめるロジック。InputSearch では外部 ref と内部innerRefを同時に扱うために自前実装しているhandleContainerClick相当): コンテナの余白部分クリック時に内部の<input>へフォーカスを移す処理現状これらは
Inputのindex.tsx内にローカル実装されており、named export されていないため、internal 側からimportできない。提案
以下のいずれかの対応をお願いしたい。
useMergeRefsをsrc/hooks/useMergeRefs.ts(または同等のパス)に切り出して named export するuseInputContainerFocusのような hook として切り出して named export するInputSearch 側の暫定対応
InputSearchにて自前実装済み。combinedRef: callback ref パターンで外部 ref と内部 ref をマージhandleContainerClick: ボタン要素を除外しつつ input にフォーカスを移す本 issue で対応がリリースされたら、自前実装を削除して import に切り替える別 PR を立てる予定。