aboutsummaryrefslogtreecommitdiffstats
path: root/apidoc/vendor/polyfill.js
diff options
context:
space:
mode:
authorAdrien Hopkins <[email protected]>2021-08-18 13:45:18 -0500
committerAdam Soltys <[email protected]>2021-08-30 16:04:48 -0700
commite8d703a78577abc4df8af4747a6408474a848450 (patch)
tree10184b130e269482346d1c6ba6bccf983c1481a8 /apidoc/vendor/polyfill.js
parentf507d67b69e94d486e6cb6e4ba246dad2e3897a5 (diff)
downloadcoinos-server-e8d703a78577abc4df8af4747a6408474a848450.tar.gz
coinos-server-e8d703a78577abc4df8af4747a6408474a848450.zip
Compiled existing api docs to ./apidoc/
Diffstat (limited to 'apidoc/vendor/polyfill.js')
-rw-r--r--apidoc/vendor/polyfill.js96
1 files changed, 96 insertions, 0 deletions
diff --git a/apidoc/vendor/polyfill.js b/apidoc/vendor/polyfill.js
new file mode 100644
index 00000000..1d8c61cd
--- /dev/null
+++ b/apidoc/vendor/polyfill.js
@@ -0,0 +1,96 @@
+// From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
+if (!Object.keys) {
+ Object.keys = (function () {
+ 'use strict';
+ var hasOwnProperty = Object.prototype.hasOwnProperty,
+ hasDontEnumBug = !({toString: null}).propertyIsEnumerable('toString'),
+ dontEnums = [
+ 'toString',
+ 'toLocaleString',
+ 'valueOf',
+ 'hasOwnProperty',
+ 'isPrototypeOf',
+ 'propertyIsEnumerable',
+ 'constructor'
+ ],
+ dontEnumsLength = dontEnums.length;
+
+ return function (obj) {
+ if (typeof obj !== 'object' && (typeof obj !== 'function' || obj === null)) {
+ throw new TypeError('Object.keys called on non-object');
+ }
+
+ var result = [], prop, i;
+
+ for (prop in obj) {
+ if (hasOwnProperty.call(obj, prop)) {
+ result.push(prop);
+ }
+ }
+
+ if (hasDontEnumBug) {
+ for (i = 0; i < dontEnumsLength; i++) {
+ if (hasOwnProperty.call(obj, dontEnums[i])) {
+ result.push(dontEnums[i]);
+ }
+ }
+ }
+ return result;
+ };
+ }());
+}
+
+//Production steps of ECMA-262, Edition 5, 15.4.4.18
+//Reference: http://es5.github.com/#x15.4.4.18
+if (!Array.prototype.forEach) {
+ Array.prototype.forEach = function (callback, thisArg) {
+ var T, k;
+
+ if (this == null) {
+ throw new TypeError(' this is null or not defined');
+ }
+
+ // 1. Let O be the result of calling ToObject passing the |this| value as the argument.
+ var O = Object(this);
+
+ // 2. Let lenValue be the result of calling the Get internal method of O with the argument "length".
+ // 3. Let len be ToUint32(lenValue).
+ var len = O.length >>> 0;
+
+ // 4. If IsCallable(callback) is false, throw a TypeError exception.
+ // See: http://es5.github.com/#x9.11
+ if (typeof callback !== "function") {
+ throw new TypeError(callback + " is not a function");
+ }
+
+ // 5. If thisArg was supplied, let T be thisArg; else let T be undefined.
+ if (arguments.length > 1) {
+ T = thisArg;
+ }
+
+ // 6. Let k be 0
+ k = 0;
+
+ // 7. Repeat, while k < len
+ while (k < len) {
+ var kValue;
+
+ // a. Let Pk be ToString(k).
+ // This is implicit for LHS operands of the in operator
+ // b. Let kPresent be the result of calling the HasProperty internal method of O with argument Pk.
+ // This step can be combined with c
+ // c. If kPresent is true, then
+ if (k in O) {
+ // i. Let kValue be the result of calling the Get internal method of O with argument Pk.
+ kValue = O[k];
+
+ // ii. Call the Call internal method of callback with T as the this value and
+ // argument list containing kValue, k, and O.
+ callback.call(T, kValue, k, O);
+ }
+ // d. Increase k by 1.
+ k++;
+ }
+ // 8. return undefined
+ };
+}