Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlfredo Sumaran <alfredo@gitlab.com>2016-12-14 19:40:45 +0300
committerAlfredo Sumaran <alfredo@gitlab.com>2016-12-14 19:45:45 +0300
commitf796840fd33d7df2c1de8f965596b5486b1fbf24 (patch)
treef2ae8758440af6ba92313e0b1be21192a8fc7787 /app/assets/javascripts/extensions
parent1fca9658ce3f136ec38f6550d5cf4d80a8773731 (diff)
Add Object.assign polyfill
Diffstat (limited to 'app/assets/javascripts/extensions')
-rw-r--r--app/assets/javascripts/extensions/object.js.es627
1 files changed, 27 insertions, 0 deletions
diff --git a/app/assets/javascripts/extensions/object.js.es6 b/app/assets/javascripts/extensions/object.js.es6
new file mode 100644
index 00000000000..f8cdedd507b
--- /dev/null
+++ b/app/assets/javascripts/extensions/object.js.es6
@@ -0,0 +1,27 @@
+/* eslint-disable */
+
+// Taken from https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#Polyfill
+if (typeof Object.assign != 'function') {
+ Object.assign = function (target, varArgs) { // .length of function is 2
+ 'use strict';
+ if (target == null) { // TypeError if undefined or null
+ throw new TypeError('Cannot convert undefined or null to object');
+ }
+
+ var to = Object(target);
+
+ for (var index = 1; index < arguments.length; index++) {
+ var nextSource = arguments[index];
+
+ if (nextSource != null) { // Skip over if undefined or null
+ for (var nextKey in nextSource) {
+ // Avoid bugs when hasOwnProperty is shadowed
+ if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
+ to[nextKey] = nextSource[nextKey];
+ }
+ }
+ }
+ }
+ return to;
+ };
+}