Alex Dima vor 4 Jahren
Ursprung
Commit
3c52c0fadf

+ 4 - 0
electron-amd-nodeIntegration/electron-index.html

@@ -2,6 +2,10 @@
 <html>
 	<head>
 		<meta charset="UTF-8" />
+		<meta
+			http-equiv="Content-Security-Policy"
+			content="default-src 'none'; script-src file: 'sha256-TtwXDwNf27AqcsOrUpfkC3hkt80RRVrp7Xlab9b0ZVk='; style-src 'unsafe-inline' file:; font-src file:"
+		/>
 		<title>Monaco Editor!</title>
 	</head>
 	<body>

+ 2 - 1
electron-amd-nodeIntegration/main.js

@@ -9,7 +9,8 @@ function createWindow() {
 		width: 800,
 		height: 600,
 		webPreferences: {
-			nodeIntegration: true
+			nodeIntegration: true,
+			worldSafeExecuteJavaScript: true
 		}
 	});
 	mainWindow.loadURL(`file://${__dirname}/electron-index.html`);

+ 20 - 26
electron-amd-nodeIntegration/package-lock.json

@@ -36,9 +36,9 @@
 			}
 		},
 		"@types/node": {
-			"version": "12.12.54",
-			"resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.54.tgz",
-			"integrity": "sha512-ge4xZ3vSBornVYlDnk7yZ0gK6ChHf/CHB7Gl1I0Jhah8DDnEQqBzgohYG4FX4p81TNirSETOiSyn+y1r9/IR6w==",
+			"version": "12.12.62",
+			"resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.62.tgz",
+			"integrity": "sha512-qAfo81CsD7yQIM9mVyh6B/U47li5g7cfpVQEDMfQeF8pSZVwzbhwU3crc0qG4DmpsebpJPR49AKOExQyJ05Cpg==",
 			"dev": true
 		},
 		"boolean": {
@@ -76,9 +76,9 @@
 			},
 			"dependencies": {
 				"get-stream": {
-					"version": "5.1.0",
-					"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz",
-					"integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==",
+					"version": "5.2.0",
+					"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+					"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
 					"dev": true,
 					"requires": {
 						"pump": "^3.0.0"
@@ -138,12 +138,12 @@
 			"dev": true
 		},
 		"debug": {
-			"version": "4.1.1",
-			"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
-			"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
+			"version": "4.2.0",
+			"resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz",
+			"integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==",
 			"dev": true,
 			"requires": {
-				"ms": "^2.1.1"
+				"ms": "2.1.2"
 			}
 		},
 		"decompress-response": {
@@ -185,9 +185,9 @@
 			"dev": true
 		},
 		"electron": {
-			"version": "9.1.2",
-			"resolved": "https://registry.npmjs.org/electron/-/electron-9.1.2.tgz",
-			"integrity": "sha512-xEYadr3XqIqJ4ktBPo0lhzPdovv4jLCpiUUGc2M1frUhFhwqXokwhPaTUcE+zfu5+uf/ONDnQApwjzznBsRrgQ==",
+			"version": "10.1.2",
+			"resolved": "https://registry.npmjs.org/electron/-/electron-10.1.2.tgz",
+			"integrity": "sha512-SvN8DcKCmPZ0UcQSNAJBfaUu+LGACqtRhUn1rW0UBLHgdbbDM76L0GU5/XGQEllH5pu5bwlCZwax3srzIl+Aeg==",
 			"dev": true,
 			"requires": {
 				"@electron/get": "^1.0.1",
@@ -410,9 +410,9 @@
 			}
 		},
 		"lodash": {
-			"version": "4.17.19",
-			"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
-			"integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+			"version": "4.17.20",
+			"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
+			"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
 			"dev": true,
 			"optional": true
 		},
@@ -453,12 +453,6 @@
 				"minimist": "^1.2.5"
 			}
 		},
