UI: Add option to disable minimap in script editor (#2504)

This commit is contained in:
catloversg
2026-02-16 01:56:01 +07:00
committed by GitHub
parent dc0c3b6fa3
commit 77d83a2fdc
4 changed files with 15 additions and 1 deletions

View File

@@ -5,6 +5,7 @@ export type WordWrapOptions = "on" | "off" | "bounded" | "wordWrapColumn";
export type CursorStyle = editor.IEditorOptions["cursorStyle"]; export type CursorStyle = editor.IEditorOptions["cursorStyle"];
export type CursorBlinking = editor.IEditorOptions["cursorBlinking"]; export type CursorBlinking = editor.IEditorOptions["cursorBlinking"];
export type StickyScroll = editor.IEditorOptions["stickyScroll"]; export type StickyScroll = editor.IEditorOptions["stickyScroll"];
export type Minimap = editor.IEditorOptions["minimap"];
export interface Options { export interface Options {
theme: string; theme: string;
@@ -19,4 +20,5 @@ export interface Options {
cursorBlinking: CursorBlinking; cursorBlinking: CursorBlinking;
beautifyOnSave: boolean; beautifyOnSave: boolean;
stickyScroll: StickyScroll; stickyScroll: StickyScroll;
minimap: Minimap;
} }

View File

@@ -158,6 +158,14 @@ export function OptionsModal(props: OptionsModalProps): ReactElement {
checked={props.options.stickyScroll?.enabled} checked={props.options.stickyScroll?.enabled}
/> />
</div> </div>
<div style={{ display: "flex", alignItems: "center" }}>
<Typography marginRight={"auto"}>Enable Minimap: </Typography>
<Switch
onChange={(e) => props.onOptionChange("minimap", { enabled: e.target.checked })}
checked={props.options.minimap?.enabled}
/>
</div>
</Modal> </Modal>
); );
} }

View File

@@ -93,6 +93,7 @@ export function ScriptEditorContextProvider({ children }: { children: React.Reac
cursorBlinking: Settings.MonacoCursorBlinking, cursorBlinking: Settings.MonacoCursorBlinking,
beautifyOnSave: Settings.MonacoBeautifyOnSave, beautifyOnSave: Settings.MonacoBeautifyOnSave,
stickyScroll: Settings.MonacoStickyScroll, stickyScroll: Settings.MonacoStickyScroll,
minimap: Settings.MonacoMinimap,
}); });
function saveOptions(options: Options) { function saveOptions(options: Options) {
@@ -109,6 +110,7 @@ export function ScriptEditorContextProvider({ children }: { children: React.Reac
Settings.MonacoWordWrap = options.wordWrap; Settings.MonacoWordWrap = options.wordWrap;
Settings.MonacoBeautifyOnSave = options.beautifyOnSave; Settings.MonacoBeautifyOnSave = options.beautifyOnSave;
Settings.MonacoStickyScroll = options.stickyScroll; Settings.MonacoStickyScroll = options.stickyScroll;
Settings.MonacoMinimap = options.minimap;
} }
return ( return (

View File

@@ -1,7 +1,7 @@
import { OwnedAugmentationsOrderSetting, PurchaseAugmentationsOrderSetting } from "./SettingEnums"; import { OwnedAugmentationsOrderSetting, PurchaseAugmentationsOrderSetting } from "./SettingEnums";
import { defaultTheme } from "../Themes/Themes"; import { defaultTheme } from "../Themes/Themes";
import { defaultStyles } from "../Themes/Styles"; import { defaultStyles } from "../Themes/Styles";
import { CursorStyle, CursorBlinking, WordWrapOptions, StickyScroll } from "../ScriptEditor/ui/Options"; import type { CursorStyle, CursorBlinking, WordWrapOptions, StickyScroll, Minimap } from "../ScriptEditor/ui/Options";
import { defaultMonacoTheme } from "../ScriptEditor/ui/themes"; import { defaultMonacoTheme } from "../ScriptEditor/ui/themes";
import { assertObject } from "../utils/TypeAssertion"; import { assertObject } from "../utils/TypeAssertion";
import type { Result } from "@nsdefs"; import type { Result } from "@nsdefs";
@@ -186,6 +186,8 @@ export const Settings = {
MonacoCursorBlinking: "blink" as CursorBlinking, MonacoCursorBlinking: "blink" as CursorBlinking,
/** Toggle use of Sticky Scroll in the Script Editor */ /** Toggle use of Sticky Scroll in the Script Editor */
MonacoStickyScroll: { enabled: false } as StickyScroll, MonacoStickyScroll: { enabled: false } as StickyScroll,
/** Whether to show minimap in the script editor */
MonacoMinimap: { enabled: true } as Minimap,
/** Whether to hide trailing zeroes on fractional part of decimal */ /** Whether to hide trailing zeroes on fractional part of decimal */
hideTrailingDecimalZeros: false, hideTrailingDecimalZeros: false,
/** Whether to hide thousands separators. */ /** Whether to hide thousands separators. */