Compare commits
No commits in common. "master" and "v2.1.2" have entirely different histories.
32
LICENSE
32
LICENSE
@ -1,32 +1,3 @@
|
|||||||
At your option you may choose either of the following licenses:
|
|
||||||
|
|
||||||
* The MIT License (MIT)
|
|
||||||
* The Apache License 2.0 (Apache-2.0)
|
|
||||||
|
|
||||||
|
|
||||||
The MIT License (MIT)
|
|
||||||
|
|
||||||
Copyright (c) 2015 AJ ONeal
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
||||||
|
|
||||||
|
|
||||||
Apache License
|
Apache License
|
||||||
Version 2.0, January 2004
|
Version 2.0, January 2004
|
||||||
http://www.apache.org/licenses/
|
http://www.apache.org/licenses/
|
||||||
@ -215,7 +186,7 @@ SOFTWARE.
|
|||||||
same "printed page" as the copyright notice for easier
|
same "printed page" as the copyright notice for easier
|
||||||
identification within third-party archives.
|
identification within third-party archives.
|
||||||
|
|
||||||
Copyright 2015 AJ ONeal
|
Copyright {yyyy} {name of copyright owner}
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
@ -228,3 +199,4 @@ SOFTWARE.
|
|||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
|
|
||||||
|
|||||||
41
README.md
41
README.md
@ -1,7 +1,7 @@
|
|||||||
Unibabel
|
Unibabel
|
||||||
========
|
========
|
||||||
|
|
||||||
Minimalistic **Base64**, **TypedArrays**, and **UTF-8** / **Unicode** conversions in Browser (and Node) JavaScript. Optional add-on support for **hex** and **base32**.
|
Minimalistic Base64, TypedArrays, and UTF-8 / Unicode conversions in Browser (and Node) JavaScript
|
||||||
|
|
||||||
See <https://coolaj86.com/articles/base64-unicode-utf-8-javascript-and-you/>
|
See <https://coolaj86.com/articles/base64-unicode-utf-8-javascript-and-you/>
|
||||||
|
|
||||||
@ -14,41 +14,6 @@ See also
|
|||||||
* [TextEncoderLite (based on text-encoding)](https://github.com/coolaj86/TextEncoderLite/tree/lite)
|
* [TextEncoderLite (based on text-encoding)](https://github.com/coolaj86/TextEncoderLite/tree/lite)
|
||||||
* [Beatgammit's base64-js](https://github.com/beatgammit/base64-js)
|
* [Beatgammit's base64-js](https://github.com/beatgammit/base64-js)
|
||||||
|
|
||||||
Are you in the right place?
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
Dear Node.js Users:
|
|
||||||
|
|
||||||
You SHOULD NOT use this module. You already have [`Buffer`](https://nodejs.org/api/buffer.html) and [`thirty-two`](https://github.com/chrisumbel/thirty-two):
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
var buf = new Buffer('I ½ ♥ 💩', 'utf8');
|
|
||||||
buf.toString('hex');
|
|
||||||
buf.toString('base64');
|
|
||||||
buf.toString('ascii');
|
|
||||||
buf.toString('utf8');
|
|
||||||
buf.toString('binary'); // deprecated, do not use
|
|
||||||
```
|
|
||||||
|
|
||||||
Install
|
|
||||||
-------
|
|
||||||
|
|
||||||
You just include the `index.js` in a lovely script tag.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
bower install --save unibabel
|
|
||||||
```
|
|
||||||
|
|
||||||
```html
|
|
||||||
<script src="/bower_components/unibabel/index.js"></script>
|
|
||||||
```
|
|
||||||
|
|
||||||
Dear WebPack / Broccoli, Gulp / Grunt Users:
|
|
||||||
|
|
||||||
I don't know how your build systems work these days,
|
|
||||||
but Unibabel is exported as `Unibabel`
|
|
||||||
and you can access it as `window.Unibabel`.
|
|
||||||
|
|
||||||
API
|
API
|
||||||
===
|
===
|
||||||
|
|
||||||
@ -64,12 +29,12 @@ var uint8Array = Unibabel.base64ToArr(base64)
|
|||||||
|
|
||||||
**Normal APIs**
|
**Normal APIs**
|
||||||
|
|
||||||
`index.js`
|
|
||||||
|
|
||||||
* utf8ToBuffer(utf8str) => array
|
* utf8ToBuffer(utf8str) => array
|
||||||
* bufferToUtf8(array) => string
|
* bufferToUtf8(array) => string
|
||||||
|
|
||||||
* utf8ToBase64(utf8str) => base64
|
* utf8ToBase64(utf8str) => base64
|
||||||
* base64ToUtf8(base64) => string
|
* base64ToUtf8(base64) => string
|
||||||
|
|
||||||
* bufferToBase64(array) => base64
|
* bufferToBase64(array) => base64
|
||||||
* base64ToBuffer(base64) => array
|
* base64ToBuffer(base64) => array
|
||||||
|
|
||||||
|
|||||||
15
bower.json
15
bower.json
@ -1,9 +1,10 @@
|
|||||||
{
|
{
|
||||||
"name": "unibabel",
|
"name": "unibabel",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"homepage": "https://git.coolaj86.com/coolaj86/unibabel.js",
|
"version": "2.1.2",
|
||||||
|
"homepage": "https://github.com/coolaj86/unibabel-js",
|
||||||
"authors": [
|
"authors": [
|
||||||
"AJ ONeal <coolaj86@gmail.com>"
|
"AJ ONeal <awesome@coolaj86.com>"
|
||||||
],
|
],
|
||||||
"description": "Convert between UTF8, TypedArrays, and Base64",
|
"description": "Convert between UTF8, TypedArrays, and Base64",
|
||||||
"moduleType": [
|
"moduleType": [
|
||||||
@ -11,21 +12,15 @@
|
|||||||
"node"
|
"node"
|
||||||
],
|
],
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"ascii",
|
|
||||||
"binary",
|
|
||||||
"utf8",
|
"utf8",
|
||||||
"utf-8",
|
"utf-8",
|
||||||
"ArrayBuffer",
|
"ArrayBuffer",
|
||||||
"TypedArrays",
|
"TypedArrays",
|
||||||
"TypedArray",
|
|
||||||
"Uint",
|
"Uint",
|
||||||
"Uint8Array",
|
|
||||||
"Base64",
|
"Base64",
|
||||||
"b64",
|
"b64"
|
||||||
"Base32",
|
|
||||||
"b32"
|
|
||||||
],
|
],
|
||||||
"license": "Apache-2.0",
|
"license": "Apache2",
|
||||||
"ignore": [
|
"ignore": [
|
||||||
"**/.*",
|
"**/.*",
|
||||||
"node_modules",
|
"node_modules",
|
||||||
|
|||||||
@ -4,9 +4,9 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
This is for testing. Look in the console.
|
This is for testing. Look in the console.
|
||||||
<script src="../index.js"></script>
|
<script src="./index.js"></script>
|
||||||
<script src="../unibabel.hex.js"></script>
|
<script src="./unibabel.hex.js"></script>
|
||||||
<script src="../unibabel.base32.js"></script>
|
<script src="./unibabel.base32.js"></script>
|
||||||
<script src="./test.js"></script>
|
<script src="./test.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
6
index.js
6
index.js
@ -1,4 +1,4 @@
|
|||||||
(function (exports) {
|
(function () {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
function utf8ToBinaryString(str) {
|
function utf8ToBinaryString(str) {
|
||||||
@ -82,7 +82,7 @@ function base64ToBuffer(base64) {
|
|||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.Unibabel = {
|
window.Unibabel = {
|
||||||
utf8ToBinaryString: utf8ToBinaryString
|
utf8ToBinaryString: utf8ToBinaryString
|
||||||
, utf8ToBuffer: utf8ToBuffer
|
, utf8ToBuffer: utf8ToBuffer
|
||||||
, utf8ToBase64: utf8ToBase64
|
, utf8ToBase64: utf8ToBase64
|
||||||
@ -101,4 +101,4 @@ exports.Unibabel = {
|
|||||||
, base64ToArr: base64ToBuffer
|
, base64ToArr: base64ToBuffer
|
||||||
};
|
};
|
||||||
|
|
||||||
}('undefined' !== typeof exports && exports || 'undefined' !== typeof window && window || global));
|
}());
|
||||||
|
|||||||
19
node.js
19
node.js
@ -1,19 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
console.warn("Please don't use Unibabel in node.js. If you think you really think you have a valid use case please report it at https://git.coolaj86.com/coolaj86/unibabel.js/issues/new");
|
|
||||||
throw new Error("[unibabel] you're doing it wrong");
|
|
||||||
|
|
||||||
/*
|
|
||||||
var data = 'I ½ ♥ 💩';
|
|
||||||
var encoding = 'utf8';
|
|
||||||
var buf = new Buffer(data, encoding);
|
|
||||||
buf.toString('hex');
|
|
||||||
buf.toString('base64');
|
|
||||||
buf.toString('ascii');
|
|
||||||
buf.toString('utf8');
|
|
||||||
buf.toString('binary'); // deprecated, do not use
|
|
||||||
|
|
||||||
var Base32 = require('thirty-two');
|
|
||||||
var b32 = Base32.encode(buf);
|
|
||||||
Base32.decode(buf);
|
|
||||||
*/
|
|
||||||
37
package.json
37
package.json
@ -1,37 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "unibabel",
|
|
||||||
"version": "2.1.8",
|
|
||||||
"description": "Base64, TypedArrays, and UTF-8 / Unicode conversions in Browser (and Node) JavaScript",
|
|
||||||
"main": "node.js",
|
|
||||||
"browser": {
|
|
||||||
"./node.js": "./index.js"
|
|
||||||
},
|
|
||||||
"scripts": {
|
|
||||||
"test": "echo \"Error: no test specified\" && exit 1"
|
|
||||||
},
|
|
||||||
"repository": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.coolaj86.com/coolaj86/unibabel.js.git"
|
|
||||||
},
|
|
||||||
"keywords": [
|
|
||||||
"ascii",
|
|
||||||
"binary",
|
|
||||||
"utf8",
|
|
||||||
"utf-8",
|
|
||||||
"ArrayBuffer",
|
|
||||||
"TypedArrays",
|
|
||||||
"TypedArray",
|
|
||||||
"Uint",
|
|
||||||
"Uint8Array",
|
|
||||||
"Base64",
|
|
||||||
"b64",
|
|
||||||
"Base32",
|
|
||||||
"b32"
|
|
||||||
],
|
|
||||||
"author": "AJ ONeal <coolaj86@gmail.com> (https://coolaj86.com/)",
|
|
||||||
"license": "(MIT OR Apache-2.0)",
|
|
||||||
"bugs": {
|
|
||||||
"url": "https://git.coolaj86.com/coolaj86/unibabel.js/issues"
|
|
||||||
},
|
|
||||||
"homepage": "https://git.coolaj86.com/coolaj86/unibabel.js#readme"
|
|
||||||
}
|
|
||||||
1
unibabel-dom.js
Symbolic link
1
unibabel-dom.js
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
index.js
|
||||||
Loading…
x
Reference in New Issue
Block a user