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 • 2.26 kB
Source Map (JSON)
{"version":3,"file":"compileInputs.mjs","sources":["../../../../../src/rendering/high-shader/compiler/utils/compileInputs.ts"],"sourcesContent":["function extractInputs(fragmentSource: string, out: string[])\n{\n let match;\n const regex = /@in\\s+([^;]+);/g;\n\n while ((match = regex.exec(fragmentSource)) !== null)\n {\n out.push(match[1]);\n }\n}\n\n/**\n * @param fragments\n * @param template\n * @param sort\n * @internal\n */\nexport function compileInputs(fragments: any[], template: string, sort = false)\n{\n // get all the inputs from the fragments..\n const results: string[] = [];\n\n extractInputs(template, results);\n\n fragments.forEach((fragment) =>\n {\n if (fragment.header)\n {\n extractInputs(fragment.header, results);\n }\n });\n\n // build the input:\n const mainInput = results;\n\n if (sort)\n {\n mainInput.sort();\n }\n\n const finalString = mainInput\n .map((inValue, i) => ` @location(${i}) ${inValue},`)\n .join('\\n');\n\n // Remove lines from original string\n let cleanedString = template.replace(/@in\\s+[^;]+;\\s*/g, '');\n\n cleanedString = cleanedString.replace('{{in}}', `\\n${finalString}\\n`);\n\n return cleanedString;\n}\n"],"names":[],"mappings":";AAAA,SAAS,aAAA,CAAc,gBAAwB,GAAA,EAC/C;AACI,EAAA,IAAI,KAAA;AACJ,EAAA,MAAM,KAAA,GAAQ,iBAAA;AAEd,EAAA,OAAA,CAAQ,KAAA,GAAQ,KAAA,CAAM,IAAA,CAAK,cAAc,OAAO,IAAA,EAChD;AACI,IAAA,GAAA,CAAI,IAAA,CAAK,KAAA,CAAM,CAAC,CAAC,CAAA;AAAA,EACrB;AACJ;AAQO,SAAS,aAAA,CAAc,SAAA,EAAkB,QAAA,EAAkB,IAAA,GAAO,KAAA,EACzE;AAEI,EAAA,MAAM,UAAoB,EAAC;AAE3B,EAAA,aAAA,CAAc,UAAU,OAAO,CAAA;AAE/B,EAAA,SAAA,CAAU,OAAA,CAAQ,CAAC,QAAA,KACnB;AACI,IAAA,IAAI,SAAS,MAAA,EACb;AACI,MAAA,aAAA,CAAc,QAAA,CAAS,QAAQ,OAAO,CAAA;AAAA,IAC1C;AAAA,EACJ,CAAC,CAAA;AAGD,EAAA,MAAM,SAAA,GAAY,OAAA;AAElB,EAAA,IAAI,IAAA,EACJ;AACI,IAAA,SAAA,CAAU,IAAA,EAAK;AAAA,EACnB;AAEA,EAAA,MAAM,WAAA,GAAc,SAAA,CACf,GAAA,CAAI,CAAC,OAAA,EAAS,CAAA,KAAM,CAAA,iBAAA,EAAoB,CAAC,CAAA,EAAA,EAAK,OAAO,CAAA,CAAA,CAAG,CAAA,CACxD,KAAK,IAAI,CAAA;AAGd,EAAA,IAAI,aAAA,GAAgB,QAAA,CAAS,OAAA,CAAQ,kBAAA,EAAoB,EAAE,CAAA;AAE3D,EAAA,aAAA,GAAgB,aAAA,CAAc,QAAQ,QAAA,EAAU;AAAA,EAAK,WAAW;AAAA,CAAI,CAAA;AAEpE,EAAA,OAAO,aAAA;AACX;;;;"}