/** * Copyright (c) OpenLens Authors. All rights reserved. * Licensed under MIT License. See LICENSE in root directory for more information. */ import { observer } from "mobx-react"; import React from "react"; import type { UserStore } from "../../../common/user-store"; import { Switch } from "../switch"; import { Select } from "../select"; import { SubTitle } from "../layout/sub-title"; import { SubHeader } from "../layout/sub-header"; import { Input, InputValidators } from "../input"; import { Preferences } from "./preferences"; import { withInjectables } from "@ogre-tools/injectable-react"; import userStoreInjectable from "../../../common/user-store/user-store.injectable"; import { string } from "../../utils"; import { defaultEditorConfig } from "../../../common/user-store/preferences-helpers"; interface Dependencies { userStore: UserStore; } const NonInjectedEditor = observer(({ userStore }: Dependencies) => { const editorConfiguration = userStore.editorConfiguration; return (

Editor configuration

editorConfiguration.minimap.enabled = !editorConfiguration.minimap.enabled} > Show minimap
Position editorConfiguration.lineNumbers = value ?? defaultEditorConfig.lineNumbers} themeName="lens" />
editorConfiguration.tabSize = Number(value)} />
editorConfiguration.fontSize = Number(value)} />
editorConfiguration.fontFamily = value} />
); }); export const Editor = withInjectables( NonInjectedEditor, { getProps: (di) => ({ userStore: di.inject(userStoreInjectable), }), }, );