@arcgis/coding-components
Version:
Contains components for editing code in different languages. The currently supported languages are html, css, json, TypeScript, JavaScript, and Arcade.
26 lines (25 loc) • 1.36 kB
TypeScript
import { editor } from 'monaco-editor';
/**
* This file is used to consolidate monaco-editor imports into one place.
* It was created to fix an issue in the esbuild bundle splitting, where the
* Monaco editor was being included in multiple chunks, causing the editor to
* load certain modules before some standalone services were registered.
*
* @remarks
* At first we tried doing the editor export via a top level await
* ```
* const { editor } = await import("monaco-editor/esm/vs/editor/editor.api");
* export { editor };
* ```
* It worked for us, but downstream consumers were not configured for top level await
* and encountered errors thus we export `importMonacoEditor`.
*/
export { KeyCode, KeyMod, Range, Uri, Emitter, languages, MarkerSeverity } from 'monaco-editor';
/**
* Importing .js files here to avoid issues that arise from tree shaking issues
* see https://devtopia.esri.com/WebGIS/arcgis-web-components/issues/3898
*/
export { StandaloneServices } from 'monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js';
export { IStandaloneThemeService } from 'monaco-editor/esm/vs/editor/standalone/common/standaloneTheme.js';
export { generateTokensCSSForColorMap } from 'monaco-editor/esm/vs/editor/common/languages/supports/tokenization.js';
export declare function importMonacoEditor(): Promise<typeof editor>;