alipay-emulator/uni_modules/lime-barcode/components/l-barcode/jsbarcode/help/linearizeEncodings.js

23 lines
524 B
JavaScript

export default linearizeEncodings;
// Encodings can be nestled like [[1-1, 1-2], 2, [3-1, 3-2]
// Convert to [1-1, 1-2, 2, 3-1, 3-2]
function linearizeEncodings(encodings) {
var linearEncodings = [];
function nextLevel(encoded) {
if (Array.isArray(encoded)) {
for (let i = 0; i < encoded.length; i++) {
nextLevel(encoded[i]);
}
}
else {
encoded.text = encoded.text || "";
encoded.data = encoded.data || "";
linearEncodings.push(encoded);
}
}
nextLevel(encodings);
return linearEncodings;
}