@threeify/shader-transpiler
Version:
A glsl to JS module transpiler.
21 lines • 802 B
JavaScript
export function stripComments(source) {
const commentRegex = /\/\*[\S\s]*?\*\/|([^:\\]|^)\/\/.*$/gm;
return source.replace(commentRegex, '');
}
export function stripUnnecessaryLineEndings(source) {
return source.replace(/[\n\r]+/g, '\n');
}
export function stripUnnecessarySpaces(source) {
const specialChars = '(),=;+-*/&|%~.:[]?'.split('');
source = source.replace(/[\t ]+/g, ' ');
for (let i = 0; i < specialChars.length; i++) {
let lastLength = 0;
while (lastLength !== source.length) {
lastLength = source.length;
source = source.replace(specialChars[i] + ' ', specialChars[i]);
source = source.replace(' ' + specialChars[i], specialChars[i]);
}
}
return source;
}
//# sourceMappingURL=minification.js.map