Changeset View
Changeset View
Standalone View
Standalone View
web/sidebar/community-creation/community-creation-modal.react.js
// @flow | // @flow | ||||
import * as React from 'react'; | import * as React from 'react'; | ||||
import { useDispatch } from 'react-redux'; | import { useDispatch } from 'react-redux'; | ||||
import { newThread, newThreadActionTypes } from 'lib/actions/thread-actions.js'; | import { newThread, newThreadActionTypes } from 'lib/actions/thread-actions.js'; | ||||
import { useModalContext } from 'lib/components/modal-provider.react.js'; | import { useModalContext } from 'lib/components/modal-provider.react.js'; | ||||
import { createLoadingStatusSelector } from 'lib/selectors/loading-selectors.js'; | import { createLoadingStatusSelector } from 'lib/selectors/loading-selectors.js'; | ||||
import type { LoadingStatus } from 'lib/types/loading-types.js'; | import type { LoadingStatus } from 'lib/types/loading-types.js'; | ||||
import { threadTypes } from 'lib/types/thread-types-enum.js'; | import { threadTypes } from 'lib/types/thread-types-enum.js'; | ||||
import type { NewThreadResult } from 'lib/types/thread-types.js'; | import type { NewThreadResult } from 'lib/types/thread-types.js'; | ||||
import { | import { | ||||
useDispatchActionPromise, | useDispatchActionPromise, | ||||
useServerCall, | useServerCall, | ||||
} from 'lib/utils/action-utils.js'; | } from 'lib/utils/action-utils.js'; | ||||
import CommunityCreationKeyserverLabel from './community-creation-keyserver-label.react.js'; | |||||
import CommunityCreationMembersModal from './community-creation-members-modal.react.js'; | import CommunityCreationMembersModal from './community-creation-members-modal.react.js'; | ||||
import css from './community-creation-modal.css'; | import css from './community-creation-modal.css'; | ||||
import CommIcon from '../../CommIcon.react.js'; | import CommIcon from '../../CommIcon.react.js'; | ||||
import Button, { buttonThemes } from '../../components/button.react.js'; | import Button, { buttonThemes } from '../../components/button.react.js'; | ||||
import EnumSettingsOption from '../../components/enum-settings-option.react.js'; | import EnumSettingsOption from '../../components/enum-settings-option.react.js'; | ||||
import UserAvatar from '../../components/user-avatar.react.js'; | import UserAvatar from '../../components/user-avatar.react.js'; | ||||
import LoadingIndicator from '../../loading-indicator.react.js'; | import LoadingIndicator from '../../loading-indicator.react.js'; | ||||
import Input from '../../modals/input.react.js'; | import Input from '../../modals/input.react.js'; | ||||
▲ Show 20 Lines • Show All 125 Lines • ▼ Show 20 Lines | function CommunityCreationModal(): React.Node { | ||||
return ( | return ( | ||||
<Modal | <Modal | ||||
name="Create a community" | name="Create a community" | ||||
onClose={modalContext.popModal} | onClose={modalContext.popModal} | ||||
size="large" | size="large" | ||||
> | > | ||||
<div className={css.modalBody}> | <div className={css.modalBody}> | ||||
<div className={css.ancestryContainer}> | <CommunityCreationKeyserverLabel /> | ||||
<p>within</p> | |||||
<div className={css.keyserverContainer}> | |||||
<CommIcon icon="cloud-filled" size={18} color="white" /> | |||||
<div className={css.keyserverName}>ashoat</div> | |||||
</div> | |||||
</div> | |||||
{avatarNode} | {avatarNode} | ||||
<form method="POST" className={css.formContainer}> | <form method="POST" className={css.formContainer}> | ||||
<div> | <div> | ||||
<div className={css.formTitle}>Community Name</div> | <div className={css.formTitle}>Community Name</div> | ||||
<div className={css.formContent}> | <div className={css.formContent}> | ||||
<Input | <Input | ||||
type="text" | type="text" | ||||
value={pendingCommunityName} | value={pendingCommunityName} | ||||
▲ Show 20 Lines • Show All 41 Lines • Show Last 20 Lines |