BangleApps/apps/cards/encode.js

20 lines
453 B
JavaScript
Raw Normal View History

const constants = require("cards.constants.js");
2024-04-08 19:40:53 +00:00
// Encode data string
const encode = (data, structure, separator) => {
let encoded = data
.split('')
.map((val, idx) => constants.BINARIES[structure[idx]])
2024-04-08 19:40:53 +00:00
.map((val, idx) => val ? val[data[idx]] : '');
if (separator) {
const last = data.length - 1;
encoded = encoded.map((val, idx) => (
idx < last ? val + separator : val
));
}
return encoded.join('');
};
module.exports = encode;