pixi.js
Version:
<p align="center"> <a href="https://pixijs.com" target="_blank" rel="noopener noreferrer"> <img height="150" src="https://files.pixijs.download/branding/pixijs-logo-transparent-dark.svg?v=1" alt="PixiJS logo"> </a> </p> <br/> <p align="center">
1 lines • 3.33 kB
Source Map (JSON)
{"version":3,"file":"resolveCharacters.mjs","sources":["../../../../src/scene/text-bitmap/utils/resolveCharacters.ts"],"sourcesContent":["/**\n * Processes the passed character set data and returns a flattened array of all the characters.\n *\n * Ignored because not directly exposed.\n * @ignore\n * @param {string | string[] | string[][] } chars\n * @returns {string[]} the flattened array of characters\n */\nexport function resolveCharacters(chars: string | (string | string[])[]): string[]\n{\n // Skip unexpected 'empty set' check at end\n if (chars === '')\n {\n return [];\n }\n\n // Split the chars string into individual characters\n if (typeof chars === 'string')\n {\n chars = [chars];\n }\n\n // Handle an array of characters+ranges\n const result: string[] = [];\n\n for (let i = 0, j = chars.length; i < j; i++)\n {\n const item = chars[i];\n\n // Handle range delimited by start/end chars\n if (Array.isArray(item))\n {\n if (item.length !== 2)\n {\n throw new Error(`[BitmapFont]: Invalid character range length, expecting 2 got ${item.length}.`);\n }\n if (item[0].length === 0 || item[1].length === 0)\n {\n throw new Error('[BitmapFont]: Invalid character delimiter.');\n }\n\n const startCode = item[0].charCodeAt(0);\n const endCode = item[1].charCodeAt(0);\n\n if (endCode < startCode)\n {\n throw new Error('[BitmapFont]: Invalid character range.');\n }\n\n for (let i = startCode, j = endCode; i <= j; i++)\n {\n result.push(String.fromCharCode(i));\n }\n }\n else\n {\n result.push(...Array.from(item));\n }\n }\n\n if (result.length === 0)\n {\n throw new Error('[BitmapFont]: Empty set when resolving characters.');\n }\n\n return result;\n}\n"],"names":["i","j"],"mappings":";AAQO,SAAS,kBAAkB,KAAA,EAClC;AAEI,EAAA,IAAI,UAAU,EAAA,EACd;AACI,IAAA,OAAO,EAAC;AAAA,EACZ;AAGA,EAAA,IAAI,OAAO,UAAU,QAAA,EACrB;AACI,IAAA,KAAA,GAAQ,CAAC,KAAK,CAAA;AAAA,EAClB;AAGA,EAAA,MAAM,SAAmB,EAAC;AAE1B,EAAA,KAAA,IAAS,IAAI,CAAA,EAAG,CAAA,GAAI,MAAM,MAAA,EAAQ,CAAA,GAAI,GAAG,CAAA,EAAA,EACzC;AACI,IAAA,MAAM,IAAA,GAAO,MAAM,CAAC,CAAA;AAGpB,IAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,IAAI,CAAA,EACtB;AACI,MAAA,IAAI,IAAA,CAAK,WAAW,CAAA,EACpB;AACI,QAAA,MAAM,IAAI,KAAA,CAAM,CAAA,8DAAA,EAAiE,IAAA,CAAK,MAAM,CAAA,CAAA,CAAG,CAAA;AAAA,MACnG;AACA,MAAA,IAAI,IAAA,CAAK,CAAC,CAAA,CAAE,MAAA,KAAW,KAAK,IAAA,CAAK,CAAC,CAAA,CAAE,MAAA,KAAW,CAAA,EAC/C;AACI,QAAA,MAAM,IAAI,MAAM,4CAA4C,CAAA;AAAA,MAChE;AAEA,MAAA,MAAM,SAAA,GAAY,IAAA,CAAK,CAAC,CAAA,CAAE,WAAW,CAAC,CAAA;AACtC,MAAA,MAAM,OAAA,GAAU,IAAA,CAAK,CAAC,CAAA,CAAE,WAAW,CAAC,CAAA;AAEpC,MAAA,IAAI,UAAU,SAAA,EACd;AACI,QAAA,MAAM,IAAI,MAAM,wCAAwC,CAAA;AAAA,MAC5D;AAEA,MAAA,KAAA,IAASA,KAAI,SAAA,EAAWC,EAAAA,GAAI,OAAA,EAASD,EAAAA,IAAKC,IAAGD,EAAAA,EAAAA,EAC7C;AACI,QAAA,MAAA,CAAO,IAAA,CAAK,MAAA,CAAO,YAAA,CAAaA,EAAC,CAAC,CAAA;AAAA,MACtC;AAAA,IACJ,CAAA,MAEA;AACI,MAAA,MAAA,CAAO,IAAA,CAAK,GAAG,KAAA,CAAM,IAAA,CAAK,IAAI,CAAC,CAAA;AAAA,IACnC;AAAA,EACJ;AAEA,EAAA,IAAI,MAAA,CAAO,WAAW,CAAA,EACtB;AACI,IAAA,MAAM,IAAI,MAAM,oDAAoD,CAAA;AAAA,EACxE;AAEA,EAAA,OAAO,MAAA;AACX;;;;"}