NoLoginLayout.tsx 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import React, { ReactNode } from 'react';
  2. import Head from 'next/head';
  3. import { useGrowiTheme } from '~/stores/context';
  4. import { useNextThemes } from '~/stores/use-next-themes';
  5. import GrowiLogo from '../Icons/GrowiLogo';
  6. import { RawLayout } from './RawLayout';
  7. import loginStyles from './Login.module.scss';
  8. import commonStyles from './NoLoginLayout.module.scss';
  9. type Props = {
  10. title: string,
  11. className?: string,
  12. children?: ReactNode,
  13. }
  14. export const NoLoginLayout = ({
  15. children, title, className,
  16. }: Props): JSX.Element => {
  17. const classNames: string[] = ['wrapper'];
  18. if (className != null) {
  19. classNames.push(className);
  20. }
  21. return (
  22. <RawLayout title={title} className={`${commonStyles.nologin}`}>
  23. <div className="nologin">
  24. <div id="wrapper">
  25. <div id="page-wrapper">
  26. <div className="main container-fluid">
  27. <div className="row">
  28. <div className="col-md-12">
  29. <div className="noLogin-header mx-auto">
  30. <GrowiLogo />
  31. <h1 className="my-3">GROWI</h1>
  32. <div className="noLogin-form-errors px-3"></div>
  33. </div>
  34. </div>
  35. <div className="col-md-12">
  36. {children}
  37. </div>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. </div>
  43. </RawLayout>
  44. );
  45. };