Explorar el Código

polyfill assign

Martin Aeschlimann hace 6 años
padre
commit
1702ca1c07
Se han modificado 4 ficheros con 38 adiciones y 4 borrados
  1. 3 3
      package-lock.json
  2. 1 1
      package.json
  3. 31 0
      src/fillers/polyfills.ts
  4. 3 0
      src/htmlWorker.ts

+ 3 - 3
package-lock.json

@@ -11,9 +11,9 @@
       "dev": true
     },
     "monaco-editor-core": {
-      "version": "0.16.0",
-      "resolved": "https://registry.npmjs.org/monaco-editor-core/-/monaco-editor-core-0.16.0.tgz",
-      "integrity": "sha512-8tm8vq0SVuQ+VXZFtPIEIronK3102SYCWe8wviWu/5TV4zlDQcf4YdzI6A4CrNqbUc46dD0ngijaKWoRSViI8g==",
+      "version": "0.16.1",
+      "resolved": "https://registry.npmjs.org/monaco-editor-core/-/monaco-editor-core-0.16.1.tgz",
+      "integrity": "sha512-nydAuVbU3B1T/sNz4ZiO+92HUnLyVE4YQWr91R8WDEBItFZuwPs7Z2VaCTgouU6BwNrSnDdK/kAyhKgpih+GHQ==",
       "dev": true
     },
     "monaco-languages": {

+ 1 - 1
package.json

@@ -19,7 +19,7 @@
     "url": "https://github.com/Microsoft/monaco-editor/issues"
   },
   "devDependencies": {
-    "monaco-editor-core": "0.16.0",
+    "monaco-editor-core": "^0.16.1",
     "monaco-languages": "^1.7.0",
     "monaco-plugin-helpers": "^1.0.2",
     "requirejs": "^2.3.6",

+ 31 - 0
src/fillers/polyfills.ts

@@ -0,0 +1,31 @@
+/*---------------------------------------------------------------------------------------------
+ *  Copyright (c) Microsoft Corporation. All rights reserved.
+ *  Licensed under the MIT License. See License.txt in the project root for license information.
+ *--------------------------------------------------------------------------------------------*/
+
+export function polyfill() {
+
+    // Object.assign, for IE11
+    if (typeof Object['assign'] != 'function') {
+        Object.defineProperty(Object, "assign", {
+            value: function assign(destination, sources) {
+                'use strict';
+                if (destination !== null) {
+                    for (let i = 1; i < arguments.length; i++) {
+                        const source = arguments[i];
+                        if (source) {
+                            for (var key in source) {
+                                if (Object.prototype.hasOwnProperty.call(source, key)) {
+                                    destination[key] = source[key]
+                                }
+                            }
+                        }
+                    };
+                }
+                return destination;
+            },
+            writable: true,
+            configurable: true
+        });
+    }
+}

+ 3 - 0
src/htmlWorker.ts

@@ -11,6 +11,9 @@ import Thenable = monaco.Thenable;
 import * as htmlService from 'vscode-html-languageservice';
 import * as ls from 'vscode-languageserver-types';
 
+import * as poli from './fillers/polyfills';
+
+poli.polyfill();
 
 export class HTMLWorker {