]> source.dussan.org Git - nextcloud-server.git/commitdiff
Add davidchambers/base64 JS library
authorVincent Petry <pvince81@owncloud.com>
Mon, 14 Dec 2015 16:48:30 +0000 (17:48 +0100)
committerVincent Petry <pvince81@owncloud.com>
Mon, 14 Dec 2015 16:48:30 +0000 (17:48 +0100)
bower.json
core/vendor/.gitignore
core/vendor/base64/.bower.json [new file with mode: 0644]
core/vendor/base64/LICENSE [new file with mode: 0644]
core/vendor/base64/base64.js [new file with mode: 0644]

index eb8d1ce0b7fe5a231dbd3757fcc86ae9c5810faa..ae9575249c90bba158bf9b3aec54d85dc297e038 100644 (file)
@@ -29,6 +29,7 @@
     "bootstrap": "~3.3.6",
     "backbone": "~1.2.3",
     "davclient.js": "https://github.com/evert/davclient.js.git",
-    "es6-promise": "https://github.com/jakearchibald/es6-promise.git#~2.3.0"
+    "es6-promise": "https://github.com/jakearchibald/es6-promise.git#~2.3.0",
+    "base64": "~0.3.0"
   }
 }
index 09b6a47c72d5b0dc7f92a063763601c51669d830..3560e8c8668c5d5f406d4637e40406315cdce746 100644 (file)
@@ -133,3 +133,5 @@ es6-promise/**
 !es6-promise/LICENSE
 !es6-promise/dist/es6-promise.js
 
+# base64
+base64/*min.js
diff --git a/core/vendor/base64/.bower.json b/core/vendor/base64/.bower.json
new file mode 100644 (file)
index 0000000..43a7299
--- /dev/null
@@ -0,0 +1,29 @@
+{
+  "name": "base64",
+  "version": "0.3.0",
+  "description": "Base64 encoding and decoding",
+  "main": "./base64.js",
+  "license": "WTFPL",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/davidchambers/Base64.js.git"
+  },
+  "ignore": [
+    "**/.*",
+    "Makefile",
+    "coverage/",
+    "scripts/",
+    "test/"
+  ],
+  "homepage": "https://github.com/davidchambers/Base64.js",
+  "_release": "0.3.0",
+  "_resolution": {
+    "type": "version",
+    "tag": "0.3.0",
+    "commit": "772df096a5ffe983f40202684ad45eed1e0e2d59"
+  },
+  "_source": "git://github.com/davidchambers/Base64.js.git",
+  "_target": "~0.3.0",
+  "_originalSource": "base64",
+  "_direct": true
+}
\ No newline at end of file
diff --git a/core/vendor/base64/LICENSE b/core/vendor/base64/LICENSE
new file mode 100644 (file)
index 0000000..4832767
--- /dev/null
@@ -0,0 +1,14 @@
+
+            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+                    Version 2, December 2004
+
+ Copyright (c) 2011..2012 David Chambers <dc@hashify.me>
+
+ Everyone is permitted to copy and distribute verbatim or modified
+ copies of this license document, and changing it is allowed as long
+ as the name is changed.
+
+            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. You just DO WHAT THE FUCK YOU WANT TO.
diff --git a/core/vendor/base64/base64.js b/core/vendor/base64/base64.js
new file mode 100644 (file)
index 0000000..b82dded
--- /dev/null
@@ -0,0 +1,61 @@
+;(function () {
+
+  var object = typeof exports != 'undefined' ? exports : this; // #8: web workers
+  var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
+
+  function InvalidCharacterError(message) {
+    this.message = message;
+  }
+  InvalidCharacterError.prototype = new Error;
+  InvalidCharacterError.prototype.name = 'InvalidCharacterError';
+
+  // encoder
+  // [https://gist.github.com/999166] by [https://github.com/nignag]
+  object.btoa || (
+  object.btoa = function (input) {
+    var str = String(input);
+    for (
+      // initialize result and counter
+      var block, charCode, idx = 0, map = chars, output = '';
+      // if the next str index does not exist:
+      //   change the mapping table to "="
+      //   check if d has no fractional digits
+      str.charAt(idx | 0) || (map = '=', idx % 1);
+      // "8 - idx % 1 * 8" generates the sequence 2, 4, 6, 8
+      output += map.charAt(63 & block >> 8 - idx % 1 * 8)
+    ) {
+      charCode = str.charCodeAt(idx += 3/4);
+      if (charCode > 0xFF) {
+        throw new InvalidCharacterError("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");
+      }
+      block = block << 8 | charCode;
+    }
+    return output;
+  });
+
+  // decoder
+  // [https://gist.github.com/1020396] by [https://github.com/atk]
+  object.atob || (
+  object.atob = function (input) {
+    var str = String(input).replace(/=+$/, '');
+    if (str.length % 4 == 1) {
+      throw new InvalidCharacterError("'atob' failed: The string to be decoded is not correctly encoded.");
+    }
+    for (
+      // initialize result and counters
+      var bc = 0, bs, buffer, idx = 0, output = '';
+      // get next character
+      buffer = str.charAt(idx++);
+      // character found in table? initialize bit storage and add its ascii value;
+      ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,
+        // and if not first of each 4 characters,
+        // convert the first 8 bits to one ascii character
+        bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0
+    ) {
+      // try to find character in table (0-63, not found => -1)
+      buffer = chars.indexOf(buffer);
+    }
+    return output;
+  });
+
+}());