Refactor visual editor extension handling

GitOrigin-RevId: e4571d33a36d786997e9de80a8413ca84e8ddf04
This commit is contained in:
Domagoj Kriskovic
2026-06-15 08:06:33 +00:00
committed by Copybot
parent 7b3692ce6f
commit 74fa4d95b2
2 changed files with 9 additions and 9 deletions
@@ -220,11 +220,11 @@ const visualModuleExtensions = (docName: string): Extension | null => {
}
for (const provider of moduleVisualExtensionProviders) {
const extensions = provider.import.getExtensions(fileExt)
if (Array.isArray(extensions) && extensions.length === 0) {
continue
const result = provider.import.getExtensions(fileExt)
const extensions = Array.isArray(result) ? result : [result]
if (extensions.length > 0) {
return extensions
}
return extensions
}
return null
@@ -1,10 +1,11 @@
import { Extension } from '@codemirror/state'
import importOverleafModules from '../../../../macros/import-overleaf-module.macro'
import { isValidTeXFile } from '../../../main/is-valid-tex-file'
import { getFileExtension } from './file'
const visualEditorProviders = importOverleafModules('visualEditorProviders')
const cmVisualEditorProviders: Array<{
import: { getExtensions: (ext: string) => unknown }
import: { getExtensions: (ext: string) => Extension }
}> = importOverleafModules('sourceEditorVisualExtensions')
/**
@@ -23,10 +24,9 @@ export function isCmVisualEditorAvailable(filename: string): boolean {
}
for (const provider of cmVisualEditorProviders) {
const extensions = provider.import.getExtensions(extension)
if (
Array.isArray(extensions) ? extensions.length > 0 : extensions != null
) {
const result = provider.import.getExtensions(extension)
const extensions = Array.isArray(result) ? result : [result]
if (extensions.length > 0) {
return true
}
}