Files
nothoughts/node_modules/pixi.js/lib/scene/text-bitmap/utils/resolveCharacters.js
2025-08-04 18:57:35 +02:00

41 lines
1.2 KiB
JavaScript

'use strict';
"use strict";
function resolveCharacters(chars) {
if (chars === "") {
return [];
}
if (typeof chars === "string") {
chars = [chars];
}
const result = [];
for (let i = 0, j = chars.length; i < j; i++) {
const item = chars[i];
if (Array.isArray(item)) {
if (item.length !== 2) {
throw new Error(`[BitmapFont]: Invalid character range length, expecting 2 got ${item.length}.`);
}
if (item[0].length === 0 || item[1].length === 0) {
throw new Error("[BitmapFont]: Invalid character delimiter.");
}
const startCode = item[0].charCodeAt(0);
const endCode = item[1].charCodeAt(0);
if (endCode < startCode) {
throw new Error("[BitmapFont]: Invalid character range.");
}
for (let i2 = startCode, j2 = endCode; i2 <= j2; i2++) {
result.push(String.fromCharCode(i2));
}
} else {
result.push(...Array.from(item));
}
}
if (result.length === 0) {
throw new Error("[BitmapFont]: Empty set when resolving characters.");
}
return result;
}
exports.resolveCharacters = resolveCharacters;
//# sourceMappingURL=resolveCharacters.js.map