@frsource/base64 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,2 +1,18 @@
1
- export function encode(input: string): string;
2
- export function decode(input: string): string;
1
+ /**
2
+ *
3
+ * Base64 encode / decode
4
+ * http://www.webtoolkit.info/
5
+ *
6
+ **/
7
+ /**
8
+ * Encodes given string.
9
+ *
10
+ * @param {string} input - Text to encode
11
+ */
12
+ export declare const encode: (input: string) => string;
13
+ /**
14
+ * Decodes given string.
15
+ *
16
+ * @param {string} input - Text to decode
17
+ */
18
+ export declare const decode: (input: string) => string;
package/dist/index.js CHANGED
@@ -1,30 +1,29 @@
1
- /**
2
- *
3
- * Base64 encode / decode
4
- * http://www.webtoolkit.info/
5
- *
1
+ /**
2
+ *
3
+ * Base64 encode / decode
4
+ * http://www.webtoolkit.info/
5
+ *
6
6
  **/
7
7
  const _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
8
- /**
9
- * Encodes given string.
10
- *
11
- * @param {string} input - Text to encode
8
+ /**
9
+ * Encodes given string.
10
+ *
11
+ * @param {string} input - Text to encode
12
12
  */
13
13
 
14
- exports.encode = function (input) {
14
+ const encode = input => {
15
15
  let output = "";
16
- let chr1, chr2, chr3, enc1, enc2, enc3, enc4;
17
16
  let i = 0;
18
17
  input = _utf8_encode(input);
19
18
 
20
19
  while (i < input.length) {
21
- chr1 = input.charCodeAt(i++);
22
- chr2 = input.charCodeAt(i++);
23
- chr3 = input.charCodeAt(i++);
24
- enc1 = chr1 >> 2;
25
- enc2 = (chr1 & 3) << 4 | chr2 >> 4;
26
- enc3 = (chr2 & 15) << 2 | chr3 >> 6;
27
- enc4 = chr3 & 63;
20
+ const chr1 = input.charCodeAt(i++);
21
+ const chr2 = input.charCodeAt(i++);
22
+ const chr3 = input.charCodeAt(i++);
23
+ const enc1 = chr1 >> 2;
24
+ const enc2 = (chr1 & 3) << 4 | chr2 >> 4;
25
+ let enc3 = (chr2 & 15) << 2 | chr3 >> 6;
26
+ let enc4 = chr3 & 63;
28
27
 
29
28
  if (isNaN(chr2)) {
30
29
  enc3 = enc4 = 64;
@@ -37,28 +36,29 @@ exports.encode = function (input) {
37
36
 
38
37
  return output;
39
38
  };
40
- /**
41
- * Decodes given string.
42
- *
43
- * @param {string} input - Text to decode
39
+ /**
40
+ * Decodes given string.
41
+ *
42
+ * @param {string} input - Text to decode
44
43
  */
45
44
 
46
-
47
- exports.decode = function (input) {
45
+ const decode = input => {
48
46
  let output = "";
49
- let chr1, chr2, chr3;
50
- let enc1, enc2, enc3, enc4;
51
47
  let i = 0;
52
48
  input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
53
49
 
54
50
  while (i < input.length) {
55
- enc1 = _keyStr.indexOf(input.charAt(i++));
56
- enc2 = _keyStr.indexOf(input.charAt(i++));
57
- enc3 = _keyStr.indexOf(input.charAt(i++));
58
- enc4 = _keyStr.indexOf(input.charAt(i++));
59
- chr1 = enc1 << 2 | enc2 >> 4;
60
- chr2 = (enc2 & 15) << 4 | enc3 >> 2;
61
- chr3 = (enc3 & 3) << 6 | enc4;
51
+ const enc1 = _keyStr.indexOf(input.charAt(i++));
52
+
53
+ const enc2 = _keyStr.indexOf(input.charAt(i++));
54
+
55
+ const enc3 = _keyStr.indexOf(input.charAt(i++));
56
+
57
+ const enc4 = _keyStr.indexOf(input.charAt(i++));
58
+
59
+ const chr1 = enc1 << 2 | enc2 >> 4;
60
+ const chr2 = (enc2 & 15) << 4 | enc3 >> 2;
61
+ const chr3 = (enc3 & 3) << 6 | enc4;
62
62
  output = output + String.fromCharCode(chr1);
63
63
 
64
64
  if (enc3 != 64) {
@@ -72,14 +72,13 @@ exports.decode = function (input) {
72
72
 
73
73
  return output = _utf8_decode(output);
74
74
  };
75
- /**
76
- * (private method) does a UTF-8 encoding
77
- *
78
- * @private
79
- * @param {string} string - Text to encode
75
+ /**
76
+ * (private method) does a UTF-8 encoding
77
+ *
78
+ * @private
79
+ * @param {string} string - Text to encode
80
80
  */
81
81
 
82
-
83
82
  function _utf8_encode(string) {
84
83
  string = string.replace(/\r\n/g, "\n");
85
84
  let utftext = "";
@@ -98,32 +97,31 @@ function _utf8_encode(string) {
98
97
 
99
98
  return utftext;
100
99
  }
101
- /**
102
- * (private method - do not use) does a UTF-8 decoding
103
- *
104
- * @private
105
- * @param {string} utftext - UTF-8 text to dencode
100
+ /**
101
+ * (private method - do not use) does a UTF-8 decoding
102
+ *
103
+ * @private
104
+ * @param {string} utftext - UTF-8 text to dencode
106
105
  */
107
106
 
108
107
 
109
108
  function _utf8_decode(utftext) {
110
109
  let string = "";
111
110
  let i = 0;
112
- let c = c1 = c2 = 0;
113
111
 
114
112
  while (i < utftext.length) {
115
- c = utftext.charCodeAt(i);
113
+ const c = utftext.charCodeAt(i);
116
114
 
117
115
  if (c < 128) {
118
116
  string += String.fromCharCode(c);
119
117
  i++;
120
118
  } else if (c > 191 && c < 224) {
121
- c2 = utftext.charCodeAt(i + 1);
119
+ const c2 = utftext.charCodeAt(i + 1);
122
120
  string += String.fromCharCode((c & 31) << 6 | c2 & 63);
123
121
  i += 2;
124
122
  } else {
125
- c2 = utftext.charCodeAt(i + 1);
126
- c3 = utftext.charCodeAt(i + 2);
123
+ const c2 = utftext.charCodeAt(i + 1);
124
+ const c3 = utftext.charCodeAt(i + 2);
127
125
  string += String.fromCharCode((c & 15) << 12 | (c2 & 63) << 6 | c3 & 63);
128
126
  i += 3;
129
127
  }
@@ -131,4 +129,7 @@ function _utf8_decode(utftext) {
131
129
 
132
130
  return string;
133
131
  }
132
+
133
+ exports.decode = decode;
134
+ exports.encode = encode;
134
135
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../index.js"],"sourcesContent":["/**\n *\n * Base64 encode / decode\n * http://www.webtoolkit.info/\n *\n **/\n\nconst _keyStr =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n/**\n * Encodes given string.\n *\n * @param {string} input - Text to encode\n */\nexports.encode = function (input) {\n let output = \"\";\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\n let i = 0;\n\n input = _utf8_encode(input);\n\n while (i < input.length) {\n chr1 = input.charCodeAt(i++);\n chr2 = input.charCodeAt(i++);\n chr3 = input.charCodeAt(i++);\n\n enc1 = chr1 >> 2;\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n enc4 = chr3 & 63;\n\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n\n output =\n output +\n _keyStr.charAt(enc1) +\n _keyStr.charAt(enc2) +\n _keyStr.charAt(enc3) +\n _keyStr.charAt(enc4);\n }\n\n return output;\n};\n\n/**\n * Decodes given string.\n *\n * @param {string} input - Text to decode\n */\nexports.decode = function (input) {\n let output = \"\";\n let chr1, chr2, chr3;\n let enc1, enc2, enc3, enc4;\n let i = 0;\n\n input = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, \"\");\n\n while (i < input.length) {\n enc1 = _keyStr.indexOf(input.charAt(i++));\n enc2 = _keyStr.indexOf(input.charAt(i++));\n enc3 = _keyStr.indexOf(input.charAt(i++));\n enc4 = _keyStr.indexOf(input.charAt(i++));\n\n chr1 = (enc1 << 2) | (enc2 >> 4);\n chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n chr3 = ((enc3 & 3) << 6) | enc4;\n\n output = output + String.fromCharCode(chr1);\n\n if (enc3 != 64) {\n output = output + String.fromCharCode(chr2);\n }\n\n if (enc4 != 64) {\n output = output + String.fromCharCode(chr3);\n }\n }\n\n return (output = _utf8_decode(output));\n};\n\n/**\n * (private method) does a UTF-8 encoding\n *\n * @private\n * @param {string} string - Text to encode\n */\nfunction _utf8_encode(string) {\n string = string.replace(/\\r\\n/g, \"\\n\");\n let utftext = \"\";\n\n for (let n = 0; n < string.length; n++) {\n const c = string.charCodeAt(n);\n\n if (c < 128) {\n utftext += String.fromCharCode(c);\n } else if (c > 127 && c < 2048) {\n utftext +=\n String.fromCharCode((c >> 6) | 192) +\n String.fromCharCode((c & 63) | 128);\n } else {\n utftext +=\n String.fromCharCode((c >> 12) | 224) +\n String.fromCharCode(((c >> 6) & 63) | 128) +\n String.fromCharCode((c & 63) | 128);\n }\n }\n\n return utftext;\n}\n\n/**\n * (private method - do not use) does a UTF-8 decoding\n *\n * @private\n * @param {string} utftext - UTF-8 text to dencode\n */\nfunction _utf8_decode(utftext) {\n let string = \"\";\n let i = 0;\n let c = (c1 = c2 = 0);\n\n while (i < utftext.length) {\n c = utftext.charCodeAt(i);\n\n if (c < 128) {\n string += String.fromCharCode(c);\n i++;\n } else if (c > 191 && c < 224) {\n c2 = utftext.charCodeAt(i + 1);\n string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n i += 2;\n } else {\n c2 = utftext.charCodeAt(i + 1);\n c3 = utftext.charCodeAt(i + 2);\n string += String.fromCharCode(\n ((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)\n );\n i += 3;\n }\n }\n return string;\n}\n"],"names":["_keyStr","exports","encode","input","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","i","_utf8_encode","length","charCodeAt","isNaN","charAt","decode","replace","indexOf","String","fromCharCode","_utf8_decode","string","utftext","n","c","c1","c2","c3"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../index.ts"],"sourcesContent":["/**\n *\n * Base64 encode / decode\n * http://www.webtoolkit.info/\n *\n **/\n\nconst _keyStr =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n/**\n * Encodes given string.\n *\n * @param {string} input - Text to encode\n */\nexport const encode = (input: string) => {\n let output = \"\";\n let i = 0;\n\n input = _utf8_encode(input);\n\n while (i < input.length) {\n const chr1 = input.charCodeAt(i++);\n const chr2 = input.charCodeAt(i++);\n const chr3 = input.charCodeAt(i++);\n\n const enc1 = chr1 >> 2;\n const enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n let enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n let enc4 = chr3 & 63;\n\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n\n output =\n output +\n _keyStr.charAt(enc1) +\n _keyStr.charAt(enc2) +\n _keyStr.charAt(enc3) +\n _keyStr.charAt(enc4);\n }\n\n return output;\n};\n\n/**\n * Decodes given string.\n *\n * @param {string} input - Text to decode\n */\nexport const decode = (input: string) => {\n let output = \"\";\n let i = 0;\n\n input = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, \"\");\n\n while (i < input.length) {\n const enc1 = _keyStr.indexOf(input.charAt(i++));\n const enc2 = _keyStr.indexOf(input.charAt(i++));\n const enc3 = _keyStr.indexOf(input.charAt(i++));\n const enc4 = _keyStr.indexOf(input.charAt(i++));\n\n const chr1 = (enc1 << 2) | (enc2 >> 4);\n const chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n const chr3 = ((enc3 & 3) << 6) | enc4;\n\n output = output + String.fromCharCode(chr1);\n\n if (enc3 != 64) {\n output = output + String.fromCharCode(chr2);\n }\n\n if (enc4 != 64) {\n output = output + String.fromCharCode(chr3);\n }\n }\n\n return (output = _utf8_decode(output));\n};\n\n/**\n * (private method) does a UTF-8 encoding\n *\n * @private\n * @param {string} string - Text to encode\n */\nfunction _utf8_encode(string: string) {\n string = string.replace(/\\r\\n/g, \"\\n\");\n let utftext = \"\";\n\n for (let n = 0; n < string.length; n++) {\n const c = string.charCodeAt(n);\n\n if (c < 128) {\n utftext += String.fromCharCode(c);\n } else if (c > 127 && c < 2048) {\n utftext +=\n String.fromCharCode((c >> 6) | 192) +\n String.fromCharCode((c & 63) | 128);\n } else {\n utftext +=\n String.fromCharCode((c >> 12) | 224) +\n String.fromCharCode(((c >> 6) & 63) | 128) +\n String.fromCharCode((c & 63) | 128);\n }\n }\n\n return utftext;\n}\n\n/**\n * (private method - do not use) does a UTF-8 decoding\n *\n * @private\n * @param {string} utftext - UTF-8 text to dencode\n */\nfunction _utf8_decode(utftext: string) {\n let string = \"\";\n let i = 0;\n\n while (i < utftext.length) {\n const c = utftext.charCodeAt(i);\n\n if (c < 128) {\n string += String.fromCharCode(c);\n i++;\n } else if (c > 191 && c < 224) {\n const c2 = utftext.charCodeAt(i + 1);\n string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n i += 2;\n } else {\n const c2 = utftext.charCodeAt(i + 1);\n const c3 = utftext.charCodeAt(i + 2);\n string += String.fromCharCode(\n ((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)\n );\n i += 3;\n }\n }\n return string;\n}\n"],"names":["_keyStr","encode","input","output","i","_utf8_encode","length","chr1","charCodeAt","chr2","chr3","enc1","enc2","enc3","enc4","isNaN","charAt","decode","replace","indexOf","String","fromCharCode","_utf8_decode","string","utftext","n","c","c2","c3"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,30 +1,29 @@
1
- /**
2
- *
3
- * Base64 encode / decode
4
- * http://www.webtoolkit.info/
5
- *
1
+ /**
2
+ *
3
+ * Base64 encode / decode
4
+ * http://www.webtoolkit.info/
5
+ *
6
6
  **/
7
7
  const _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
8
- /**
9
- * Encodes given string.
10
- *
11
- * @param {string} input - Text to encode
8
+ /**
9
+ * Encodes given string.
10
+ *
11
+ * @param {string} input - Text to encode
12
12
  */
13
13
 
14
- exports.encode = function (input) {
14
+ const encode = input => {
15
15
  let output = "";
16
- let chr1, chr2, chr3, enc1, enc2, enc3, enc4;
17
16
  let i = 0;
18
17
  input = _utf8_encode(input);
19
18
 
20
19
  while (i < input.length) {
21
- chr1 = input.charCodeAt(i++);
22
- chr2 = input.charCodeAt(i++);
23
- chr3 = input.charCodeAt(i++);
24
- enc1 = chr1 >> 2;
25
- enc2 = (chr1 & 3) << 4 | chr2 >> 4;
26
- enc3 = (chr2 & 15) << 2 | chr3 >> 6;
27
- enc4 = chr3 & 63;
20
+ const chr1 = input.charCodeAt(i++);
21
+ const chr2 = input.charCodeAt(i++);
22
+ const chr3 = input.charCodeAt(i++);
23
+ const enc1 = chr1 >> 2;
24
+ const enc2 = (chr1 & 3) << 4 | chr2 >> 4;
25
+ let enc3 = (chr2 & 15) << 2 | chr3 >> 6;
26
+ let enc4 = chr3 & 63;
28
27
 
29
28
  if (isNaN(chr2)) {
30
29
  enc3 = enc4 = 64;
@@ -37,28 +36,29 @@ exports.encode = function (input) {
37
36
 
38
37
  return output;
39
38
  };
40
- /**
41
- * Decodes given string.
42
- *
43
- * @param {string} input - Text to decode
39
+ /**
40
+ * Decodes given string.
41
+ *
42
+ * @param {string} input - Text to decode
44
43
  */
45
44
 
46
-
47
- exports.decode = function (input) {
45
+ const decode = input => {
48
46
  let output = "";
49
- let chr1, chr2, chr3;
50
- let enc1, enc2, enc3, enc4;
51
47
  let i = 0;
52
48
  input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
53
49
 
54
50
  while (i < input.length) {
55
- enc1 = _keyStr.indexOf(input.charAt(i++));
56
- enc2 = _keyStr.indexOf(input.charAt(i++));
57
- enc3 = _keyStr.indexOf(input.charAt(i++));
58
- enc4 = _keyStr.indexOf(input.charAt(i++));
59
- chr1 = enc1 << 2 | enc2 >> 4;
60
- chr2 = (enc2 & 15) << 4 | enc3 >> 2;
61
- chr3 = (enc3 & 3) << 6 | enc4;
51
+ const enc1 = _keyStr.indexOf(input.charAt(i++));
52
+
53
+ const enc2 = _keyStr.indexOf(input.charAt(i++));
54
+
55
+ const enc3 = _keyStr.indexOf(input.charAt(i++));
56
+
57
+ const enc4 = _keyStr.indexOf(input.charAt(i++));
58
+
59
+ const chr1 = enc1 << 2 | enc2 >> 4;
60
+ const chr2 = (enc2 & 15) << 4 | enc3 >> 2;
61
+ const chr3 = (enc3 & 3) << 6 | enc4;
62
62
  output = output + String.fromCharCode(chr1);
63
63
 
64
64
  if (enc3 != 64) {
@@ -72,14 +72,13 @@ exports.decode = function (input) {
72
72
 
73
73
  return output = _utf8_decode(output);
74
74
  };
75
- /**
76
- * (private method) does a UTF-8 encoding
77
- *
78
- * @private
79
- * @param {string} string - Text to encode
75
+ /**
76
+ * (private method) does a UTF-8 encoding
77
+ *
78
+ * @private
79
+ * @param {string} string - Text to encode
80
80
  */
81
81
 
82
-
83
82
  function _utf8_encode(string) {
84
83
  string = string.replace(/\r\n/g, "\n");
85
84
  let utftext = "";
@@ -98,32 +97,31 @@ function _utf8_encode(string) {
98
97
 
99
98
  return utftext;
100
99
  }
101
- /**
102
- * (private method - do not use) does a UTF-8 decoding
103
- *
104
- * @private
105
- * @param {string} utftext - UTF-8 text to dencode
100
+ /**
101
+ * (private method - do not use) does a UTF-8 decoding
102
+ *
103
+ * @private
104
+ * @param {string} utftext - UTF-8 text to dencode
106
105
  */
107
106
 
108
107
 
109
108
  function _utf8_decode(utftext) {
110
109
  let string = "";
111
110
  let i = 0;
112
- let c = c1 = c2 = 0;
113
111
 
114
112
  while (i < utftext.length) {
115
- c = utftext.charCodeAt(i);
113
+ const c = utftext.charCodeAt(i);
116
114
 
117
115
  if (c < 128) {
118
116
  string += String.fromCharCode(c);
119
117
  i++;
120
118
  } else if (c > 191 && c < 224) {
121
- c2 = utftext.charCodeAt(i + 1);
119
+ const c2 = utftext.charCodeAt(i + 1);
122
120
  string += String.fromCharCode((c & 31) << 6 | c2 & 63);
123
121
  i += 2;
124
122
  } else {
125
- c2 = utftext.charCodeAt(i + 1);
126
- c3 = utftext.charCodeAt(i + 2);
123
+ const c2 = utftext.charCodeAt(i + 1);
124
+ const c3 = utftext.charCodeAt(i + 2);
127
125
  string += String.fromCharCode((c & 15) << 12 | (c2 & 63) << 6 | c3 & 63);
128
126
  i += 3;
129
127
  }
@@ -131,4 +129,6 @@ function _utf8_decode(utftext) {
131
129
 
132
130
  return string;
133
131
  }
132
+
133
+ export { decode, encode };
134
134
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../index.js"],"sourcesContent":["/**\n *\n * Base64 encode / decode\n * http://www.webtoolkit.info/\n *\n **/\n\nconst _keyStr =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n/**\n * Encodes given string.\n *\n * @param {string} input - Text to encode\n */\nexports.encode = function (input) {\n let output = \"\";\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\n let i = 0;\n\n input = _utf8_encode(input);\n\n while (i < input.length) {\n chr1 = input.charCodeAt(i++);\n chr2 = input.charCodeAt(i++);\n chr3 = input.charCodeAt(i++);\n\n enc1 = chr1 >> 2;\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n enc4 = chr3 & 63;\n\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n\n output =\n output +\n _keyStr.charAt(enc1) +\n _keyStr.charAt(enc2) +\n _keyStr.charAt(enc3) +\n _keyStr.charAt(enc4);\n }\n\n return output;\n};\n\n/**\n * Decodes given string.\n *\n * @param {string} input - Text to decode\n */\nexports.decode = function (input) {\n let output = \"\";\n let chr1, chr2, chr3;\n let enc1, enc2, enc3, enc4;\n let i = 0;\n\n input = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, \"\");\n\n while (i < input.length) {\n enc1 = _keyStr.indexOf(input.charAt(i++));\n enc2 = _keyStr.indexOf(input.charAt(i++));\n enc3 = _keyStr.indexOf(input.charAt(i++));\n enc4 = _keyStr.indexOf(input.charAt(i++));\n\n chr1 = (enc1 << 2) | (enc2 >> 4);\n chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n chr3 = ((enc3 & 3) << 6) | enc4;\n\n output = output + String.fromCharCode(chr1);\n\n if (enc3 != 64) {\n output = output + String.fromCharCode(chr2);\n }\n\n if (enc4 != 64) {\n output = output + String.fromCharCode(chr3);\n }\n }\n\n return (output = _utf8_decode(output));\n};\n\n/**\n * (private method) does a UTF-8 encoding\n *\n * @private\n * @param {string} string - Text to encode\n */\nfunction _utf8_encode(string) {\n string = string.replace(/\\r\\n/g, \"\\n\");\n let utftext = \"\";\n\n for (let n = 0; n < string.length; n++) {\n const c = string.charCodeAt(n);\n\n if (c < 128) {\n utftext += String.fromCharCode(c);\n } else if (c > 127 && c < 2048) {\n utftext +=\n String.fromCharCode((c >> 6) | 192) +\n String.fromCharCode((c & 63) | 128);\n } else {\n utftext +=\n String.fromCharCode((c >> 12) | 224) +\n String.fromCharCode(((c >> 6) & 63) | 128) +\n String.fromCharCode((c & 63) | 128);\n }\n }\n\n return utftext;\n}\n\n/**\n * (private method - do not use) does a UTF-8 decoding\n *\n * @private\n * @param {string} utftext - UTF-8 text to dencode\n */\nfunction _utf8_decode(utftext) {\n let string = \"\";\n let i = 0;\n let c = (c1 = c2 = 0);\n\n while (i < utftext.length) {\n c = utftext.charCodeAt(i);\n\n if (c < 128) {\n string += String.fromCharCode(c);\n i++;\n } else if (c > 191 && c < 224) {\n c2 = utftext.charCodeAt(i + 1);\n string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n i += 2;\n } else {\n c2 = utftext.charCodeAt(i + 1);\n c3 = utftext.charCodeAt(i + 2);\n string += String.fromCharCode(\n ((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)\n );\n i += 3;\n }\n }\n return string;\n}\n"],"names":["_keyStr","exports","encode","input","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","i","_utf8_encode","length","charCodeAt","isNaN","charAt","decode","replace","indexOf","String","fromCharCode","_utf8_decode","string","utftext","n","c","c1","c2","c3"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../index.ts"],"sourcesContent":["/**\n *\n * Base64 encode / decode\n * http://www.webtoolkit.info/\n *\n **/\n\nconst _keyStr =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n/**\n * Encodes given string.\n *\n * @param {string} input - Text to encode\n */\nexport const encode = (input: string) => {\n let output = \"\";\n let i = 0;\n\n input = _utf8_encode(input);\n\n while (i < input.length) {\n const chr1 = input.charCodeAt(i++);\n const chr2 = input.charCodeAt(i++);\n const chr3 = input.charCodeAt(i++);\n\n const enc1 = chr1 >> 2;\n const enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n let enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n let enc4 = chr3 & 63;\n\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n\n output =\n output +\n _keyStr.charAt(enc1) +\n _keyStr.charAt(enc2) +\n _keyStr.charAt(enc3) +\n _keyStr.charAt(enc4);\n }\n\n return output;\n};\n\n/**\n * Decodes given string.\n *\n * @param {string} input - Text to decode\n */\nexport const decode = (input: string) => {\n let output = \"\";\n let i = 0;\n\n input = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, \"\");\n\n while (i < input.length) {\n const enc1 = _keyStr.indexOf(input.charAt(i++));\n const enc2 = _keyStr.indexOf(input.charAt(i++));\n const enc3 = _keyStr.indexOf(input.charAt(i++));\n const enc4 = _keyStr.indexOf(input.charAt(i++));\n\n const chr1 = (enc1 << 2) | (enc2 >> 4);\n const chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n const chr3 = ((enc3 & 3) << 6) | enc4;\n\n output = output + String.fromCharCode(chr1);\n\n if (enc3 != 64) {\n output = output + String.fromCharCode(chr2);\n }\n\n if (enc4 != 64) {\n output = output + String.fromCharCode(chr3);\n }\n }\n\n return (output = _utf8_decode(output));\n};\n\n/**\n * (private method) does a UTF-8 encoding\n *\n * @private\n * @param {string} string - Text to encode\n */\nfunction _utf8_encode(string: string) {\n string = string.replace(/\\r\\n/g, \"\\n\");\n let utftext = \"\";\n\n for (let n = 0; n < string.length; n++) {\n const c = string.charCodeAt(n);\n\n if (c < 128) {\n utftext += String.fromCharCode(c);\n } else if (c > 127 && c < 2048) {\n utftext +=\n String.fromCharCode((c >> 6) | 192) +\n String.fromCharCode((c & 63) | 128);\n } else {\n utftext +=\n String.fromCharCode((c >> 12) | 224) +\n String.fromCharCode(((c >> 6) & 63) | 128) +\n String.fromCharCode((c & 63) | 128);\n }\n }\n\n return utftext;\n}\n\n/**\n * (private method - do not use) does a UTF-8 decoding\n *\n * @private\n * @param {string} utftext - UTF-8 text to dencode\n */\nfunction _utf8_decode(utftext: string) {\n let string = \"\";\n let i = 0;\n\n while (i < utftext.length) {\n const c = utftext.charCodeAt(i);\n\n if (c < 128) {\n string += String.fromCharCode(c);\n i++;\n } else if (c > 191 && c < 224) {\n const c2 = utftext.charCodeAt(i + 1);\n string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n i += 2;\n } else {\n const c2 = utftext.charCodeAt(i + 1);\n const c3 = utftext.charCodeAt(i + 2);\n string += String.fromCharCode(\n ((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)\n );\n i += 3;\n }\n }\n return string;\n}\n"],"names":["_keyStr","encode","input","output","i","_utf8_encode","length","chr1","charCodeAt","chr2","chr3","enc1","enc2","enc3","enc4","isNaN","charAt","decode","replace","indexOf","String","fromCharCode","_utf8_decode","string","utftext","n","c","c2","c3"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@frsource/base64",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "base64 encoder/decoder with UTF-8 support 📔",
5
5
  "repository": "https://github.com/FRSOURCE/base64.git",
6
+ "homepage": "http://www.webtoolkit.info/javascript_base64.html",
6
7
  "scripts": {
7
- "build": "del-cli dist && microbundle index.js --target node -f cjs,modern",
8
- "prettify": "prettier --write index.js",
9
- "prettify:ci": "prettier --check index.js",
8
+ "build": "del-cli dist && microbundle index.ts --target node -f cjs,modern",
9
+ "prettify": "prettier --write index.ts",
10
+ "prettify:ci": "prettier --check index.ts",
10
11
  "prepack": "pnpm build",
11
12
  "release": "semantic-release",
12
13
  "release:ci": "pnpm release --yes",