Skip to content

Commit

Permalink
refactor: rename IsMobileUAProvider to LayoutProvider, update all occ…
Browse files Browse the repository at this point in the history
…urrences
  • Loading branch information
viktoriabakun authored and olegshilov committed Sep 3, 2024
1 parent a113f2b commit 17ea88a
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 39 deletions.
24 changes: 12 additions & 12 deletions apps/shell/src/providers/app-providers.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import {
CosmosProvider,
ReactQueryProvider,
Toaster,
IsMobileUAProvider,
WalletProvider,
LayoutProvider,
} from '@haqq/shell-shared';
import { WalletModals } from '../components/wallet-modals';
import { createWagmiConfig } from '../config/wagmi-config';
Expand All @@ -31,18 +31,18 @@ export function AppProviders({
: createWagmiConfig(walletConnectProjectId);

return (
<IsMobileUAProvider isMobileUA={isMobileUA}>
<WagmiProvider config={actualWagmiConfig} initialState={initialState}>
<ReactQueryProvider withDevtools dehydratedState={dehydratedState}>
<CosmosProvider>
<WalletProvider>
<WagmiProvider config={actualWagmiConfig} initialState={initialState}>
<ReactQueryProvider withDevtools dehydratedState={dehydratedState}>
<CosmosProvider>
<WalletProvider>
<LayoutProvider isMobileUA={isMobileUA}>
{children}
<Toaster />
<WalletModals />
</WalletProvider>
</CosmosProvider>
</ReactQueryProvider>
</WagmiProvider>
</IsMobileUAProvider>
</LayoutProvider>
<WalletModals />
</WalletProvider>
</CosmosProvider>
</ReactQueryProvider>
</WagmiProvider>
);
}
2 changes: 1 addition & 1 deletion libs/shared/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export * from './providers/cosmos-provider';
export * from './providers/react-query-provider';
export * from './providers/toaster';
export * from './providers/wallet-provider';
export * from './providers/is-mobile-ua-provider';
export * from './providers/layout-provider';

export * from './hooks/use-account-info/use-account-info';
export * from './hooks/use-address/use-address';
Expand Down
24 changes: 0 additions & 24 deletions libs/shared/src/providers/is-mobile-ua-provider.tsx

This file was deleted.

31 changes: 31 additions & 0 deletions libs/shared/src/providers/layout-provider.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
'use client';
import { createContext, PropsWithChildren, useContext } from 'react';

export interface ILayoutContext {
isMobileUA: boolean;
}

const LayoutContext = createContext<ILayoutContext | null>(null);

export function useLayout() {
const layoutContext = useContext(LayoutContext);

if (!layoutContext) {
throw new Error(
'useLayout should be used only from child of LayoutProvider',
);
}

return layoutContext;
}

export function LayoutProvider({
isMobileUA,
children,
}: PropsWithChildren<ILayoutContext>) {
return (
<LayoutContext.Provider value={{ isMobileUA }}>
{children}
</LayoutContext.Provider>
);
}
4 changes: 2 additions & 2 deletions libs/ui-kit/src/lib/header-mobile.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import clsx from 'clsx';
import Image from 'next/image';
import Link from 'next/link';
import { useScrollLock } from 'usehooks-ts';
import { useIsMobileUA } from '@haqq/shell-shared';
import { useLayout } from '@haqq/shell-shared';
import { BurgerButton } from './burger-button';
import { Container } from './container';
import { HeaderNavLink } from './header-nav-link';
Expand Down Expand Up @@ -143,7 +143,7 @@ function AnimatedOrNot({
baseHeaderStyles,
children,
}: PropsWithChildren<{ baseHeaderStyles: string }>) {
const isMobileUA = useIsMobileUA();
const { isMobileUA } = useLayout();

return isMobileUA ? (
<StaticHeader baseHeaderStyles={baseHeaderStyles}>{children}</StaticHeader>
Expand Down

0 comments on commit 17ea88a

Please sign in to comment.