mars-v2-frontend/components/Layout.tsx
Linkie Link ee71260429
MP-1660: base components (#57)
* MP-1660: base components

* fix: removed lodash.isequal
2022-11-29 17:45:00 +01:00

38 lines
1.1 KiB
TypeScript

import classNames from 'classnames'
import React from 'react'
import CreditManager from 'components/CreditManager'
import Navigation from 'components/Navigation'
import useCreditManagerStore from 'stores/useCreditManagerStore'
import useWalletStore from 'stores/useWalletStore'
const Layout = ({ children }: { children: React.ReactNode }) => {
const isOpen = useCreditManagerStore((s) => s.isOpen)
const address = useWalletStore((s) => s.address)
const filter = {
day: 'brightness-100 hue-rotate-0',
night: '-hue-rotate-82 brightness-30',
}
const isConnected = !!address
const backgroundClasses = classNames(
isConnected ? filter.day : filter.night,
'top-0 left-0 absolute block h-full w-full flex-col bg-body bg-mars bg-desktop bg-top bg-no-repeat filter transition-background duration-3000 ease-linear',
)
return (
<div className='relative min-h-screen w-full'>
<div className={backgroundClasses} />
<Navigation />
<main className='relative flex-1 p-6'>
{children}
{isOpen && <CreditManager />}
</main>
</div>
)
}
export default Layout