Extract shared binary utility helpers into VG-Core
Dieser Commit ist enthalten in:
@@ -35,6 +35,7 @@
|
|||||||
"src/background/request-fingerprint.js",
|
"src/background/request-fingerprint.js",
|
||||||
"src/background/request-observer.js",
|
"src/background/request-observer.js",
|
||||||
"src/background/gvl-service.js",
|
"src/background/gvl-service.js",
|
||||||
|
"src/core/binary-utils.js",
|
||||||
"src/background.js"
|
"src/background.js"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -532,33 +532,6 @@ function decodeTcStringCoreMetadata(tcString) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function base64UrlToBits(value) {
|
|
||||||
const base64 = value
|
|
||||||
.replace(/-/g, "+")
|
|
||||||
.replace(/_/g, "/")
|
|
||||||
.padEnd(Math.ceil(value.length / 4) * 4, "=");
|
|
||||||
|
|
||||||
const binary = atob(base64);
|
|
||||||
let bits = "";
|
|
||||||
|
|
||||||
for (let index = 0; index < binary.length; index += 1) {
|
|
||||||
bits += binary
|
|
||||||
.charCodeAt(index)
|
|
||||||
.toString(2)
|
|
||||||
.padStart(8, "0");
|
|
||||||
}
|
|
||||||
|
|
||||||
return bits;
|
|
||||||
}
|
|
||||||
|
|
||||||
function bitsToInt(bits, start, length) {
|
|
||||||
return parseInt(bits.slice(start, start + length), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
function bitsToBoolean(bits, index) {
|
|
||||||
return bits[index] === "1";
|
|
||||||
}
|
|
||||||
|
|
||||||
function bitsToString(bits, start, length) {
|
function bitsToString(bits, start, length) {
|
||||||
let result = "";
|
let result = "";
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
function base64UrlToBits(value) {
|
||||||
|
const base64 = value
|
||||||
|
.replace(/-/g, "+")
|
||||||
|
.replace(/_/g, "/")
|
||||||
|
.padEnd(Math.ceil(value.length / 4) * 4, "=");
|
||||||
|
|
||||||
|
const binary = atob(base64);
|
||||||
|
let bits = "";
|
||||||
|
|
||||||
|
for (let index = 0; index < binary.length; index += 1) {
|
||||||
|
bits += binary
|
||||||
|
.charCodeAt(index)
|
||||||
|
.toString(2)
|
||||||
|
.padStart(8, "0");
|
||||||
|
}
|
||||||
|
|
||||||
|
return bits;
|
||||||
|
}
|
||||||
|
|
||||||
|
function bitsToInt(bits, start, length) {
|
||||||
|
return parseInt(bits.slice(start, start + length), 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
function bitsToBoolean(bits, index) {
|
||||||
|
return bits[index] === "1";
|
||||||
|
}
|
||||||
In neuem Issue referenzieren
Einen Benutzer sperren