A low-level Monaco Editor wrapper that provides direct access to a diff editor instance and API.
<nve-monaco-diff-editor></nve-monaco-diff-editor>
<script type="module">
const diffEditorEl = document.querySelector("nve-monaco-diff-editor");
diffEditorEl.addEventListener("ready", (event) => {
const { editor, monaco } = event.target;
const original = monaco.editor.createModel(
"Hello World!",
"plaintext",
monaco.Uri.parse("diff:///src/example.txt"),
);
const modified = monaco.editor.createModel(
"Hello world!",
"plaintext",
monaco.Uri.parse("file:///src/example.txt"),
);
editor.setModel({ original, modified });
});
</script>
<nve-monaco-diff-editor></nve-monaco-diff-editor>
<script type="module">
const diffEditorEl = document.querySelector("nve-monaco-diff-editor");
diffEditorEl.addEventListener("ready", (event) => {
const { editor, monaco } = event.target;
const original = monaco.editor.createModel(
"Hello World!",
"plaintext",
monaco.Uri.parse("diff:///src/example.txt"),
);
const modified = monaco.editor.createModel(
"Hello world!",
"plaintext",
monaco.Uri.parse("file:///src/example.txt"),
);
editor.setModel({ original, modified });
});
</script>
nve-monaco-diff-editor is only intended for advanced use cases. Elements provides no API stability guarantees for the direct access to the
Monaco Editor API provided here, as the API changes at the pace of this third-party dependency.
Installation
<script type="module">
import '@nvidia-elements/monaco/diff-editor/define.js';
</script>
<nve-monaco-diff-editor></nve-monaco-diff-editor>
<script type="module">
const diffEditorEl = document.querySelector("nve-monaco-diff-editor");
diffEditorEl.addEventListener("ready", (event) => {
const { editor, monaco } = event.target;
const original = monaco.editor.createModel(
"Hello World!",
"plaintext",
monaco.Uri.parse("diff:///src/example.txt"),
);
const modified = monaco.editor.createModel(
"Hello world!",
"plaintext",
monaco.Uri.parse("file:///src/example.txt"),
);
editor.setModel({ original, modified });
});
</script>
<script type="module">
import '@nvidia-elements/monaco/diff-editor/define.js';
</script>
<nve-monaco-diff-editor></nve-monaco-diff-editor>
<script type="module">
const diffEditorEl = document.querySelector("nve-monaco-diff-editor");
diffEditorEl.addEventListener("ready", (event) => {
const { editor, monaco } = event.target;
const original = monaco.editor.createModel(
"Hello World!",
"plaintext",
monaco.Uri.parse("diff:///src/example.txt"),
);
const modified = monaco.editor.createModel(
"Hello world!",
"plaintext",
monaco.Uri.parse("file:///src/example.txt"),
);
editor.setModel({ original, modified });
});
</script>
nve api.get nve-monaco-diff-editor
nve api.get nve-monaco-diff-editor
Release Status
All elements and features go through 3 phases of stability, pre-release, beta and stable.
pre-release Docs Preview API Documentation Fully Themeable
beta Robust unit test coverages Passed API Review Passed Designer VQA Review Included in library package stable No known outstanding AA WCAG issues No known outstanding performance issues Adapts to different screen/container sizes No breaking API changes for at least 90 days