mirror of
https://github.com/bitsocialnet/5chan.git
synced 2026-08-03 07:41:04 +02:00
refactor(modals): split directory modal into separate create board modal
Separate DirectoryModal (for home view placeholders) and CreateBoardModal (for board view create button) into distinct components with their own stores, allowing independent styling and cleaner separation of concerns.
This commit is contained in:
@@ -49,7 +49,7 @@ const BoardsList = ({ multisub }: { multisub: MultisubSubplebbit[] }) => {
|
||||
// Handler for placeholder board links
|
||||
const handlePlaceholderClick = (e: React.MouseEvent<HTMLAnchorElement>) => {
|
||||
e.preventDefault();
|
||||
openDirectoryModal('placeholder');
|
||||
openDirectoryModal();
|
||||
};
|
||||
|
||||
if (loading) {
|
||||
|
||||
@@ -9,7 +9,9 @@ import PopularThreadsBox from './popular-threads-box';
|
||||
import BoardsList from './boards-list';
|
||||
import Version from '../../components/version';
|
||||
import useDisclaimerModalStore from '../../stores/use-disclaimer-modal-store';
|
||||
import useDirectoryModalStore from '../../stores/use-directory-modal-store';
|
||||
import DisclaimerModal from '../../components/disclaimer-modal';
|
||||
import DirectoryModal from '../../components/directory-modal';
|
||||
import _ from 'lodash';
|
||||
|
||||
// https://github.com/plebbit/lists/blob/master/5chan-multisub.json
|
||||
@@ -178,14 +180,23 @@ const Home = () => {
|
||||
const defaultSubplebbits = useDefaultSubplebbits();
|
||||
const subplebbitAddresses = useDefaultSubplebbitAddresses();
|
||||
const { subplebbits } = useSubplebbits({ subplebbitAddresses });
|
||||
const { closeDirectoryModal } = useDirectoryModalStore();
|
||||
|
||||
useEffect(() => {
|
||||
document.title = '5chan';
|
||||
}, []);
|
||||
|
||||
// Close directory modal when navigating away from home
|
||||
useEffect(() => {
|
||||
return () => {
|
||||
closeDirectoryModal();
|
||||
};
|
||||
}, [closeDirectoryModal]);
|
||||
|
||||
return (
|
||||
<>
|
||||
<DisclaimerModal />
|
||||
<DirectoryModal />
|
||||
<div className={styles.content}>
|
||||
<HomeLogo />
|
||||
<SearchBar />
|
||||
|
||||
Reference in New Issue
Block a user