bufferbase 1.3.0 → 3.0.0

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.
Files changed (144) hide show
  1. package/README.md +186 -17
  2. package/dist/cjs/bases.d.ts +189 -0
  3. package/dist/cjs/bases.d.ts.map +1 -0
  4. package/dist/cjs/bases.js +134 -0
  5. package/dist/cjs/bases.js.map +1 -0
  6. package/dist/cjs/bufferbase.d.ts +22 -45
  7. package/dist/cjs/bufferbase.d.ts.map +1 -1
  8. package/dist/cjs/bufferbase.js +26 -120
  9. package/dist/cjs/bufferbase.js.map +1 -1
  10. package/dist/cjs/codec-base.d.ts +56 -0
  11. package/dist/cjs/codec-base.d.ts.map +1 -0
  12. package/dist/cjs/codec-base.js +132 -0
  13. package/dist/cjs/codec-base.js.map +1 -0
  14. package/dist/cjs/codec-block.d.ts +47 -0
  15. package/dist/cjs/codec-block.d.ts.map +1 -0
  16. package/dist/cjs/codec-block.js +213 -0
  17. package/dist/cjs/codec-block.js.map +1 -0
  18. package/dist/cjs/codec-block85.d.ts +56 -0
  19. package/dist/cjs/codec-block85.d.ts.map +1 -0
  20. package/dist/cjs/codec-block85.js +271 -0
  21. package/dist/cjs/codec-block85.js.map +1 -0
  22. package/dist/cjs/codec-radix.d.ts +46 -0
  23. package/dist/cjs/codec-radix.d.ts.map +1 -0
  24. package/dist/cjs/codec-radix.js +181 -0
  25. package/dist/cjs/codec-radix.js.map +1 -0
  26. package/dist/cjs/codec.d.ts +38 -0
  27. package/dist/cjs/codec.d.ts.map +1 -0
  28. package/dist/cjs/codec.js +69 -0
  29. package/dist/cjs/codec.js.map +1 -0
  30. package/dist/cjs/codecs.d.ts +20 -0
  31. package/dist/cjs/codecs.d.ts.map +1 -0
  32. package/dist/cjs/codecs.js +19 -0
  33. package/dist/cjs/codecs.js.map +1 -0
  34. package/dist/cjs/errors.d.ts +93 -0
  35. package/dist/cjs/errors.d.ts.map +1 -0
  36. package/dist/cjs/errors.js +130 -0
  37. package/dist/cjs/errors.js.map +1 -0
  38. package/dist/cjs/example.js +49 -33
  39. package/dist/cjs/example.js.map +1 -1
  40. package/dist/cjs/functions.d.ts +58 -0
  41. package/dist/cjs/functions.d.ts.map +1 -0
  42. package/dist/cjs/functions.js +71 -0
  43. package/dist/cjs/functions.js.map +1 -0
  44. package/dist/cjs/index.d.ts +10 -1
  45. package/dist/cjs/index.d.ts.map +1 -1
  46. package/dist/cjs/index.js +35 -4
  47. package/dist/cjs/index.js.map +1 -1
  48. package/dist/cjs/package.json +17 -12
  49. package/dist/cjs/types.d.ts +144 -0
  50. package/dist/cjs/types.d.ts.map +1 -0
  51. package/dist/cjs/types.js +3 -0
  52. package/dist/cjs/types.js.map +1 -0
  53. package/dist/esm/bases.d.ts +189 -0
  54. package/dist/esm/bases.d.ts.map +1 -0
  55. package/dist/esm/bases.js +129 -0
  56. package/dist/esm/bases.js.map +1 -0
  57. package/dist/esm/bufferbase.d.ts +22 -45
  58. package/dist/esm/bufferbase.d.ts.map +1 -1
  59. package/dist/esm/bufferbase.js +21 -115
  60. package/dist/esm/bufferbase.js.map +1 -1
  61. package/dist/esm/codec-base.d.ts +56 -0
  62. package/dist/esm/codec-base.d.ts.map +1 -0
  63. package/dist/esm/codec-base.js +127 -0
  64. package/dist/esm/codec-base.js.map +1 -0
  65. package/dist/esm/codec-block.d.ts +47 -0
  66. package/dist/esm/codec-block.d.ts.map +1 -0
  67. package/dist/esm/codec-block.js +209 -0
  68. package/dist/esm/codec-block.js.map +1 -0
  69. package/dist/esm/codec-block85.d.ts +56 -0
  70. package/dist/esm/codec-block85.d.ts.map +1 -0
  71. package/dist/esm/codec-block85.js +267 -0
  72. package/dist/esm/codec-block85.js.map +1 -0
  73. package/dist/esm/codec-radix.d.ts +46 -0
  74. package/dist/esm/codec-radix.d.ts.map +1 -0
  75. package/dist/esm/codec-radix.js +177 -0
  76. package/dist/esm/codec-radix.js.map +1 -0
  77. package/dist/esm/codec.d.ts +38 -0
  78. package/dist/esm/codec.d.ts.map +1 -0
  79. package/dist/esm/codec.js +60 -0
  80. package/dist/esm/codec.js.map +1 -0
  81. package/dist/esm/codecs.d.ts +20 -0
  82. package/dist/esm/codecs.d.ts.map +1 -0
  83. package/dist/esm/codecs.js +16 -0
  84. package/dist/esm/codecs.js.map +1 -0
  85. package/dist/esm/errors.d.ts +93 -0
  86. package/dist/esm/errors.d.ts.map +1 -0
  87. package/dist/esm/errors.js +119 -0
  88. package/dist/esm/errors.js.map +1 -0
  89. package/dist/esm/example.js +48 -32
  90. package/dist/esm/example.js.map +1 -1
  91. package/dist/esm/functions.d.ts +58 -0
  92. package/dist/esm/functions.d.ts.map +1 -0
  93. package/dist/esm/functions.js +65 -0
  94. package/dist/esm/functions.js.map +1 -0
  95. package/dist/esm/index.d.ts +10 -1
  96. package/dist/esm/index.d.ts.map +1 -1
  97. package/dist/esm/index.js +12 -1
  98. package/dist/esm/index.js.map +1 -1
  99. package/dist/esm/package.json +17 -12
  100. package/dist/esm/types.d.ts +144 -0
  101. package/dist/esm/types.d.ts.map +1 -0
  102. package/dist/esm/types.js +2 -0
  103. package/dist/esm/types.js.map +1 -0
  104. package/package.json +19 -14
  105. package/src/algorithms.test.ts +442 -0
  106. package/src/bases.ts +142 -0
  107. package/src/bufferbase.test.ts +44 -27
  108. package/src/bufferbase.ts +32 -117
  109. package/src/codec-base.ts +181 -0
  110. package/src/codec-block.ts +258 -0
  111. package/src/codec-block85.ts +315 -0
  112. package/src/codec-radix.ts +206 -0
  113. package/src/codec.test.ts +328 -0
  114. package/src/codec.ts +67 -0
  115. package/src/codecs.ts +24 -0
  116. package/src/errors.ts +127 -0
  117. package/src/example.ts +49 -34
  118. package/src/functions.ts +73 -0
  119. package/src/index.ts +39 -6
  120. package/src/types.ts +156 -0
  121. package/dist/cjs/bufferbase.d.mts +0 -60
  122. package/dist/cjs/bufferbase.d.mts.map +0 -1
  123. package/dist/cjs/bufferbase.mjs +0 -150
  124. package/dist/cjs/bufferbase.mjs.map +0 -1
  125. package/dist/cjs/example.d.mts +0 -2
  126. package/dist/cjs/example.d.mts.map +0 -1
  127. package/dist/cjs/example.mjs +0 -39
  128. package/dist/cjs/example.mjs.map +0 -1
  129. package/dist/cjs/index.d.mts +0 -2
  130. package/dist/cjs/index.d.mts.map +0 -1
  131. package/dist/cjs/index.mjs +0 -11
  132. package/dist/cjs/index.mjs.map +0 -1
  133. package/dist/esm/bufferbase.d.mts +0 -60
  134. package/dist/esm/bufferbase.d.mts.map +0 -1
  135. package/dist/esm/bufferbase.mjs +0 -141
  136. package/dist/esm/bufferbase.mjs.map +0 -1
  137. package/dist/esm/example.d.mts +0 -2
  138. package/dist/esm/example.d.mts.map +0 -1
  139. package/dist/esm/example.mjs +0 -37
  140. package/dist/esm/example.mjs.map +0 -1
  141. package/dist/esm/index.d.mts +0 -2
  142. package/dist/esm/index.d.mts.map +0 -1
  143. package/dist/esm/index.mjs +0 -2
  144. package/dist/esm/index.mjs.map +0 -1
