diff options
author | Kristóf Marussy <kristof@marussy.com> | 2022-05-15 14:29:26 +0200 |
---|---|---|
committer | Kristóf Marussy <kristof@marussy.com> | 2022-05-16 00:55:04 +0200 |
commit | f32fc1105d43b713f40c3b2819ca14b11e989dc2 (patch) | |
tree | b7924be2c21d4f683a059b8d514a4876230a9e97 /packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx | |
parent | chore(deps): bump dependencies (diff) | |
download | sophie-f32fc1105d43b713f40c3b2819ca14b11e989dc2.tar.gz sophie-f32fc1105d43b713f40c3b2819ca14b11e989dc2.tar.zst sophie-f32fc1105d43b713f40c3b2819ca14b11e989dc2.zip |
refactor(renderer): remove StoreProvider
Use explicit prop threading to pass the MainStore to components, which
makes the data dependencies more explicit and enables better
testability.
Signed-off-by: Kristóf Marussy <kristof@marussy.com>
Diffstat (limited to 'packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx')
-rw-r--r-- | packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx b/packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx index c697170..b6644a3 100644 --- a/packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx +++ b/packages/renderer/src/components/sidebar/ToggleLocationBarButton.tsx | |||
@@ -27,7 +27,7 @@ import { observer } from 'mobx-react-lite'; | |||
27 | import React from 'react'; | 27 | import React from 'react'; |
28 | import { useTranslation } from 'react-i18next'; | 28 | import { useTranslation } from 'react-i18next'; |
29 | 29 | ||
30 | import { useStore } from '../StoreProvider'; | 30 | import type RendererStore from '../../stores/RendererStore'; |
31 | import { getLocaltionBarID } from '../locationBar/LocationBar'; | 31 | import { getLocaltionBarID } from '../locationBar/LocationBar'; |
32 | 32 | ||
33 | function ToggleLocationBarIcon({ | 33 | function ToggleLocationBarIcon({ |
@@ -45,12 +45,15 @@ function ToggleLocationBarIcon({ | |||
45 | return left ? <IconChevronLeft /> : <IconChevronRight />; | 45 | return left ? <IconChevronLeft /> : <IconChevronRight />; |
46 | } | 46 | } |
47 | 47 | ||
48 | function ToggleLocationBarButton(): JSX.Element { | 48 | function ToggleLocationBarButton({ |
49 | const { t } = useTranslation(); | 49 | store: { |
50 | const { | ||
51 | shared: { locationBarVisible, canToggleLocationBar }, | 50 | shared: { locationBarVisible, canToggleLocationBar }, |
52 | settings, | 51 | settings, |
53 | } = useStore(); | 52 | }, |
53 | }: { | ||
54 | store: RendererStore; | ||
55 | }): JSX.Element { | ||
56 | const { t } = useTranslation(); | ||
54 | const { selectedService } = settings; | 57 | const { selectedService } = settings; |
55 | 58 | ||
56 | return ( | 59 | return ( |