From dffa8e710a02770ca1c63b13fb1526804ab62009 Mon Sep 17 00:00:00 2001 From: jeffvli Date: Fri, 10 Oct 2025 18:49:25 -0700 Subject: [PATCH] wrap localstorage hook --- src/renderer/features/servers/components/server-list.tsx | 2 +- .../features/shared/components/list-music-folder-dropdown.tsx | 2 +- .../features/shared/components/list-sort-by-dropdown.tsx | 2 +- .../shared/components/list-sort-order-toggle-button.tsx | 2 +- src/renderer/is-updated-dialog.tsx | 2 +- src/shared/hooks/use-local-storage.ts | 3 +++ 6 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 src/shared/hooks/use-local-storage.ts diff --git a/src/renderer/features/servers/components/server-list.tsx b/src/renderer/features/servers/components/server-list.tsx index 0e1423a05..7c308d325 100644 --- a/src/renderer/features/servers/components/server-list.tsx +++ b/src/renderer/features/servers/components/server-list.tsx @@ -1,4 +1,3 @@ -import { useLocalStorage } from '@mantine/hooks'; import { openContextModal } from '@mantine/modals'; import isElectron from 'is-electron'; import { ChangeEvent } from 'react'; @@ -19,6 +18,7 @@ import { ContextModalVars } from '/@/shared/components/modal/modal'; import { Stack } from '/@/shared/components/stack/stack'; import { Switch } from '/@/shared/components/switch/switch'; import { Text } from '/@/shared/components/text/text'; +import { useLocalStorage } from '/@/shared/hooks/use-local-storage'; import { ServerType } from '/@/shared/types/domain-types'; const localSettings = isElectron() ? window.api.localSettings : null; diff --git a/src/renderer/features/shared/components/list-music-folder-dropdown.tsx b/src/renderer/features/shared/components/list-music-folder-dropdown.tsx index b0bb5bd14..f12190f06 100644 --- a/src/renderer/features/shared/components/list-music-folder-dropdown.tsx +++ b/src/renderer/features/shared/components/list-music-folder-dropdown.tsx @@ -1,4 +1,3 @@ -import { useLocalStorage } from '@mantine/hooks'; import { useQuery } from '@tanstack/react-query'; import { parseAsString, useQueryState } from 'nuqs'; @@ -6,6 +5,7 @@ import { sharedQueries } from '/@/renderer/features/shared/api/shared-api'; import { FolderButton } from '/@/renderer/features/shared/components/folder-button'; import { useCurrentServer } from '/@/renderer/store'; import { DropdownMenu } from '/@/shared/components/dropdown-menu/dropdown-menu'; +import { useLocalStorage } from '/@/shared/hooks/use-local-storage'; import { ItemListKey } from '/@/shared/types/types'; interface ListMusicFolderDropdownProps { diff --git a/src/renderer/features/shared/components/list-sort-by-dropdown.tsx b/src/renderer/features/shared/components/list-sort-by-dropdown.tsx index d9196084f..b066f1287 100644 --- a/src/renderer/features/shared/components/list-sort-by-dropdown.tsx +++ b/src/renderer/features/shared/components/list-sort-by-dropdown.tsx @@ -1,4 +1,3 @@ -import { useLocalStorage } from '@mantine/hooks'; import { parseAsString, useQueryState } from 'nuqs'; import i18n from '/@/i18n/i18n'; @@ -6,6 +5,7 @@ import { FILTER_KEYS } from '/@/renderer/features/shared/utils'; import { useCurrentServer } from '/@/renderer/store'; import { Button } from '/@/shared/components/button/button'; import { DropdownMenu } from '/@/shared/components/dropdown-menu/dropdown-menu'; +import { useLocalStorage } from '/@/shared/hooks/use-local-storage'; import { AlbumListSort, LibraryItem, ServerType, SortOrder } from '/@/shared/types/domain-types'; import { ItemListKey } from '/@/shared/types/types'; diff --git a/src/renderer/features/shared/components/list-sort-order-toggle-button.tsx b/src/renderer/features/shared/components/list-sort-order-toggle-button.tsx index 84d3e7232..210bbac70 100644 --- a/src/renderer/features/shared/components/list-sort-order-toggle-button.tsx +++ b/src/renderer/features/shared/components/list-sort-order-toggle-button.tsx @@ -1,8 +1,8 @@ -import { useLocalStorage } from '@mantine/hooks'; import { parseAsString, useQueryState } from 'nuqs'; import { OrderToggleButton } from '/@/renderer/features/shared/components/order-toggle-button'; import { FILTER_KEYS } from '/@/renderer/features/shared/utils'; +import { useLocalStorage } from '/@/shared/hooks/use-local-storage'; import { SortOrder } from '/@/shared/types/domain-types'; import { ItemListKey } from '/@/shared/types/types'; diff --git a/src/renderer/is-updated-dialog.tsx b/src/renderer/is-updated-dialog.tsx index 02b102664..5c43f32ae 100644 --- a/src/renderer/is-updated-dialog.tsx +++ b/src/renderer/is-updated-dialog.tsx @@ -1,4 +1,3 @@ -import { useLocalStorage } from '@mantine/hooks'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; @@ -10,6 +9,7 @@ import { Group } from '/@/shared/components/group/group'; import { Icon } from '/@/shared/components/icon/icon'; import { Stack } from '/@/shared/components/stack/stack'; import { Text } from '/@/shared/components/text/text'; +import { useLocalStorage } from '/@/shared/hooks/use-local-storage'; export function IsUpdatedDialog() { const { version } = packageJson; diff --git a/src/shared/hooks/use-local-storage.ts b/src/shared/hooks/use-local-storage.ts new file mode 100644 index 000000000..3506c733e --- /dev/null +++ b/src/shared/hooks/use-local-storage.ts @@ -0,0 +1,3 @@ +import { useLocalStorage as useMantineLocalStorage } from '@mantine/hooks'; + +export const useLocalStorage = useMantineLocalStorage;