fix: workspace names now default to account email after signing in. It can later be changed from the workspace switcher menu.

This commit is contained in:
Mo
2023-05-04 05:52:42 -05:00
parent d9c480b67b
commit 8385b4e89f
184 changed files with 215 additions and 205 deletions

View File

@@ -16,6 +16,7 @@ import { StorageValueModes } from '../Storage/StorageTypes'
import { DeinitMode } from './DeinitMode' import { DeinitMode } from './DeinitMode'
import { DeinitSource } from './DeinitSource' import { DeinitSource } from './DeinitSource'
import { UserClientInterface } from '../User/UserClientInterface' import { UserClientInterface } from '../User/UserClientInterface'
import { SessionsClientInterface } from '../Session/SessionsClientInterface'
export interface ApplicationInterface { export interface ApplicationInterface {
deinit(mode: DeinitMode, source: DeinitSource): void deinit(mode: DeinitMode, source: DeinitSource): void
@@ -51,6 +52,7 @@ export interface ApplicationInterface {
get files(): FilesClientInterface get files(): FilesClientInterface
get subscriptions(): SubscriptionClientInterface get subscriptions(): SubscriptionClientInterface
get fileBackups(): BackupServiceInterface | undefined get fileBackups(): BackupServiceInterface | undefined
get sessions(): SessionsClientInterface
readonly identifier: ApplicationIdentifier readonly identifier: ApplicationIdentifier
readonly platform: Platform readonly platform: Platform
deviceInterface: DeviceInterface deviceInterface: DeviceInterface

View File

@@ -8,6 +8,7 @@ import {
InternalEventBus, InternalEventBus,
InternalEventBusInterface, InternalEventBusInterface,
RawStorageKey, RawStorageKey,
ApplicationEvent,
} from '@standardnotes/services' } from '@standardnotes/services'
import { UuidGenerator } from '@standardnotes/utils' import { UuidGenerator } from '@standardnotes/utils'
import { AppGroupCallback } from './AppGroupCallback' import { AppGroupCallback } from './AppGroupCallback'
@@ -72,6 +73,13 @@ export class SNApplicationGroup<D extends DeviceInterface = DeviceInterface> ext
this.primaryApplication = application this.primaryApplication = application
application.addEventObserver(async () => {
this.renameDescriptor(
primaryDescriptor as ApplicationDescriptor,
application.sessions.getWorkspaceDisplayIdentifier(),
)
}, ApplicationEvent.SignedIn)
await this.notifyEvent(ApplicationGroupEvent.PrimaryApplicationSet, { application: application }) await this.notifyEvent(ApplicationGroupEvent.PrimaryApplicationSet, { application: application })
} }

View File

@@ -19,7 +19,7 @@ declare global {
platform?: Platform platform?: Platform
application?: WebApplication application?: WebApplication
mainApplicationGroup?: ApplicationGroup mainApplicationGroup?: WebApplicationGroup
MSStream?: unknown MSStream?: unknown
} }
} }
@@ -30,9 +30,9 @@ import { DesktopManagerInterface, Platform, SNLog } from '@standardnotes/snjs'
import ApplicationGroupView from './Components/ApplicationGroupView/ApplicationGroupView' import ApplicationGroupView from './Components/ApplicationGroupView/ApplicationGroupView'
import { WebDevice } from './Application/Device/WebDevice' import { WebDevice } from './Application/Device/WebDevice'
import { StartApplication } from './Application/Device/StartApplication' import { StartApplication } from './Application/Device/StartApplication'
import { ApplicationGroup } from './Application/ApplicationGroup' import { WebApplicationGroup } from './Application/WebApplicationGroup'
import { WebOrDesktopDevice } from './Application/Device/WebOrDesktopDevice' import { WebOrDesktopDevice } from './Application/Device/WebOrDesktopDevice'
import { WebApplication } from './Application/Application' import { WebApplication } from './Application/WebApplication'
import { createRoot, Root } from 'react-dom/client' import { createRoot, Root } from 'react-dom/client'
import { ElementIds } from './Constants/ElementIDs' import { ElementIds } from './Constants/ElementIDs'
import { setDefaultMonospaceFont } from './setDefaultMonospaceFont' import { setDefaultMonospaceFont } from './setDefaultMonospaceFont'

View File

