Если вам нужно поделиться состоянием, вы можете создать родительский компонент, в котором вы определяете состояние isPinned и передаете его обоим компонентам. Также, если вам нужно изменить состояние компонентов, вы можете передать метод для его обновления:
const ParentComp = () => {
const [ isPinned, setIsPinned ] = useState(false);
return (
<div>
<ComponentOne isPinned={isPinned} setIsPinned={setIsPinned} />
<ComponentTwo isPinned={isPinned} setIsPinned={setIsPinned} />
</div>
)
}
В любом из обоих компонентов вы можете использовать их реквизиты, например:
const ComponentOne = ({ isPinned, setIsPinned }) => (
<Button onClick={() => setIsPinned(!isPinned)} />
)