forked from olcxjas-softworks/LarpixClient
update electron to v43
This commit is contained in:
parent
68ac0beedf
commit
fb6c8b6ee9
5385 changed files with 513060 additions and 123058 deletions
40
electron/node_modules/@peculiar/utils/build/esm/encoding/base64.js
generated
vendored
Normal file
40
electron/node_modules/@peculiar/utils/build/esm/encoding/base64.js
generated
vendored
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
import { toUint8Array } from "../bytes/index.js";
|
||||
import { encode as encodeBinary, decode as decodeBinary } from "./binary.js";
|
||||
const BASE64_REGEX = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;
|
||||
function nodeBuffer() {
|
||||
return globalThis.Buffer;
|
||||
}
|
||||
export function normalize(text) {
|
||||
return text.replace(/[\n\r\t ]/g, "");
|
||||
}
|
||||
export function pad(text) {
|
||||
const remainder = text.length % 4;
|
||||
return remainder ? text + "=".repeat(4 - remainder) : text;
|
||||
}
|
||||
export function is(text) {
|
||||
if (typeof text !== "string") {
|
||||
return false;
|
||||
}
|
||||
const normalized = normalize(text);
|
||||
return normalized === "" || BASE64_REGEX.test(normalized);
|
||||
}
|
||||
export function encode(data, _options) {
|
||||
const bytes = toUint8Array(data);
|
||||
const buffer = nodeBuffer();
|
||||
if (buffer) {
|
||||
return buffer.from(bytes).toString("base64");
|
||||
}
|
||||
return btoa(encodeBinary(bytes));
|
||||
}
|
||||
export function decode(text, _options) {
|
||||
const normalized = normalize(text);
|
||||
if (!is(normalized)) {
|
||||
throw new TypeError("Input is not valid Base64 text");
|
||||
}
|
||||
const buffer = nodeBuffer();
|
||||
if (buffer) {
|
||||
return new Uint8Array(buffer.from(normalized, "base64"));
|
||||
}
|
||||
return decodeBinary(atob(normalized));
|
||||
}
|
||||
export const base64 = { encode, decode, is, normalize, pad };
|
||||
Loading…
Add table
Add a link
Reference in a new issue