-		"monaco-editor": {
-			"version": "0.20.0",
-			"resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.20.0.tgz",
-			"integrity": "sha512-hkvf4EtPJRMQlPC3UbMoRs0vTAFAYdzFQ+gpMb8A+9znae1c43q8Mab9iVsgTcg/4PNiLGGn3SlDIa8uvK1FIQ==",
-			"dev": true
-		},
 		"ms": {
 			"version": "2.1.2",
 			"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -577,13 +571,13 @@
 			}
 		},
 		"roarr": {
-			"version": "2.15.3",
-			"resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.3.tgz",
-			"integrity": "sha512-AEjYvmAhlyxOeB9OqPUzQCo3kuAkNfuDk/HqWbZdFsqDFpapkTjiw+p4svNEoRLvuqNTxqfL+s+gtD4eDgZ+CA==",
+			"version": "2.15.4",
+			"resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz",
+			"integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==",
 			"dev": true,
 			"optional": true,
 			"requires": {
-				"boolean": "^3.0.0",
+				"boolean": "^3.0.1",
 				"detect-node": "^2.0.4",
 				"globalthis": "^1.0.1",
 				"json-stringify-safe": "^5.0.1",

+ 1 - 3
electron-amd-nodeIntegration/package.json

@@ -1,12 +1,10 @@
 {
 	"name": "helloworld",
-	"dependencies": {},
 	"scripts": {
 		"execute": "electron ."
 	},
 	"main": "./main",
 	"devDependencies": {
-		"electron": "^9.1.2",
-		"monaco-editor": "0.20.0"
+		"electron": "^10.1.2"
 	}
 }

+ 22 - 11
electron-amd/electron-index.html

@@ -2,7 +2,18 @@
 <html>
 	<head>
 		<meta charset="UTF-8" />
+		<meta
+			http-equiv="Content-Security-Policy"
+			content="default-src 'none'; script-src file: 'sha256-eUe9D+bk6Fb37s7QPlaxhnIImIQEcnZ1gE7aRcB3yOM='; style-src 'unsafe-inline' file:; font-src file:"
+		/>
 		<title>Monaco Editor!</title>
+		<style>
+			#container {
+				width: 500px;
+				height: 300px;
+				border: 1px solid #ccc;
+			}
+		</style>
 	</head>
 
 	<body>
@@ -10,23 +21,23 @@
 		Note: Since Electron without nodeIntegration is very similar to a browser,
 		you can have a look at all the other `browser-` samples, as they should work
 		just fine. <br /><br />
-		<div
-			id="container"
-			style="width: 500px; height: 300px; border: 1px solid #ccc"
-		></div>
+		<div id="container"></div>
 	</body>
 
-	<script src="./node_modules/monaco-editor/min/vs/loader.js"></script>
+	<script src="../node_modules/monaco-editor/min/vs/loader.js"></script>
 	<script>
 		require.config({ paths: { vs: '../node_modules/monaco-editor/min/vs' } });
 
 		require(['vs/editor/editor.main'], function () {
-			var editor = monaco.editor.create(document.getElementById('container'), {
-				value: ['function x() {', '\tconsole.log("Hello world!");', '}'].join(
-					'\n'
-				),
-				language: 'javascript'
-			});
+			const editor = monaco.editor.create(
+				document.getElementById('container'),
+				{
+					value: ['function x() {', '\tconsole.log("Hello world!");', '}'].join(
+						'\n'
+					),
+					language: 'javascript'
+				}
+			);
 		});
 	</script>
 </html>

+ 5 - 1
electron-amd/main.js

@@ -5,7 +5,11 @@ const BrowserWindow = electron.BrowserWindow;
 let mainWindow;
 
 function createWindow() {
-	mainWindow = new BrowserWindow({ width: 800, height: 600 });
+	mainWindow = new BrowserWindow({
+		width: 800,
+		height: 600,
+		webPreferences: { worldSafeExecuteJavaScript: true }
+	});
 	mainWindow.loadURL(`file://${__dirname}/electron-index.html`);
 	mainWindow.webContents.openDevTools();
 	mainWindow.on('closed', function () {

+ 20 - 26
electron-amd/package-lock.json

@@ -36,9 +36,9 @@
 			}
 		},
 		"@types/node": {
-			"version": "12.12.54",
-			"resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.54.tgz",
-			"integrity": "sha512-ge4xZ3vSBornVYlDnk7yZ0gK6ChHf/CHB7Gl1I0Jhah8DDnEQqBzgohYG4FX4p81TNirSETOiSyn+y1r9/IR6w==",
+			"version": "12.12.62",
+			"resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.62.tgz",
+			"integrity": "sha512-qAfo81CsD7yQIM9mVyh6B/U47li5g7cfpVQEDMfQeF8pSZVwzbhwU3crc0qG4DmpsebpJPR49AKOExQyJ05Cpg==",
 			"dev": true
 		},
 		"boolean": {
@@ -76,9 +76,9 @@
 			},
 			"dependencies": {
 				"get-stream": {
-					"version": "5.1.0",
-					"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz",
-					"integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==",
+					"version": "5.2.0",
+					"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+					"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
 					"dev": true,
 					"requires": {
 						"pump": "^3.0.0"
@@ -138,12 +138,12 @@
 			"dev": true
 		},
 		"debug": {
-			"version": "4.1.1",
-			"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
-			"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
+			"version": "4.2.0",
+			"resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz",
+			"integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==",
 			"dev": true,
 			"requires": {
-				"ms": "^2.1.1"
+				"ms": "2.1.2"
 			}
 		},
 		"decompress-response": {
@@ -185,9 +185,9 @@
 			"dev": true
 		},
 		"electron": {
-			"version": "9.1.2",
-			"resolved": "https://registry.npmjs.org/electron/-/electron-9.1.2.tgz",
-			"integrity": "sha512-xEYadr3XqIqJ4ktBPo0lhzPdovv4jLCpiUUGc2M1frUhFhwqXokwhPaTUcE+zfu5+uf/ONDnQApwjzznBsRrgQ==",
+			"version": "10.1.2",
+			"resolved": "https://registry.npmjs.org/electron/-/electron-10.1.2.tgz",
+			"integrity": "sha512-SvN8DcKCmPZ0UcQSNAJBfaUu+LGACqtRhUn1rW0UBLHgdbbDM76L0GU5/XGQEllH5pu5bwlCZwax3srzIl+Aeg==",
 			"dev": true,
 			"requires": {
 				"@electron/get": "^1.0.1",
@@ -410,9 +410,9 @@
 			}
 		},
 		"lodash": {
-			"version": "4.17.19",
-			"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
-			"integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+			"version": "4.17.20",
+			"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
+			"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
 			"dev": true,
 			"optional": true
 		},
@@ -453,12 +453,6 @@
 				"minimist": "^1.2.5"
 			}
 		},
-		"monaco-editor": {
-			"version": "0.20.0",
-			"resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.20.0.tgz",
-			"integrity": "sha512-hkvf4EtPJRMQlPC3UbMoRs0vTAFAYdzFQ+gpMb8A+9znae1c43q8Mab9iVsgTcg/4PNiLGGn3SlDIa8uvK1FIQ==",
-			"dev": true
-		},
 		"ms": {
 			"version": "2.1.2",
 			"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -577,13 +571,13 @@
 			}
 		},
 		"roarr": {
-			"version": "2.15.3",
-			"resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.3.tgz",
-			"integrity": "sha512-AEjYvmAhlyxOeB9OqPUzQCo3kuAkNfuDk/HqWbZdFsqDFpapkTjiw+p4svNEoRLvuqNTxqfL+s+gtD4eDgZ+CA==",
+			"version": "2.15.4",
+			"resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz",
+			"integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==",
 			"dev": true,
 			"optional": true,
 			"requires": {
-				"boolean": "^3.0.0",
+				"boolean": "^3.0.1",
 				"detect-node": "^2.0.4",
 				"globalthis": "^1.0.1",
 				"json-stringify-safe": "^5.0.1",

+ 1 - 3
electron-amd/package.json

@@ -1,12 +1,10 @@
 {
 	"name": "helloworld",
-	"dependencies": {},
 	"scripts": {
 		"execute": "electron ."
 	},
 	"main": "./main",
 	"devDependencies": {
-		"electron": "^9.1.2",
-		"monaco-editor": "0.20.0"
+		"electron": "^10.1.2"
 	}
 }