diff --git a/ts/components/conversation/AdminLeaveClosedGroupDialog.tsx b/ts/components/dialog/AdminLeaveClosedGroupDialog.tsx similarity index 100% rename from ts/components/conversation/AdminLeaveClosedGroupDialog.tsx rename to ts/components/dialog/AdminLeaveClosedGroupDialog.tsx diff --git a/ts/components/EditProfileDialog.tsx b/ts/components/dialog/EditProfileDialog.tsx similarity index 92% rename from ts/components/EditProfileDialog.tsx rename to ts/components/dialog/EditProfileDialog.tsx index e67137e9b..fc8249335 100644 --- a/ts/components/EditProfileDialog.tsx +++ b/ts/components/dialog/EditProfileDialog.tsx @@ -2,24 +2,24 @@ import React from 'react'; import classNames from 'classnames'; import { QRCode } from 'react-qr-svg'; -import { Avatar, AvatarSize } from './Avatar'; +import { Avatar, AvatarSize } from '../Avatar'; -import { SessionButton, SessionButtonColor, SessionButtonType } from './session/SessionButton'; +import { SessionButton, SessionButtonColor, SessionButtonType } from '../session/SessionButton'; -import { SessionIconButton, SessionIconSize, SessionIconType } from './session/icon'; -import { PillDivider } from './session/PillDivider'; -import { SyncUtils, ToastUtils, UserUtils } from '../session/utils'; -import { MAX_USERNAME_LENGTH } from './session/registration/RegistrationTabs'; -import { SessionSpinner } from './session/SessionSpinner'; -import { ConversationModel, ConversationTypeEnum } from '../models/conversation'; +import { SessionIconButton, SessionIconSize, SessionIconType } from '../session/icon'; +import { PillDivider } from '../session/PillDivider'; +import { SyncUtils, ToastUtils, UserUtils } from '../../session/utils'; +import { MAX_USERNAME_LENGTH } from '../session/registration/RegistrationTabs'; +import { SessionSpinner } from '../session/SessionSpinner'; +import { ConversationModel, ConversationTypeEnum } from '../../models/conversation'; -import { SessionWrapperModal } from './session/SessionWrapperModal'; -import { AttachmentUtil } from '../util'; -import { getConversationController } from '../session/conversations'; -import { SpacerLG, SpacerMD } from './basic/Text'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; +import { AttachmentUtil } from '../../util'; +import { getConversationController } from '../../session/conversations'; +import { SpacerLG, SpacerMD } from '../basic/Text'; import autoBind from 'auto-bind'; -import { editProfileModal } from '../state/ducks/modalDialog'; -import { uploadOurAvatar } from '../interactions/conversationInteractions'; +import { editProfileModal } from '../../state/ducks/modalDialog'; +import { uploadOurAvatar } from '../../interactions/conversationInteractions'; interface State { profileName: string; diff --git a/ts/components/conversation/InviteContactsDialog.tsx b/ts/components/dialog/InviteContactsDialog.tsx similarity index 100% rename from ts/components/conversation/InviteContactsDialog.tsx rename to ts/components/dialog/InviteContactsDialog.tsx diff --git a/ts/components/session/ModalContainer.tsx b/ts/components/dialog/ModalContainer.tsx similarity index 76% rename from ts/components/session/ModalContainer.tsx rename to ts/components/dialog/ModalContainer.tsx index 9cd2d7d2c..a9583ba0a 100644 --- a/ts/components/session/ModalContainer.tsx +++ b/ts/components/dialog/ModalContainer.tsx @@ -16,20 +16,20 @@ import { getUpdateGroupNameModal, getUserDetailsModal, } from '../../state/selectors/modal'; -import { AdminLeaveClosedGroupDialog } from '../conversation/AdminLeaveClosedGroupDialog'; -import { InviteContactsDialog } from '../conversation/InviteContactsDialog'; -import { AddModeratorsDialog } from '../conversation/ModeratorsAddDialog'; -import { RemoveModeratorsDialog } from '../conversation/ModeratorsRemoveDialog'; -import { UpdateGroupMembersDialog } from '../conversation/UpdateGroupMembersDialog'; -import { UpdateGroupNameDialog } from '../conversation/UpdateGroupNameDialog'; -import { DeleteAccountModal } from '../dialog/DeleteAccountModal'; -import { EditProfileDialog } from '../EditProfileDialog'; -import { OnionPathModal } from '../OnionStatusPathDialog'; -import { UserDetailsDialog } from '../UserDetailsDialog'; +import { AdminLeaveClosedGroupDialog } from './AdminLeaveClosedGroupDialog'; +import { InviteContactsDialog } from './InviteContactsDialog'; +import { DeleteAccountModal } from './DeleteAccountModal'; +import { EditProfileDialog } from './EditProfileDialog'; +import { OnionPathModal } from './OnionStatusPathDialog'; +import { UserDetailsDialog } from './UserDetailsDialog'; import { SessionConfirm } from './SessionConfirm'; -import { SessionNicknameDialog } from './SessionNicknameDialog'; -import { SessionPasswordModal } from './SessionPasswordModal'; +import { SessionPasswordDialog } from './SessionPasswordDialog'; import { SessionSeedModal } from './SessionSeedModal'; +import { AddModeratorsDialog } from './ModeratorsAddDialog'; +import { RemoveModeratorsDialog } from './ModeratorsRemoveDialog'; +import { UpdateGroupMembersDialog } from './UpdateGroupMembersDialog'; +import { UpdateGroupNameDialog } from './UpdateGroupNameDialog'; +import { SessionNicknameDialog } from './SessionNicknameDialog'; export const ModalContainer = () => { const confirmModalState = useSelector(getConfirmModal); @@ -65,7 +65,7 @@ export const ModalContainer = () => { {adminLeaveClosedGroupModalState && ( )} - {sessionPasswordModalState && } + {sessionPasswordModalState && } {deleteAccountModalState && } ); diff --git a/ts/components/conversation/ModeratorsAddDialog.tsx b/ts/components/dialog/ModeratorsAddDialog.tsx similarity index 100% rename from ts/components/conversation/ModeratorsAddDialog.tsx rename to ts/components/dialog/ModeratorsAddDialog.tsx diff --git a/ts/components/conversation/ModeratorsRemoveDialog.tsx b/ts/components/dialog/ModeratorsRemoveDialog.tsx similarity index 100% rename from ts/components/conversation/ModeratorsRemoveDialog.tsx rename to ts/components/dialog/ModeratorsRemoveDialog.tsx diff --git a/ts/components/OnionStatusPathDialog.tsx b/ts/components/dialog/OnionStatusPathDialog.tsx similarity index 92% rename from ts/components/OnionStatusPathDialog.tsx rename to ts/components/dialog/OnionStatusPathDialog.tsx index 5c32cdea6..59671dda5 100644 --- a/ts/components/OnionStatusPathDialog.tsx +++ b/ts/components/dialog/OnionStatusPathDialog.tsx @@ -2,30 +2,27 @@ import React from 'react'; import _ from 'lodash'; -import { getTheme } from '../state/selectors/theme'; - import Electron from 'electron'; const { shell } = Electron; import { useDispatch, useSelector } from 'react-redux'; -import { SessionIcon, SessionIconButton, SessionIconSize, SessionIconType } from './session/icon'; - -import { SessionWrapperModal } from './session/SessionWrapperModal'; import ip2country from 'ip2country'; import countryLookup from 'country-code-lookup'; import { useTheme } from 'styled-components'; -import { Snode } from '../data/data'; -import { onionPathModal } from '../state/ducks/modalDialog'; +import { Snode } from '../../data/data'; +import { onionPathModal } from '../../state/ducks/modalDialog'; import { getFirstOnionPath, getFirstOnionPathLength, getIsOnline, getOnionPathsCount, -} from '../state/selectors/onions'; - -import { SessionSpinner } from './session/SessionSpinner'; -import { Flex } from './basic/Flex'; +} from '../../state/selectors/onions'; +import { getTheme } from '../../state/selectors/theme'; +import { Flex } from '../basic/Flex'; +import { SessionIcon, SessionIconButton, SessionIconSize, SessionIconType } from '../session/icon'; +import { SessionSpinner } from '../session/SessionSpinner'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; export type StatusLightType = { glowStartDelay: number; diff --git a/ts/components/session/SessionConfirm.tsx b/ts/components/dialog/SessionConfirm.tsx similarity index 91% rename from ts/components/session/SessionConfirm.tsx rename to ts/components/dialog/SessionConfirm.tsx index 3ba43ca00..8f5e0d529 100644 --- a/ts/components/session/SessionConfirm.tsx +++ b/ts/components/dialog/SessionConfirm.tsx @@ -1,12 +1,12 @@ import React, { useState } from 'react'; -import { SessionButton, SessionButtonColor } from './SessionButton'; -import { SessionHtmlRenderer } from './SessionHTMLRenderer'; -import { SessionIcon, SessionIconSize, SessionIconType } from './icon'; +import { SessionButton, SessionButtonColor } from '../session/SessionButton'; +import { SessionHtmlRenderer } from '../session/SessionHTMLRenderer'; +import { SessionIcon, SessionIconSize, SessionIconType } from '../session/icon'; import { DefaultTheme, useTheme, withTheme } from 'styled-components'; -import { SessionWrapperModal } from './SessionWrapperModal'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; import { updateConfirmModal } from '../../state/ducks/modalDialog'; import { SpacerLG } from '../basic/Text'; -import { SessionSpinner } from './SessionSpinner'; +import { SessionSpinner } from '../session/SessionSpinner'; export interface SessionConfirmDialogProps { message?: string; diff --git a/ts/components/session/SessionModal.tsx b/ts/components/dialog/SessionModal.tsx similarity index 97% rename from ts/components/session/SessionModal.tsx rename to ts/components/dialog/SessionModal.tsx index 31a850a0d..505b8514e 100644 --- a/ts/components/session/SessionModal.tsx +++ b/ts/components/dialog/SessionModal.tsx @@ -1,9 +1,9 @@ import React from 'react'; import classNames from 'classnames'; -import { SessionIconButton, SessionIconSize, SessionIconType } from './icon/'; -import { SessionButtonColor, SessionButtonType } from './SessionButton'; import { DefaultTheme } from 'styled-components'; +import { SessionIconButton, SessionIconSize, SessionIconType } from '../session/icon'; +import { SessionButtonColor, SessionButtonType } from '../session/SessionButton'; interface Props { title: string; diff --git a/ts/components/session/SessionNicknameDialog.tsx b/ts/components/dialog/SessionNicknameDialog.tsx similarity index 94% rename from ts/components/session/SessionNicknameDialog.tsx rename to ts/components/dialog/SessionNicknameDialog.tsx index d13cce10c..cb917f400 100644 --- a/ts/components/session/SessionNicknameDialog.tsx +++ b/ts/components/dialog/SessionNicknameDialog.tsx @@ -1,12 +1,12 @@ import React, { useState } from 'react'; import { getConversationController } from '../../session/conversations'; -import { SessionButton } from './SessionButton'; import _ from 'lodash'; -import { SessionWrapperModal } from './SessionWrapperModal'; import { SpacerLG } from '../basic/Text'; import { useDispatch } from 'react-redux'; import { changeNickNameModal } from '../../state/ducks/modalDialog'; +import { SessionButton } from '../session/SessionButton'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; type Props = { conversationId: string; diff --git a/ts/components/session/SessionPasswordModal.tsx b/ts/components/dialog/SessionPasswordDialog.tsx similarity index 96% rename from ts/components/session/SessionPasswordModal.tsx rename to ts/components/dialog/SessionPasswordDialog.tsx index 8e6c0777e..8e0f48314 100644 --- a/ts/components/session/SessionPasswordModal.tsx +++ b/ts/components/dialog/SessionPasswordDialog.tsx @@ -1,11 +1,11 @@ import React from 'react'; -import { SessionButton, SessionButtonColor } from './SessionButton'; -import { missingCaseError, PasswordUtil } from '../../util/'; +import { SessionButton, SessionButtonColor } from '../session/SessionButton'; +import { missingCaseError, PasswordUtil } from '../../util'; import { ToastUtils } from '../../session/utils'; -import { SessionIconType } from './icon'; +import { SessionIconType } from '../session/icon'; import { getPasswordHash } from '../../data/data'; -import { SessionWrapperModal } from './SessionWrapperModal'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; import { SpacerLG, SpacerSM } from '../basic/Text'; import autoBind from 'auto-bind'; import { sessionPassword } from '../../state/ducks/modalDialog'; @@ -23,7 +23,7 @@ interface State { currentPasswordRetypeEntered: string | null; } -export class SessionPasswordModal extends React.Component { +export class SessionPasswordDialog extends React.Component { private passportInput: HTMLInputElement | null = null; constructor(props: any) { diff --git a/ts/components/session/SessionSeedModal.tsx b/ts/components/dialog/SessionSeedModal.tsx similarity index 97% rename from ts/components/session/SessionSeedModal.tsx rename to ts/components/dialog/SessionSeedModal.tsx index 74ce12adf..3a48bac69 100644 --- a/ts/components/session/SessionSeedModal.tsx +++ b/ts/components/dialog/SessionSeedModal.tsx @@ -1,13 +1,13 @@ import React from 'react'; -import { SessionButton } from './SessionButton'; +import { SessionButton } from '../session/SessionButton'; import { ToastUtils, UserUtils } from '../../session/utils'; import { withTheme } from 'styled-components'; import { PasswordUtil } from '../../util'; import { getPasswordHash } from '../../data/data'; import { QRCode } from 'react-qr-svg'; import { mn_decode } from '../../session/crypto/mnemonic'; -import { SessionWrapperModal } from './SessionWrapperModal'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; import { SpacerLG, SpacerSM, SpacerXS } from '../basic/Text'; import autoBind from 'auto-bind'; import { recoveryPhraseModal } from '../../state/ducks/modalDialog'; diff --git a/ts/components/conversation/UpdateGroupMembersDialog.tsx b/ts/components/dialog/UpdateGroupMembersDialog.tsx similarity index 100% rename from ts/components/conversation/UpdateGroupMembersDialog.tsx rename to ts/components/dialog/UpdateGroupMembersDialog.tsx diff --git a/ts/components/conversation/UpdateGroupNameDialog.tsx b/ts/components/dialog/UpdateGroupNameDialog.tsx similarity index 100% rename from ts/components/conversation/UpdateGroupNameDialog.tsx rename to ts/components/dialog/UpdateGroupNameDialog.tsx diff --git a/ts/components/UserDetailsDialog.tsx b/ts/components/dialog/UserDetailsDialog.tsx similarity index 77% rename from ts/components/UserDetailsDialog.tsx rename to ts/components/dialog/UserDetailsDialog.tsx index 511c66a93..5d08d067a 100644 --- a/ts/components/UserDetailsDialog.tsx +++ b/ts/components/dialog/UserDetailsDialog.tsx @@ -1,17 +1,16 @@ import React, { useState } from 'react'; -import { Avatar, AvatarSize } from './Avatar'; -import { SessionButton, SessionButtonColor, SessionButtonType } from './session/SessionButton'; -import { SessionIdEditable } from './session/SessionIdEditable'; -import { getConversationController } from '../session/conversations'; -import { ConversationTypeEnum } from '../models/conversation'; -import { SessionWrapperModal } from './session/SessionWrapperModal'; -import { SpacerMD } from './basic/Text'; -import { updateUserDetailsModal } from '../state/ducks/modalDialog'; -import { openConversationWithMessages } from '../state/ducks/conversations'; // tslint:disable-next-line: no-submodule-imports import useKey from 'react-use/lib/useKey'; -import { getFirstUnreadMessageIdInConversation } from '../data/data'; +import { ConversationTypeEnum } from '../../models/conversation'; +import { getConversationController } from '../../session/conversations'; +import { openConversationWithMessages } from '../../state/ducks/conversations'; +import { updateUserDetailsModal } from '../../state/ducks/modalDialog'; +import { Avatar, AvatarSize } from '../Avatar'; +import { SpacerMD } from '../basic/Text'; +import { SessionButton, SessionButtonColor, SessionButtonType } from '../session/SessionButton'; +import { SessionIdEditable } from '../session/SessionIdEditable'; +import { SessionWrapperModal } from '../session/SessionWrapperModal'; type Props = { conversationId: string; authorAvatarPath: string | null; diff --git a/ts/components/session/ActionsPanel.tsx b/ts/components/session/ActionsPanel.tsx index 6ae2da3c8..9356440bf 100644 --- a/ts/components/session/ActionsPanel.tsx +++ b/ts/components/session/ActionsPanel.tsx @@ -37,20 +37,16 @@ import { getOpenGroupManager } from '../../opengroup/opengroupV2/OpenGroupManage import { forceRefreshRandomSnodePool } from '../../session/snode_api/snodePool'; import { getSwarmPollingInstance } from '../../session/snode_api'; import { DURATION } from '../../session/constants'; -import { - actions as conversationActions, - conversationChanged, - conversationRemoved, -} from '../../state/ducks/conversations'; +import { conversationChanged, conversationRemoved } from '../../state/ducks/conversations'; import { editProfileModal, onionPathModal } from '../../state/ducks/modalDialog'; import { uploadOurAvatar } from '../../interactions/conversationInteractions'; -import { ModalContainer } from './ModalContainer'; +import { ModalContainer } from '../dialog/ModalContainer'; import { debounce } from 'underscore'; import { loadDefaultRooms } from '../../opengroup/opengroupV2/ApiUtil'; -import { ActionPanelOnionStatusLight } from '../OnionStatusPathDialog'; // tslint:disable-next-line: no-import-side-effect no-submodule-imports +import { ActionPanelOnionStatusLight } from '../dialog/OnionStatusPathDialog'; const Section = (props: { type: SectionType; avatarPath?: string }) => { const ourNumber = useSelector(getOurNumber); const unreadMessageCount = useSelector(getUnreadMessageCount); diff --git a/ts/components/session/settings/SessionSettingListItem.tsx b/ts/components/session/settings/SessionSettingListItem.tsx index fe04793e1..451dd463a 100644 --- a/ts/components/session/settings/SessionSettingListItem.tsx +++ b/ts/components/session/settings/SessionSettingListItem.tsx @@ -7,7 +7,7 @@ import { SessionToggle } from '../SessionToggle'; import { SessionButton } from '../SessionButton'; import { SessionSettingType } from './SessionSettings'; import { SessionRadioGroup } from '../SessionRadioGroup'; -import { SessionConfirmDialogProps } from '../SessionConfirm'; +import { SessionConfirmDialogProps } from '../../dialog/SessionConfirm'; type Props = { title?: string; diff --git a/ts/components/session/settings/SessionSettings.tsx b/ts/components/session/settings/SessionSettings.tsx index 1fc8dd116..4a285b060 100644 --- a/ts/components/session/settings/SessionSettings.tsx +++ b/ts/components/session/settings/SessionSettings.tsx @@ -8,22 +8,20 @@ import { ConversationLookupType } from '../../../state/ducks/conversations'; import { StateType } from '../../../state/reducer'; import { getConversationController } from '../../../session/conversations'; import { getConversationLookup } from '../../../state/selectors/conversations'; -import { connect, useSelector } from 'react-redux'; +import { connect } from 'react-redux'; import { createOrUpdateItem, getPasswordHash, hasLinkPreviewPopupBeenDisplayed, } from '../../../../ts/data/data'; -import { SpacerLG, SpacerXS } from '../../basic/Text'; import { shell } from 'electron'; -import { SessionConfirmDialogProps } from '../SessionConfirm'; +import { SessionConfirmDialogProps } from '../../dialog/SessionConfirm'; import { mapDispatchToProps } from '../../../state/actions'; import { unblockConvoById } from '../../../interactions/conversationInteractions'; import { toggleAudioAutoplay } from '../../../state/ducks/userConfig'; import { sessionPassword } from '../../../state/ducks/modalDialog'; -import { PasswordAction } from '../SessionPasswordModal'; +import { PasswordAction } from '../../dialog/SessionPasswordDialog'; import { SessionIconButton, SessionIconSize, SessionIconType } from '../icon'; -import { withTheme } from 'styled-components'; export enum SessionSettingCategory { Appearance = 'appearance', diff --git a/ts/state/ducks/modalDialog.tsx b/ts/state/ducks/modalDialog.tsx index 6ec81e0d4..1eb17279d 100644 --- a/ts/state/ducks/modalDialog.tsx +++ b/ts/state/ducks/modalDialog.tsx @@ -1,6 +1,6 @@ import { createSlice, PayloadAction } from '@reduxjs/toolkit'; -import { SessionConfirmDialogProps } from '../../components/session/SessionConfirm'; -import { PasswordAction } from '../../components/session/SessionPasswordModal'; +import { SessionConfirmDialogProps } from '../../components/dialog/SessionConfirm'; +import { PasswordAction } from '../../components/dialog/SessionPasswordDialog'; export type ConfirmModalState = SessionConfirmDialogProps | null; export type InviteContactModalState = { conversationId: string } | null;