{"version":3,"file":"formatShader.mjs","sources":["../../../../../src/rendering/high-shader/compiler/utils/formatShader.ts"],"sourcesContent":["/**\n * formats a shader so its more pleasant to read!\n * @param shader - a glsl shader program source\n */\nexport function formatShader(shader: string): string\n{\n    const spl = shader.split(/([\\n{}])/g)\n        .map((a) => a.trim())\n        .filter((a) => a.length);\n\n    let indent = '';\n\n    const formatted = spl.map((a) =>\n    {\n        let indentedLine = indent + a;\n\n        if (a === '{')\n        {\n            indent += '    ';\n        }\n        else if (a === '}')\n        {\n            indent = indent.substr(0, indent.length - 4);\n\n            indentedLine = indent + a;\n        }\n\n        return indentedLine;\n    }).join('\\n');\n\n    return formatted;\n}\n\n"],"names":[],"mappings":";AAIO,SAAS,aAAa,MAC7B,EAAA;AACI,EAAA,MAAM,MAAM,MAAO,CAAA,KAAA,CAAM,WAAW,CAAA,CAC/B,IAAI,CAAC,CAAA,KAAM,CAAE,CAAA,IAAA,EAAM,CACnB,CAAA,MAAA,CAAO,CAAC,CAAA,KAAM,EAAE,MAAM,CAAA,CAAA;AAE3B,EAAA,IAAI,MAAS,GAAA,EAAA,CAAA;AAEb,EAAA,MAAM,SAAY,GAAA,GAAA,CAAI,GAAI,CAAA,CAAC,CAC3B,KAAA;AACI,IAAA,IAAI,eAAe,MAAS,GAAA,CAAA,CAAA;AAE5B,IAAA,IAAI,MAAM,GACV,EAAA;AACI,MAAU,MAAA,IAAA,MAAA,CAAA;AAAA,KACd,MAAA,IACS,MAAM,GACf,EAAA;AACI,MAAA,MAAA,GAAS,MAAO,CAAA,MAAA,CAAO,CAAG,EAAA,MAAA,CAAO,SAAS,CAAC,CAAA,CAAA;AAE3C,MAAA,YAAA,GAAe,MAAS,GAAA,CAAA,CAAA;AAAA,KAC5B;AAEA,IAAO,OAAA,YAAA,CAAA;AAAA,GACV,CAAE,CAAA,IAAA,CAAK,IAAI,CAAA,CAAA;AAEZ,EAAO,OAAA,SAAA,CAAA;AACX;;;;"}