diff --git a/src/Microsoft.TryDotNet.IntegrationTests/PageExtensions.cs b/src/Microsoft.TryDotNet.IntegrationTests/PageExtensions.cs index 8f9c3fbc2..48bb9ee57 100644 --- a/src/Microsoft.TryDotNet.IntegrationTests/PageExtensions.cs +++ b/src/Microsoft.TryDotNet.IntegrationTests/PageExtensions.cs @@ -38,7 +38,7 @@ await page.EvaluateAsync(@"(request) => { public static async Task FindEditor(this IPage page) { - var editor = page.Locator(@"textarea[role = ""textbox""]"); + var editor = page.Locator(@"[role = ""textbox""]"); await editor.IsVisibleAsync(); return editor; } @@ -93,7 +93,7 @@ public static async Task GetEditorContentAsync(this IFrameLocator iframe public static async Task ClearMonacoEditor(this IPage page) { - var editor = page.Locator(@"textarea[role = ""textbox""]"); + var editor = page.Locator(@"[role = ""textbox""]"); await editor.IsVisibleAsync(); await editor.FocusAsync(); await editor.PressAsync("Control+a"); diff --git a/src/microsoft-trydotnet-editor/package-lock.json b/src/microsoft-trydotnet-editor/package-lock.json index 597dc1efb..3131a5362 100644 --- a/src/microsoft-trydotnet-editor/package-lock.json +++ b/src/microsoft-trydotnet-editor/package-lock.json @@ -10,7 +10,7 @@ "license": "MIT", "dependencies": { "@microsoft/polyglot-notebooks": "1.0.441801", - "monaco-editor": "0.33.0", + "monaco-editor": "0.56.0", "rxjs": "7.8.2", "uuid": "14.0.1" }, @@ -777,6 +777,13 @@ "integrity": "sha512-chhaNf2oKHlRkDGt+tiKE2Z5aJ6qalm7Z9rlLdBwmOiAAf09YQvvoLXjWK4HWPF1xU/fqvMgfNfpVoBscA/tKA==", "dev": true }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "8.59.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.59.1.tgz", @@ -1929,6 +1936,15 @@ "url": "https://github.com/fb55/domhandler?sponsor=1" } }, + "node_modules/dompurify": { + "version": "3.4.8", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.8.tgz", + "integrity": "sha512-yb1cEmaOum7wFvOCSQxyfgVlv5D47Rc30iZWoMpbDIWTnJ6grDDQyu2KFJzB2k7u0pMuJcQ1zphH//fFnw2tjQ==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, "node_modules/domutils": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", @@ -3025,6 +3041,18 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/marked": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-14.0.0.tgz", + "integrity": "sha512-uIj4+faQ+MgHgwUW1l2PsPglZLOLOT1uErt06dAPtx2kjteLAkbsd/0FiYg/MGS+i7ZKLb7w2WClxHkzOOuryQ==", + "license": "MIT", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/mdn-data": { "version": "2.27.1", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz", @@ -3208,9 +3236,14 @@ } }, "node_modules/monaco-editor": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.33.0.tgz", - "integrity": "sha512-VcRWPSLIUEgQJQIE0pVT8FcGBIgFoxz7jtqctE+IiCxWugD0DwgyQBcZBhdSrdMC84eumoqMZsGl2GTreOzwqw==" + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.56.0.tgz", + "integrity": "sha512-sXboRm3BeBeLm938eaiyLMe0OxzfXIlZvbv4ir/jVgQy1zDhWjgmny0WoN45fuDKhCCQsYMbBJrv/A6jd8aCUg==", + "license": "MIT", + "dependencies": { + "dompurify": "3.4.8", + "marked": "14.0.0" + } }, "node_modules/monaco-editor-webpack-plugin": { "version": "7.1.1", diff --git a/src/microsoft-trydotnet-editor/package.json b/src/microsoft-trydotnet-editor/package.json index 998a1d28d..289f16aac 100644 --- a/src/microsoft-trydotnet-editor/package.json +++ b/src/microsoft-trydotnet-editor/package.json @@ -54,7 +54,7 @@ }, "dependencies": { "@microsoft/polyglot-notebooks": "1.0.441801", - "monaco-editor": "0.33.0", + "monaco-editor": "0.56.0", "rxjs": "7.8.2", "uuid": "14.0.1" }, diff --git a/src/microsoft-trydotnet-editor/webpack.config.js b/src/microsoft-trydotnet-editor/webpack.config.js index d80b7199c..ecc22c527 100644 --- a/src/microsoft-trydotnet-editor/webpack.config.js +++ b/src/microsoft-trydotnet-editor/webpack.config.js @@ -5,14 +5,15 @@ module.exports = { mode: 'development', entry: { app: './src/index.ts', - 'editor.worker': 'monaco-editor/esm/vs/editor/editor.worker.js', - 'json.worker': 'monaco-editor/esm/vs/language/json/json.worker', - 'css.worker': 'monaco-editor/esm/vs/language/css/css.worker', - 'html.worker': 'monaco-editor/esm/vs/language/html/html.worker', - 'ts.worker': 'monaco-editor/esm/vs/language/typescript/ts.worker' + 'editor.worker': 'monaco-editor/editor/editor.worker.js', + 'json.worker': 'monaco-editor/language/json/json.worker.js', + 'css.worker': 'monaco-editor/language/css/css.worker.js', + 'html.worker': 'monaco-editor/language/html/html.worker.js', + 'ts.worker': 'monaco-editor/language/typescript/ts.worker.js' }, resolve: { - extensions: ['.ts', '.js'] + extensions: ['.ts', '.js'], + conditionNames: ['import', 'require', 'default'] }, output: { globalObject: 'self',