@@ -1,150 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validate = exports.Validator = exports.Converter = exports.BufferEncoder = exports.BufferSizeError = exports.InvalidCharacterError = exports.Chars = void 0;
4
- /**
5
- * A collection of common bases.
6
- */
7
- exports.Chars = {
8
- Decimal: '0123456789',
9
- Base16: '0123456789ABCDEF',
10
- Base32: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',
11
- Base32Crockford: '0123456789ABCDEFGHJKMNPQRSTVWXYZ',
12
- Base36: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ',
13
- Base52: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
14
- Base58: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz',
15
- Base64_STD: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',
16
- Base64_URL_SAFE: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',
17
- Base64_XML_NMTOKEN: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._',
18
- Base64_XML_NAME: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_:',
19
- Ascii85: '!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstu',
20
- Base85: '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&()*+-;<=>?@^_`{|}~',
21
- Z85: '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#',
22
- };
23
- class InvalidCharacterError extends Error {
24
- constructor() {
25
- super(...arguments);
26
- this.message = 'Invalid character found';
27
- }
28
- }
29
- exports.InvalidCharacterError = InvalidCharacterError;
30
- class BufferSizeError extends Error {
31
- constructor() {
32
- super(...arguments);
33
- this.message = 'Buffer size exceeds specified size';
34
- }
35
- }
36
- exports.BufferSizeError = BufferSizeError;
37
- /**
38
- * Encodes and decodes buffers to and from a base.
39
- */
40
- class BufferEncoder {
41
- constructor(baseChars) {
42
- this.baseChars = baseChars;
43
- }
44
- /**
45
- * Encodes a buffer to a string.
46
- */
47
- encode(buffer) {
48
- let result = [];
49
- for (const byte of buffer) {
50
- let carry = byte;
51
- for (let j = 0; j < result.length; j++) {
52
- carry += result[j] * 256;
53
- result[j] = carry % this.baseChars.length;
54
- carry = Math.floor(carry / this.baseChars.length);
55
- }
56
- while (carry > 0) {
57
- result.push(carry % this.baseChars.length);
58
- carry = Math.floor(carry / this.baseChars.length);
59
- }
60
- }
61
- for (const byte of buffer) {
62
- if (byte === 0) {
63
- result.push(0);
64
- }
65
- else {
66
- break;
67
- }
68
- }
69
- return result
70
- .reverse()
71
- .map((index) => this.baseChars[index])
72
- .join('');
73
- }
74
- /**
75
- * Decodes a string to a buffer.
76
- */
77
- decode(encoded, bufferSize) {
78
- let result = Buffer.alloc(0);
79
- for (const char of encoded) {
80
- const value = this.baseChars.indexOf(char);
81
- if (value === -1)
82
- throw new InvalidCharacterError();
83
- let carry = value;
84
- let tempResult = Buffer.alloc(result.length);
85
- let i;
86
- for (i = 0; i < result.length; i++) {
87
- carry += result[i] * this.baseChars.length;
88
- tempResult[i] = carry % 256;
89
- carry = Math.floor(carry / 256);
90
- }
91
- while (carry > 0) {
92
- tempResult = Buffer.concat([tempResult, Buffer.from([carry % 256])]);
93
- carry = Math.floor(carry / 256);
94
- }
95
- result = tempResult;
96
- }
97
- // buffer size
98
- if (bufferSize && result.length < bufferSize) {
99
- result = Buffer.concat([
100
- result,
101
- Buffer.from(Array(bufferSize - result.length).fill(0)),
102
- ]);
103
- }
104
- if (bufferSize && result.length > bufferSize) {
105
- throw new BufferSizeError();
106
- }
107
- result.reverse();
108
- return result;
109
- }
110
- }
111
- exports.BufferEncoder = BufferEncoder;
112
- /**
113
- * Creates a converter function that can convert between two bases.
114
- */
115
- class Converter {
116
- constructor(inputBase, outputBase) {
117
- this.decoder = new BufferEncoder(inputBase);
118
- this.encoder = new BufferEncoder(outputBase);
119
- }
120
- /**
121
- * Converts a string from the input base to the output base.
122
- */
123
- convert(input) {
124
- return this.encoder.encode(this.decoder.decode(input));
125
- }
126
- }
127
- exports.Converter = Converter;
128
- class Validator {
129
- constructor(inputBase) {
130
- this.decorder = new BufferEncoder(inputBase);
131
- }
132
- validate(input) {
133
- try {
134
- this.decorder.decode(input);
135
- return true;
136
- }
137
- catch (e) {
138
- if (e instanceof InvalidCharacterError) {
139
- return false;
140
- }
141
- throw e;
142
- }
143
- }
144
- }
145
- exports.Validator = Validator;
146
- const validate = (input, base) => {
147
- return new Validator(base).validate(input);
148
- };
149
- exports.validate = validate;
150
- //# sourceMappingURL=bufferbase.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bufferbase.mjs","sourceRoot":"","sources":["../../src/bufferbase.mts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=example.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"example.d.mts","sourceRoot":"","sources":["../../src/example.mts"],"names":[],"mappings":""}
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const bufferbase_mjs_1 = require("./bufferbase.mjs");
4
- // Example buffer
5
- const bytes = Buffer.from('Hello, World!', 'utf8');
6
- // Encoding buffer to Base32
7
- const encoder = new bufferbase_mjs_1.BufferEncoder(bufferbase_mjs_1.Chars.Base32Crockford);
8
- const base32encoded = encoder.encode(bytes);
9
- // Converting Base32 to Base58
10
- const converter_32to58 = new bufferbase_mjs_1.Converter(bufferbase_mjs_1.Chars.Base32Crockford, bufferbase_mjs_1.Chars.Base58);
11
- const base58encoded = converter_32to58.convert(base32encoded);
12
- // Converting Base32 to Base58
13
- const converter_58to64 = new bufferbase_mjs_1.Converter(bufferbase_mjs_1.Chars.Base58, bufferbase_mjs_1.Chars.Base64_URL_SAFE);
14
- const base64encoded = converter_58to64.convert(base58encoded);
15
- // Validating Base64
16
- const validatorB64 = new bufferbase_mjs_1.Validator(bufferbase_mjs_1.Chars.Base64_URL_SAFE);
17
- const isValidAsBase64 = validatorB64.validate(base64encoded);
18
- // Decoding Base64
19
- const decoder = new bufferbase_mjs_1.BufferEncoder(bufferbase_mjs_1.Chars.Base64_URL_SAFE);
20
- const decoded = decoder.decode(base64encoded);
21
- console.table({
22
- bytes: bytes.toString('utf8'),
23
- base32encoded,
24
- base58encoded,
25
- base64encoded,
26
- isValidAsBase64,
27
- decoded: decoded.toString('utf8'),
28
- });
29
- // ┌─────────────────┬─────────────────────────┐
30
- // │ (index) │ Values │
31
- // ├─────────────────┼─────────────────────────┤
32
- // │ bytes │ 'Hello, World!' │
33
- // │ base32encoded │ '4GSBCDHQJR82QDXS6RS11' │
34
- // │ base58encoded │ '72k1xXWG59fYdzSNoA' │
35
- // │ base64encoded │ 'BIZWxsbywgV29ybGQh' │
36
- // │ isValidAsBase64 │ true │
37
- // │ decoded │ 'Hello, World!' │
38
- // └─────────────────┴─────────────────────────┘
39
- //# sourceMappingURL=example.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"example.mjs","sourceRoot":"","sources":["../../src/example.mts"],"names":[],"mappings":";;AAAA,qDAA8E;AAE9E,iBAAiB;AACjB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;AAEnD,4BAA4B;AAC5B,MAAM,OAAO,GAAG,IAAI,8BAAa,CAAC,sBAAK,CAAC,eAAe,CAAC,CAAC;AACzD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE5C,8BAA8B;AAC9B,MAAM,gBAAgB,GAAG,IAAI,0BAAS,CAAC,sBAAK,CAAC,eAAe,EAAE,sBAAK,CAAC,MAAM,CAAC,CAAC;AAC5E,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAE9D,8BAA8B;AAC9B,MAAM,gBAAgB,GAAG,IAAI,0BAAS,CAAC,sBAAK,CAAC,MAAM,EAAE,sBAAK,CAAC,eAAe,CAAC,CAAC;AAC5E,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAE9D,oBAAoB;AACpB,MAAM,YAAY,GAAG,IAAI,0BAAS,CAAC,sBAAK,CAAC,eAAe,CAAC,CAAC;AAC1D,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAE7D,kBAAkB;AAClB,MAAM,OAAO,GAAG,IAAI,8BAAa,CAAC,sBAAK,CAAC,eAAe,CAAC,CAAC;AACzD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAE9C,OAAO,CAAC,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC7B,aAAa;IACb,aAAa;IACb,aAAa;IACb,eAAe;IACf,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;CAClC,CAAC,CAAC;AACH,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD"}
@@ -1,2 +0,0 @@
1
- export { Chars, BufferEncoder, Converter, InvalidCharacterError, Validator, validate, } from './bufferbase.mjs';
2
- //# sourceMappingURL=index.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/index.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,SAAS,EACT,QAAQ,GACT,MAAM,kBAAkB,CAAC"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validate = exports.Validator = exports.InvalidCharacterError = exports.Converter = exports.BufferEncoder = exports.Chars = void 0;
4
- var bufferbase_mjs_1 = require("./bufferbase.mjs");
5
- Object.defineProperty(exports, "Chars", { enumerable: true, get: function () { return bufferbase_mjs_1.Chars; } });
6
- Object.defineProperty(exports, "BufferEncoder", { enumerable: true, get: function () { return bufferbase_mjs_1.BufferEncoder; } });
7
- Object.defineProperty(exports, "Converter", { enumerable: true, get: function () { return bufferbase_mjs_1.Converter; } });
8
- Object.defineProperty(exports, "InvalidCharacterError", { enumerable: true, get: function () { return bufferbase_mjs_1.InvalidCharacterError; } });
9
- Object.defineProperty(exports, "Validator", { enumerable: true, get: function () { return bufferbase_mjs_1.Validator; } });
10
- Object.defineProperty(exports, "validate", { enumerable: true, get: function () { return bufferbase_mjs_1.validate; } });
11
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/index.mts"],"names":[],"mappings":";;;AAAA,mDAO0B;AANxB,uGAAA,KAAK,OAAA;AACL,+GAAA,aAAa,OAAA;AACb,2GAAA,SAAS,OAAA;AACT,uHAAA,qBAAqB,OAAA;AACrB,2GAAA,SAAS,OAAA;AACT,0GAAA,QAAQ,OAAA"}
@@ -1,60 +0,0 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /**
3
- * A collection of common bases.
4
- */
5
- export declare const Chars: {
6
- Decimal: string;
7
- Base16: string;
8
- Base32: string;
9
- Base32Crockford: string;
10
- Base36: string;
11
- Base52: string;
12
- Base58: string;
13
- Base64_STD: string;
14
- Base64_URL_SAFE: string;
15
- Base64_XML_NMTOKEN: string;
16
- Base64_XML_NAME: string;
17
- Ascii85: string;
18
- Base85: string;
19
- Z85: string;
20
- };
21
- export declare class InvalidCharacterError extends Error {
22
- message: string;
23
- }
24
- export declare class BufferSizeError extends Error {
25
- message: string;
26
- }
27
- /**
28
- * Encodes and decodes buffers to and from a base.
29
- */
30
- export declare class BufferEncoder {
31
- private baseChars;
32
- constructor(baseChars: string);
33
- /**
34
- * Encodes a buffer to a string.
35
- */
36
- encode(buffer: Buffer): string;
37
- /**
38
- * Decodes a string to a buffer.
39
- */
40
- decode(encoded: string, bufferSize?: number): Buffer;
41
- }
42
- /**
43
- * Creates a converter function that can convert between two bases.
44
- */
45
- export declare class Converter {
46
- decoder: BufferEncoder;
47
- encoder: BufferEncoder;
48
- constructor(inputBase: string, outputBase: string);
49
- /**
50
- * Converts a string from the input base to the output base.
51
- */
52
- convert(input: string): string;
53
- }
54
- export declare class Validator {
55
- decorder: BufferEncoder;
56
- constructor(inputBase: string);
57
- validate(input: string): boolean;
58
- }
59
- export declare const validate: (input: string, base: string) => boolean;
60
- //# sourceMappingURL=bufferbase.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bufferbase.d.mts","sourceRoot":"","sources":["../../src/bufferbase.mts"],"names":[],"mappings":";AAAA;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;CAqBjB,CAAC;AAEF,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,OAAO,SAA6B;CACrC;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,OAAO,SAAwC;CAChD;AAED;;GAEG;AACH,qBAAa,aAAa;IACZ,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,MAAM;IAErC;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IA2B9B;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;CAgCrD;AAED;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC;gBAEX,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAKjD;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAG/B;AAED,qBAAa,SAAS;IACpB,QAAQ,EAAE,aAAa,CAAC;gBAEZ,SAAS,EAAE,MAAM;IAI7B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAWjC;AAED,eAAO,MAAM,QAAQ,UAAW,MAAM,QAAQ,MAAM,KAAG,OAEtD,CAAC"}
@@ -1,141 +0,0 @@
1
- /**
2
- * A collection of common bases.
3
- */
4
- export const Chars = {
5
- Decimal: '0123456789',
6
- Base16: '0123456789ABCDEF',
7
- Base32: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',
8
- Base32Crockford: '0123456789ABCDEFGHJKMNPQRSTVWXYZ',
9
- Base36: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ',
10
- Base52: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
11
- Base58: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz',
12
- Base64_STD: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',
13
- Base64_URL_SAFE: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',
14
- Base64_XML_NMTOKEN: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._',
15
- Base64_XML_NAME: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_:',
16
- Ascii85: '!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstu',
17
- Base85: '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&()*+-;<=>?@^_`{|}~',
18
- Z85: '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#',
19
- };
20
- export class InvalidCharacterError extends Error {
21
- constructor() {
22
- super(...arguments);
23
- this.message = 'Invalid character found';
24
- }
25
- }
26
- export class BufferSizeError extends Error {
27
- constructor() {
28
- super(...arguments);
29
- this.message = 'Buffer size exceeds specified size';
30
- }
31
- }
32
- /**
33
- * Encodes and decodes buffers to and from a base.
34
- */
35
- export class BufferEncoder {
36
- constructor(baseChars) {
37
- this.baseChars = baseChars;
38
- }
39
- /**
40
- * Encodes a buffer to a string.
41
- */
42
- encode(buffer) {
43
- let result = [];
44
- for (const byte of buffer) {
45
- let carry = byte;
46
- for (let j = 0; j < result.length; j++) {
47
- carry += result[j] * 256;
48
- result[j] = carry % this.baseChars.length;
49
- carry = Math.floor(carry / this.baseChars.length);
50
- }
51
- while (carry > 0) {
52
- result.push(carry % this.baseChars.length);
53
- carry = Math.floor(carry / this.baseChars.length);
54
- }
55
- }
56
- for (const byte of buffer) {
57
- if (byte === 0) {
58
- result.push(0);
59
- }
60
- else {
61
- break;
62
- }
63
- }
64
- return result
65
- .reverse()
66
- .map((index) => this.baseChars[index])
67
- .join('');
68
- }
69
- /**
70
- * Decodes a string to a buffer.
71
- */
72
- decode(encoded, bufferSize) {
73
- let result = Buffer.alloc(0);
74
- for (const char of encoded) {
75
- const value = this.baseChars.indexOf(char);
76
- if (value === -1)
77
- throw new InvalidCharacterError();
78
- let carry = value;
79
- let tempResult = Buffer.alloc(result.length);
80
- let i;
81
- for (i = 0; i < result.length; i++) {
82
- carry += result[i] * this.baseChars.length;
83
- tempResult[i] = carry % 256;
84
- carry = Math.floor(carry / 256);
85
- }
86
- while (carry > 0) {
87
- tempResult = Buffer.concat([tempResult, Buffer.from([carry % 256])]);
88
- carry = Math.floor(carry / 256);
89
- }
90
- result = tempResult;
91
- }
92
- // buffer size
93
- if (bufferSize && result.length < bufferSize) {
94
- result = Buffer.concat([
95
- result,
96
- Buffer.from(Array(bufferSize - result.length).fill(0)),
97
- ]);
98
- }
99
- if (bufferSize && result.length > bufferSize) {
100
- throw new BufferSizeError();
101
- }
102
- result.reverse();
103
- return result;
104
- }
105
- }
106
- /**
107
- * Creates a converter function that can convert between two bases.
108
- */
109
- export class Converter {
110
- constructor(inputBase, outputBase) {
111
- this.decoder = new BufferEncoder(inputBase);
112
- this.encoder = new BufferEncoder(outputBase);
113
- }
114
- /**
115
- * Converts a string from the input base to the output base.
116
- */
117
- convert(input) {
118
- return this.encoder.encode(this.decoder.decode(input));
119
- }
120
- }
121
- export class Validator {
122
- constructor(inputBase) {
123
- this.decorder = new BufferEncoder(inputBase);
124
- }
125
- validate(input) {
126
- try {
127
- this.decorder.decode(input);
128
- return true;
129
- }
130
- catch (e) {
131
- if (e instanceof InvalidCharacterError) {
132
- return false;
133
- }
134
- throw e;
135
- }
136
- }
137
- }
138
- export const validate = (input, base) => {
139
- return new Validator(base).validate(input);
140
- };
141
- //# sourceMappingURL=bufferbase.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bufferbase.mjs","sourceRoot":"","sources":["../../src/bufferbase.mts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=example.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"example.d.mts","sourceRoot":"","sources":["../../src/example.mts"],"names":[],"mappings":""}
@@ -1,37 +0,0 @@
1
- import { Chars, BufferEncoder, Converter, Validator } from './bufferbase.mjs';
2
- // Example buffer
3
- const bytes = Buffer.from('Hello, World!', 'utf8');
4
- // Encoding buffer to Base32
5
- const encoder = new BufferEncoder(Chars.Base32Crockford);
6
- const base32encoded = encoder.encode(bytes);
7
- // Converting Base32 to Base58
8
- const converter_32to58 = new Converter(Chars.Base32Crockford, Chars.Base58);
9
- const base58encoded = converter_32to58.convert(base32encoded);
10
- // Converting Base32 to Base58
11
- const converter_58to64 = new Converter(Chars.Base58, Chars.Base64_URL_SAFE);
12
- const base64encoded = converter_58to64.convert(base58encoded);
13
- // Validating Base64
14
- const validatorB64 = new Validator(Chars.Base64_URL_SAFE);
15
- const isValidAsBase64 = validatorB64.validate(base64encoded);
16
- // Decoding Base64
17
- const decoder = new BufferEncoder(Chars.Base64_URL_SAFE);
18
- const decoded = decoder.decode(base64encoded);
19
- console.table({
20
- bytes: bytes.toString('utf8'),
21
- base32encoded,
22
- base58encoded,
23
- base64encoded,
24
- isValidAsBase64,
25
- decoded: decoded.toString('utf8'),
26
- });
27
- // ┌─────────────────┬─────────────────────────┐
28
- // │ (index) │ Values │
29
- // ├─────────────────┼─────────────────────────┤
30
- // │ bytes │ 'Hello, World!' │
31
- // │ base32encoded │ '4GSBCDHQJR82QDXS6RS11' │
32
- // │ base58encoded │ '72k1xXWG59fYdzSNoA' │
33
- // │ base64encoded │ 'BIZWxsbywgV29ybGQh' │
34
- // │ isValidAsBase64 │ true │
35
- // │ decoded │ 'Hello, World!' │
36
- // └─────────────────┴─────────────────────────┘
37
- //# sourceMappingURL=example.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"example.mjs","sourceRoot":"","sources":["../../src/example.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE9E,iBAAiB;AACjB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;AAEnD,4BAA4B;AAC5B,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACzD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE5C,8BAA8B;AAC9B,MAAM,gBAAgB,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;AAC5E,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAE9D,8BAA8B;AAC9B,MAAM,gBAAgB,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;AAC5E,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAE9D,oBAAoB;AACpB,MAAM,YAAY,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AAC1D,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAE7D,kBAAkB;AAClB,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACzD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAE9C,OAAO,CAAC,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC7B,aAAa;IACb,aAAa;IACb,aAAa;IACb,eAAe;IACf,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;CAClC,CAAC,CAAC;AACH,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD;AAChD,gDAAgD"}
@@ -1,2 +0,0 @@
1
- export { Chars, BufferEncoder, Converter, InvalidCharacterError, Validator, validate, } from './bufferbase.mjs';
2
- //# sourceMappingURL=index.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/index.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,SAAS,EACT,QAAQ,GACT,MAAM,kBAAkB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { Chars, BufferEncoder, Converter, InvalidCharacterError, Validator, validate, } from './bufferbase.mjs';
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/index.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,SAAS,EACT,QAAQ,GACT,MAAM,kBAAkB,CAAC"}