If true, the region is expaned, otherwise it is collapsed.
diff --git a/examples/Demo/Shared/Pages/CodeEditor/CodeEditorPage.razor b/examples/Demo/Shared/Pages/CodeEditor/CodeEditorPage.razor
deleted file mode 100644
index a062685619..0000000000
--- a/examples/Demo/Shared/Pages/CodeEditor/CodeEditorPage.razor
+++ /dev/null
@@ -1,33 +0,0 @@
-@page "/CodeEditor"
-
-CodeEditor
-
-
- The editor from Visual Studio Code we all know and love.
-
-
-
-
- Important: When using this component, make sure to add the following line to your index.html
/ _Layout.cshtml
before where the Blazor script is added:
-
-
-
- <script src="_content/Microsoft.FluentUI.AspNetCore.Components/lib/monaco-editor/min/vs/loader.min.js"></script>
- <script>require.config({ paths: { 'vs': '_content/Microsoft.FluentUI.AspNetCore.Components/lib/monaco-editor/min/vs' } });</script>
- <script src="_content/Microsoft.FluentUI.AspNetCore.Components/lib/monaco-editor/min/vs/editor/editor.main.js"></script>
-
-
-
-
-
- The CodeEditor
component is a wrapper around the Monaco Editor. To enable a dark/light mode switch as shown in the example below requires some more work than just adding the component to a page.
- An example of this can be found in this demo site's source code available on GitHub.
-
-
-Example
-
-
-
-Documentation
-
-
diff --git a/examples/Demo/Shared/Pages/CodeEditor/Examples/CodeEditorDefaultExample.razor b/examples/Demo/Shared/Pages/CodeEditor/Examples/CodeEditorDefaultExample.razor
deleted file mode 100644
index fc50713b9c..0000000000
--- a/examples/Demo/Shared/Pages/CodeEditor/Examples/CodeEditorDefaultExample.razor
+++ /dev/null
@@ -1,18 +0,0 @@
-@namespace FluentUI.Demo.Shared
-
-
-
- C#
- JavaScript
- Json
- Razor
-
- Dark Theme
-
-
-
-
-Language: @Language; Code: @Code; IsDarkMode: @IsDarkMode
-
-
-Code: @Code
diff --git a/examples/Demo/Shared/Pages/CodeEditor/Examples/CodeEditorDefaultExample.razor.cs b/examples/Demo/Shared/Pages/CodeEditor/Examples/CodeEditorDefaultExample.razor.cs
deleted file mode 100644
index cba7d5b68d..0000000000
--- a/examples/Demo/Shared/Pages/CodeEditor/Examples/CodeEditorDefaultExample.razor.cs
+++ /dev/null
@@ -1,81 +0,0 @@
-using Microsoft.FluentUI.AspNetCore.Components;
-
-namespace FluentUI.Demo.Shared;
-
-public partial class CodeEditorDefaultExample
-{
- string Language = "";
- string Code = "";
- bool IsDarkMode = true;
-
- void Display_CSharp()
- {
- Language = "csharp";
- Code = """
- using System;
-
- void Main()
- {
- Console.WriteLine("Hello World");
- }
- """;
- }
-
- void Display_JavaScript()
- {
- Language = "javascript";
- Code = """
- function main() {
- console.log("Hello World");
- }
- """;
- }
-
- void Display_Json()
- {
- Language = "json";
- Code = """
- {
- name: "Hello World",
- age: 25
- }
- """;
- }
-
- void Display_Razor()
- {
- Language = "razor";
- Code = """
-
- @namespace Microsoft.FluentUI.AspNetCore.ComponentsDemo.Shared
-
- @inherits FluentComponentBase
- @implements IAsyncDisposable
- @inject AccentBaseColor AccentBaseColor
- @inject IJSRuntime JSRuntime;
-
-
-
- Select Brand Color
-
-
-
-
- """;
- }
-
- protected override void OnInitialized()
- {
- Display_CSharp();
- }
-}
\ No newline at end of file
diff --git a/examples/Demo/Shared/Shared/DemoNavMenu.razor b/examples/Demo/Shared/Shared/DemoNavMenu.razor
index 3f4b1c9a2c..a8ac760765 100644
--- a/examples/Demo/Shared/Shared/DemoNavMenu.razor
+++ b/examples/Demo/Shared/Shared/DemoNavMenu.razor
@@ -61,7 +61,6 @@
Button
Card
Checkbox
- CodeEditor
Combobox
Data grid
Date & Time
diff --git a/examples/Demo/Shared/Shared/DemoNavMenuList.razor b/examples/Demo/Shared/Shared/DemoNavMenuList.razor
deleted file mode 100644
index 64e4c009c6..0000000000
--- a/examples/Demo/Shared/Shared/DemoNavMenuList.razor
+++ /dev/null
@@ -1,257 +0,0 @@
-
-More information
-
- -
- What's new?
-
- -
- Code setup
-
- -
- Design tokens
-
- -
- Reboot
-
- -
- Project templates
-
- -
- DialogService
-
-
-
-Base classes & Utilities
-
- -
- FluentComponentBase
-
- -
- FluentInputBase
-
- -
- Clear cache
-
-
-Layout components
-
- -
- Header
-
- -
- Footer
-
- -
- BodyContent
-
- -
- Grid
-
- -
- Layout
-
- -
- MainLayout
-
- -
- Spacer
-
- -
- Splitter
-
- -
- Stack
-
-
-
-Components
-
- -
- Accordion
-
- -
- Anchor
-
- -
- Anchored Region
-
- -
- Autocomplete
-
- -
- Badge
-
- -
- Breadcrumb
-
- -
- Button
-
- -
- Card
-
- -
- Checkbox
-
- -
- Combobox
-
- -
- CounterBadge
-
- -
- Data grid
-
- -
- Date & Time
-
- -
- Dialog
-
- -
- Divider
-
- -
- Drag
-
- -
- Emoji
-
- -
- Flipper
-
- -
- Horizontal Scroll
-
- -
- Icon
-
- -
- Label
-
- -
- Listbox
-
- -
- Menu
-
- -
- MenuButton
-
- -
- MessageBox
-
- -
- Number Field
-
- -
- Option
-
- -
- Overflow
-
- -
- Overlay
-
- -
- Panel
-
- -
- Persona
-
- -
- Popover
-
- -
- Progress
-
- -
- Progress Ring
-
- -
- Radio
-
- -
- Radio Group
-
- -
- Search
-
- -
- Select
-
- -
- Skeleton
-
- -
- Slider
-
- -
- SplashScreen
-
- -
- Switch
-
- -
- Tabs
-
- -
- TextArea
-
- -
- Text Field
-
- -
- Toast
-
- -
- Toolbar
-
- -
- Tooltip
-
- -
- Tree View
-
- -
- FluentCounterBadge
-
- -
- Highlighter
-
- -
- PresenceBadge
-
- -
- MenuButton
-
- -
- CodeEditor
-
- -
- NavMenu
-
-
-Incubation lab
-
-Components
-
- -
- MarkdownSection
-
- -
- TableOfContents
-
-
-
-
-
-
diff --git a/examples/Demo/Shared/Shared/DemoNavMenuList.razor.cs b/examples/Demo/Shared/Shared/DemoNavMenuList.razor.cs
deleted file mode 100644
index 482c7d3a22..0000000000
--- a/examples/Demo/Shared/Shared/DemoNavMenuList.razor.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-using Microsoft.AspNetCore.Components;
-using Microsoft.AspNetCore.Components.Routing;
-
-namespace FluentUI.Demo.Shared.Shared
-{
- public partial class DemoNavMenuList //: IDisposable
- {
- //[Inject]
- //private NavigationManager NavigationManager { get; set; } = default!;
-
- //private string? target;
- //protected override void OnInitialized()
- //{
- // NavigationManager.LocationChanged += LocationChanged;
- // base.OnInitialized();
- //}
-
- //private void LocationChanged(object? sender, LocationChangedEventArgs e)
- //{
- // Uri uri = new(e.Location);
- // if (uri.Segments.Length > 1)
- // target = uri.Segments[1];
- // else
- // target = "";
- //}
-
- //void IDisposable.Dispose()
- //{
- // // Unsubscribe from the event when our component is disposed
- // NavigationManager.LocationChanged -= LocationChanged;
- //}
- }
-}
\ No newline at end of file
diff --git a/examples/Demo/Shared/Shared/DemoNavMenuTree.razor b/examples/Demo/Shared/Shared/DemoNavMenuTree.razor
deleted file mode 100644
index c4fc8e3e3f..0000000000
--- a/examples/Demo/Shared/Shared/DemoNavMenuTree.razor
+++ /dev/null
@@ -1,114 +0,0 @@
-
-
-
- Home
-
-
-
- More information
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Base classes & Utilities
-
-
-
-
-
-
- Layout components
-
-
-
-
-
-
-
-
-
-
-
-
- Components
-
-
-
-
- Badge
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Incubation lab
-
- Components
-
-
-
-
-
-
\ No newline at end of file
diff --git a/examples/Demo/Shared/Shared/DemoNavMenuTree.razor.css b/examples/Demo/Shared/Shared/DemoNavMenuTree.razor.css
deleted file mode 100644
index 7348dbe7be..0000000000
--- a/examples/Demo/Shared/Shared/DemoNavMenuTree.razor.css
+++ /dev/null
@@ -1,3 +0,0 @@
-::deep fluent-tree-item {
- margin: 5px 0;
-}
diff --git a/examples/Demo/Shared/libman.json b/examples/Demo/Shared/libman.json
deleted file mode 100644
index c221233dff..0000000000
--- a/examples/Demo/Shared/libman.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "version": "1.0",
- "defaultProvider": "cdnjs",
- "libraries": [
- {
- "library": "monaco-editor@0.34.1",
- "destination": "wwwroot/lib/monaco-editor/"
- }
- ]
-}
\ No newline at end of file
diff --git a/examples/Demo/Shared/wwwroot/docs/WhatsNew.md b/examples/Demo/Shared/wwwroot/docs/WhatsNew.md
index a96220ab74..05602175ec 100644
--- a/examples/Demo/Shared/wwwroot/docs/WhatsNew.md
+++ b/examples/Demo/Shared/wwwroot/docs/WhatsNew.md
@@ -3,6 +3,7 @@
- Update all input component to use `ReadOnly` instead of a mix of possible spellings
- Update demo site styling (nav menu and body now scroll independently)
- Support DisabledDateFunc in FluentDatePicker
+- Removed the FluentCodeEditor component because it lacked features and has no Fluent design aspects. You can use the [BlazorMonaco](https://github.com/serdarciplak/BlazorMonaco) component as a replacement
- Fix [#911](https://github.com/microsoft/fluentui-blazor/issues/911): Column resizing in DataGrid breaks when column to narrow
- Fix [#891](https://github.com/microsoft/fluentui-blazor/issues/891): JSDisconnectedException in FluentOverflow
- Fix [#861](https://github.com/microsoft/fluentui-blazor/issues/861): Needed extra `empty-content-cell` class
diff --git a/src/Core/Components/CodeEditor/FluentCodeEditor.razor b/src/Core/Components/CodeEditor/FluentCodeEditor.razor
deleted file mode 100644
index 4b7eb5922b..0000000000
--- a/src/Core/Components/CodeEditor/FluentCodeEditor.razor
+++ /dev/null
@@ -1,8 +0,0 @@
-@namespace Microsoft.FluentUI.AspNetCore.Components
-
-@inherits FluentComponentBase
-
-
\ No newline at end of file
diff --git a/src/Core/Components/CodeEditor/FluentCodeEditor.razor.cs b/src/Core/Components/CodeEditor/FluentCodeEditor.razor.cs
deleted file mode 100644
index cb13f72efd..0000000000
--- a/src/Core/Components/CodeEditor/FluentCodeEditor.razor.cs
+++ /dev/null
@@ -1,158 +0,0 @@
-using Microsoft.AspNetCore.Components;
-using Microsoft.FluentUI.AspNetCore.Components.Utilities;
-using Microsoft.JSInterop;
-
-
-namespace Microsoft.FluentUI.AspNetCore.Components;
-
-///
-public partial class FluentCodeEditor : FluentComponentBase, IAsyncDisposable
-{
- private const string JAVASCRIPT_FILE = "./_content/Microsoft.FluentUI.AspNetCore.Components/Components/CodeEditor/FluentCodeEditor.razor.js";
- private const string MONACO_VS_PATH = "./_content/Microsoft.FluentUI.AspNetCore.Components./lib/monaco-editor/min/vs";
-
- private DotNetObjectReference? _dotNetHelper = null;
- private string _value = """
- using System;
- void Main()
- {
- Console.WriteLine("Hello World");
- }
- """;
-
-
- protected string? ClassValue => new CssBuilder(Class)
- .Build();
-
- protected string? StyleValue => new StyleBuilder(Style)
- .AddStyle("height", Height, () => !string.IsNullOrEmpty(Height))
- .AddStyle("width", Width, () => !string.IsNullOrEmpty(Width))
- .AddStyle("border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-rest)")
- .Build();
-
- ///
- [Inject]
- private IJSRuntime JSRuntime { get; set; } = default!;
-
- ///
- private IJSObjectReference _jsModule = default!;
-
- ///
- /// Language used by the editor: csharp, javascript, ...
- ///
- [Parameter]
- public string Language { get; set; } = "csharp";
-
- ///
- /// Height of this component.
- ///
- [Parameter]
- public string Height { get; set; } = "300px";
-
- ///
- /// Width of this component.
- ///
- [Parameter]
- public string Width { get; set; } = "100%";
-
- ///
- /// Theme of the editor (Light or Dark).
- ///
- [Parameter]
- public bool IsDarkMode { get; set; } = false;
-
- ///
- /// Gets or sets the value of the input. This should be used with two-way binding.
- ///
- [Parameter]
- public string Value
- {
- get
- {
- return _value;
- }
-
- set
- {
- _value = value;
- }
- }
-
- ///
- /// Gets or sets a callback that updates the bound value.
- ///
- [Parameter]
- public EventCallback ValueChanged { get; set; }
-
- public FluentCodeEditor()
- {
- Id = Identifier.NewId();
- }
-
- ///
- protected override async Task OnParametersSetAsync()
- {
- if (_jsModule != null)
- {
- await _jsModule.InvokeVoidAsync(
- "monacoSetOptions",
- Id,
- new { Value, Theme = GetTheme(IsDarkMode), Language, });
- }
- }
-
- ///
- protected override async Task OnAfterRenderAsync(bool firstRender)
- {
- if (firstRender)
- {
- _jsModule = await JSRuntime.InvokeAsync("import", JAVASCRIPT_FILE);
- _dotNetHelper = DotNetObjectReference.Create(this);
-
- var options = new
- {
- Value,
- Language,
- Theme = GetTheme(IsDarkMode),
- Path = MONACO_VS_PATH,
- LineNumbers = true,
- ReadOnly = false,
- };
- await _jsModule.InvokeVoidAsync("monacoInitialize", Id, _dotNetHelper, options);
- }
-
- await base.OnAfterRenderAsync(firstRender);
- }
-
- ///
- private static string GetTheme(bool isDarkMode)
- {
- return isDarkMode ? "vs-dark" : "light";
- }
-
- public async Task Focus() => await _jsModule!.InvokeVoidAsync("focus");
-
- public async Task Resize() => await _jsModule!.InvokeVoidAsync("resize");
-
- ///
- [JSInvokable]
- public async Task UpdateValueAsync(string value)
- {
- _value = value;
- if (ValueChanged.HasDelegate)
- {
- await ValueChanged.InvokeAsync(_value);
- }
- }
-
- ///
- public async ValueTask DisposeAsync()
- {
- if (_jsModule is not null)
- {
- await _jsModule.DisposeAsync();
- }
-
- _dotNetHelper?.Dispose();
- }
-}
diff --git a/src/Core/Components/CodeEditor/FluentCodeEditor.razor.js b/src/Core/Components/CodeEditor/FluentCodeEditor.razor.js
deleted file mode 100644
index 18dc84078a..0000000000
--- a/src/Core/Components/CodeEditor/FluentCodeEditor.razor.js
+++ /dev/null
@@ -1,51 +0,0 @@
-// Initialize Monaco Editor
-export function monacoInitialize(id, dotNetHelper, options) {
- // require is provided by loader.min.js.
- require.config({
- paths: { 'vs': options.path }
- });
-
- require(["vs/editor/editor.main"], () => {
- var container = document.getElementById(id);
-
- // Hide the Progress Ring
- monaco.editor.onDidCreateEditor((e) => {
- var progress = document.getElementById(id + "-loading");
- if (progress && progress.style) {
- progress.style.display = "none";
- }
- });
-
- // Create the Monaco Editor
- container.editor = monaco.editor.create(container, {
- ariaLabel: "online code editor",
- value: options.value,
- language: options.language,
- theme: options.theme,
- lineNumbers: options.lineNumbers ? "on" : "off",
- readOnly: options.readOnly,
- });
-
- // Keep a reference of dotNetHelper
- container.dotNetHelper = dotNetHelper;
-
- // Catch when the editor lost the focus (didType to immediate)
- container.editor.onDidBlurEditorText((e) => {
- var code = container.editor.getValue();
- container.dotNetHelper.invokeMethodAsync("UpdateValueAsync", code);
- });
-
- container.editor.layout();
- window.editor = container.editor; // To debug
- });
-}
-
-// Update the editor options
-export function monacoSetOptions(id, options) {
- var container = document.getElementById(id);
- container.editor.setValue(options.value);
- container.editor.updateOptions({
- language: options.language,
- theme: options.theme
- });
-}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.de.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.de.js.map
deleted file mode 100644
index 152bcc3cfd..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.de.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.de.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.de\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.de.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.es.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.es.js.map
deleted file mode 100644
index 45b8da62ea..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.es.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.es.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.es\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.es.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.fr.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.fr.js.map
deleted file mode 100644
index 5f0e188b9d..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.fr.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.fr.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.fr\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.fr.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.it.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.it.js.map
deleted file mode 100644
index 115d7c9fcc..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.it.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.it.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.it\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.it.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ja.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ja.js.map
deleted file mode 100644
index 29bace51c2..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ja.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.ja.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.ja\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.ja.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.js.map
deleted file mode 100644
index 15b52c7a14..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\n/*---------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n *--------------------------------------------------------*/\ndefine(\"vs/base/common/worker/simpleWorker.nls\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\"\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAUA,OAAO,yCAA0C,CAChD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ko.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ko.js.map
deleted file mode 100644
index 2ab20b1d92..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ko.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.ko.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.ko\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.ko.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ru.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ru.js.map
deleted file mode 100644
index ed4f632a46..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.ru.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.ru.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.ru\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,4CAA6C,CACnD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.ru.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.zh-cn.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.zh-cn.js.map
deleted file mode 100644
index 2df5955fe8..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.zh-cn.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.zh-cn.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.zh-cn\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,+CAAgD,CACtD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.zh-cn.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.zh-tw.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.zh-tw.js.map
deleted file mode 100644
index bfb1624714..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/common/worker/simpleWorker.nls.zh-tw.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/common/worker/simpleWorker.nls.zh-tw.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.1(0316a754aa4c25208bef91937efbce2ab1e3ce37)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\ndefine(\"vs/base/common/worker/simpleWorker.nls.zh-tw\", {\n\t\"vs/base/common/platform\": [\n\t\t\"_\",\n\t]\n});"],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+DAOA,OAAO,+CAAgD,CACtD,0BAA2B,CAC1B","names":[],"file":"simpleWorker.nls.zh-tw.js"}
\ No newline at end of file
diff --git a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/worker/workerMain.js.map b/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/worker/workerMain.js.map
deleted file mode 100644
index 0785a49429..0000000000
--- a/src/Core/wwwroot/lib/monaco-editor/min-maps/vs/base/worker/workerMain.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["out-editor/vs/base/worker/fake","out-editor/vs/base/worker/vs/loader.js","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/nls.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/worker/workerMain.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/arrays.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/cache.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/codicons.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/diff/diffChange.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/errors.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/functional.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/iterator.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/keyCodes.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/lazy.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/lifecycle.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/linkedList.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/strings.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/hash.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/diff/diff.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/types.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/objects.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/uint.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/core/characterClassifier.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/core/position.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/core/range.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/core/selection.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/core/wordCharacterClassifier.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/core/wordHelper.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/diff/diffComputer.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/languages/linkComputer.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/languages/supports/inplaceReplaceSupport.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/model.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/model/prefixSumComputer.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/model/mirrorTextModel.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/model/textModelSearch.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/services/unicodeTextModelHighlighter.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/standalone/standaloneEnums.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/platform.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/process.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/path.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/stopwatch.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/event.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/cancellation.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/uri.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/base/common/worker/simpleWorker.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/tokenizationRegistry.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/languages.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/services/editorBaseApi.ts","out-editor/vs/base/worker/file:/home/runner/work/monaco-editor/monaco-editor/vscode/out-editor-src/vs/editor/common/services/editorSimpleWorker.ts"],"sourcesContent":["}).call(this);","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n'use strict';\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/*---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n * Please make sure to make edits in the .ts file at https://github.com/microsoft/vscode-loader/\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *--------------------------------------------------------------------------------------------*/\nvar _amdLoaderGlobal = this;\nvar _commonjsGlobal = typeof global === 'object' ? global : {};\nvar AMDLoader;\n(function (AMDLoader) {\n AMDLoader.global = _amdLoaderGlobal;\n var Environment = /** @class */ (function () {\n function Environment() {\n this._detected = false;\n this._isWindows = false;\n this._isNode = false;\n this._isElectronRenderer = false;\n this._isWebWorker = false;\n this._isElectronNodeIntegrationWebWorker = false;\n }\n Object.defineProperty(Environment.prototype, \"isWindows\", {\n get: function () {\n this._detect();\n return this._isWindows;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Environment.prototype, \"isNode\", {\n get: function () {\n this._detect();\n return this._isNode;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Environment.prototype, \"isElectronRenderer\", {\n get: function () {\n this._detect();\n return this._isElectronRenderer;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Environment.prototype, \"isWebWorker\", {\n get: function () {\n this._detect();\n return this._isWebWorker;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Environment.prototype, \"isElectronNodeIntegrationWebWorker\", {\n get: function () {\n this._detect();\n return this._isElectronNodeIntegrationWebWorker;\n },\n enumerable: false,\n configurable: true\n });\n Environment.prototype._detect = function () {\n if (this._detected) {\n return;\n }\n this._detected = true;\n this._isWindows = Environment._isWindows();\n this._isNode = (typeof module !== 'undefined' && !!module.exports);\n this._isElectronRenderer = (typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions.electron !== 'undefined' && process.type === 'renderer');\n this._isWebWorker = (typeof AMDLoader.global.importScripts === 'function');\n this._isElectronNodeIntegrationWebWorker = this._isWebWorker && (typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions.electron !== 'undefined' && process.type === 'worker');\n };\n Environment._isWindows = function () {\n if (typeof navigator !== 'undefined') {\n if (navigator.userAgent && navigator.userAgent.indexOf('Windows') >= 0) {\n return true;\n }\n }\n if (typeof process !== 'undefined') {\n return (process.platform === 'win32');\n }\n return false;\n };\n return Environment;\n }());\n AMDLoader.Environment = Environment;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n var LoaderEvent = /** @class */ (function () {\n function LoaderEvent(type, detail, timestamp) {\n this.type = type;\n this.detail = detail;\n this.timestamp = timestamp;\n }\n return LoaderEvent;\n }());\n AMDLoader.LoaderEvent = LoaderEvent;\n var LoaderEventRecorder = /** @class */ (function () {\n function LoaderEventRecorder(loaderAvailableTimestamp) {\n this._events = [new LoaderEvent(1 /* LoaderAvailable */, '', loaderAvailableTimestamp)];\n }\n LoaderEventRecorder.prototype.record = function (type, detail) {\n this._events.push(new LoaderEvent(type, detail, AMDLoader.Utilities.getHighPerformanceTimestamp()));\n };\n LoaderEventRecorder.prototype.getEvents = function () {\n return this._events;\n };\n return LoaderEventRecorder;\n }());\n AMDLoader.LoaderEventRecorder = LoaderEventRecorder;\n var NullLoaderEventRecorder = /** @class */ (function () {\n function NullLoaderEventRecorder() {\n }\n NullLoaderEventRecorder.prototype.record = function (type, detail) {\n // Nothing to do\n };\n NullLoaderEventRecorder.prototype.getEvents = function () {\n return [];\n };\n NullLoaderEventRecorder.INSTANCE = new NullLoaderEventRecorder();\n return NullLoaderEventRecorder;\n }());\n AMDLoader.NullLoaderEventRecorder = NullLoaderEventRecorder;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n var Utilities = /** @class */ (function () {\n function Utilities() {\n }\n /**\n * This method does not take care of / vs \\\n */\n Utilities.fileUriToFilePath = function (isWindows, uri) {\n uri = decodeURI(uri).replace(/%23/g, '#');\n if (isWindows) {\n if (/^file:\\/\\/\\//.test(uri)) {\n // This is a URI without a hostname => return only the path segment\n return uri.substr(8);\n }\n if (/^file:\\/\\//.test(uri)) {\n return uri.substr(5);\n }\n }\n else {\n if (/^file:\\/\\//.test(uri)) {\n return uri.substr(7);\n }\n }\n // Not sure...\n return uri;\n };\n Utilities.startsWith = function (haystack, needle) {\n return haystack.length >= needle.length && haystack.substr(0, needle.length) === needle;\n };\n Utilities.endsWith = function (haystack, needle) {\n return haystack.length >= needle.length && haystack.substr(haystack.length - needle.length) === needle;\n };\n // only check for \"?\" before \"#\" to ensure that there is a real Query-String\n Utilities.containsQueryString = function (url) {\n return /^[^\\#]*\\?/gi.test(url);\n };\n /**\n * Does `url` start with http:// or https:// or file:// or / ?\n */\n Utilities.isAbsolutePath = function (url) {\n return /^((http:\\/\\/)|(https:\\/\\/)|(file:\\/\\/)|(\\/))/.test(url);\n };\n Utilities.forEachProperty = function (obj, callback) {\n if (obj) {\n var key = void 0;\n for (key in obj) {\n if (obj.hasOwnProperty(key)) {\n callback(key, obj[key]);\n }\n }\n }\n };\n Utilities.isEmpty = function (obj) {\n var isEmpty = true;\n Utilities.forEachProperty(obj, function () {\n isEmpty = false;\n });\n return isEmpty;\n };\n Utilities.recursiveClone = function (obj) {\n if (!obj || typeof obj !== 'object' || obj instanceof RegExp) {\n return obj;\n }\n if (!Array.isArray(obj) && Object.getPrototypeOf(obj) !== Object.prototype) {\n // only clone \"simple\" objects\n return obj;\n }\n var result = Array.isArray(obj) ? [] : {};\n Utilities.forEachProperty(obj, function (key, value) {\n if (value && typeof value === 'object') {\n result[key] = Utilities.recursiveClone(value);\n }\n else {\n result[key] = value;\n }\n });\n return result;\n };\n Utilities.generateAnonymousModule = function () {\n return '===anonymous' + (Utilities.NEXT_ANONYMOUS_ID++) + '===';\n };\n Utilities.isAnonymousModule = function (id) {\n return Utilities.startsWith(id, '===anonymous');\n };\n Utilities.getHighPerformanceTimestamp = function () {\n if (!this.PERFORMANCE_NOW_PROBED) {\n this.PERFORMANCE_NOW_PROBED = true;\n this.HAS_PERFORMANCE_NOW = (AMDLoader.global.performance && typeof AMDLoader.global.performance.now === 'function');\n }\n return (this.HAS_PERFORMANCE_NOW ? AMDLoader.global.performance.now() : Date.now());\n };\n Utilities.NEXT_ANONYMOUS_ID = 1;\n Utilities.PERFORMANCE_NOW_PROBED = false;\n Utilities.HAS_PERFORMANCE_NOW = false;\n return Utilities;\n }());\n AMDLoader.Utilities = Utilities;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n function ensureError(err) {\n if (err instanceof Error) {\n return err;\n }\n var result = new Error(err.message || String(err) || 'Unknown Error');\n if (err.stack) {\n result.stack = err.stack;\n }\n return result;\n }\n AMDLoader.ensureError = ensureError;\n ;\n var ConfigurationOptionsUtil = /** @class */ (function () {\n function ConfigurationOptionsUtil() {\n }\n /**\n * Ensure configuration options make sense\n */\n ConfigurationOptionsUtil.validateConfigurationOptions = function (options) {\n function defaultOnError(err) {\n if (err.phase === 'loading') {\n console.error('Loading \"' + err.moduleId + '\" failed');\n console.error(err);\n console.error('Here are the modules that depend on it:');\n console.error(err.neededBy);\n return;\n }\n if (err.phase === 'factory') {\n console.error('The factory function of \"' + err.moduleId + '\" has thrown an exception');\n console.error(err);\n console.error('Here are the modules that depend on it:');\n console.error(err.neededBy);\n return;\n }\n }\n options = options || {};\n if (typeof options.baseUrl !== 'string') {\n options.baseUrl = '';\n }\n if (typeof options.isBuild !== 'boolean') {\n options.isBuild = false;\n }\n if (typeof options.buildForceInvokeFactory !== 'object') {\n options.buildForceInvokeFactory = {};\n }\n if (typeof options.paths !== 'object') {\n options.paths = {};\n }\n if (typeof options.config !== 'object') {\n options.config = {};\n }\n if (typeof options.catchError === 'undefined') {\n options.catchError = false;\n }\n if (typeof options.recordStats === 'undefined') {\n options.recordStats = false;\n }\n if (typeof options.urlArgs !== 'string') {\n options.urlArgs = '';\n }\n if (typeof options.onError !== 'function') {\n options.onError = defaultOnError;\n }\n if (!Array.isArray(options.ignoreDuplicateModules)) {\n options.ignoreDuplicateModules = [];\n }\n if (options.baseUrl.length > 0) {\n if (!AMDLoader.Utilities.endsWith(options.baseUrl, '/')) {\n options.baseUrl += '/';\n }\n }\n if (typeof options.cspNonce !== 'string') {\n options.cspNonce = '';\n }\n if (typeof options.preferScriptTags === 'undefined') {\n options.preferScriptTags = false;\n }\n if (!Array.isArray(options.nodeModules)) {\n options.nodeModules = [];\n }\n if (options.nodeCachedData && typeof options.nodeCachedData === 'object') {\n if (typeof options.nodeCachedData.seed !== 'string') {\n options.nodeCachedData.seed = 'seed';\n }\n if (typeof options.nodeCachedData.writeDelay !== 'number' || options.nodeCachedData.writeDelay < 0) {\n options.nodeCachedData.writeDelay = 1000 * 7;\n }\n if (!options.nodeCachedData.path || typeof options.nodeCachedData.path !== 'string') {\n var err = ensureError(new Error('INVALID cached data configuration, \\'path\\' MUST be set'));\n err.phase = 'configuration';\n options.onError(err);\n options.nodeCachedData = undefined;\n }\n }\n return options;\n };\n ConfigurationOptionsUtil.mergeConfigurationOptions = function (overwrite, base) {\n if (overwrite === void 0) { overwrite = null; }\n if (base === void 0) { base = null; }\n var result = AMDLoader.Utilities.recursiveClone(base || {});\n // Merge known properties and overwrite the unknown ones\n AMDLoader.Utilities.forEachProperty(overwrite, function (key, value) {\n if (key === 'ignoreDuplicateModules' && typeof result.ignoreDuplicateModules !== 'undefined') {\n result.ignoreDuplicateModules = result.ignoreDuplicateModules.concat(value);\n }\n else if (key === 'paths' && typeof result.paths !== 'undefined') {\n AMDLoader.Utilities.forEachProperty(value, function (key2, value2) { return result.paths[key2] = value2; });\n }\n else if (key === 'config' && typeof result.config !== 'undefined') {\n AMDLoader.Utilities.forEachProperty(value, function (key2, value2) { return result.config[key2] = value2; });\n }\n else {\n result[key] = AMDLoader.Utilities.recursiveClone(value);\n }\n });\n return ConfigurationOptionsUtil.validateConfigurationOptions(result);\n };\n return ConfigurationOptionsUtil;\n }());\n AMDLoader.ConfigurationOptionsUtil = ConfigurationOptionsUtil;\n var Configuration = /** @class */ (function () {\n function Configuration(env, options) {\n this._env = env;\n this.options = ConfigurationOptionsUtil.mergeConfigurationOptions(options);\n this._createIgnoreDuplicateModulesMap();\n this._createNodeModulesMap();\n this._createSortedPathsRules();\n if (this.options.baseUrl === '') {\n if (this.options.nodeRequire && this.options.nodeRequire.main && this.options.nodeRequire.main.filename && this._env.isNode) {\n var nodeMain = this.options.nodeRequire.main.filename;\n var dirnameIndex = Math.max(nodeMain.lastIndexOf('/'), nodeMain.lastIndexOf('\\\\'));\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\n }\n if (this.options.nodeMain && this._env.isNode) {\n var nodeMain = this.options.nodeMain;\n var dirnameIndex = Math.max(nodeMain.lastIndexOf('/'), nodeMain.lastIndexOf('\\\\'));\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\n }\n }\n }\n Configuration.prototype._createIgnoreDuplicateModulesMap = function () {\n // Build a map out of the ignoreDuplicateModules array\n this.ignoreDuplicateModulesMap = {};\n for (var i = 0; i < this.options.ignoreDuplicateModules.length; i++) {\n this.ignoreDuplicateModulesMap[this.options.ignoreDuplicateModules[i]] = true;\n }\n };\n Configuration.prototype._createNodeModulesMap = function () {\n // Build a map out of nodeModules array\n this.nodeModulesMap = Object.create(null);\n for (var _i = 0, _a = this.options.nodeModules; _i < _a.length; _i++) {\n var nodeModule = _a[_i];\n this.nodeModulesMap[nodeModule] = true;\n }\n };\n Configuration.prototype._createSortedPathsRules = function () {\n var _this = this;\n // Create an array our of the paths rules, sorted descending by length to\n // result in a more specific -> less specific order\n this.sortedPathsRules = [];\n AMDLoader.Utilities.forEachProperty(this.options.paths, function (from, to) {\n if (!Array.isArray(to)) {\n _this.sortedPathsRules.push({\n from: from,\n to: [to]\n });\n }\n else {\n _this.sortedPathsRules.push({\n from: from,\n to: to\n });\n }\n });\n this.sortedPathsRules.sort(function (a, b) {\n return b.from.length - a.from.length;\n });\n };\n /**\n * Clone current configuration and overwrite options selectively.\n * @param options The selective options to overwrite with.\n * @result A new configuration\n */\n Configuration.prototype.cloneAndMerge = function (options) {\n return new Configuration(this._env, ConfigurationOptionsUtil.mergeConfigurationOptions(options, this.options));\n };\n /**\n * Get current options bag. Useful for passing it forward to plugins.\n */\n Configuration.prototype.getOptionsLiteral = function () {\n return this.options;\n };\n Configuration.prototype._applyPaths = function (moduleId) {\n var pathRule;\n for (var i = 0, len = this.sortedPathsRules.length; i < len; i++) {\n pathRule = this.sortedPathsRules[i];\n if (AMDLoader.Utilities.startsWith(moduleId, pathRule.from)) {\n var result = [];\n for (var j = 0, lenJ = pathRule.to.length; j < lenJ; j++) {\n result.push(pathRule.to[j] + moduleId.substr(pathRule.from.length));\n }\n return result;\n }\n }\n return [moduleId];\n };\n Configuration.prototype._addUrlArgsToUrl = function (url) {\n if (AMDLoader.Utilities.containsQueryString(url)) {\n return url + '&' + this.options.urlArgs;\n }\n else {\n return url + '?' + this.options.urlArgs;\n }\n };\n Configuration.prototype._addUrlArgsIfNecessaryToUrl = function (url) {\n if (this.options.urlArgs) {\n return this._addUrlArgsToUrl(url);\n }\n return url;\n };\n Configuration.prototype._addUrlArgsIfNecessaryToUrls = function (urls) {\n if (this.options.urlArgs) {\n for (var i = 0, len = urls.length; i < len; i++) {\n urls[i] = this._addUrlArgsToUrl(urls[i]);\n }\n }\n return urls;\n };\n /**\n * Transform a module id to a location. Appends .js to module ids\n */\n Configuration.prototype.moduleIdToPaths = function (moduleId) {\n if (this._env.isNode) {\n var isNodeModule = ((this.nodeModulesMap[moduleId] === true)\n || (this.options.amdModulesPattern instanceof RegExp && !this.options.amdModulesPattern.test(moduleId)));\n if (isNodeModule) {\n // This is a node module...\n if (this.isBuild()) {\n // ...and we are at build time, drop it\n return ['empty:'];\n }\n else {\n // ...and at runtime we create a `shortcut`-path\n return ['node|' + moduleId];\n }\n }\n }\n var result = moduleId;\n var results;\n if (!AMDLoader.Utilities.endsWith(result, '.js') && !AMDLoader.Utilities.isAbsolutePath(result)) {\n results = this._applyPaths(result);\n for (var i = 0, len = results.length; i < len; i++) {\n if (this.isBuild() && results[i] === 'empty:') {\n continue;\n }\n if (!AMDLoader.Utilities.isAbsolutePath(results[i])) {\n results[i] = this.options.baseUrl + results[i];\n }\n if (!AMDLoader.Utilities.endsWith(results[i], '.js') && !AMDLoader.Utilities.containsQueryString(results[i])) {\n results[i] = results[i] + '.js';\n }\n }\n }\n else {\n if (!AMDLoader.Utilities.endsWith(result, '.js') && !AMDLoader.Utilities.containsQueryString(result)) {\n result = result + '.js';\n }\n results = [result];\n }\n return this._addUrlArgsIfNecessaryToUrls(results);\n };\n /**\n * Transform a module id or url to a location.\n */\n Configuration.prototype.requireToUrl = function (url) {\n var result = url;\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n result = this._applyPaths(result)[0];\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n result = this.options.baseUrl + result;\n }\n }\n return this._addUrlArgsIfNecessaryToUrl(result);\n };\n /**\n * Flag to indicate if current execution is as part of a build.\n */\n Configuration.prototype.isBuild = function () {\n return this.options.isBuild;\n };\n Configuration.prototype.shouldInvokeFactory = function (strModuleId) {\n if (!this.options.isBuild) {\n // outside of a build, all factories should be invoked\n return true;\n }\n // during a build, only explicitly marked or anonymous modules get their factories invoked\n return (this.options.buildForceInvokeFactory[strModuleId]\n || AMDLoader.Utilities.isAnonymousModule(strModuleId));\n };\n /**\n * Test if module `moduleId` is expected to be defined multiple times\n */\n Configuration.prototype.isDuplicateMessageIgnoredFor = function (moduleId) {\n return this.ignoreDuplicateModulesMap.hasOwnProperty(moduleId);\n };\n /**\n * Get the configuration settings for the provided module id\n */\n Configuration.prototype.getConfigForModule = function (moduleId) {\n if (this.options.config) {\n return this.options.config[moduleId];\n }\n };\n /**\n * Should errors be caught when executing module factories?\n */\n Configuration.prototype.shouldCatchError = function () {\n return this.options.catchError;\n };\n /**\n * Should statistics be recorded?\n */\n Configuration.prototype.shouldRecordStats = function () {\n return this.options.recordStats;\n };\n /**\n * Forward an error to the error handler.\n */\n Configuration.prototype.onError = function (err) {\n this.options.onError(err);\n };\n return Configuration;\n }());\n AMDLoader.Configuration = Configuration;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n /**\n * Load `scriptSrc` only once (avoid multiple