Skip to content

Commit 94fa875

Browse files
committed
feat: load monaco editor instance from local instead of cdn
1 parent 410026c commit 94fa875

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

src/app/(protected)/page.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ this is a test message
1414

1515
return (
1616
<div className="flex flex-col gap-4">
17+
<h1 className="py-12 text-center text-9xl font-semibold">daed</h1>
18+
1719
<Editor height="20vh" language="markdown" value={editorValue} onChange={(value) => setEditorValue(value || '')} />
1820
</div>
1921
)

src/components/Header.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ export const Header: FC = () => {
151151
<NavbarMenuToggle className="sm:hidden" />
152152

153153
<NavbarBrand>
154-
<NextLink href="/">
154+
<NextLink href="/" onClick={() => setIsMenuOpen(false)}>
155155
<LogoText />
156156
</NextLink>
157157
</NavbarBrand>

src/editor/index.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
11
import { loader } from '@monaco-editor/react'
2-
import type * as monaco from 'monaco-editor'
2+
import type { editor } from 'monaco-editor'
33
import { daeLang } from '~/editor/languages'
44

55
export const initializeEditor = async () => {
6+
self.MonacoEnvironment = {
7+
getWorker: () => new Worker(new URL('monaco-editor/esm/vs/editor/editor.worker', import.meta.url))
8+
}
9+
10+
const monaco = await import('monaco-editor')
11+
12+
loader.config({ monaco })
13+
614
const monacoInstance = await loader.init()
715

816
monacoInstance.languages.register({ id: 'dae', extensions: ['dae'] })
917
monacoInstance.languages.setMonarchTokensProvider('dae', daeLang)
1018

1119
const themeGithubLight = await import('monaco-themes/themes/GitHub Light.json')
1220

13-
monacoInstance.editor.defineTheme('githubLight', themeGithubLight as monaco.editor.IStandaloneThemeData)
21+
monacoInstance.editor.defineTheme('githubLight', themeGithubLight as editor.IStandaloneThemeData)
1422
}

0 commit comments

Comments
 (0)