16a23e08bSopenharmony_ci/* 26a23e08bSopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd. 36a23e08bSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 46a23e08bSopenharmony_ci * you may not use this file except in compliance with the License. 56a23e08bSopenharmony_ci * You may obtain a copy of the License at 66a23e08bSopenharmony_ci * 76a23e08bSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 86a23e08bSopenharmony_ci * 96a23e08bSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 106a23e08bSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 116a23e08bSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 126a23e08bSopenharmony_ci * See the License for the specific language governing permissions and 136a23e08bSopenharmony_ci * limitations under the License. 146a23e08bSopenharmony_ci */ 156a23e08bSopenharmony_ci 166a23e08bSopenharmony_ciconst fs = require('fs') 176a23e08bSopenharmony_ciconst path = require('path') 186a23e08bSopenharmony_ciconst uglifyJS = require('uglify-js') 196a23e08bSopenharmony_ci 206a23e08bSopenharmony_cireadCode(process.argv[2]) 216a23e08bSopenharmony_ci 226a23e08bSopenharmony_cifunction readCode(inputPath) { 236a23e08bSopenharmony_ci if (fs.existsSync(inputPath)) { 246a23e08bSopenharmony_ci const files = fs.readdirSync(inputPath) 256a23e08bSopenharmony_ci files.forEach(function(file) { 266a23e08bSopenharmony_ci const filePath = path.join(inputPath, file) 276a23e08bSopenharmony_ci if (fs.existsSync(filePath)) { 286a23e08bSopenharmony_ci const fileStat = fs.statSync(filePath) 296a23e08bSopenharmony_ci if (fileStat.isFile()) { 306a23e08bSopenharmony_ci const code = fs.readFileSync(filePath, 'utf-8') 316a23e08bSopenharmony_ci uglifyCode(code,filePath) 326a23e08bSopenharmony_ci } 336a23e08bSopenharmony_ci if (fileStat.isDirectory()) { 346a23e08bSopenharmony_ci readCode(filePath) 356a23e08bSopenharmony_ci } 366a23e08bSopenharmony_ci } 376a23e08bSopenharmony_ci }) 386a23e08bSopenharmony_ci } 396a23e08bSopenharmony_ci} 406a23e08bSopenharmony_ci 416a23e08bSopenharmony_cifunction uglifyCode(code, outPath) { 426a23e08bSopenharmony_ci const uglifyCode = uglifyJS.minify(code).code 436a23e08bSopenharmony_ci fs.writeFileSync(outPath, uglifyCode) 446a23e08bSopenharmony_ci} 45