Built motion from commit ecf5ab8ec560fd4c6972692268e350fcef2f38e7. Version 3.0.0...
[motion-next.git] / server / api / automation / automation.controller.js
1 const a38_0x10c5=['sequelize','end','../../components/parsers/qs','intersection','limit','status','type','send','update','rawAttributes','set','undefined','Content-Range','offset','error','merge','key','count','index','Action','options','include','Automation','rows','like','lodash','keys','show','query','findAll','catch','addActions','getConditions','ids','then','addConditions','filters','fields','sendStatus','stack','includeAll','../../mysqldb','params','sort','findOne','destroy','omit','order','name','where','fieldName','length','model','create','VIRTUAL','attributes','json','body','nolimit','filter'];(function(_0x43a035,_0x10c545){const _0x3cd840=function(_0x335beb){while(--_0x335beb){_0x43a035['push'](_0x43a035['shift']());}};_0x3cd840(++_0x10c545);}(a38_0x10c5,0x1d0));const a38_0x3cd8=function(_0x43a035,_0x10c545){_0x43a035=_0x43a035-0x0;let _0x3cd840=a38_0x10c5[_0x43a035];return _0x3cd840;};const _0x43000b=a38_0x3cd8;'use strict';const _=require(_0x43000b('0x29')),qs=require(_0x43000b('0x12')),logger=require('../../config/logger')('api'),db=require(_0x43000b('0x39'))['db'],{Op}=require(_0x43000b('0x10'));function respondWithResult(_0x335beb,_0x43e015){return _0x43e015=_0x43e015||0xc8,function(_0x4998aa){const _0x41e8de=a38_0x3cd8;if(_0x4998aa)return _0x335beb[_0x41e8de('0x15')](_0x43e015)[_0x41e8de('0xc')](_0x4998aa);};}function respondWithFilteredResult(_0x107755,_0x1ee08f){return function(_0x12256a){const _0x596869=a38_0x3cd8;if(_0x12256a){const _0x304bb5=_0x12256a[_0x596869('0x21')],_0x20ab31=_0x1ee08f[_0x596869('0x1d')];let _0x2ada0c=_0x1ee08f['offset']+_0x1ee08f['limit'],_0x38e2a7;return _0x2ada0c>=_0x304bb5?(_0x2ada0c=_0x304bb5,_0x38e2a7=0xc8):_0x38e2a7=0xce,_0x107755[_0x596869('0x15')](_0x38e2a7),_0x107755[_0x596869('0x1a')](_0x596869('0x1c'),_0x20ab31+'-'+_0x2ada0c+'/'+_0x304bb5)[_0x596869('0xc')](_0x12256a);}return null;};}function saveUpdates(_0x519583){return function(_0x5044c6){const _0x5212bc=a38_0x3cd8;if(_0x5044c6)return _0x5044c6[_0x5212bc('0x18')](_0x519583)[_0x5212bc('0x32')](function(_0x5a81e0){return _0x5a81e0;});return null;};}function removeEntity(_0x3e91b4){return function(_0x1f72c3){const _0x1ed8b6=a38_0x3cd8;if(_0x1f72c3)return _0x1f72c3['destroy']()[_0x1ed8b6('0x32')](function(){const _0x526250=_0x1ed8b6;_0x3e91b4[_0x526250('0x15')](0xcc)[_0x526250('0x11')]();});};}function handleEntityNotFound(_0x16e8d8){return function(_0x2ce7fa){const _0x1c6b6d=a38_0x3cd8;return!_0x2ce7fa&&_0x16e8d8[_0x1c6b6d('0x36')](0x194),_0x2ce7fa;};}function handleError(_0x56533b,_0x462fb3){return _0x462fb3=_0x462fb3||0x1f4,function(_0x323f5b){const _0x27be8b=a38_0x3cd8;logger[_0x27be8b('0x1e')](_0x323f5b[_0x27be8b('0x37')]),_0x323f5b[_0x27be8b('0x4')]&&delete _0x323f5b[_0x27be8b('0x4')],_0x56533b['status'](_0x462fb3)[_0x27be8b('0x17')](_0x323f5b);};}exports[_0x43000b('0x22')]=function(_0x5dbaee,_0x4cc783){const _0x2aba69=_0x43000b;let _0x1524a0={};const _0x490dda={},_0x950e5f={'count':0x0,'rows':[]},_0x251a2f=_['map'](db[_0x2aba69('0x26')]['rawAttributes'],function(_0x39ce99){const _0x3d1a58=_0x2aba69;return{'name':_0x39ce99[_0x3d1a58('0x6')],'type':_0x39ce99[_0x3d1a58('0x16')][_0x3d1a58('0x20')]};});_0x490dda[_0x2aba69('0x8')]=_['map'](_0x251a2f,_0x2aba69('0x4')),_0x490dda[_0x2aba69('0x2c')]=_[_0x2aba69('0x2a')](_0x5dbaee[_0x2aba69('0x2c')]),_0x490dda[_0x2aba69('0x34')]=_[_0x2aba69('0x13')](_0x490dda[_0x2aba69('0x8')],_0x490dda[_0x2aba69('0x2c')]),_0x1524a0[_0x2aba69('0xb')]=_[_0x2aba69('0x13')](_0x490dda[_0x2aba69('0x8')],qs['fields'](_0x5dbaee['query'][_0x2aba69('0x35')])),_0x1524a0[_0x2aba69('0xb')]=_0x1524a0[_0x2aba69('0xb')][_0x2aba69('0x7')]?_0x1524a0[_0x2aba69('0xb')]:_0x490dda['model'];typeof _0x5dbaee['query']['nolimit']===_0x2aba69('0x1b')&&(_0x1524a0[_0x2aba69('0x14')]=qs[_0x2aba69('0x14')](_0x5dbaee['query'][_0x2aba69('0x14')]),_0x1524a0[_0x2aba69('0x1d')]=qs['offset'](_0x5dbaee['query'][_0x2aba69('0x1d')]));_0x1524a0[_0x2aba69('0x3')]=qs['sort'](_0x5dbaee[_0x2aba69('0x2c')][_0x2aba69('0x3b')]),_0x1524a0['where']=qs[_0x2aba69('0x34')](_['pick'](_0x5dbaee[_0x2aba69('0x2c')],_0x490dda[_0x2aba69('0x34')]),_0x251a2f);_0x5dbaee[_0x2aba69('0x2c')][_0x2aba69('0xf')]&&(_0x1524a0[_0x2aba69('0x5')]=_[_0x2aba69('0x1f')](_0x1524a0['where'],{[Op['or']]:_['map'](_0x251a2f,function(_0x280837){const _0x1df626=_0x2aba69;if(_0x280837['type']!==_0x1df626('0xa')){const _0x4ccebd={};return _0x4ccebd[_0x280837[_0x1df626('0x4')]]={[Op[_0x1df626('0x28')]]:'%'+_0x5dbaee[_0x1df626('0x2c')][_0x1df626('0xf')]+'%'},_0x4ccebd;}})}));_0x1524a0=_[_0x2aba69('0x1f')]({},_0x1524a0,_0x5dbaee[_0x2aba69('0x24')]);const _0x34375f={'where':_0x1524a0[_0x2aba69('0x5')]};return db[_0x2aba69('0x26')][_0x2aba69('0x21')](_0x34375f)['then'](function(_0x1e8c2d){const _0x499bf9=_0x2aba69;return _0x950e5f[_0x499bf9('0x21')]=_0x1e8c2d,_0x5dbaee['query'][_0x499bf9('0x38')]&&(_0x1524a0['include']=[{'all':!![]}]),db[_0x499bf9('0x26')][_0x499bf9('0x2d')](_0x1524a0);})['then'](function(_0x1e89fb){const _0x4b06aa=_0x2aba69;return _0x950e5f[_0x4b06aa('0x27')]=_0x1e89fb,_0x950e5f;})['then'](respondWithFilteredResult(_0x4cc783,_0x1524a0))[_0x2aba69('0x2e')](handleError(_0x4cc783,null));},exports[_0x43000b('0x2b')]=function(_0x15ecc0,_0x4eb069){const _0x2c9737=_0x43000b;let _0x2d60b9={'raw':![],'where':{'id':_0x15ecc0['params']['id']}};const _0x20103f={};return _0x20103f[_0x2c9737('0x8')]=_[_0x2c9737('0x2a')](db['Automation']['rawAttributes']),_0x20103f[_0x2c9737('0x2c')]=_[_0x2c9737('0x2a')](_0x15ecc0[_0x2c9737('0x2c')]),_0x20103f[_0x2c9737('0x34')]=_['intersection'](_0x20103f[_0x2c9737('0x8')],_0x20103f[_0x2c9737('0x2c')]),_0x2d60b9[_0x2c9737('0xb')]=_[_0x2c9737('0x13')](_0x20103f['model'],qs[_0x2c9737('0x35')](_0x15ecc0[_0x2c9737('0x2c')][_0x2c9737('0x35')])),_0x2d60b9[_0x2c9737('0xb')]=_0x2d60b9[_0x2c9737('0xb')][_0x2c9737('0x7')]?_0x2d60b9['attributes']:_0x20103f['model'],_0x15ecc0[_0x2c9737('0x2c')][_0x2c9737('0x38')]&&(_0x2d60b9[_0x2c9737('0x25')]=[{'all':!![]}]),_0x2d60b9=_[_0x2c9737('0x1f')]({},_0x2d60b9,_0x15ecc0['options']),db[_0x2c9737('0x26')]['findOne'](_0x2d60b9)[_0x2c9737('0x32')](handleEntityNotFound(_0x4eb069,null))[_0x2c9737('0x32')](respondWithResult(_0x4eb069,null))[_0x2c9737('0x2e')](handleError(_0x4eb069,null));},exports[_0x43000b('0x9')]=function(_0x606637,_0x6395fa){const _0x1b6058=_0x43000b;return db[_0x1b6058('0x26')]['create'](_0x606637[_0x1b6058('0xd')],{})[_0x1b6058('0x32')](respondWithResult(_0x6395fa,0xc9))[_0x1b6058('0x2e')](handleError(_0x6395fa,null));},exports[_0x43000b('0x18')]=function(_0x553c96,_0x383d91){const _0x43a754=_0x43000b;return _0x553c96[_0x43a754('0xd')]['id']&&delete _0x553c96[_0x43a754('0xd')]['id'],db[_0x43a754('0x26')][_0x43a754('0x0')]({'where':{'id':_0x553c96[_0x43a754('0x3a')]['id']}})['then'](handleEntityNotFound(_0x383d91,null))[_0x43a754('0x32')](saveUpdates(_0x553c96[_0x43a754('0xd')],null))[_0x43a754('0x32')](respondWithResult(_0x383d91,null))[_0x43a754('0x2e')](handleError(_0x383d91,null));},exports[_0x43000b('0x1')]=function(_0x4a3bfe,_0xf76c3b){const _0x3a8771=_0x43000b;return db[_0x3a8771('0x26')][_0x3a8771('0x0')]({'where':{'id':_0x4a3bfe[_0x3a8771('0x3a')]['id']}})[_0x3a8771('0x32')](handleEntityNotFound(_0xf76c3b,null))[_0x3a8771('0x32')](removeEntity(_0xf76c3b,null))[_0x3a8771('0x2e')](handleError(_0xf76c3b,null));},exports[_0x43000b('0x33')]=function(_0x30aba1,_0x48449a){const _0x1de6a6=_0x43000b;return db['Condition']['findOne']({'where':{'id':_0x30aba1[_0x1de6a6('0x3a')]['id']}})[_0x1de6a6('0x32')](function(_0x15685d){const _0x575769=_0x1de6a6;if(_0x15685d)return _0x15685d[_0x575769('0x33')](_0x30aba1[_0x575769('0xd')][_0x575769('0x31')],{'through':_['omit'](_0x30aba1[_0x575769('0xd')],[_0x575769('0x31'),'id'])});})[_0x1de6a6('0x32')](respondWithResult(_0x48449a,null))[_0x1de6a6('0x2e')](handleError(_0x48449a,null));},exports['getConditions']=function(_0x98cb7,_0x4e50d4){const _0x17a383=_0x43000b;let _0x5f4ff6={};const _0x1143d7={};let _0x4707ce,_0x17d694;return db['Automation'][_0x17a383('0x0')]({'where':{'id':_0x98cb7[_0x17a383('0x3a')]['id']}})[_0x17a383('0x32')](handleEntityNotFound(_0x4e50d4,null))[_0x17a383('0x32')](function(_0x54bbf2){const _0x358221=_0x17a383;if(_0x54bbf2)return _0x4707ce=_0x54bbf2,_0x1143d7['model']=_[_0x358221('0x2a')](db['Condition']['rawAttributes']),_0x1143d7[_0x358221('0x2c')]=_[_0x358221('0x2a')](_0x98cb7[_0x358221('0x2c')]),_0x1143d7[_0x358221('0x34')]=_[_0x358221('0x13')](_0x1143d7[_0x358221('0x8')],_0x1143d7[_0x358221('0x2c')]),_0x5f4ff6[_0x358221('0xb')]=_[_0x358221('0x13')](_0x1143d7['model'],qs[_0x358221('0x35')](_0x98cb7['query'][_0x358221('0x35')])),_0x5f4ff6['attributes']=_0x5f4ff6[_0x358221('0xb')]['length']?_0x5f4ff6['attributes']:_0x1143d7[_0x358221('0x8')],_0x5f4ff6['order']=qs[_0x358221('0x3b')](_0x98cb7[_0x358221('0x2c')][_0x358221('0x3b')]),_0x5f4ff6[_0x358221('0x5')]=qs[_0x358221('0x34')](_['pick'](_0x98cb7[_0x358221('0x2c')],_0x1143d7['filters'])),_0x98cb7[_0x358221('0x2c')]['filter']&&(_0x5f4ff6[_0x358221('0x5')]=_[_0x358221('0x1f')](_0x5f4ff6[_0x358221('0x5')],{[Op['or']]:_['map'](_0x5f4ff6[_0x358221('0xb')],function(_0x59ab3a){const _0x1e5ee8=_0x358221,_0x3883c4={};return _0x3883c4[_0x59ab3a]={[Op[_0x1e5ee8('0x28')]]:'%'+_0x98cb7[_0x1e5ee8('0x2c')][_0x1e5ee8('0xf')]+'%'},_0x3883c4;})})),_0x5f4ff6=_[_0x358221('0x1f')]({},_0x5f4ff6,_0x98cb7['options']),_0x4707ce[_0x358221('0x30')](_0x5f4ff6);})[_0x17a383('0x32')](function(_0x41bca1){const _0x13d26b=_0x17a383;if(_0x41bca1)return _0x17d694=_0x41bca1[_0x13d26b('0x7')],typeof _0x98cb7['query'][_0x13d26b('0xe')]===_0x13d26b('0x1b')&&(_0x5f4ff6[_0x13d26b('0x14')]=qs['limit'](_0x98cb7[_0x13d26b('0x2c')]['limit']),_0x5f4ff6['offset']=qs['offset'](_0x98cb7['query'][_0x13d26b('0x1d')])),_0x4707ce[_0x13d26b('0x30')](_0x5f4ff6);})[_0x17a383('0x32')](function(_0x30173e){if(_0x30173e)return _0x30173e?{'count':_0x17d694,'rows':_0x30173e}:null;})[_0x17a383('0x32')](respondWithResult(_0x4e50d4,null))[_0x17a383('0x2e')](handleError(_0x4e50d4,null));},exports[_0x43000b('0x2f')]=function(_0xadfb41,_0x1a8a7b){const _0x2be00c=_0x43000b;return db[_0x2be00c('0x23')][_0x2be00c('0x0')]({'where':{'id':_0xadfb41[_0x2be00c('0x3a')]['id']}})[_0x2be00c('0x32')](function(_0x2ce827){const _0x708f8=_0x2be00c;if(_0x2ce827)return _0x2ce827[_0x708f8('0x2f')](_0xadfb41[_0x708f8('0xd')]['ids'],{'through':_[_0x708f8('0x2')](_0xadfb41['body'],['ids','id'])});})[_0x2be00c('0x32')](respondWithResult(_0x1a8a7b,null))[_0x2be00c('0x2e')](handleError(_0x1a8a7b,null));},exports['getActions']=function(_0x2f93e6,_0xaa2ef3){const _0x198fe5=_0x43000b;let _0x55cc73={};const _0x434d16={};let _0x3149c4,_0x2fe469;return db[_0x198fe5('0x26')][_0x198fe5('0x0')]({'where':{'id':_0x2f93e6['params']['id']}})['then'](handleEntityNotFound(_0xaa2ef3,null))[_0x198fe5('0x32')](function(_0x2756a9){const _0x204d01=_0x198fe5;if(_0x2756a9)return _0x3149c4=_0x2756a9,_0x434d16['model']=_['keys'](db[_0x204d01('0x23')][_0x204d01('0x19')]),_0x434d16[_0x204d01('0x2c')]=_[_0x204d01('0x2a')](_0x2f93e6[_0x204d01('0x2c')]),_0x434d16['filters']=_[_0x204d01('0x13')](_0x434d16[_0x204d01('0x8')],_0x434d16[_0x204d01('0x2c')]),_0x55cc73['attributes']=_['intersection'](_0x434d16[_0x204d01('0x8')],qs['fields'](_0x2f93e6[_0x204d01('0x2c')][_0x204d01('0x35')])),_0x55cc73[_0x204d01('0xb')]=_0x55cc73['attributes'][_0x204d01('0x7')]?_0x55cc73[_0x204d01('0xb')]:_0x434d16[_0x204d01('0x8')],_0x55cc73['order']=qs[_0x204d01('0x3b')](_0x2f93e6[_0x204d01('0x2c')]['sort']),_0x55cc73['where']=qs['filters'](_['pick'](_0x2f93e6[_0x204d01('0x2c')],_0x434d16['filters'])),_0x2f93e6[_0x204d01('0x2c')][_0x204d01('0xf')]&&(_0x55cc73[_0x204d01('0x5')]=_[_0x204d01('0x1f')](_0x55cc73[_0x204d01('0x5')],{[Op['or']]:_['map'](_0x55cc73['attributes'],function(_0x16385d){const _0x247d75=_0x204d01,_0x4c2075={};return _0x4c2075[_0x16385d]={[Op[_0x247d75('0x28')]]:'%'+_0x2f93e6[_0x247d75('0x2c')]['filter']+'%'},_0x4c2075;})})),_0x55cc73=_['merge']({},_0x55cc73,_0x2f93e6[_0x204d01('0x24')]),_0x3149c4['getActions'](_0x55cc73);})[_0x198fe5('0x32')](function(_0x2e8f36){const _0x389602=_0x198fe5;if(_0x2e8f36)return _0x2fe469=_0x2e8f36[_0x389602('0x7')],typeof _0x2f93e6[_0x389602('0x2c')][_0x389602('0xe')]===_0x389602('0x1b')&&(_0x55cc73[_0x389602('0x14')]=qs[_0x389602('0x14')](_0x2f93e6[_0x389602('0x2c')]['limit']),_0x55cc73[_0x389602('0x1d')]=qs['offset'](_0x2f93e6['query'][_0x389602('0x1d')])),_0x3149c4['getActions'](_0x55cc73);})[_0x198fe5('0x32')](function(_0x233d42){if(_0x233d42)return _0x233d42?{'count':_0x2fe469,'rows':_0x233d42}:null;})['then'](respondWithResult(_0xaa2ef3,null))[_0x198fe5('0x2e')](handleError(_0xaa2ef3,null));};