function glsl() {
    return {
        transform(code, id) {
            if (/\.glsl$/.test(id) === false) return;

            var transformedCode = 'export default ' + JSON.stringify(
                code
                    .replace(/[ \t]*\/\/.*\n/g, '') // remove //
                    .replace(/[ \t]*\/\*[\s\S]*?\*\//g, '') // remove /* */
                    .replace(/\n{2,}/g, '\n') // # \n+ to \n
            ) + ';';
            return {
                code: transformedCode,
                map: {
                    mappings: ''
                }
            };
        }
    };
}

export default {
    input: 'ShadowEditor.Web/test/weekend/src/index.js',
    output: {
        indent: '\t',
        format: 'umd',
        name: 'Weekend',
        file: 'ShadowEditor.Web/test/weekend/build/weekend.js'
    },
    treeshake: true,
    external: [],
    plugins: [
        glsl(),
    ]
};