@@ -13,7 +13,7 @@ import {
SNLog, SNLog,
SNTag, SNTag,
} from '@standardnotes/snjs' } from '@standardnotes/snjs'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { WebOrDesktopDevice } from './Device/WebOrDesktopDevice' import { WebOrDesktopDevice } from './Device/WebOrDesktopDevice'
describe('web application', () => { describe('web application', () => {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from './Application' import { WebApplication } from './WebApplication'
import { ApplicationDescriptor, SNApplicationGroup } from '@standardnotes/snjs' import { ApplicationDescriptor, SNApplicationGroup } from '@standardnotes/snjs'
import { getPlatform, isDesktopApplication } from '@/Utils' import { getPlatform, isDesktopApplication } from '@/Utils'
import { WebOrDesktopDevice } from '@/Application/Device/WebOrDesktopDevice' import { WebOrDesktopDevice } from '@/Application/Device/WebOrDesktopDevice'
@@ -23,7 +23,7 @@ const createApplication = (
return application return application
} }
export class ApplicationGroup extends SNApplicationGroup<WebOrDesktopDevice> { export class WebApplicationGroup extends SNApplicationGroup<WebOrDesktopDevice> {
constructor(private defaultSyncServerHost: string, device: WebOrDesktopDevice, private webSocketUrl: string) { constructor(private defaultSyncServerHost: string, device: WebOrDesktopDevice, private webSocketUrl: string) {
super(device) super(device)
} }

View File

@@ -1,5 +1,5 @@
import { ApplicationEvent } from '@standardnotes/snjs' import { ApplicationEvent } from '@standardnotes/snjs'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { autorun, IReactionDisposer, IReactionPublic } from 'mobx' import { autorun, IReactionDisposer, IReactionPublic } from 'mobx'
import { Component } from 'react' import { Component } from 'react'

View File

@@ -1,8 +1,8 @@
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { useCallback, FunctionComponent, KeyboardEventHandler } from 'react' import { useCallback, FunctionComponent, KeyboardEventHandler } from 'react'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { AccountMenuPane } from './AccountMenuPane' import { AccountMenuPane } from './AccountMenuPane'
import MenuPaneSelector from './MenuPaneSelector' import MenuPaneSelector from './MenuPaneSelector'
import { KeyboardKey } from '@standardnotes/ui-services' import { KeyboardKey } from '@standardnotes/ui-services'
@@ -11,7 +11,7 @@ export type AccountMenuProps = {
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
application: WebApplication application: WebApplication
onClickOutside: () => void onClickOutside: () => void
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
} }
const AccountMenu: FunctionComponent<AccountMenuProps> = ({ const AccountMenu: FunctionComponent<AccountMenuProps> = ({

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { ChangeEventHandler, FunctionComponent, ReactNode, useCallback, useEffect, useState } from 'react' import { ChangeEventHandler, FunctionComponent, ReactNode, useCallback, useEffect, useState } from 'react'

View File

@@ -1,5 +1,5 @@
import { STRING_NON_MATCHING_PASSWORDS } from '@/Constants/Strings' import { STRING_NON_MATCHING_PASSWORDS } from '@/Constants/Strings'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { import {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { import {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'
@@ -10,7 +10,7 @@ import Menu from '@/Components/Menu/Menu'
import MenuItem from '@/Components/Menu/MenuItem' import MenuItem from '@/Components/Menu/MenuItem'
import MenuItemSeparator from '@/Components/Menu/MenuItemSeparator' import MenuItemSeparator from '@/Components/Menu/MenuItemSeparator'
import WorkspaceSwitcherOption from './WorkspaceSwitcher/WorkspaceSwitcherOption' import WorkspaceSwitcherOption from './WorkspaceSwitcher/WorkspaceSwitcherOption'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { formatLastSyncDate } from '@/Utils/DateUtils' import { formatLastSyncDate } from '@/Utils/DateUtils'
import Spinner from '@/Components/Spinner/Spinner' import Spinner from '@/Components/Spinner/Spinner'
import { MenuItemIconSize } from '@/Constants/TailwindClassNames' import { MenuItemIconSize } from '@/Constants/TailwindClassNames'
@@ -18,7 +18,7 @@ import { MenuItemIconSize } from '@/Constants/TailwindClassNames'
type Props = { type Props = {
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
application: WebApplication application: WebApplication
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
setMenuPane: (pane: AccountMenuPane) => void setMenuPane: (pane: AccountMenuPane) => void
closeMenu: () => void closeMenu: () => void
} }

View File

@@ -1,5 +1,5 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent, useState } from 'react' import { FunctionComponent, useState } from 'react'
@@ -12,7 +12,7 @@ import SignInPane from './SignIn'
type Props = { type Props = {
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
application: WebApplication application: WebApplication
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
menuPane: AccountMenuPane menuPane: AccountMenuPane
setMenuPane: (pane: AccountMenuPane) => void setMenuPane: (pane: AccountMenuPane) => void
closeMenu: () => void closeMenu: () => void

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { isDev } from '@/Utils' import { isDev } from '@/Utils'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'

View File

@@ -1,6 +1,6 @@
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { User as UserType } from '@standardnotes/snjs' import { User as UserType } from '@standardnotes/snjs'
type Props = { type Props = {

View File

@@ -1,4 +1,4 @@
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { ApplicationDescriptor, ApplicationGroupEvent, ButtonType } from '@standardnotes/snjs' import { ApplicationDescriptor, ApplicationGroupEvent, ButtonType } from '@standardnotes/snjs'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
@@ -10,7 +10,7 @@ import MenuItemSeparator from '@/Components/Menu/MenuItemSeparator'
import WorkspaceMenuItem from './WorkspaceMenuItem' import WorkspaceMenuItem from './WorkspaceMenuItem'
type Props = { type Props = {
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
isOpen: boolean isOpen: boolean
hideWorkspaceOptions?: boolean hideWorkspaceOptions?: boolean

View File

@@ -1,5 +1,5 @@
import { FOCUSABLE_BUT_NOT_TABBABLE } from '@/Constants/Constants' import { FOCUSABLE_BUT_NOT_TABBABLE } from '@/Constants/Constants'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent, useCallback, useRef, useState } from 'react' import { FunctionComponent, useCallback, useRef, useState } from 'react'
@@ -10,7 +10,7 @@ import Popover from '@/Components/Popover/Popover'
import { MenuItemIconSize } from '@/Constants/TailwindClassNames' import { MenuItemIconSize } from '@/Constants/TailwindClassNames'
type Props = { type Props = {
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
} }

View File

@@ -1,5 +1,5 @@
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { Component } from 'react' import { Component } from 'react'
import ApplicationView from '@/Components/ApplicationView/ApplicationView' import ApplicationView from '@/Components/ApplicationView/ApplicationView'
import { WebOrDesktopDevice } from '@/Application/Device/WebOrDesktopDevice' import { WebOrDesktopDevice } from '@/Application/Device/WebOrDesktopDevice'
@@ -38,7 +38,7 @@ const renderDialog = (message: string) => {
class ApplicationGroupView extends Component<Props, State> { class ApplicationGroupView extends Component<Props, State> {
applicationObserverRemover?: () => void applicationObserverRemover?: () => void
private group?: ApplicationGroup private group?: WebApplicationGroup
private application?: WebApplication private application?: WebApplication
constructor(props: Props) { constructor(props: Props) {
@@ -52,7 +52,7 @@ class ApplicationGroupView extends Component<Props, State> {
return return
} }
this.group = new ApplicationGroup(props.server, props.device, props.websocketUrl) this.group = new WebApplicationGroup(props.server, props.device, props.websocketUrl)
window.mainApplicationGroup = this.group window.mainApplicationGroup = this.group

View File

@@ -1,7 +1,7 @@
import { ReactNode, createContext, useContext, memo } from 'react' import { ReactNode, createContext, useContext, memo } from 'react'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
const ApplicationContext = createContext<WebApplication | undefined>(undefined) const ApplicationContext = createContext<WebApplication | undefined>(undefined)

View File

@@ -1,8 +1,8 @@
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { getPlatformString, isIOS } from '@/Utils' import { getPlatformString, isIOS } from '@/Utils'
import { ApplicationEvent, Challenge, removeFromArray, WebAppEvent } from '@standardnotes/snjs' import { ApplicationEvent, Challenge, removeFromArray, WebAppEvent } from '@standardnotes/snjs'
import { alertDialog, RouteType } from '@standardnotes/ui-services' import { alertDialog, RouteType } from '@standardnotes/ui-services'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import Footer from '@/Components/Footer/Footer' import Footer from '@/Components/Footer/Footer'
import SessionsModal from '@/Components/SessionsModal/SessionsModal' import SessionsModal from '@/Components/SessionsModal/SessionsModal'
import PreferencesViewWrapper from '@/Components/Preferences/PreferencesViewWrapper' import PreferencesViewWrapper from '@/Components/Preferences/PreferencesViewWrapper'
@@ -33,7 +33,7 @@ import IosKeyboardClose from '../IosKeyboardClose/IosKeyboardClose'
type Props = { type Props = {
application: WebApplication application: WebApplication
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
} }
const LazyLoadedClipperView = lazy(() => import('../ClipperView/ClipperView')) const LazyLoadedClipperView = lazy(() => import('../ClipperView/ClipperView'))

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ChallengePrompt } from '@standardnotes/services' import { ChallengePrompt } from '@standardnotes/services'
import { RefObject, useState } from 'react' import { RefObject, useState } from 'react'
import Button from '../Button/Button' import Button from '../Button/Button'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { import {
ButtonType, ButtonType,
Challenge, Challenge,
@@ -14,7 +14,7 @@ import Button from '@/Components/Button/Button'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'
import ChallengeModalPrompt from './ChallengePrompt' import ChallengeModalPrompt from './ChallengePrompt'
import LockscreenWorkspaceSwitcher from './LockscreenWorkspaceSwitcher' import LockscreenWorkspaceSwitcher from './LockscreenWorkspaceSwitcher'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { ChallengeModalValues } from './ChallengeModalValues' import { ChallengeModalValues } from './ChallengeModalValues'
import { InputValue } from './InputValue' import { InputValue } from './InputValue'
@@ -27,7 +27,7 @@ import { useAutoElementRect } from '@/Hooks/useElementRect'
type Props = { type Props = {
application: WebApplication application: WebApplication
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
challenge: Challenge challenge: Challenge
onDismiss?: (challenge: Challenge) => void onDismiss?: (challenge: Challenge) => void
} }

View File

@@ -8,7 +8,7 @@ import { FunctionComponent, useCallback, useEffect, useRef } from 'react'
import DecoratedInput from '@/Components/Input/DecoratedInput' import DecoratedInput from '@/Components/Input/DecoratedInput'
import DecoratedPasswordInput from '@/Components/Input/DecoratedPasswordInput' import DecoratedPasswordInput from '@/Components/Input/DecoratedPasswordInput'
import { ChallengeModalValues } from './ChallengeModalValues' import { ChallengeModalValues } from './ChallengeModalValues'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { InputValue } from './InputValue' import { InputValue } from './InputValue'
import BiometricsPrompt from './BiometricsPrompt' import BiometricsPrompt from './BiometricsPrompt'
import U2FPrompt from './U2FPrompt' import U2FPrompt from './U2FPrompt'

View File

@@ -1,4 +1,4 @@
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { FunctionComponent, useCallback, useRef, useState } from 'react' import { FunctionComponent, useCallback, useRef, useState } from 'react'
import WorkspaceSwitcherMenu from '@/Components/AccountMenu/WorkspaceSwitcher/WorkspaceSwitcherMenu' import WorkspaceSwitcherMenu from '@/Components/AccountMenu/WorkspaceSwitcher/WorkspaceSwitcherMenu'
@@ -7,7 +7,7 @@ import Icon from '@/Components/Icon/Icon'
import Popover from '../Popover/Popover' import Popover from '../Popover/Popover'
type Props = { type Props = {
mainApplicationGroup: ApplicationGroup mainApplicationGroup: WebApplicationGroup
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
} }

View File

@@ -2,7 +2,7 @@ import { Username } from '@standardnotes/snjs'
import { ChallengePrompt } from '@standardnotes/services' import { ChallengePrompt } from '@standardnotes/services'
import { RefObject, useState } from 'react' import { RefObject, useState } from 'react'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { isAndroid } from '@/Utils' import { isAndroid } from '@/Utils'
import Button from '../Button/Button' import Button from '../Button/Button'

View File

@@ -2,7 +2,7 @@ import Icon from '@/Components/Icon/Icon'
import Menu from '@/Components/Menu/Menu' import Menu from '@/Components/Menu/Menu'
import { usePremiumModal } from '@/Hooks/usePremiumModal' import { usePremiumModal } from '@/Hooks/usePremiumModal'
import { STRING_EDIT_LOCKED_ATTEMPT } from '@/Constants/Strings' import { STRING_EDIT_LOCKED_ATTEMPT } from '@/Constants/Strings'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ComponentArea, NoteMutator, NoteType, PrefKey, SNComponent, SNNote } from '@standardnotes/snjs' import { ComponentArea, NoteMutator, NoteType, PrefKey, SNComponent, SNNote } from '@standardnotes/snjs'
import { Fragment, FunctionComponent, useCallback, useEffect, useMemo, useState } from 'react' import { Fragment, FunctionComponent, useCallback, useEffect, useMemo, useState } from 'react'
import { EditorMenuGroup } from '@/Components/NotesOptions/EditorMenuGroup' import { EditorMenuGroup } from '@/Components/NotesOptions/EditorMenuGroup'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { NotesController } from '@/Controllers/NotesController/NotesController' import { NotesController } from '@/Controllers/NotesController/NotesController'
import { useRef, useState } from 'react' import { useRef, useState } from 'react'
import RoundIconButton from '../Button/RoundIconButton' import RoundIconButton from '../Button/RoundIconButton'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { STRING_EDIT_LOCKED_ATTEMPT } from '@/Constants/Strings' import { STRING_EDIT_LOCKED_ATTEMPT } from '@/Constants/Strings'
import { usePremiumModal } from '@/Hooks/usePremiumModal' import { usePremiumModal } from '@/Hooks/usePremiumModal'
import { createEditorMenuGroups } from '@/Utils/createEditorMenuGroups' import { createEditorMenuGroups } from '@/Utils/createEditorMenuGroups'

View File

@@ -1,4 +1,4 @@
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { SNLogoFull } from '@standardnotes/icons' import { SNLogoFull } from '@standardnotes/icons'
import { useCallback, useEffect, useState } from 'react' import { useCallback, useEffect, useState } from 'react'
@@ -48,7 +48,7 @@ const ClipperView = ({
applicationGroup, applicationGroup,
}: { }: {
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
applicationGroup: ApplicationGroup applicationGroup: WebApplicationGroup
}) => { }) => {
const application = useApplication() const application = useApplication()

View File

@@ -7,7 +7,7 @@ import {
ComponentViewerEvent, ComponentViewerEvent,
ComponentViewerError, ComponentViewerError,
} from '@standardnotes/snjs' } from '@standardnotes/snjs'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FunctionComponent, useCallback, useEffect, useRef, useState } from 'react' import { FunctionComponent, useCallback, useEffect, useRef, useState } from 'react'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import OfflineRestricted from '@/Components/ComponentView/OfflineRestricted' import OfflineRestricted from '@/Components/ComponentView/OfflineRestricted'

View File

@@ -3,7 +3,7 @@ import { ViewControllerManager } from '@Controllers/ViewControllerManager'
import { useCallback, useRef } from 'react' import { useCallback, useRef } from 'react'
import { STRING_DELETE_ACCOUNT_CONFIRMATION } from '@/Constants/Strings' import { STRING_DELETE_ACCOUNT_CONFIRMATION } from '@/Constants/Strings'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import Icon from '../Icon/Icon' import Icon from '../Icon/Icon'
import AlertDialog from '../AlertDialog/AlertDialog' import AlertDialog from '../AlertDialog/AlertDialog'

View File

@@ -1,9 +1,9 @@
import { FunctionComponent, useCallback, useRef } from 'react' import { FunctionComponent, useCallback, useRef } from 'react'
import { STRING_SIGN_OUT_CONFIRMATION } from '@/Constants/Strings' import { STRING_SIGN_OUT_CONFIRMATION } from '@/Constants/Strings'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { isDesktopApplication } from '@/Utils' import { isDesktopApplication } from '@/Utils'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import Icon from '../Icon/Icon' import Icon from '../Icon/Icon'
@@ -13,7 +13,7 @@ import HorizontalSeparator from '../Shared/HorizontalSeparator'
type Props = { type Props = {
application: WebApplication application: WebApplication
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
applicationGroup: ApplicationGroup applicationGroup: WebApplicationGroup
} }
const ConfirmSignoutModal: FunctionComponent<Props> = ({ application, viewControllerManager, applicationGroup }) => { const ConfirmSignoutModal: FunctionComponent<Props> = ({ application, viewControllerManager, applicationGroup }) => {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { KeyboardKey } from '@standardnotes/ui-services' import { KeyboardKey } from '@standardnotes/ui-services'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent, KeyboardEventHandler, UIEventHandler, useCallback } from 'react' import { FunctionComponent, KeyboardEventHandler, UIEventHandler, useCallback } from 'react'

View File

@@ -7,7 +7,7 @@ import {
SEARCH_KEYBOARD_COMMAND, SEARCH_KEYBOARD_COMMAND,
SELECT_ALL_ITEMS_KEYBOARD_COMMAND, SELECT_ALL_ITEMS_KEYBOARD_COMMAND,
} from '@standardnotes/ui-services' } from '@standardnotes/ui-services'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { PANEL_NAME_NOTES } from '@/Constants/Constants' import { PANEL_NAME_NOTES } from '@/Constants/Constants'
import { FileItem, PrefKey, WebAppEvent } from '@standardnotes/snjs' import { FileItem, PrefKey, WebAppEvent } from '@standardnotes/snjs'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { memo, useCallback, useMemo, useRef, useState } from 'react' import { memo, useCallback, useMemo, useRef, useState } from 'react'
import Icon from '../../Icon/Icon' import Icon from '../../Icon/Icon'
import { classNames } from '@standardnotes/utils' import { classNames } from '@standardnotes/utils'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { AnyTag } from '@/Controllers/Navigation/AnyTagType' import { AnyTag } from '@/Controllers/Navigation/AnyTagType'
import { PaneController } from '@/Controllers/PaneController/PaneController' import { PaneController } from '@/Controllers/PaneController/PaneController'

View File

@@ -13,7 +13,7 @@ import { ChangeEventHandler, FunctionComponent, useCallback, useEffect, useRef,
import { PrefDefaults } from '@/Constants/PrefDefaults' import { PrefDefaults } from '@/Constants/PrefDefaults'
import Dropdown from '@/Components/Dropdown/Dropdown' import Dropdown from '@/Components/Dropdown/Dropdown'
import { DropdownItem } from '@/Components/Dropdown/DropdownItem' import { DropdownItem } from '@/Components/Dropdown/DropdownItem'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { AnyTag } from '@/Controllers/Navigation/AnyTagType' import { AnyTag } from '@/Controllers/Navigation/AnyTagType'
import { PreferenceMode } from './PreferenceMode' import { PreferenceMode } from './PreferenceMode'
import dayjs from 'dayjs' import dayjs from 'dayjs'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FilesController } from '@/Controllers/FilesController' import { FilesController } from '@/Controllers/FilesController'
import { NotesController } from '@/Controllers/NotesController/NotesController' import { NotesController } from '@/Controllers/NotesController/NotesController'
import { SortableItem, SNTag, Uuids } from '@standardnotes/snjs' import { SortableItem, SNTag, Uuids } from '@standardnotes/snjs'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FilesController } from '@/Controllers/FilesController' import { FilesController } from '@/Controllers/FilesController'
import { formatDateForContextMenu } from '@/Utils/DateUtils' import { formatDateForContextMenu } from '@/Utils/DateUtils'
import { getIconForFileType } from '@/Utils/Items/Icons/getIconForFileType' import { getIconForFileType } from '@/Utils/Items/Icons/getIconForFileType'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { PrefDefaults } from '@/Constants/PrefDefaults' import { PrefDefaults } from '@/Constants/PrefDefaults'
import { ApplicationEvent, PrefKey } from '@standardnotes/snjs' import { ApplicationEvent, PrefKey } from '@standardnotes/snjs'
import { useEffect } from 'react' import { useEffect } from 'react'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent, ReactNode } from 'react' import { FunctionComponent, ReactNode } from 'react'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FeaturesController } from '@/Controllers/FeaturesController' import { FeaturesController } from '@/Controllers/FeaturesController'
import { FilesController } from '@/Controllers/FilesController' import { FilesController } from '@/Controllers/FilesController'
import { usePremiumModal } from '@/Hooks/usePremiumModal' import { usePremiumModal } from '@/Hooks/usePremiumModal'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { concatenateUint8Arrays } from '@/Utils' import { concatenateUint8Arrays } from '@/Utils'
import { import {
ApplicationEvent, ApplicationEvent,

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FunctionComponent, KeyboardEventHandler, useCallback, useMemo, useRef, useState } from 'react' import { FunctionComponent, KeyboardEventHandler, useCallback, useMemo, useRef, useState } from 'react'
import { getFileIconComponent } from './getFileIconComponent' import { getFileIconComponent } from './getFileIconComponent'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { getBase64FromBlob } from '@/Utils' import { getBase64FromBlob } from '@/Utils'
import { FileItem } from '@standardnotes/snjs' import { FileItem } from '@standardnotes/snjs'
import { FunctionComponent, useCallback, useEffect, useMemo, useRef } from 'react' import { FunctionComponent, useCallback, useEffect, useMemo, useRef } from 'react'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { FileItem } from '@standardnotes/snjs' import { FileItem } from '@standardnotes/snjs'

View File

@@ -1,5 +1,5 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ApplicationGroup } from '@/Application/ApplicationGroup' import { WebApplicationGroup } from '@/Application/WebApplicationGroup'
import { AbstractComponent } from '@/Components/Abstract/PureComponent' import { AbstractComponent } from '@/Components/Abstract/PureComponent'
import { destroyAllObjectProperties, preventRefreshing } from '@/Utils' import { destroyAllObjectProperties, preventRefreshing } from '@/Utils'
import { ApplicationEvent, ApplicationDescriptor, WebAppEvent } from '@standardnotes/snjs' import { ApplicationEvent, ApplicationDescriptor, WebAppEvent } from '@standardnotes/snjs'
@@ -24,7 +24,7 @@ import PreferencesButton from './PreferencesButton'
type Props = { type Props = {
application: WebApplication application: WebApplication
applicationGroup: ApplicationGroup applicationGroup: WebApplicationGroup
} }
type State = { type State = {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { QuickSettingsController } from '@/Controllers/QuickSettingsController' import { QuickSettingsController } from '@/Controllers/QuickSettingsController'
import { FeatureIdentifier, SNTheme } from '@standardnotes/snjs' import { FeatureIdentifier, SNTheme } from '@standardnotes/snjs'
import { TOGGLE_DARK_MODE_COMMAND } from '@standardnotes/ui-services' import { TOGGLE_DARK_MODE_COMMAND } from '@standardnotes/ui-services'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FeaturesController } from '@/Controllers/FeaturesController' import { FeaturesController } from '@/Controllers/FeaturesController'
import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController' import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'

View File

@@ -1,7 +1,7 @@
import { IlNotesIcon } from '@standardnotes/icons' import { IlNotesIcon } from '@standardnotes/icons'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import NotesOptionsPanel from '@/Components/NotesOptions/NotesOptionsPanel' import NotesOptionsPanel from '@/Components/NotesOptions/NotesOptionsPanel'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import PinNoteButton from '@/Components/PinNoteButton/PinNoteButton' import PinNoteButton from '@/Components/PinNoteButton/PinNoteButton'
import Button from '../Button/Button' import Button from '../Button/Button'
import { useCallback } from 'react' import { useCallback } from 'react'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { classNames } from '@standardnotes/utils' import { classNames } from '@standardnotes/utils'
import Button from '../Button/Button' import Button from '../Button/Button'
import Icon from '../Icon/Icon' import Icon from '../Icon/Icon'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { PaneLayout } from '@/Controllers/PaneController/PaneLayout' import { PaneLayout } from '@/Controllers/PaneController/PaneLayout'
import { mergeRefs } from '@/Hooks/mergeRefs' import { mergeRefs } from '@/Hooks/mergeRefs'
import { ForwardedRef, forwardRef } from 'react' import { ForwardedRef, forwardRef } from 'react'

View File

@@ -1,6 +1,6 @@
import { FileItem } from '@standardnotes/snjs' import { FileItem } from '@standardnotes/snjs'
import { AbstractComponent } from '@/Components/Abstract/PureComponent' import { AbstractComponent } from '@/Components/Abstract/PureComponent'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import MultipleSelectedNotes from '@/Components/MultipleSelectedNotes/MultipleSelectedNotes' import MultipleSelectedNotes from '@/Components/MultipleSelectedNotes/MultipleSelectedNotes'
import MultipleSelectedFiles from '../MultipleSelectedFiles/MultipleSelectedFiles' import MultipleSelectedFiles from '../MultipleSelectedFiles/MultipleSelectedFiles'
import { AppPaneId } from '../Panes/AppPaneMetadata' import { AppPaneId } from '../Panes/AppPaneMetadata'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { removeFromArray } from '@standardnotes/utils' import { removeFromArray } from '@standardnotes/utils'
import { FileItem, SNNote } from '@standardnotes/snjs' import { FileItem, SNNote } from '@standardnotes/snjs'
import { NoteViewController } from './NoteViewController' import { NoteViewController } from './NoteViewController'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ContentType } from '@standardnotes/common' import { ContentType } from '@standardnotes/common'
import { import {
MutatorService, MutatorService,

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { noteTypeForEditorIdentifier } from '@standardnotes/features' import { noteTypeForEditorIdentifier } from '@standardnotes/features'
import { SNNote, SNTag, NoteContent, DecryptedItemInterface, PayloadEmitSource, PrefKey } from '@standardnotes/models' import { SNNote, SNTag, NoteContent, DecryptedItemInterface, PayloadEmitSource, PrefKey } from '@standardnotes/models'
import { UuidString } from '@standardnotes/snjs' import { UuidString } from '@standardnotes/snjs'

View File

@@ -2,7 +2,7 @@
* @jest-environment jsdom * @jest-environment jsdom
*/ */
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { NotesController } from '@/Controllers/NotesController/NotesController' import { NotesController } from '@/Controllers/NotesController/NotesController'
import { import {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { NoteViewController } from './Controller/NoteViewController' import { NoteViewController } from './Controller/NoteViewController'
export interface NoteViewProps { export interface NoteViewProps {

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { usePrevious } from '@/Components/ContentListView/Calendar/usePrevious' import { usePrevious } from '@/Components/ContentListView/Calendar/usePrevious'
import { ElementIds } from '@/Constants/ElementIDs' import { ElementIds } from '@/Constants/ElementIDs'
import { PrefDefaults } from '@/Constants/PrefDefaults' import { PrefDefaults } from '@/Constants/PrefDefaults'

View File

@@ -1,5 +1,5 @@
import { CHANGE_EDITOR_COMMAND, KeyboardKey } from '@standardnotes/ui-services' import { CHANGE_EDITOR_COMMAND, KeyboardKey } from '@standardnotes/ui-services'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { SNNote } from '@standardnotes/snjs' import { SNNote } from '@standardnotes/snjs'
import { FunctionComponent, useCallback, useMemo, useRef, useState } from 'react' import { FunctionComponent, useCallback, useMemo, useRef, useState } from 'react'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { Action, SNNote } from '@standardnotes/snjs' import { Action, SNNote } from '@standardnotes/snjs'
import { Fragment, useCallback, useEffect, useState } from 'react' import { Fragment, useCallback, useEffect, useState } from 'react'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { SNNote } from '@standardnotes/snjs' import { SNNote } from '@standardnotes/snjs'
import { FunctionComponent, useCallback, useRef, useState } from 'react' import { FunctionComponent, useCallback, useRef, useState } from 'react'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { Action, SNNote } from '@standardnotes/snjs' import { Action, SNNote } from '@standardnotes/snjs'
import { FunctionComponent, useCallback, useState } from 'react' import { FunctionComponent, useCallback, useState } from 'react'
import Spinner from '@/Components/Spinner/Spinner' import Spinner from '@/Components/Spinner/Spinner'

View File

@@ -1,5 +1,5 @@
import { useCallback, useRef } from 'react' import { useCallback, useRef } from 'react'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { createRef } from 'react' import { createRef } from 'react'
import { AbstractComponent } from '@/Components/Abstract/PureComponent' import { AbstractComponent } from '@/Components/Abstract/PureComponent'
import DecoratedPasswordInput from '../Input/DecoratedPasswordInput' import DecoratedPasswordInput from '../Input/DecoratedPasswordInput'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ApplicationEvent, PermissionDialog } from '@standardnotes/snjs' import { ApplicationEvent, PermissionDialog } from '@standardnotes/snjs'
import { FunctionComponent, useCallback, useEffect, useState } from 'react' import { FunctionComponent, useCallback, useEffect, useState } from 'react'
import ModalOverlay from '../Modal/ModalOverlay' import ModalOverlay from '../Modal/ModalOverlay'

View File

@@ -1,5 +1,5 @@
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import Authentication from './Authentication' import Authentication from './Authentication'
import Credentials from './Credentials' import Credentials from './Credentials'

View File

@@ -1,6 +1,6 @@
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent } from 'react' import { FunctionComponent } from 'react'

View File

@@ -1,5 +1,5 @@
import { FunctionComponent, useCallback, useMemo, useState } from 'react' import { FunctionComponent, useCallback, useMemo, useState } from 'react'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { useBeforeUnload } from '@/Hooks/useBeforeUnload' import { useBeforeUnload } from '@/Hooks/useBeforeUnload'
import ChangeEmailForm from './ChangeEmailForm' import ChangeEmailForm from './ChangeEmailForm'
import ChangeEmailSuccess from './ChangeEmailSuccess' import ChangeEmailSuccess from './ChangeEmailSuccess'

View File

@@ -1,6 +1,6 @@
import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import { dateToLocalizedString } from '@standardnotes/snjs' import { dateToLocalizedString } from '@standardnotes/snjs'

View File

@@ -4,7 +4,7 @@ import { Text, Title } from '@/Components/Preferences/PreferencesComponents/Cont
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup' import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup'
import { ViewControllerManager } from '@Controllers/ViewControllerManager' import { ViewControllerManager } from '@Controllers/ViewControllerManager'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
type Props = { type Props = {
application: WebApplication application: WebApplication

View File

@@ -11,7 +11,7 @@ import { FunctionComponent, useCallback, useEffect, useState } from 'react'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import Switch from '@/Components/Switch/Switch' import Switch from '@/Components/Switch/Switch'
import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { STRING_FAILED_TO_UPDATE_USER_SETTING } from '@/Constants/Strings' import { STRING_FAILED_TO_UPDATE_USER_SETTING } from '@/Constants/Strings'
import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup' import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup'
import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment' import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import Spinner from '@/Components/Spinner/Spinner' import Spinner from '@/Components/Spinner/Spinner'
import { formatSizeToReadableString } from '@standardnotes/filepicker' import { formatSizeToReadableString } from '@standardnotes/filepicker'
import { SettingName } from '@standardnotes/snjs' import { SettingName } from '@standardnotes/snjs'

View File

@@ -1,7 +1,7 @@
import { FunctionComponent, ReactNode, useState } from 'react' import { FunctionComponent, ReactNode, useState } from 'react'
import { LinkButton, Text } from '@/Components/Preferences/PreferencesComponents/Content' import { LinkButton, Text } from '@/Components/Preferences/PreferencesComponents/Content'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
type Props = { type Props = {
application: WebApplication application: WebApplication

View File

@@ -1,7 +1,7 @@
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import OtherSessionsSignOutContainer from '@/Components/OtherSessionsSignOut/OtherSessionsSignOut' import OtherSessionsSignOutContainer from '@/Components/OtherSessionsSignOut/OtherSessionsSignOut'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent } from 'react' import { FunctionComponent } from 'react'

View File

@@ -1,7 +1,7 @@
import { FunctionComponent, useState } from 'react' import { FunctionComponent, useState } from 'react'
import { LinkButton, Text } from '@/Components/Preferences/PreferencesComponents/Content' import { LinkButton, Text } from '@/Components/Preferences/PreferencesComponents/Content'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
type Props = { type Props = {
application: WebApplication application: WebApplication

View File

@@ -1,5 +1,5 @@
import { Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import SubscriptionInformation from './SubscriptionInformation' import SubscriptionInformation from './SubscriptionInformation'
import NoSubscription from './NoSubscription' import NoSubscription from './NoSubscription'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'

View File

@@ -1,7 +1,7 @@
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController' import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { openSubscriptionDashboard } from '@/Utils/ManageSubscription' import { openSubscriptionDashboard } from '@/Utils/ManageSubscription'
import StatusText from './StatusText' import StatusText from './StatusText'

View File

@@ -5,7 +5,7 @@ import { InvitationStatus } from '@standardnotes/snjs'
import { SubtitleLight, Text } from '@/Components/Preferences/PreferencesComponents/Content' import { SubtitleLight, Text } from '@/Components/Preferences/PreferencesComponents/Content'
import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController' import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
type Props = { type Props = {

View File

@@ -1,6 +1,6 @@
import { FunctionComponent, useCallback, useMemo, useState } from 'react' import { FunctionComponent, useCallback, useMemo, useState } from 'react'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { isEmailValid } from '@/Utils' import { isEmailValid } from '@/Utils'
import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController' import { SubscriptionController } from '@/Controllers/Subscription/SubscriptionController'

View File

@@ -3,7 +3,7 @@ import { observer } from 'mobx-react-lite'
import { FunctionComponent, useState } from 'react' import { FunctionComponent, useState } from 'react'
import { Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup' import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup'
import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment' import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment'

View File

@@ -3,7 +3,7 @@ import Button from '@/Components/Button/Button'
import { SyncQueueStrategy } from '@standardnotes/snjs' import { SyncQueueStrategy } from '@standardnotes/snjs'
import { STRING_GENERIC_SYNC_ERROR } from '@/Constants/Strings' import { STRING_GENERIC_SYNC_ERROR } from '@/Constants/Strings'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FunctionComponent, useState } from 'react' import { FunctionComponent, useState } from 'react'
import { formatLastSyncDate } from '@/Utils/DateUtils' import { formatLastSyncDate } from '@/Utils/DateUtils'
import PreferencesGroup from '../../PreferencesComponents/PreferencesGroup' import PreferencesGroup from '../../PreferencesComponents/PreferencesGroup'

View File

@@ -3,7 +3,7 @@ import { DropdownItem } from '@/Components/Dropdown/DropdownItem'
import { usePremiumModal } from '@/Hooks/usePremiumModal' import { usePremiumModal } from '@/Hooks/usePremiumModal'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import Switch from '@/Components/Switch/Switch' import Switch from '@/Components/Switch/Switch'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { import {
ContentType, ContentType,
FeatureIdentifier, FeatureIdentifier,

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import Dropdown from '@/Components/Dropdown/Dropdown' import Dropdown from '@/Components/Dropdown/Dropdown'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import Switch from '@/Components/Switch/Switch' import Switch from '@/Components/Switch/Switch'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { FunctionComponent } from 'react' import { FunctionComponent } from 'react'
import PreferencesPane from '@/Components/Preferences/PreferencesComponents/PreferencesPane' import PreferencesPane from '@/Components/Preferences/PreferencesComponents/PreferencesPane'

View File

@@ -11,7 +11,7 @@ import {
} from '@/Constants/Strings' } from '@/Constants/Strings'
import { BackupFile } from '@standardnotes/snjs' import { BackupFile } from '@standardnotes/snjs'
import { ChangeEventHandler, MouseEventHandler, useCallback, useEffect, useRef, useState } from 'react' import { ChangeEventHandler, MouseEventHandler, useCallback, useEffect, useRef, useState } from 'react'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { Title, Subtitle } from '@/Components/Preferences/PreferencesComponents/Content' import { Title, Subtitle } from '@/Components/Preferences/PreferencesComponents/Content'

View File

@@ -1,7 +1,7 @@
import { convertStringifiedBooleanToBoolean, isDesktopApplication } from '@/Utils' import { convertStringifiedBooleanToBoolean, isDesktopApplication } from '@/Utils'
import { STRING_FAILED_TO_UPDATE_USER_SETTING } from '@/Constants/Strings' import { STRING_FAILED_TO_UPDATE_USER_SETTING } from '@/Constants/Strings'
import { useCallback, useEffect, useState } from 'react' import { useCallback, useEffect, useState } from 'react'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content'
import Dropdown from '@/Components/Dropdown/Dropdown' import Dropdown from '@/Components/Dropdown/Dropdown'

View File

@@ -5,7 +5,7 @@ import { FileBackupMetadataFile, FileBackupsConstantsV1, FileItem, FileHandleRea
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import Icon from '@/Components/Icon/Icon' import Icon from '@/Components/Icon/Icon'
import { ClassicFileReader, StreamingFileApi } from '@standardnotes/filepicker' import { ClassicFileReader, StreamingFileApi } from '@standardnotes/filepicker'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import EncryptionStatusItem from '../../Security/EncryptionStatusItem' import EncryptionStatusItem from '../../Security/EncryptionStatusItem'
import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment' import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment'
import Spinner from '@/Components/Spinner/Spinner' import Spinner from '@/Components/Spinner/Spinner'

View File

@@ -1,7 +1,7 @@
import { Subtitle, Title, Text } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle, Title, Text } from '@/Components/Preferences/PreferencesComponents/Content'
import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup' import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup'
import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment' import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { useMemo } from 'react' import { useMemo } from 'react'
import BackupsDropZone from './BackupsDropZone' import BackupsDropZone from './BackupsDropZone'
import FileBackupsDesktop from './FileBackupsDesktop' import FileBackupsDesktop from './FileBackupsDesktop'

View File

@@ -1,7 +1,7 @@
import { Subtitle, Title, Text } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle, Title, Text } from '@/Components/Preferences/PreferencesComponents/Content'
import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup' import PreferencesGroup from '@/Components/Preferences/PreferencesComponents/PreferencesGroup'
import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment' import PreferencesSegment from '@/Components/Preferences/PreferencesComponents/PreferencesSegment'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { useMemo } from 'react' import { useMemo } from 'react'
import TextBackupsDesktop from './TextBackupsDesktop' import TextBackupsDesktop from './TextBackupsDesktop'

View File

@@ -1,6 +1,6 @@
import { FunctionComponent } from 'react' import { FunctionComponent } from 'react'
import OfflineSubscription from '@/Components/Preferences/Panes/General/Advanced/OfflineSubscription' import OfflineSubscription from '@/Components/Preferences/Panes/General/Advanced/OfflineSubscription'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import PackagesPreferencesSection from '@/Components/Preferences/Panes/General/Advanced/Packages/Section' import PackagesPreferencesSection from '@/Components/Preferences/Panes/General/Advanced/Packages/Section'

View File

@@ -2,7 +2,7 @@ import React, { FunctionComponent, useEffect, useState } from 'react'
import { Subtitle } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle } from '@/Components/Preferences/PreferencesComponents/Content'
import DecoratedInput from '@/Components/Input/DecoratedInput' import DecoratedInput from '@/Components/Input/DecoratedInput'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { STRING_REMOVE_OFFLINE_KEY_CONFIRMATION } from '@/Constants/Strings' import { STRING_REMOVE_OFFLINE_KEY_CONFIRMATION } from '@/Constants/Strings'

View File

@@ -5,7 +5,7 @@ import Switch from '@/Components/Switch/Switch'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import PackageEntrySubInfo from './PackageEntrySubInfo' import PackageEntrySubInfo from './PackageEntrySubInfo'
import PreferencesSegment from '../../../../PreferencesComponents/PreferencesSegment' import PreferencesSegment from '../../../../PreferencesComponents/PreferencesSegment'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { AnyPackageType } from './Types/AnyPackageType' import { AnyPackageType } from './Types/AnyPackageType'
const UseHosted: FunctionComponent<{ const UseHosted: FunctionComponent<{

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ClientDisplayableError, FeatureDescription } from '@standardnotes/snjs' import { ClientDisplayableError, FeatureDescription } from '@standardnotes/snjs'
import { makeAutoObservable, observable } from 'mobx' import { makeAutoObservable, observable } from 'mobx'
import { AnyPackageType } from '../Types/AnyPackageType' import { AnyPackageType } from '../Types/AnyPackageType'

View File

@@ -1,7 +1,7 @@
import { ButtonType, ContentType, SNComponent } from '@standardnotes/snjs' import { ButtonType, ContentType, SNComponent } from '@standardnotes/snjs'
import Button from '@/Components/Button/Button' import Button from '@/Components/Button/Button'
import DecoratedInput from '@/Components/Input/DecoratedInput' import DecoratedInput from '@/Components/Input/DecoratedInput'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FunctionComponent, useEffect, useRef, useState } from 'react' import { FunctionComponent, useEffect, useRef, useState } from 'react'
import { Subtitle } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle } from '@/Components/Preferences/PreferencesComponents/Content'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'

View File

@@ -1,6 +1,6 @@
import { PrefKey, Platform } from '@standardnotes/snjs' import { PrefKey, Platform } from '@standardnotes/snjs'
import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { FunctionComponent, useState } from 'react' import { FunctionComponent, useState } from 'react'
import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator'
import Switch from '@/Components/Switch/Switch' import Switch from '@/Components/Switch/Switch'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { FunctionComponent } from 'react' import { FunctionComponent } from 'react'
import { PackageProvider } from '@/Components/Preferences/Panes/General/Advanced/Packages/Provider/PackageProvider' import { PackageProvider } from '@/Components/Preferences/Panes/General/Advanced/Packages/Provider/PackageProvider'

View File

@@ -1,5 +1,5 @@
import { Text, Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Text, Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { ApplicationEvent, FeatureIdentifier, FeatureStatus, FindNativeFeature, PrefKey } from '@standardnotes/snjs' import { ApplicationEvent, FeatureIdentifier, FeatureStatus, FindNativeFeature, PrefKey } from '@standardnotes/snjs'
import { Fragment, FunctionComponent, useCallback, useEffect, useState } from 'react' import { Fragment, FunctionComponent, useCallback, useEffect, useState } from 'react'
import { usePremiumModal } from '@/Hooks/usePremiumModal' import { usePremiumModal } from '@/Hooks/usePremiumModal'

View File

@@ -1,5 +1,5 @@
import { Pill, Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content' import { Pill, Subtitle, Text, Title } from '@/Components/Preferences/PreferencesComponents/Content'
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { FunctionComponent, useCallback, useEffect, useState } from 'react' import { FunctionComponent, useCallback, useEffect, useState } from 'react'
import PreferencesGroup from '../../PreferencesComponents/PreferencesGroup' import PreferencesGroup from '../../PreferencesComponents/PreferencesGroup'

View File

@@ -1,4 +1,4 @@
import { WebApplication } from '@/Application/Application' import { WebApplication } from '@/Application/WebApplication'
import StyledRadioInput from '@/Components/Radio/StyledRadioInput' import StyledRadioInput from '@/Components/Radio/StyledRadioInput'
import { useState } from 'react' import { useState } from 'react'
import { Title } from '../../PreferencesComponents/Content' import { Title } from '../../PreferencesComponents/Content'

Some files were not shown because too many files have changed in this diff Show More