import os
import sys
import tempfile
_HERE_PATH = os.path.dirname(__file__)
_SRC_PATH = os.path.normpath(os.path.join(_HERE_PATH, '..', '..'))
sys.path.insert(0, os.path.join(_SRC_PATH, 'third_party', 'node'))
import node
import node_modules
def Minify(source):
with tempfile.NamedTemporaryFile(mode="w+", suffix='.js') as infile, \
tempfile.NamedTemporaryFile(mode="r+", suffix='.js') as outfile:
infile.write(source)
infile.flush()
node.RunNode(
[node_modules.PathToTerser(), infile.name, '--output', outfile.name])
result = outfile.read()
return result
def main():
orig_stdout = sys.stdout
result = ''
try:
sys.stdout = sys.stderr
result = Minify(sys.stdin.read())
finally:
sys.stdout = orig_stdout
print(result)
if __name__ == '__main__':
main()