5a0e9091410db282cbce294177b011e263d76d00
[motion2.git] / server / utils / update-app-config.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xd1bb=['isArray','apps','findIndex','name','motion2','env','NODE_PATH','pathExists','then','updated','info','Updating\x20app.json','writeJSON','exports','fs-extra','path','../config/environment','root','resolve','legacy-libs'];(function(_0x2acbfd,_0x23abe0){var _0x33bb1f=function(_0x1681ab){while(--_0x1681ab){_0x2acbfd['push'](_0x2acbfd['shift']());}};_0x33bb1f(++_0x23abe0);}(_0xd1bb,0x18a));var _0xbd1b=function(_0x4c7949,_0x45b158){_0x4c7949=_0x4c7949-0x0;var _0x3f7dd8=_0xd1bb[_0x4c7949];return _0x3f7dd8;};var fs=require(_0xbd1b('0x0'));var path=require(_0xbd1b('0x1'));var config=require(_0xbd1b('0x2'));var root=config[_0xbd1b('0x3')];var APP_JSON_PATH=path[_0xbd1b('0x4')](root,'server/app.json');var NODEPATH=path[_0xbd1b('0x4')](root,_0xbd1b('0x5'));function setLegacyLibsNodeEnvPath(_0x4fa32c){let _0x5926bf=![];if(Array[_0xbd1b('0x6')](_0x4fa32c[_0xbd1b('0x7')])){var _0x4dc96a=_0x4fa32c[_0xbd1b('0x7')][_0xbd1b('0x8')](function(_0x28fe97){return _0x28fe97[_0xbd1b('0x9')]===_0xbd1b('0xa');});if(_0x4dc96a>-0x1){var _0x2c41e9=_0x4fa32c['apps'][_0x4dc96a];if(typeof _0x2c41e9['env']['NODE_PATH']!=='string'){_0x2c41e9[_0xbd1b('0xb')][_0xbd1b('0xc')]=NODEPATH;_0x5926bf=!![];}}return{'appConfig':_0x4fa32c,'updated':_0x5926bf};}}function updateAppConfig(_0x5c4aba){return fs[_0xbd1b('0xd')](APP_JSON_PATH)[_0xbd1b('0xe')](function(_0x3b014c){if(_0x3b014c){return fs['readJSON'](APP_JSON_PATH)[_0xbd1b('0xe')](function(_0xb238){var _0xa0e6cc=setLegacyLibsNodeEnvPath(_0xb238);if(_0xa0e6cc[_0xbd1b('0xf')]){_0x5c4aba[_0xbd1b('0x10')](_0xbd1b('0x11'));return fs[_0xbd1b('0x12')](APP_JSON_PATH,_0xb238,{'spaces':0x2});}else{return Promise[_0xbd1b('0x4')]();}});}else{return Promise['resolve']();}});}module[_0xbd1b('0x13')]=updateAppConfig;