| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- import React from 'react';
- import PropTypes from 'prop-types';
- import { useCreateModalStatus, useIsDeviceSmallerThanMd, useDrawerOpened } from '~/stores/ui';
- import { useCurrentPagePath, useIsSearchPage } from '~/stores/context';
- import GlobalSearch from './GlobalSearch';
- const GrowiNavbarBottom = (props) => {
- const { data: isDrawerOpened, mutate: mutateDrawerOpened } = useDrawerOpened();
- const { data: isDeviceSmallerThanMd } = useIsDeviceSmallerThanMd();
- const { open: openCreateModal } = useCreateModalStatus();
- const { data: currentPagePath } = useCurrentPagePath();
- const { data: isSearchPage } = useIsSearchPage();
- const additionalClasses = ['grw-navbar-bottom'];
- if (isDrawerOpened) {
- additionalClasses.push('grw-navbar-bottom-drawer-opened');
- }
- return (
- <div className="d-md-none d-edit-none fixed-bottom">
- { isDeviceSmallerThanMd && !isSearchPage && (
- <div id="grw-global-search-collapse" className="grw-global-search collapse bg-dark">
- <div className="p-3">
- <GlobalSearch dropup />
- </div>
- </div>
- ) }
- <div className={`navbar navbar-expand navbar-dark bg-primary px-0 ${additionalClasses.join(' ')}`}>
- <ul className="navbar-nav w-100">
- <li className="nav-item mr-auto">
- <a
- role="button"
- className="nav-link btn-lg"
- onClick={() => mutateDrawerOpened(true)}
- >
- <i className="icon-menu"></i>
- </a>
- </li>
- {
- !isSearchPage && (
- <li className="nav-item">
- <a
- role="button"
- className="nav-link btn-lg"
- data-target="#grw-global-search-collapse"
- data-toggle="collapse"
- >
- <i className="icon-magnifier"></i>
- </a>
- </li>
- )
- }
- <li className="nav-item ml-auto">
- <a
- role="button"
- className="nav-link btn-lg"
- onClick={() => openCreateModal(currentPagePath || '')}
- >
- <i className="icon-pencil"></i>
- </a>
- </li>
- </ul>
- </div>
- </div>
- );
- };
- export default GrowiNavbarBottom;
|