93a6bdba33ae3fe3713ec4c82d6e724734de7184
[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 _0x26c5=['apps','motion2','env','then','readJSON','updated','info','Updating\x20app.json','writeJSON','exports','fs-extra','path','root','resolve','server/app.json','legacy-libs','isArray'];(function(_0x47694e,_0x7b34f1){var _0xaa6cef=function(_0xa25266){while(--_0xa25266){_0x47694e['push'](_0x47694e['shift']());}};_0xaa6cef(++_0x7b34f1);}(_0x26c5,0xd6));var _0x526c=function(_0x5140a4,_0x557d73){_0x5140a4=_0x5140a4-0x0;var _0x37238e=_0x26c5[_0x5140a4];return _0x37238e;};var fs=require(_0x526c('0x0'));var path=require(_0x526c('0x1'));var config=require('../config/environment');var root=config[_0x526c('0x2')];var APP_JSON_PATH=path[_0x526c('0x3')](root,_0x526c('0x4'));var NODEPATH=path[_0x526c('0x3')](root,_0x526c('0x5'));function setLegacyLibsNodeEnvPath(_0x40aaa0){let _0x125255=![];if(Array[_0x526c('0x6')](_0x40aaa0[_0x526c('0x7')])){var _0x2eeaa7=_0x40aaa0['apps']['findIndex'](function(_0x197af8){return _0x197af8['name']===_0x526c('0x8');});if(_0x2eeaa7>-0x1){var _0x1e3684=_0x40aaa0[_0x526c('0x7')][_0x2eeaa7];if(typeof _0x1e3684['env']['NODE_PATH']!=='string'){_0x1e3684[_0x526c('0x9')]['NODE_PATH']=NODEPATH;_0x125255=!![];}}return{'appConfig':_0x40aaa0,'updated':_0x125255};}}function updateAppConfig(_0x3affbc){return fs['pathExists'](APP_JSON_PATH)[_0x526c('0xa')](function(_0x4b6a00){if(_0x4b6a00){return fs[_0x526c('0xb')](APP_JSON_PATH)['then'](function(_0x3366f2){var _0x36398b=setLegacyLibsNodeEnvPath(_0x3366f2);if(_0x36398b[_0x526c('0xc')]){_0x3affbc[_0x526c('0xd')](_0x526c('0xe'));return fs[_0x526c('0xf')](APP_JSON_PATH,_0x3366f2,{'spaces':0x2});}else{return Promise[_0x526c('0x3')]();}});}else{return Promise[_0x526c('0x3')]();}});}module[_0x526c('0x10')]=updateAppConfig;