e30546f27f34a41924150333d73cd9aefa998208
[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 _0x5af9=['legacy-libs','isArray','apps','name','motion2','env','NODE_PATH','string','pathExists','readJSON','then','updated','info','Updating\x20app.json','writeJSON','exports','fs-extra','path','root','resolve','server/app.json'];(function(_0x4dd909,_0x407b30){var _0x73872=function(_0x2eb115){while(--_0x2eb115){_0x4dd909['push'](_0x4dd909['shift']());}};_0x73872(++_0x407b30);}(_0x5af9,0xf7));var _0x95af=function(_0x4d8ed9,_0x2ae284){_0x4d8ed9=_0x4d8ed9-0x0;var _0x1e2140=_0x5af9[_0x4d8ed9];return _0x1e2140;};var fs=require(_0x95af('0x0'));var path=require(_0x95af('0x1'));var config=require('../config/environment');var root=config[_0x95af('0x2')];var APP_JSON_PATH=path[_0x95af('0x3')](root,_0x95af('0x4'));var NODEPATH=path[_0x95af('0x3')](root,_0x95af('0x5'));function setLegacyLibsNodeEnvPath(_0x3fb6c4){let _0x528d72=![];if(Array[_0x95af('0x6')](_0x3fb6c4['apps'])){var _0x52bd98=_0x3fb6c4[_0x95af('0x7')]['findIndex'](function(_0x389058){return _0x389058[_0x95af('0x8')]===_0x95af('0x9');});if(_0x52bd98>-0x1){var _0x10c707=_0x3fb6c4[_0x95af('0x7')][_0x52bd98];if(typeof _0x10c707[_0x95af('0xa')][_0x95af('0xb')]!==_0x95af('0xc')){_0x10c707['env']['NODE_PATH']=NODEPATH;_0x528d72=!![];}}return{'appConfig':_0x3fb6c4,'updated':_0x528d72};}}function updateAppConfig(_0x5f07ac){return fs[_0x95af('0xd')](APP_JSON_PATH)['then'](function(_0xc86d81){if(_0xc86d81){return fs[_0x95af('0xe')](APP_JSON_PATH)[_0x95af('0xf')](function(_0x1f22f3){var _0x15b8a8=setLegacyLibsNodeEnvPath(_0x1f22f3);if(_0x15b8a8[_0x95af('0x10')]){_0x5f07ac[_0x95af('0x11')](_0x95af('0x12'));return fs[_0x95af('0x13')](APP_JSON_PATH,_0x1f22f3,{'spaces':0x2});}else{return Promise[_0x95af('0x3')]();}});}else{return Promise['resolve']();}});}module[_0x95af('0x14')]=updateAppConfig;