texturepackerify
Version:
Tool to pack textures into atlases
21 lines (17 loc) • 529 B
JavaScript
module.exports = (a, b) => {
const ax = [],
bx = [];
a.replace(/(\d+)|(\D+)/g, function (_, $1, $2) {
ax.push([$1 || Infinity, $2 || ""]);
});
b.replace(/(\d+)|(\D+)/g, function (_, $1, $2) {
bx.push([$1 || Infinity, $2 || ""]);
});
while (ax.length && bx.length) {
let an = ax.shift();
let bn = bx.shift();
let nn = (an[0] - bn[0]) || an[1].localeCompare(bn[1]);
if (nn) return nn;
}
return ax.length - bx.length;
};