Merge pull request #34980 from overleaf/mj-ide-settings-feature

[web] Consolidate ide settings in `features/ide-settings`

GitOrigin-RevId: cbf0ff069399f418d8cb0d8165628df190046ea9
This commit is contained in:
Mathias Jakobsen
2026-09-17 11:13:11 +00:00
committed by Copybot
parent 8e2edc4d8d
commit 3a3adf5e5a
89 changed files with 113 additions and 113 deletions
@@ -13,7 +13,7 @@ import { useStatusFavicon } from '@/features/ide-react/hooks/use-status-favicon'
import useThemedPage from '@/shared/hooks/use-themed-page'
import MainLayout from '@/features/ide-react/components/layout/main-layout'
import SettingsModalNew from '@/features/settings/components/settings-modal'
import SettingsModal from '@/features/ide-settings/components/settings-modal'
import CommandPalette from '@/features/command-palette/components/command-palette'
export default function IdePage() {
@@ -32,7 +32,7 @@ export default function IdePage() {
<GlobalAlertsProvider>
<Alerts />
<Modals />
<SettingsModalNew />
<SettingsModal />
<MainLayout />
<GlobalToasts />
{showCommandPalette && <CommandPalette />}
@@ -5,7 +5,7 @@ import {
} from '@/features/ide-react/context/rail-context'
import { RailHelpContactUsModal } from './contact-us'
import { RailHelpShowHotkeysModal } from './keyboard-shortcuts'
import DictionarySettingsModal from '@/features/settings/components/editor-settings/dictionary-settings-modal'
import DictionarySettingsModal from '@/features/ide-settings/components/editor-settings/dictionary-settings-modal'
import importOverleafModules from '../../../../../macros/import-overleaf-module.macro'
type RailModalEntry = {
@@ -20,7 +20,7 @@ import { useRailContext } from '../../context/rail-context'
import WordCountModal from '@/features/word-count-modal/components/word-count-modal'
import { isSplitTestEnabled } from '@/utils/splitTestUtils'
import { useDetachCompileContext as useCompileContext } from '@/shared/context/detach-compile-context'
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import getMeta from '@/utils/meta'
import EditorCloneProjectModalWrapper from '@/features/clone-project-modal/components/editor-clone-project-modal-wrapper'
import useOpenProject from '@/shared/hooks/use-open-project'
@@ -21,7 +21,7 @@ import { OutlineProvider } from '@/features/ide-react/context/outline-context'
import { PermissionsProvider } from '@/features/ide-react/context/permissions-context'
import { ProjectProvider } from '@/shared/context/project-context'
import { RailProvider } from '@/features/ide-react/context/rail-context'
import { ProjectSettingsProvider } from '@/features/editor-left-menu/context/project-settings-context'
import { ProjectSettingsProvider } from '@/features/ide-settings/context/project-settings-context'
import { ReferencesProvider } from '@/features/ide-react/context/references-context'
import { SnapshotProvider } from '@/features/ide-react/context/snapshot-context'
import { SplitTestProvider } from '@/shared/context/split-test-context'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useFeatureFlag } from '@/shared/context/split-test-context'
export const useAreTabsEnabled = () => {
@@ -1,7 +1,7 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import DropdownSetting from '../dropdown-setting'
import { useTranslation } from 'react-i18next'
import { useEditorThemesOptionGroups } from '@/features/editor-left-menu/hooks/use-editor-theme-option-groups'
import { useEditorThemesOptionGroups } from '@/features/ide-settings/hooks/use-editor-theme-option-groups'
import { isIEEEBranded } from '@/utils/is-ieee-branded'
export default function EditorThemeSetting() {
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import DropdownSetting from '../dropdown-setting'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import DropdownSetting from '../dropdown-setting'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import DropdownSetting from '../dropdown-setting'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import DropdownSetting from '../dropdown-setting'
import getMeta from '@/utils/meta'
import { useMemo } from 'react'
@@ -1,7 +1,7 @@
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
import { useDetachCompileContext as useCompileContext } from '@/shared/context/detach-compile-context'
import { useSetCompilationSettingWithEvent } from '@/features/editor-left-menu/hooks/use-set-compilation-setting'
import { useSetCompilationSettingWithEvent } from '@/features/ide-settings/hooks/use-set-compilation-setting'
export default function AutoCompileSetting() {
const { autoCompile, setAutoCompile } = useCompileContext()
@@ -1,11 +1,11 @@
import { useState } from 'react'
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import DropdownSetting from '../dropdown-setting'
import type { Option } from '../dropdown-setting'
import { useTranslation } from 'react-i18next'
import { usePermissionsContext } from '@/features/ide-react/context/permissions-context'
import { ProjectCompiler } from '@ol-types/project-settings'
import { useSetCompilationSettingWithEvent } from '@/features/editor-left-menu/hooks/use-set-compilation-setting'
import { useSetCompilationSettingWithEvent } from '@/features/ide-settings/hooks/use-set-compilation-setting'
import getMeta from '@/utils/meta'
import _ from 'lodash'
@@ -2,7 +2,7 @@ import { useTranslation } from 'react-i18next'
import { useDetachCompileContext as useCompileContext } from '@/shared/context/detach-compile-context'
import { useMemo } from 'react'
import DropdownSetting from '../dropdown-setting'
import { useSetCompilationSettingWithEvent } from '@/features/editor-left-menu/hooks/use-set-compilation-setting'
import { useSetCompilationSettingWithEvent } from '@/features/ide-settings/hooks/use-set-compilation-setting'
export default function DraftSetting() {
const { draft, setDraft } = useCompileContext()
@@ -1,11 +1,11 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import DropdownSetting from '../dropdown-setting'
import type { Option } from '../dropdown-setting'
import { useTranslation } from 'react-i18next'
import { usePermissionsContext } from '@/features/ide-react/context/permissions-context'
import { useMemo } from 'react'
import getMeta from '@/utils/meta'
import { useSetCompilationSettingWithEvent } from '@/features/editor-left-menu/hooks/use-set-compilation-setting'
import { useSetCompilationSettingWithEvent } from '@/features/ide-settings/hooks/use-set-compilation-setting'
export default function ImageNameSetting() {
const { imageName, setImageName } = useProjectSettingsContext()
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import DropdownSetting from '../dropdown-setting'
import { useMemo } from 'react'
import type { Option } from '../dropdown-setting'
@@ -6,7 +6,7 @@ import { useTranslation } from 'react-i18next'
import { usePermissionsContext } from '@/features/ide-react/context/permissions-context'
import { useFileTreeData } from '@/shared/context/file-tree-data-context'
import { isValidTeXFile } from '@/main/is-valid-tex-file'
import { useSetCompilationSettingWithEvent } from '@/features/editor-left-menu/hooks/use-set-compilation-setting'
import { useSetCompilationSettingWithEvent } from '@/features/ide-settings/hooks/use-set-compilation-setting'
export default function RootDocumentSetting() {
const { rootDocId, setRootDocId } = useProjectSettingsContext()
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import ToggleSetting from '../toggle-setting'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import DropdownSetting from '../dropdown-setting'
import { Keybindings } from '../../../../../../types/user-settings'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import DropdownSetting from '../dropdown-setting'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import ToggleSetting from '../toggle-setting'
import { useTranslation } from 'react-i18next'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useTranslation } from 'react-i18next'
import DropdownSetting, { Optgroup } from '../dropdown-setting'
import { useMemo } from 'react'
@@ -7,41 +7,41 @@ import {
useState,
} from 'react'
import { useLayoutContext } from '@/shared/context/layout-context'
import AutoCloseBracketsSetting from '@/features/settings/components/editor-settings/auto-close-brackets-setting'
import AutoCompleteSetting from '@/features/settings/components/editor-settings/auto-complete-setting'
import CodeCheckSetting from '@/features/settings/components/editor-settings/code-check-setting'
import PreviewTabsSetting from '@/features/settings/components/editor-settings/preview-tabs-setting'
import KeybindingSetting from '@/features/settings/components/editor-settings/keybinding-setting'
import PDFViewerSetting from '@/features/settings/components/editor-settings/pdf-viewer-setting'
import AutoCloseBracketsSetting from '@/features/ide-settings/components/editor-settings/auto-close-brackets-setting'
import AutoCompleteSetting from '@/features/ide-settings/components/editor-settings/auto-complete-setting'
import CodeCheckSetting from '@/features/ide-settings/components/editor-settings/code-check-setting'
import PreviewTabsSetting from '@/features/ide-settings/components/editor-settings/preview-tabs-setting'
import KeybindingSetting from '@/features/ide-settings/components/editor-settings/keybinding-setting'
import PDFViewerSetting from '@/features/ide-settings/components/editor-settings/pdf-viewer-setting'
import importOverleafModules from '../../../../macros/import-overleaf-module.macro'
import SpellCheckSetting from '@/features/settings/components/editor-settings/spell-check-setting'
import DictionarySetting from '@/features/settings/components/editor-settings/dictionary-setting'
import SpellCheckSetting from '@/features/ide-settings/components/editor-settings/spell-check-setting'
import DictionarySetting from '@/features/ide-settings/components/editor-settings/dictionary-setting'
import { useTranslation } from 'react-i18next'
import BreadcrumbsSetting from '@/features/settings/components/editor-settings/breadcrumbs-setting'
import NonBlinkingCursorSetting from '@/features/settings/components/editor-settings/non-blinking-cursor-setting'
import MathPreviewSetting from '@/features/settings/components/editor-settings/math-preview-setting'
import RootDocumentSetting from '@/features/settings/components/compiler-settings/root-document-setting'
import CompilerSetting from '@/features/settings/components/compiler-settings/compiler-setting'
import ImageNameSetting from '@/features/settings/components/compiler-settings/image-name-setting'
import DraftSetting from '@/features/settings/components/compiler-settings/draft-setting'
import StopOnFirstErrorSetting from '@/features/settings/components/compiler-settings/stop-on-first-error-setting'
import AutoCompileSetting from '@/features/settings/components/compiler-settings/auto-compile-setting'
import OverallThemeSetting from '@/features/settings/components/appearance-settings/overall-theme-setting'
import EditorThemeSetting from '@/features/settings/components/appearance-settings/editor-theme-setting'
import FontSizeSetting from '@/features/settings/components/appearance-settings/font-size-setting'
import LineHeightSetting from '@/features/settings/components/appearance-settings/line-height-setting'
import FontFamilySetting from '@/features/settings/components/appearance-settings/font-family-setting'
import DarkModePdfSetting from '@/features/settings/components/appearance-settings/dark-mode-pdf-setting'
import BreadcrumbsSetting from '@/features/ide-settings/components/editor-settings/breadcrumbs-setting'
import NonBlinkingCursorSetting from '@/features/ide-settings/components/editor-settings/non-blinking-cursor-setting'
import MathPreviewSetting from '@/features/ide-settings/components/editor-settings/math-preview-setting'
import RootDocumentSetting from '@/features/ide-settings/components/compiler-settings/root-document-setting'
import CompilerSetting from '@/features/ide-settings/components/compiler-settings/compiler-setting'
import ImageNameSetting from '@/features/ide-settings/components/compiler-settings/image-name-setting'
import DraftSetting from '@/features/ide-settings/components/compiler-settings/draft-setting'
import StopOnFirstErrorSetting from '@/features/ide-settings/components/compiler-settings/stop-on-first-error-setting'
import AutoCompileSetting from '@/features/ide-settings/components/compiler-settings/auto-compile-setting'
import OverallThemeSetting from '@/features/ide-settings/components/appearance-settings/overall-theme-setting'
import EditorThemeSetting from '@/features/ide-settings/components/appearance-settings/editor-theme-setting'
import FontSizeSetting from '@/features/ide-settings/components/appearance-settings/font-size-setting'
import LineHeightSetting from '@/features/ide-settings/components/appearance-settings/line-height-setting'
import FontFamilySetting from '@/features/ide-settings/components/appearance-settings/font-family-setting'
import DarkModePdfSetting from '@/features/ide-settings/components/appearance-settings/dark-mode-pdf-setting'
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useFeatureFlag } from '@/shared/context/split-test-context'
import ProjectNotificationsSetting from '@/features/settings/components/editor-settings/project-notifications-setting'
import ProjectNotificationsSetting from '@/features/ide-settings/components/editor-settings/project-notifications-setting'
import getMeta from '@/utils/meta'
import type {
SettingsEntry,
SettingsSection,
SettingsSectionHook,
} from '@/features/settings/context/types'
} from '@/features/ide-settings/context/types'
import EditorTabsSetting from '../components/editor-settings/editor-tabs-setting'
import FloatingMenuSetting from '../components/editor-settings/floating-menu-setting'
import useEventListener from '@/shared/hooks/use-event-listener'
@@ -1,4 +1,4 @@
import useSetOverallTheme from '@/features/editor-left-menu/hooks/use-set-overall-theme'
import useSetOverallTheme from '@/features/ide-settings/hooks/use-set-overall-theme'
import MaterialIcon from '@/shared/components/material-icon'
import OLTooltip from '@/shared/components/ol/ol-tooltip'
import { useUserSettingsContext } from '@/shared/context/user-settings-context'
@@ -1,4 +1,4 @@
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import {
Dropdown,
DropdownMenu,
@@ -3,7 +3,7 @@ import { WordCountData } from '@/features/word-count-modal/components/word-count
import { WordCountError } from '@/features/word-count-modal/components/word-count-error'
import { useProjectContext } from '@/shared/context/project-context'
import useAbortController from '@/shared/hooks/use-abort-controller'
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import { useEditorManagerContext } from '@/features/ide-react/context/editor-manager-context'
import { useEditorOpenDocContext } from '@/features/ide-react/context/editor-open-doc-context'
import { useFileTreePathContext } from '@/features/file-tree/contexts/file-tree-path'
@@ -14,7 +14,7 @@ import { useProjectContext } from './project-context'
import { useDetachContext } from './detach-context'
import getMeta from '../../utils/meta'
import { useUserContext } from './user-context'
import { saveProjectSettings } from '@/features/editor-left-menu/utils/api'
import { saveProjectSettings } from '@/features/ide-settings/utils/api'
import { useModalsContext } from '@/features/ide-react/context/modals-context'
import { WritefullAPI } from './types/writefull-instance'
import { Cobranding } from '../../../../types/cobranding'
@@ -55,7 +55,7 @@ import { captureException } from '@/infrastructure/error-reporter'
import OError from '@overleaf/o-error'
import getMeta from '@/utils/meta'
import type { Annotation } from '../../../../types/annotation'
import { useProjectSettingsContext } from '@/features/editor-left-menu/context/project-settings-context'
import { useProjectSettingsContext } from '@/features/ide-settings/context/project-settings-context'
import {
ActiveOverallTheme,
useActiveOverallTheme,
@@ -1,6 +1,6 @@
import { UserId } from '../../../../../types/user'
import { PublicAccessLevel } from '../../../../../types/public-access-level'
import { ProjectSettings } from '@/features/editor-left-menu/utils/api'
import { ProjectSettings } from '@/features/ide-settings/utils/api'
import { Folder } from '../../../../../types/folder'
export type ProjectMember = {
@@ -2,7 +2,7 @@ import { screen, render, waitFor } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../helpers/editor-providers'
import SettingsModal from '@/features/settings/components/settings-modal'
import SettingsModal from '@/features/ide-settings/components/settings-modal'
import { Folder } from '@ol-types/folder'
import { ImageName, OverallThemeMeta } from '@ol-types/project-settings'
@@ -2,8 +2,8 @@ import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import AutoCloseBracketsSetting from '@/features/settings/components/editor-settings/auto-close-brackets-setting'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import AutoCloseBracketsSetting from '@/features/ide-settings/components/editor-settings/auto-close-brackets-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
describe('<AutoCloseBracketsSetting />', function () {
afterEach(function () {
@@ -1,12 +1,12 @@
import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import AutoCompileSetting from '@/features/settings/components/compiler-settings/auto-compile-setting'
import AutoCompileSetting from '@/features/ide-settings/components/compiler-settings/auto-compile-setting'
import localStorage from '@/infrastructure/local-storage'
import userEvent from '@testing-library/user-event'
@@ -1,9 +1,9 @@
import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import AutoCompleteSetting from '@/features/settings/components/editor-settings/auto-complete-setting'
import AutoCompleteSetting from '@/features/ide-settings/components/editor-settings/auto-complete-setting'
describe('<AutoCompleteSetting />', function () {
afterEach(function () {
@@ -1,9 +1,9 @@
import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import BreadcrumbsSetting from '@/features/settings/components/editor-settings/breadcrumbs-setting'
import BreadcrumbsSetting from '@/features/ide-settings/components/editor-settings/breadcrumbs-setting'
describe('<BreadcrumbsSetting />', function () {
afterEach(function () {
@@ -2,8 +2,8 @@ import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import CodeCheckSetting from '@/features/settings/components/editor-settings/code-check-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import CodeCheckSetting from '@/features/ide-settings/components/editor-settings/code-check-setting'
describe('<CodeCheckSetting />', function () {
afterEach(function () {
@@ -1,12 +1,12 @@
import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import CompilerSetting from '@/features/settings/components/compiler-settings/compiler-setting'
import CompilerSetting from '@/features/ide-settings/components/compiler-settings/compiler-setting'
import userEvent from '@testing-library/user-event'
const OPTIONS = [
@@ -1,8 +1,8 @@
import { fireEvent, screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import DictionarySetting from '@/features/settings/components/editor-settings/dictionary-setting'
import DictionarySetting from '@/features/ide-settings/components/editor-settings/dictionary-setting'
import RailModals from '@/features/ide-react/components/rail/rail-modals'
describe('<DictionarySetting />', function () {
@@ -1,12 +1,12 @@
import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import userEvent from '@testing-library/user-event'
import DraftSetting from '@/features/settings/components/compiler-settings/draft-setting'
import DraftSetting from '@/features/ide-settings/components/compiler-settings/draft-setting'
const OPTIONS = [
{
@@ -1,9 +1,9 @@
import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import EditorThemeSetting from '@/features/settings/components/appearance-settings/editor-theme-setting'
import EditorThemeSetting from '@/features/ide-settings/components/appearance-settings/editor-theme-setting'
import userEvent from '@testing-library/user-event'
const MOCK_IEEE_BRAND_ID = 123
@@ -2,8 +2,8 @@ import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import FloatingMenuSetting from '@/features/settings/components/editor-settings/floating-menu-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import FloatingMenuSetting from '@/features/ide-settings/components/editor-settings/floating-menu-setting'
describe('<FloatingMenuSetting />', function () {
afterEach(function () {
@@ -1,9 +1,9 @@
import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import FontFamilySetting from '@/features/settings/components/appearance-settings/font-family-setting'
import FontFamilySetting from '@/features/ide-settings/components/appearance-settings/font-family-setting'
import userEvent from '@testing-library/user-event'
const options = [
@@ -1,9 +1,9 @@
import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import FontSizeSetting from '@/features/settings/components/appearance-settings/font-size-setting'
import FontSizeSetting from '@/features/ide-settings/components/appearance-settings/font-size-setting'
import userEvent from '@testing-library/user-event'
describe('<FontSizeSetting />', function () {
@@ -2,12 +2,12 @@ import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import type { ImageName } from '../../../../../types/project-settings'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import ImageNameSetting from '@/features/settings/components/compiler-settings/image-name-setting'
import ImageNameSetting from '@/features/ide-settings/components/compiler-settings/image-name-setting'
import userEvent from '@testing-library/user-event'
describe('<ImageNameSetting />', function () {
@@ -2,8 +2,8 @@ import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import KeybindingSetting from '@/features/settings/components/editor-settings/keybinding-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import KeybindingSetting from '@/features/ide-settings/components/editor-settings/keybinding-setting'
import userEvent from '@testing-library/user-event'
const OPTIONS = [
@@ -2,8 +2,8 @@ import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import LineHeightSetting from '@/features/settings/components/appearance-settings/line-height-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import LineHeightSetting from '@/features/ide-settings/components/appearance-settings/line-height-setting'
import userEvent from '@testing-library/user-event'
const OPTIONS = [
@@ -2,8 +2,8 @@ import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import MathPreviewSetting from '@/features/settings/components/editor-settings/math-preview-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import MathPreviewSetting from '@/features/ide-settings/components/editor-settings/math-preview-setting'
describe('<MathPreviewSetting />', function () {
afterEach(function () {
@@ -1,9 +1,9 @@
import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import { EditorProviders } from '../../../helpers/editor-providers'
import NonBlinkingCursorSetting from '@/features/settings/components/editor-settings/non-blinking-cursor-setting'
import NonBlinkingCursorSetting from '@/features/ide-settings/components/editor-settings/non-blinking-cursor-setting'
describe('<NonBlinkingCursorSetting />', function () {
afterEach(function () {
@@ -4,8 +4,8 @@ import fetchMock from 'fetch-mock'
import type { OverallThemeMeta } from '../../../../../types/project-settings'
import getMeta from '@/utils/meta'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import OverallThemeSetting from '@/features/settings/components/appearance-settings/overall-theme-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import OverallThemeSetting from '@/features/ide-settings/components/appearance-settings/overall-theme-setting'
import userEvent from '@testing-library/user-event'
@@ -2,8 +2,8 @@ import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import PDFViewerSetting from '@/features/settings/components/editor-settings/pdf-viewer-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import PDFViewerSetting from '@/features/ide-settings/components/editor-settings/pdf-viewer-setting'
import userEvent from '@testing-library/user-event'
const OPTIONS = [
@@ -2,8 +2,8 @@ import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { EditorProviders } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import PreviewTabsSetting from '@/features/settings/components/editor-settings/preview-tabs-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import PreviewTabsSetting from '@/features/ide-settings/components/editor-settings/preview-tabs-setting'
describe('<PreviewTabsSetting />', function () {
afterEach(function () {
@@ -3,8 +3,8 @@ import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import userEvent from '@testing-library/user-event'
import { EditorProviders, PROJECT_ID } from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import ProjectNotificationsSetting from '@/features/settings/components/editor-settings/project-notifications-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import ProjectNotificationsSetting from '@/features/ide-settings/components/editor-settings/project-notifications-setting'
const preferencesUrl = `/notifications/preferences/project/${PROJECT_ID}`
@@ -2,12 +2,12 @@ import { screen, within, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { Folder } from '../../../../../types/folder'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import RootDocumentSetting from '@/features/settings/components/compiler-settings/root-document-setting'
import RootDocumentSetting from '@/features/ide-settings/components/compiler-settings/root-document-setting'
import userEvent from '@testing-library/user-event'
const OPTIONS = [
@@ -6,8 +6,8 @@ import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import SpellCheckSetting from '@/features/settings/components/editor-settings/spell-check-setting'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import SpellCheckSetting from '@/features/ide-settings/components/editor-settings/spell-check-setting'
import userEvent from '@testing-library/user-event'
describe('<SpellCheckSetting />', function () {
@@ -1,14 +1,14 @@
import { screen, render } from '@testing-library/react'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import { SettingsModalProvider } from '@/features/settings/context/settings-modal-context'
import { SettingsModalProvider } from '@/features/ide-settings/context/settings-modal-context'
import {
EditorProviders,
projectDefaults,
} from '../../../helpers/editor-providers'
import localStorage from '@/infrastructure/local-storage'
import userEvent from '@testing-library/user-event'
import StopOnFirstErrorSetting from '@/features/settings/components/compiler-settings/stop-on-first-error-setting'
import StopOnFirstErrorSetting from '@/features/ide-settings/components/compiler-settings/stop-on-first-error-setting'
describe('<StopOnFirstErrorSetting />', function () {
afterEach(function () {