@things-factory/operato-tools 6.0.110 → 6.0.111

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- 'use strict';const a0_0x22ef10=a0_0x4fd5;(function(_0x3ec1c3,_0x2c1663){const _0x43d2a1=a0_0x4fd5,_0x23dde7=_0x3ec1c3();while(!![]){try{const _0xf9c776=parseInt(_0x43d2a1(0x7d))/0x1*(parseInt(_0x43d2a1(0x80))/0x2)+parseInt(_0x43d2a1(0x8c))/0x3*(-parseInt(_0x43d2a1(0x7b))/0x4)+-parseInt(_0x43d2a1(0x8a))/0x5*(parseInt(_0x43d2a1(0x8b))/0x6)+parseInt(_0x43d2a1(0x86))/0x7+parseInt(_0x43d2a1(0x83))/0x8*(-parseInt(_0x43d2a1(0x81))/0x9)+-parseInt(_0x43d2a1(0x89))/0xa*(parseInt(_0x43d2a1(0x8e))/0xb)+-parseInt(_0x43d2a1(0x87))/0xc*(-parseInt(_0x43d2a1(0x82))/0xd);if(_0xf9c776===_0x2c1663)break;else _0x23dde7['push'](_0x23dde7['shift']());}catch(_0x1d82d1){_0x23dde7['push'](_0x23dde7['shift']());}}}(a0_0xa174,0x6ca80));Object['defineProperty'](exports,a0_0x22ef10(0x84),{'value':!0x0}),exports['LicenseError']=void 0x0;function a0_0x4fd5(_0x2bf108,_0x22dc32){const _0xa17424=a0_0xa174();return a0_0x4fd5=function(_0x4fd5b3,_0x34fc49){_0x4fd5b3=_0x4fd5b3-0x7a;let _0x59b207=_0xa17424[_0x4fd5b3];return _0x59b207;},a0_0x4fd5(_0x2bf108,_0x22dc32);}function a0_0xa174(){const _0x22785f=['license-error','1663557GfJaov','5861544mGZYUk','ERROR_CODES','2305590aqyoRO','14415xiCawE','114KcsOWb','6759YxNKPO','LicenseError','22CnqFaY','errorCode','name','492bQijih','assign','1gAvDHE','detail','__importStar','1592852youbXo','6956379ftwJUV','26SlBdhu','8pcceCt','__esModule'];a0_0xa174=function(){return _0x22785f;};return a0_0xa174();}const tslib_1=require('tslib'),ERROR_CODES=tslib_1[a0_0x22ef10(0x7f)](require('../constants/error-code'));class LicenseError extends Error{static get[a0_0x22ef10(0x88)](){const _0x43e6b9=a0_0x22ef10;return Object[_0x43e6b9(0x7c)]({},ERROR_CODES);}constructor({errorCode:_0x53ac29,detail:_0x478608}){const _0x2fb56c=a0_0x22ef10;super(_0x53ac29),this[_0x2fb56c(0x7a)]=_0x2fb56c(0x85),this[_0x2fb56c(0x8f)]=_0x53ac29,this[_0x2fb56c(0x7e)]=_0x478608;}}exports[a0_0x22ef10(0x8d)]=LicenseError;
1
+ 'use strict';const a0_0x49a90d=a0_0x52dc;(function(_0x52f576,_0x21b51b){const _0x3d5a67=a0_0x52dc,_0x2321f6=_0x52f576();while(!![]){try{const _0x40034a=parseInt(_0x3d5a67(0x161))/0x1*(-parseInt(_0x3d5a67(0x163))/0x2)+parseInt(_0x3d5a67(0x16a))/0x3*(-parseInt(_0x3d5a67(0x15e))/0x4)+-parseInt(_0x3d5a67(0x168))/0x5*(-parseInt(_0x3d5a67(0x164))/0x6)+-parseInt(_0x3d5a67(0x16b))/0x7*(-parseInt(_0x3d5a67(0x169))/0x8)+parseInt(_0x3d5a67(0x16c))/0x9+parseInt(_0x3d5a67(0x160))/0xa*(-parseInt(_0x3d5a67(0x166))/0xb)+parseInt(_0x3d5a67(0x162))/0xc*(parseInt(_0x3d5a67(0x159))/0xd);if(_0x40034a===_0x21b51b)break;else _0x2321f6['push'](_0x2321f6['shift']());}catch(_0x2ab578){_0x2321f6['push'](_0x2321f6['shift']());}}}(a0_0x1be7,0x92477));Object[a0_0x49a90d(0x165)](exports,'__esModule',{'value':!0x0}),exports['LicenseError']=void 0x0;function a0_0x1be7(){const _0x2e7dd6=['32SNJSyo','5246124txeQVw','53546pydlCg','12LWgszX','defineProperty','44wmynic','detail','639895fRnHvD','24VeGVlj','7926ZRjdne','1065092MTAYvJ','2406942EClVNY','../constants/error-code','39EvxFRj','license-error','__importStar','ERROR_CODES','tslib','72Glmhru','name','1969860YAridh'];a0_0x1be7=function(){return _0x2e7dd6;};return a0_0x1be7();}const tslib_1=require(a0_0x49a90d(0x15d)),ERROR_CODES=tslib_1[a0_0x49a90d(0x15b)](require(a0_0x49a90d(0x158)));function a0_0x52dc(_0xc970f1,_0x205cbe){const _0x1be73a=a0_0x1be7();return a0_0x52dc=function(_0x52dc83,_0x3b70c4){_0x52dc83=_0x52dc83-0x158;let _0x1a4e99=_0x1be73a[_0x52dc83];return _0x1a4e99;},a0_0x52dc(_0xc970f1,_0x205cbe);}class LicenseError extends Error{static get[a0_0x49a90d(0x15c)](){return Object['assign']({},ERROR_CODES);}constructor({errorCode:_0x23a88f,detail:_0x520269}){const _0x2e6b7c=a0_0x49a90d;super(_0x23a88f),this[_0x2e6b7c(0x15f)]=_0x2e6b7c(0x15a),this['errorCode']=_0x23a88f,this[_0x2e6b7c(0x167)]=_0x520269;}}exports['LicenseError']=LicenseError;
package/server/routes.js CHANGED
@@ -1 +1 @@
1
- const a0_0xfeae5b=a0_0x4d8a;function a0_0x4d8a(_0x3452d0,_0x567fab){const _0x35b36d=a0_0x35b3();return a0_0x4d8a=function(_0x4d8ab5,_0x5c157b){_0x4d8ab5=_0x4d8ab5-0x133;let _0x27f4f2=_0x35b36d[_0x4d8ab5];return _0x27f4f2;},a0_0x4d8a(_0x3452d0,_0x567fab);}(function(_0x7a1131,_0x1c3dde){const _0x1a97e6=a0_0x4d8a,_0x2197ba=_0x7a1131();while(!![]){try{const _0x23fe55=-parseInt(_0x1a97e6(0x136))/0x1+parseInt(_0x1a97e6(0x139))/0x2+-parseInt(_0x1a97e6(0x133))/0x3+-parseInt(_0x1a97e6(0x135))/0x4+-parseInt(_0x1a97e6(0x13d))/0x5+parseInt(_0x1a97e6(0x134))/0x6*(parseInt(_0x1a97e6(0x13e))/0x7)+parseInt(_0x1a97e6(0x137))/0x8;if(_0x23fe55===_0x1c3dde)break;else _0x2197ba['push'](_0x2197ba['shift']());}catch(_0x32a523){_0x2197ba['push'](_0x2197ba['shift']());}}}(a0_0x35b3,0x7b741));function a0_0x35b3(){const _0x4adc6a=['388326sqAzNh','bootstrap-module-domain-public-route','things-factory:operato-tools:routes','debug','428815hJsLZo','36638WJZsGY','bootstrap-module-domain-private-route','875784ajwfuC','150GBDRga','2319908hDzaMW','357194LnVfrC','11964112CAfUiX','bootstrap-module-global-private-route'];a0_0x35b3=function(){return _0x4adc6a;};return a0_0x35b3();}const debug=require(a0_0xfeae5b(0x13c))(a0_0xfeae5b(0x13b));process['on']('bootstrap-module-global-public-route',(_0x5680fd,_0x37afcd)=>{}),process['on'](a0_0xfeae5b(0x138),(_0x14a208,_0x51609a)=>{}),process['on'](a0_0xfeae5b(0x13a),(_0x32bd55,_0x39ef45)=>{}),process['on'](a0_0xfeae5b(0x13f),(_0x240d71,_0x256e0c)=>{});
1
+ function a0_0x46e1(){const _0x41e894=['30042AZmAhF','4HDpVxh','816wLEcYR','633010GGTcnl','2408pzZfQD','bootstrap-module-domain-private-route','bootstrap-module-global-private-route','24060iUuWZr','439026AEVOYl','3879810PJQpeL','102LMzyvO','78133IrerlF','2719002OmuYqZ','debug'];a0_0x46e1=function(){return _0x41e894;};return a0_0x46e1();}const a0_0x4e4968=a0_0x1c3d;(function(_0x48127b,_0x3bf6a2){const _0x30ffcd=a0_0x1c3d,_0x22fdac=_0x48127b();while(!![]){try{const _0xa00652=parseInt(_0x30ffcd(0x1f1))/0x1*(parseInt(_0x30ffcd(0x1f5))/0x2)+parseInt(_0x30ffcd(0x1ef))/0x3+-parseInt(_0x30ffcd(0x1f6))/0x4*(-parseInt(_0x30ffcd(0x1ed))/0x5)+parseInt(_0x30ffcd(0x1f0))/0x6*(-parseInt(_0x30ffcd(0x1ee))/0x7)+parseInt(_0x30ffcd(0x1f8))/0x8*(-parseInt(_0x30ffcd(0x1f4))/0x9)+parseInt(_0x30ffcd(0x1f7))/0xa+parseInt(_0x30ffcd(0x1f2))/0xb;if(_0xa00652===_0x3bf6a2)break;else _0x22fdac['push'](_0x22fdac['shift']());}catch(_0x3f944b){_0x22fdac['push'](_0x22fdac['shift']());}}}(a0_0x46e1,0xa3c03));function a0_0x1c3d(_0x5b9c47,_0x3e0153){const _0x46e177=a0_0x46e1();return a0_0x1c3d=function(_0x1c3dbe,_0x33f58c){_0x1c3dbe=_0x1c3dbe-0x1ed;let _0x59178c=_0x46e177[_0x1c3dbe];return _0x59178c;},a0_0x1c3d(_0x5b9c47,_0x3e0153);}const debug=require(a0_0x4e4968(0x1f3))('things-factory:operato-tools:routes');process['on']('bootstrap-module-global-public-route',(_0x4f2a21,_0x46b79f)=>{}),process['on'](a0_0x4e4968(0x1fa),(_0x4d5704,_0x4b08af)=>{}),process['on']('bootstrap-module-domain-public-route',(_0x30e9b8,_0x22987a)=>{}),process['on'](a0_0x4e4968(0x1f9),(_0xf1c064,_0xf42122)=>{});
@@ -1 +1 @@
1
- 'use strict';function a0_0x3c2e(_0x3d25e4,_0x5e01d8){const _0x3c7fe6=a0_0x3c7f();return a0_0x3c2e=function(_0x3c2edf,_0x54023a){_0x3c2edf=_0x3c2edf-0x1ef;let _0x5c5189=_0x3c7fe6[_0x3c2edf];return _0x5c5189;},a0_0x3c2e(_0x3d25e4,_0x5e01d8);}const a0_0x498352=a0_0x3c2e;function a0_0x3c7f(){const _0x443212=['hex','__esModule','{\x22type\x22:\x20\x22','push','\x22,\x22width\x22:\x20100,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22,\x22object_opt\x22:{\x22queryName\x22:\x22users\x22}}',',\x22select_opt\x22:{\x22type\x22:\x22scenario\x22,\x22name\x22:\x22','Menu','toolCreateMenu','5736245nzIrfL','Entity','save','{\x22type\x22:\x20\x22datetime\x22,\x22name\x22:\x20\x22','updated_at','stringify','3412341EBLAdW','@things-factory/meta-ui/client/pages/meta-grist-page','hidden','h1z0q9i9x7q6','created_at','findOne','join','createGridColumns','getRepository','template','hiddenFlag','dataProp',',\x22mandatory\x22:\x20','__metadata','searchRank','aes-256-cfb','1698528irRhqj','aes-256-cfb8','creator','updater','lodash','\x22,\x22codeField\x22:\x20\x22id\x22,\x22dispField\x22:\x20\x22name\x22}}','string','gridRank','\x22,\x22header\x22:\x20\x22','createSortCols','name','@transaction','replace','reverseSort','checkStudioTemplateIsOverLimit','crypto','\x22,\x22operator\x22:\x20\x22','left','{\x22name\x22:\x20\x22','menuType','map','aes-256-cbc','createdAt','refName','refType','randomBytes','sortRank',',\x22sortable\x22:true\x20,\x22align\x22:\x20\x22','assign','aes-256-ofb','\x22,\x22width\x22:','tslib','rank','769010rDUaVY','defineProperty','\x0a{\x0a\x20\x20\x22menu\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x22title\x22:\x20\x22{{name}}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22\x22,\x0a\x20\x20\x20\x20\x20\x20\x22desc\x22:\x20\x22\x22\x0a\x20\x20},\x0a\x20\x20\x22gql\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x22query\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22list_func\x22:\x20\x22{{pluralCamelCase\x20name}}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22find_one_func\x22:\x22{{camelCase\x20name}}\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x22mutation\x22:{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22multiple\x22:{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22func\x22:\x22updateMultiple{{pascalCase\x20name}}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22{{pascalCase\x20name}}Patch\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22delete\x22:{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22func\x22:\x22delete{{pluralPascalCase\x20name}}\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20},\x0a\x20\x20\x22button\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22export\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22add\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22delete\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22save\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20],\x0a\x20\x20\x22grid_column\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22string\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22id\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22header\x22:\x20\x22id\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22hidden\x22:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22editable\x22:\x20false,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mandatory\x22:\x20false,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22sortable\x22:\x20false,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22align\x22:\x20\x22left\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22width\x22:\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22exportable\x22:\x20false\x0a\x20\x20\x20\x20\x20\x20},\x0a{{GridColumns}}\x0a\x20\x20],\x0a\x20\x20\x22grid\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22button\x22:[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{HistoryButton}}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22option\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mobile_mode\x22:\x20\x22LIST\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22desk_mode\x22:\x20\x22GRID\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22use_row_checker\x22:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22pages\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2020,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2050,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20100,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20300\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22view_mode\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22GRID\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22LIST\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22CARD\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22sorters\x22:\x20[\x0a{{SortColumns}}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x22row\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22multiple_select\x22:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22click\x22:\x20\x22select-row-toggle\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20},\x0a\x20\x20\x22search\x22:\x20[\x0a{{SearchColumns}}\x0a\x20\x20]\x0a}\x0a','\x22,\x22name\x22:\x20\x22','substring','routing','pluralize','meta-grist-page','category','aes-256-ctr','477077PfbVZp','code','\x20,\x22editable\x22:\x20','SCREEN','Directive','OperatoToolCreateMenu','Mutation','length','Operato\x20Tool\x20Create\x20Menu','find','50pnBxSc','@things-factory/menu-base','resourceUrl','updater_id','type-graphql','__param','6oQfcQz','filter','final','sort','query','prototype','\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22basic\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22label\x22:\x20\x22data_history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22icon\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22logic\x22:\x20\x22history_json\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20','28637jYWuhy','COPY','224HJcFNy','\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22basic\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22label\x22:\x20\x22data_history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22icon\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22logic\x22:\x20\x22history_copy\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20','__decorate','design:paramtypes','utf8','__importDefault','./../tool-secret/tool-permission','scenario','{\x22name\x22:\x22','createMenuData','\x27\x20or\x20id\x20=\x20\x27','\x22,\x22width\x22:\x20160,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22}','state','\x22,\x22hidden\x22:','design:returntype','createCipheriv','toString','searchOper','840UyhFjf','creator_id','@things-factory/resource-base','createSearchCols','12423fqaOdx'];a0_0x3c7f=function(){return _0x443212;};return a0_0x3c7f();}(function(_0x690820,_0x414216){const _0xd9a672=a0_0x3c2e,_0x1d067b=_0x690820();while(!![]){try{const _0x1ac5dc=parseInt(_0xd9a672(0x256))/0x1*(parseInt(_0xd9a672(0x266))/0x2)+-parseInt(_0xd9a672(0x20c))/0x3*(-parseInt(_0xd9a672(0x1f6))/0x4)+-parseInt(_0xd9a672(0x215))/0x5+-parseInt(_0xd9a672(0x208))/0x6*(parseInt(_0xd9a672(0x1f4))/0x7)+parseInt(_0xd9a672(0x22b))/0x8+parseInt(_0xd9a672(0x21b))/0x9+parseInt(_0xd9a672(0x260))/0xa*(parseInt(_0xd9a672(0x24c))/0xb);if(_0x1ac5dc===_0x414216)break;else _0x1d067b['push'](_0x1d067b['shift']());}catch(_0x41ed17){_0x1d067b['push'](_0x1d067b['shift']());}}}(a0_0x3c7f,0xd7db9));Object[a0_0x498352(0x24d)](exports,a0_0x498352(0x20e),{'value':!0x0}),exports['OperatoToolCreateMenu']=void 0x0;const tslib_1=require(a0_0x498352(0x24a)),type_graphql_1=require(a0_0x498352(0x264)),resource_base_1=require(a0_0x498352(0x20a)),menu_base_1=require(a0_0x498352(0x261)),tool_permission_1=require(a0_0x498352(0x1fc)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x498352(0x22f)),{plural:plural}=require(a0_0x498352(0x252)),crypto_1=tslib_1[a0_0x498352(0x1fb)](require(a0_0x498352(0x23a)));let OperatoToolCreateMenu=class{async[a0_0x498352(0x214)](_0x38cb4a,_0x561264,_0x7e2c93){const _0x3e20a1=a0_0x498352,{domain:_0x30a111,user:_0xe42524,tx:_0x23e1c0}=_0x7e2c93[_0x3e20a1(0x202)];await(0x0,tool_permission_1[_0x3e20a1(0x239)])('',_0x7e2c93);const _0x1257aa=await _0x23e1c0['getRepository'](resource_base_1[_0x3e20a1(0x216)])['findOne']({'where':{'domain':{'id':_0x30a111['id']},'id':_0x38cb4a}}),_0x2f3a45=await _0x23e1c0[_0x3e20a1(0x223)](resource_base_1['EntityColumn'])[_0x3e20a1(0x25f)]({'where':{'domain':{'id':_0x30a111['id']},'entity':{'id':_0x1257aa['id']}}});let {name:_0x1df4a9=''}=_0x1257aa||{},_0x439454=kebabCase(_0x1df4a9),_0x2db91f=modelTemplate[_0x3e20a1(0x237)](/{{pascalCase name}}/g,startCase(camelCase(_0x1df4a9))[_0x3e20a1(0x237)](/ /g,''))[_0x3e20a1(0x237)](/{{camelCase name}}/g,camelCase(_0x1df4a9))['replace'](/{{snakeCase name}}/g,snakeCase(_0x1df4a9))['replace'](/{{pluralPascalCase name}}/g,startCase(camelCase(plural(_0x1df4a9)))[_0x3e20a1(0x237)](/ /g,''))[_0x3e20a1(0x237)](/{{pluralCamelCase name}}/g,camelCase(plural(_0x1df4a9)))[_0x3e20a1(0x237)](/{{name}}/g,_0x1df4a9),_0x24bb9a='';'JSON'==_0x1257aa[_0x3e20a1(0x226)]?_0x24bb9a=_0x3e20a1(0x1f3):_0x3e20a1(0x1f5)==_0x1257aa[_0x3e20a1(0x226)]&&(_0x24bb9a=_0x3e20a1(0x1f7)),_0x2db91f=_0x2db91f[_0x3e20a1(0x237)](/{{HistoryButton}}/g,_0x24bb9a);let _0x5e81aa=this[_0x3e20a1(0x234)](_0x2f3a45);_0x2db91f=_0x2db91f['replace'](/{{SortColumns}}/g,_0x5e81aa[_0x3e20a1(0x221)](','));let _0x46d9d8=this[_0x3e20a1(0x20b)](_0x2f3a45);_0x2db91f=_0x2db91f['replace'](/{{SearchColumns}}/g,_0x46d9d8[_0x3e20a1(0x221)](','));let _0x4d34ae=this['createGridColumns'](_0x2f3a45);return _0x2db91f=_0x2db91f[_0x3e20a1(0x237)](/{{GridColumns}}/g,_0x4d34ae[_0x3e20a1(0x221)](',')),_0x2db91f=this['enc'](_0x2db91f),await this['createMenuData'](_0x23e1c0,_0x30a111,_0xe42524,_0x561264,_0x439454,_0x2db91f),!0x0;}[a0_0x498352(0x222)](_0x500989){const _0x2558ce=a0_0x498352;return _0x500989[_0x2558ce(0x267)](_0x333371=>'id'!=_0x333371[_0x2558ce(0x235)]&&_0x333371[_0x2558ce(0x232)]>0x0)[_0x2558ce(0x1f0)](function(_0x5aee83,_0x22526e){const _0x46e312=_0x2558ce;return _0x5aee83[_0x46e312(0x232)]-_0x22526e[_0x46e312(0x232)];})[_0x2558ce(0x23f)](_0xe0bbc6=>{const _0xa59857=_0x2558ce;let {gridEditor:_0x5b6f57='string',name:_0x528ad9,term:_0x1b1d45,gridWidth:_0x451b19=0x0,gridAlign:_0xdf0af5=_0xa59857(0x23c),nullable:_0x4f4dca=!0x1}=_0xe0bbc6;if(null==_0x5b6f57&&(_0x5b6f57=_0xa59857(0x231)),null==_0xdf0af5&&(_0xdf0af5=_0xa59857(0x23c)),'updater_id'==_0x528ad9||_0xa59857(0x209)==_0x528ad9)return _0x528ad9=_0xa59857(0x263)==_0x528ad9?_0xa59857(0x22e):_0xa59857(0x22d),'{\x22type\x22:\x20\x22object\x22,\x22name\x22:\x20\x22'+_0x528ad9+_0xa59857(0x233)+_0x528ad9+_0xa59857(0x211);if(_0xa59857(0x219)==_0x528ad9||_0xa59857(0x21f)==_0x528ad9)return _0xa59857(0x218)+(_0xa59857(0x219)==_0x528ad9?'updatedAt':_0xa59857(0x241))+_0xa59857(0x233)+_0x528ad9+_0xa59857(0x201);let _0x380e4a='readonly'!=_0x5b6f57&&_0xa59857(0x21d)!=_0x5b6f57,_0x136eaa=_0xa59857(0x21d)==_0x5b6f57;0x1!=_0x136eaa&&0x0!=_0x380e4a||(_0x5b6f57=_0xa59857(0x231));let _0x405bad=_0xa59857(0x20f)+_0x5b6f57+_0xa59857(0x24f)+camelCase(_0x528ad9)+_0xa59857(0x233)+_0x1b1d45+_0xa59857(0x203)+_0x136eaa+_0xa59857(0x258)+_0x380e4a+_0xa59857(0x227)+!_0x4f4dca+_0xa59857(0x246)+_0xdf0af5+_0xa59857(0x249)+_0x451b19+'\x20,\x22exportable\x22:\x20true';return _0xa59857(0x257)==_0xe0bbc6[_0xa59857(0x243)]&&(_0x405bad+=',\x22select_opt\x22:{\x22type\x22:\x22code\x22,\x22name\x22:\x22'+_0xe0bbc6['refName']+'\x22}'),_0xa59857(0x1fd)==_0xe0bbc6[_0xa59857(0x243)]&&(_0x405bad+=_0xa59857(0x212)+_0xe0bbc6[_0xa59857(0x242)]+'\x22}'),'entity'==_0xe0bbc6[_0xa59857(0x243)]&&(_0x405bad+=',\x22select_opt\x22:{\x22type\x22:\x20\x22entity\x22,\x22args\x22:\x20{\x22queryName\x22:\x20\x22'+camelCase(plural(_0xe0bbc6[_0xa59857(0x242)]))+_0xa59857(0x230)),_0x405bad+='}',_0x405bad;});}[a0_0x498352(0x20b)](_0x2ae810){const _0x54b5d9=a0_0x498352;return _0x2ae810[_0x54b5d9(0x267)](_0x9a2a0f=>_0x9a2a0f[_0x54b5d9(0x229)]>0x0)['sort'](function(_0x2f07c3,_0x3b549e){const _0x258e6a=_0x54b5d9;return _0x2f07c3[_0x258e6a(0x229)]-_0x3b549e['searchRank'];})[_0x54b5d9(0x23f)](_0xd25e70=>{const _0x379c5c=_0x54b5d9;let _0x5d76ea=_0xd25e70[_0x379c5c(0x207)];return _0x379c5c(0x267)==_0x5d76ea?'\x22'+camelCase(_0xd25e70[_0x379c5c(0x235)])+'\x22':(_0x5d76ea||(_0x5d76ea='eq'),_0x379c5c(0x23d)+camelCase(_0xd25e70[_0x379c5c(0x235)])+_0x379c5c(0x23b)+_0x5d76ea+'\x22}');});}[a0_0x498352(0x234)](_0x14f87e){const _0x4ac587=a0_0x498352;return _0x14f87e[_0x4ac587(0x267)](_0x2e8a31=>_0x2e8a31[_0x4ac587(0x245)]>0x0)['sort'](function(_0x39604e,_0x2f4215){const _0x498a12=_0x4ac587;return _0x39604e[_0x498a12(0x245)]-_0x2f4215[_0x498a12(0x245)];})[_0x4ac587(0x23f)](_0x3f3c6e=>_0x4ac587(0x1fe)+camelCase(_0x3f3c6e[_0x4ac587(0x235)])+'\x22,\x22desc\x22:'+_0x3f3c6e[_0x4ac587(0x238)]+'}');}async[a0_0x498352(0x1ff)](_0x27d204,_0x1cd776,_0x274bb4,_0x5df3a7,_0x3b5224,_0x1d8f12){const _0x368a7d=a0_0x498352;let _0x47145f=await _0x27d204[_0x368a7d(0x223)](menu_base_1[_0x368a7d(0x213)])[_0x368a7d(0x220)]({'where':{'domain':{'id':_0x1cd776['id']},'id':_0x5df3a7}}),_0x2bc7ed=(await _0x27d204['getRepository'](menu_base_1[_0x368a7d(0x213)])[_0x368a7d(0x1f1)]('select\x20coalesce(max(rank),0)\x20as\x20rank\x20from\x20menus\x20where\x20parent_id\x20=\x20\x27'+_0x5df3a7+_0x368a7d(0x200)+_0x5df3a7+'\x27'))[0x0][_0x368a7d(0x24b)]+0xa,_0x185fad=new menu_base_1[(_0x368a7d(0x213))]();_0x185fad[_0x368a7d(0x235)]=_0x3b5224,_0x185fad[_0x368a7d(0x23e)]=_0x368a7d(0x259),_0x185fad[_0x368a7d(0x254)]=_0x368a7d(0x253),_0x185fad[_0x368a7d(0x24b)]=_0x2bc7ed,_0x185fad[_0x368a7d(0x225)]=!0x1,_0x185fad[_0x368a7d(0x251)]=_0x3b5224,_0x185fad[_0x368a7d(0x224)]=_0x1d8f12,_0x185fad[_0x368a7d(0x262)]=_0x368a7d(0x21c),_0x185fad['parent']=_0x47145f,await _0x27d204['getRepository'](menu_base_1[_0x368a7d(0x213)])[_0x368a7d(0x217)](Object[_0x368a7d(0x247)](Object[_0x368a7d(0x247)]({},_0x185fad),{'domain':_0x1cd776,'creator':_0x274bb4,'updater':_0x274bb4}));}['enc'](_0x5c8e31){const _0x416ae0=a0_0x498352;let _0x162df6=JSON[_0x416ae0(0x21a)](_0x5c8e31)['split'](/(.{100})/)[_0x416ae0(0x267)](_0x172b0c=>_0x172b0c),_0x568ba0=['aes-256-ecb',_0x416ae0(0x240),_0x416ae0(0x22a),_0x416ae0(0x22c),'aes-256-cfb1',_0x416ae0(0x248),_0x416ae0(0x255),'aes256'],_0x104c5f=crypto_1['default'][_0x416ae0(0x244)](0x20)[_0x416ae0(0x206)](_0x416ae0(0x20d)),_0x598fce=Buffer['from'](_0x104c5f,_0x416ae0(0x20d)),_0x290d62=_0x104c5f[_0x416ae0(0x250)](0x0,0x10),_0x4bef6d=['',_0x290d62,_0x290d62,_0x290d62,_0x290d62,_0x290d62,_0x290d62,_0x290d62],_0x29d078=0x0,_0x427483=[];_0x427483[_0x416ae0(0x210)](_0x104c5f);for(var _0x166c62=0x0;_0x166c62<_0x162df6[_0x416ae0(0x25d)];_0x166c62++,_0x29d078++){_0x29d078==_0x568ba0[_0x416ae0(0x25d)]&&(_0x29d078=0x0);let _0x1821c5=crypto_1['default'][_0x416ae0(0x205)](_0x568ba0[_0x29d078],_0x598fce,_0x4bef6d[_0x29d078]),_0x186fda=_0x1821c5['update'](_0x162df6[_0x166c62],_0x416ae0(0x1fa),_0x416ae0(0x20d));_0x186fda+=_0x1821c5[_0x416ae0(0x1ef)](_0x416ae0(0x20d)),_0x427483[_0x416ae0(0x210)](_0x186fda);}return _0x427483[_0x416ae0(0x221)](_0x416ae0(0x21e));}};tslib_1[a0_0x498352(0x1f8)]([(0x0,type_graphql_1[a0_0x498352(0x25a)])(a0_0x498352(0x236)),(0x0,type_graphql_1[a0_0x498352(0x25c)])(_0x5987e5=>Boolean,{'description':a0_0x498352(0x25e)}),tslib_1[a0_0x498352(0x265)](0x0,(0x0,type_graphql_1['Arg'])('id')),tslib_1['__param'](0x1,(0x0,type_graphql_1['Arg'])('parent_menu_id')),tslib_1[a0_0x498352(0x265)](0x2,(0x0,type_graphql_1['Ctx'])()),tslib_1[a0_0x498352(0x228)]('design:type',Function),tslib_1[a0_0x498352(0x228)](a0_0x498352(0x1f9),[String,String,Object]),tslib_1['__metadata'](a0_0x498352(0x204),Promise)],OperatoToolCreateMenu[a0_0x498352(0x1f2)],a0_0x498352(0x214),null),OperatoToolCreateMenu=tslib_1[a0_0x498352(0x1f8)]([(0x0,type_graphql_1['Resolver'])()],OperatoToolCreateMenu),exports[a0_0x498352(0x25b)]=OperatoToolCreateMenu;const modelTemplate=a0_0x498352(0x24e);
1
+ 'use strict';const a0_0x563d30=a0_0x5bd2;(function(_0x367e5a,_0x573c74){const _0x1168a9=a0_0x5bd2,_0x109d42=_0x367e5a();while(!![]){try{const _0x496113=-parseInt(_0x1168a9(0x1d0))/0x1*(-parseInt(_0x1168a9(0x234))/0x2)+-parseInt(_0x1168a9(0x223))/0x3*(parseInt(_0x1168a9(0x1de))/0x4)+parseInt(_0x1168a9(0x1fa))/0x5+-parseInt(_0x1168a9(0x238))/0x6*(-parseInt(_0x1168a9(0x202))/0x7)+parseInt(_0x1168a9(0x1c9))/0x8*(parseInt(_0x1168a9(0x1eb))/0x9)+parseInt(_0x1168a9(0x1c4))/0xa*(-parseInt(_0x1168a9(0x1c8))/0xb)+-parseInt(_0x1168a9(0x20b))/0xc*(parseInt(_0x1168a9(0x1d3))/0xd);if(_0x496113===_0x573c74)break;else _0x109d42['push'](_0x109d42['shift']());}catch(_0x47a94f){_0x109d42['push'](_0x109d42['shift']());}}}(a0_0x3df7,0x6fdab));Object['defineProperty'](exports,a0_0x563d30(0x1f1),{'value':!0x0}),exports[a0_0x563d30(0x1c2)]=void 0x0;function a0_0x5bd2(_0x22191b,_0x122413){const _0x3df741=a0_0x3df7();return a0_0x5bd2=function(_0x5bd2ba,_0x4143c4){_0x5bd2ba=_0x5bd2ba-0x1bc;let _0xa9ec43=_0x3df741[_0x5bd2ba];return _0xa9ec43;},a0_0x5bd2(_0x22191b,_0x122413);}const tslib_1=require(a0_0x563d30(0x213)),type_graphql_1=require(a0_0x563d30(0x1ea)),resource_base_1=require(a0_0x563d30(0x22f)),menu_base_1=require('@things-factory/menu-base'),tool_permission_1=require(a0_0x563d30(0x1ee)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x563d30(0x1ca)),{plural:plural}=require(a0_0x563d30(0x209)),crypto_1=tslib_1['__importDefault'](require('crypto'));let OperatoToolCreateMenu=class{async[a0_0x563d30(0x219)](_0x2ef1b9,_0x5cb409,_0x5f5821){const _0x265f3a=a0_0x563d30,{domain:_0x31338d,user:_0x869557,tx:_0x3bbfca}=_0x5f5821['state'];await(0x0,tool_permission_1[_0x265f3a(0x1ff)])('',_0x5f5821);const _0x5b766d=await _0x3bbfca[_0x265f3a(0x215)](resource_base_1[_0x265f3a(0x231)])[_0x265f3a(0x207)]({'where':{'domain':{'id':_0x31338d['id']},'id':_0x2ef1b9}}),_0x25b315=await _0x3bbfca[_0x265f3a(0x215)](resource_base_1[_0x265f3a(0x228)])[_0x265f3a(0x229)]({'where':{'domain':{'id':_0x31338d['id']},'entity':{'id':_0x5b766d['id']}}});let {name:_0x59040e=''}=_0x5b766d||{},_0x27fb71=kebabCase(_0x59040e),_0x42e447=modelTemplate[_0x265f3a(0x1f2)](/{{pascalCase name}}/g,startCase(camelCase(_0x59040e))[_0x265f3a(0x1f2)](/ /g,''))[_0x265f3a(0x1f2)](/{{camelCase name}}/g,camelCase(_0x59040e))['replace'](/{{snakeCase name}}/g,snakeCase(_0x59040e))[_0x265f3a(0x1f2)](/{{pluralPascalCase name}}/g,startCase(camelCase(plural(_0x59040e)))[_0x265f3a(0x1f2)](/ /g,''))[_0x265f3a(0x1f2)](/{{pluralCamelCase name}}/g,camelCase(plural(_0x59040e)))[_0x265f3a(0x1f2)](/{{name}}/g,_0x59040e),_0x191292='';_0x265f3a(0x218)==_0x5b766d[_0x265f3a(0x1e0)]?_0x191292='\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22basic\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22label\x22:\x20\x22data_history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22icon\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22logic\x22:\x20\x22history_json\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20':'COPY'==_0x5b766d[_0x265f3a(0x1e0)]&&(_0x191292=_0x265f3a(0x211)),_0x42e447=_0x42e447[_0x265f3a(0x1f2)](/{{HistoryButton}}/g,_0x191292);let _0x4e828c=this[_0x265f3a(0x1d9)](_0x25b315);_0x42e447=_0x42e447[_0x265f3a(0x1f2)](/{{SortColumns}}/g,_0x4e828c[_0x265f3a(0x22b)](','));let _0x57773e=this[_0x265f3a(0x206)](_0x25b315);_0x42e447=_0x42e447[_0x265f3a(0x1f2)](/{{SearchColumns}}/g,_0x57773e[_0x265f3a(0x22b)](','));let _0x25db50=this[_0x265f3a(0x1bd)](_0x25b315);return _0x42e447=_0x42e447[_0x265f3a(0x1f2)](/{{GridColumns}}/g,_0x25db50['join'](',')),_0x42e447=this[_0x265f3a(0x212)](_0x42e447),await this[_0x265f3a(0x21d)](_0x3bbfca,_0x31338d,_0x869557,_0x5cb409,_0x27fb71,_0x42e447),!0x0;}['createGridColumns'](_0x1a9bd6){const _0xb1d150=a0_0x563d30;return _0x1a9bd6[_0xb1d150(0x20f)](_0x36d1cf=>'id'!=_0x36d1cf['name']&&_0x36d1cf[_0xb1d150(0x1d6)]>0x0)[_0xb1d150(0x1e2)](function(_0x23db08,_0x4a0b2b){const _0x2a98b1=_0xb1d150;return _0x23db08[_0x2a98b1(0x1d6)]-_0x4a0b2b['gridRank'];})['map'](_0x39b0d9=>{const _0x17bd6c=_0xb1d150;let {gridEditor:_0x1cb866=_0x17bd6c(0x1c7),name:_0x41e7c1,term:_0x198945,gridWidth:_0x13f8a9=0x0,gridAlign:_0x5bb46b=_0x17bd6c(0x1cd),nullable:_0x301da3=!0x1}=_0x39b0d9;if(null==_0x1cb866&&(_0x1cb866='string'),null==_0x5bb46b&&(_0x5bb46b=_0x17bd6c(0x1cd)),_0x17bd6c(0x1d4)==_0x41e7c1||_0x17bd6c(0x1d7)==_0x41e7c1)return _0x41e7c1=_0x17bd6c(0x1d4)==_0x41e7c1?'updater':_0x17bd6c(0x203),_0x17bd6c(0x21f)+_0x41e7c1+_0x17bd6c(0x1fb)+_0x41e7c1+_0x17bd6c(0x208);if(_0x17bd6c(0x1c3)==_0x41e7c1||_0x17bd6c(0x236)==_0x41e7c1)return'{\x22type\x22:\x20\x22datetime\x22,\x22name\x22:\x20\x22'+(_0x17bd6c(0x1c3)==_0x41e7c1?_0x17bd6c(0x217):'createdAt')+'\x22,\x22header\x22:\x20\x22'+_0x41e7c1+_0x17bd6c(0x1c1);let _0x3ffec2=_0x17bd6c(0x21e)!=_0x1cb866&&_0x17bd6c(0x1f8)!=_0x1cb866,_0x1e9388=_0x17bd6c(0x1f8)==_0x1cb866;0x1!=_0x1e9388&&0x0!=_0x3ffec2||(_0x1cb866=_0x17bd6c(0x1c7));let _0x56df85=_0x17bd6c(0x1c0)+_0x1cb866+_0x17bd6c(0x1e1)+camelCase(_0x41e7c1)+_0x17bd6c(0x1fb)+_0x198945+'\x22,\x22hidden\x22:'+_0x1e9388+_0x17bd6c(0x1f7)+_0x3ffec2+_0x17bd6c(0x1dc)+!_0x301da3+',\x22sortable\x22:true\x20,\x22align\x22:\x20\x22'+_0x5bb46b+_0x17bd6c(0x216)+_0x13f8a9+_0x17bd6c(0x1e5);return _0x17bd6c(0x1ec)==_0x39b0d9[_0x17bd6c(0x205)]&&(_0x56df85+=_0x17bd6c(0x221)+_0x39b0d9[_0x17bd6c(0x1e8)]+'\x22}'),_0x17bd6c(0x21c)==_0x39b0d9[_0x17bd6c(0x205)]&&(_0x56df85+=',\x22select_opt\x22:{\x22type\x22:\x22scenario\x22,\x22name\x22:\x22'+_0x39b0d9[_0x17bd6c(0x1e8)]+'\x22}'),_0x17bd6c(0x20a)==_0x39b0d9[_0x17bd6c(0x205)]&&(_0x56df85+=_0x17bd6c(0x1dd)+camelCase(plural(_0x39b0d9[_0x17bd6c(0x1e8)]))+_0x17bd6c(0x22c)),_0x56df85+='}',_0x56df85;});}[a0_0x563d30(0x206)](_0x2fdcbf){const _0x32c722=a0_0x563d30;return _0x2fdcbf[_0x32c722(0x20f)](_0x4f1df8=>_0x4f1df8['searchRank']>0x0)['sort'](function(_0x19949f,_0x1c444d){const _0x34b6a8=_0x32c722;return _0x19949f[_0x34b6a8(0x235)]-_0x1c444d[_0x34b6a8(0x235)];})['map'](_0x33fa7e=>{const _0xb705fa=_0x32c722;let _0x352572=_0x33fa7e[_0xb705fa(0x1d5)];return'filter'==_0x352572?'\x22'+camelCase(_0x33fa7e[_0xb705fa(0x1f5)])+'\x22':(_0x352572||(_0x352572='eq'),'{\x22name\x22:\x20\x22'+camelCase(_0x33fa7e[_0xb705fa(0x1f5)])+'\x22,\x22operator\x22:\x20\x22'+_0x352572+'\x22}');});}[a0_0x563d30(0x1d9)](_0x182afc){const _0x146d26=a0_0x563d30;return _0x182afc[_0x146d26(0x20f)](_0x4b6da6=>_0x4b6da6['sortRank']>0x0)[_0x146d26(0x1e2)](function(_0x180448,_0x195f18){const _0xe44bc1=_0x146d26;return _0x180448[_0xe44bc1(0x1df)]-_0x195f18[_0xe44bc1(0x1df)];})[_0x146d26(0x1cc)](_0x38f05f=>_0x146d26(0x225)+camelCase(_0x38f05f[_0x146d26(0x1f5)])+_0x146d26(0x20d)+_0x38f05f[_0x146d26(0x1cb)]+'}');}async[a0_0x563d30(0x21d)](_0x3384ac,_0x54cf81,_0x32e511,_0xbe6121,_0x37cfda,_0x90ea9c){const _0x3ceb97=a0_0x563d30;let _0x30ebfc=await _0x3384ac[_0x3ceb97(0x215)](menu_base_1[_0x3ceb97(0x214)])['findOne']({'where':{'domain':{'id':_0x54cf81['id']},'id':_0xbe6121}}),_0x5ea54b=(await _0x3384ac[_0x3ceb97(0x215)](menu_base_1[_0x3ceb97(0x214)])['query'](_0x3ceb97(0x227)+_0xbe6121+_0x3ceb97(0x1c5)+_0xbe6121+'\x27'))[0x0][_0x3ceb97(0x226)]+0xa,_0x2570f5=new menu_base_1[(_0x3ceb97(0x214))]();_0x2570f5[_0x3ceb97(0x1f5)]=_0x37cfda,_0x2570f5[_0x3ceb97(0x21b)]=_0x3ceb97(0x1e9),_0x2570f5[_0x3ceb97(0x1f6)]=_0x3ceb97(0x200),_0x2570f5[_0x3ceb97(0x226)]=_0x5ea54b,_0x2570f5[_0x3ceb97(0x1ef)]=!0x1,_0x2570f5[_0x3ceb97(0x220)]=_0x37cfda,_0x2570f5[_0x3ceb97(0x1e6)]=_0x90ea9c,_0x2570f5[_0x3ceb97(0x1e4)]=_0x3ceb97(0x224),_0x2570f5[_0x3ceb97(0x21a)]=_0x30ebfc,await _0x3384ac['getRepository'](menu_base_1[_0x3ceb97(0x214)])[_0x3ceb97(0x1f4)](Object[_0x3ceb97(0x201)](Object[_0x3ceb97(0x201)]({},_0x2570f5),{'domain':_0x54cf81,'creator':_0x32e511,'updater':_0x32e511}));}[a0_0x563d30(0x212)](_0x49afd1){const _0x24dbc2=a0_0x563d30;let _0x496cc2=JSON[_0x24dbc2(0x1e3)](_0x49afd1)[_0x24dbc2(0x1f3)](/(.{100})/)['filter'](_0x53f354=>_0x53f354),_0x45bbf8=['aes-256-ecb',_0x24dbc2(0x1d8),'aes-256-cfb',_0x24dbc2(0x1f9),_0x24dbc2(0x1da),_0x24dbc2(0x222),_0x24dbc2(0x204),'aes256'],_0x5ab204=crypto_1[_0x24dbc2(0x1fe)][_0x24dbc2(0x237)](0x20)[_0x24dbc2(0x1bf)](_0x24dbc2(0x1ce)),_0x2e1413=Buffer[_0x24dbc2(0x1e7)](_0x5ab204,_0x24dbc2(0x1ce)),_0x118885=_0x5ab204[_0x24dbc2(0x1cf)](0x0,0x10),_0x32c1d5=['',_0x118885,_0x118885,_0x118885,_0x118885,_0x118885,_0x118885,_0x118885],_0x5da001=0x0,_0x2be054=[];_0x2be054[_0x24dbc2(0x1c6)](_0x5ab204);for(var _0x124d4b=0x0;_0x124d4b<_0x496cc2[_0x24dbc2(0x233)];_0x124d4b++,_0x5da001++){_0x5da001==_0x45bbf8[_0x24dbc2(0x233)]&&(_0x5da001=0x0);let _0xf3465a=crypto_1[_0x24dbc2(0x1fe)][_0x24dbc2(0x22e)](_0x45bbf8[_0x5da001],_0x2e1413,_0x32c1d5[_0x5da001]),_0x17d748=_0xf3465a[_0x24dbc2(0x1fd)](_0x496cc2[_0x124d4b],_0x24dbc2(0x22d),'hex');_0x17d748+=_0xf3465a[_0x24dbc2(0x1bc)](_0x24dbc2(0x1ce)),_0x2be054[_0x24dbc2(0x1c6)](_0x17d748);}return _0x2be054[_0x24dbc2(0x22b)](_0x24dbc2(0x1be));}};tslib_1[a0_0x563d30(0x1d2)]([(0x0,type_graphql_1[a0_0x563d30(0x210)])('@transaction'),(0x0,type_graphql_1[a0_0x563d30(0x22a)])(_0x540eae=>Boolean,{'description':a0_0x563d30(0x20c)}),tslib_1['__param'](0x0,(0x0,type_graphql_1[a0_0x563d30(0x232)])('id')),tslib_1[a0_0x563d30(0x1fc)](0x1,(0x0,type_graphql_1[a0_0x563d30(0x232)])(a0_0x563d30(0x1ed))),tslib_1['__param'](0x2,(0x0,type_graphql_1[a0_0x563d30(0x20e)])()),tslib_1[a0_0x563d30(0x230)](a0_0x563d30(0x1db),Function),tslib_1[a0_0x563d30(0x230)]('design:paramtypes',[String,String,Object]),tslib_1[a0_0x563d30(0x230)]('design:returntype',Promise)],OperatoToolCreateMenu[a0_0x563d30(0x1d1)],a0_0x563d30(0x219),null),OperatoToolCreateMenu=tslib_1['__decorate']([(0x0,type_graphql_1['Resolver'])()],OperatoToolCreateMenu),exports['OperatoToolCreateMenu']=OperatoToolCreateMenu;const modelTemplate=a0_0x563d30(0x1f0);function a0_0x3df7(){const _0x58a6f8=['design:type',',\x22mandatory\x22:\x20',',\x22select_opt\x22:{\x22type\x22:\x20\x22entity\x22,\x22args\x22:\x20{\x22queryName\x22:\x20\x22','143932rIGSGz','sortRank','dataProp','\x22,\x22name\x22:\x20\x22','sort','stringify','resourceUrl','\x20,\x22exportable\x22:\x20true','template','from','refName','SCREEN','type-graphql','12357xUHGZb','code','parent_menu_id','./../tool-secret/tool-permission','hiddenFlag','\x0a{\x0a\x20\x20\x22menu\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x22title\x22:\x20\x22{{name}}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22\x22,\x0a\x20\x20\x20\x20\x20\x20\x22desc\x22:\x20\x22\x22\x0a\x20\x20},\x0a\x20\x20\x22gql\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x22query\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22list_func\x22:\x20\x22{{pluralCamelCase\x20name}}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22find_one_func\x22:\x22{{camelCase\x20name}}\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x22mutation\x22:{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22multiple\x22:{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22func\x22:\x22updateMultiple{{pascalCase\x20name}}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22{{pascalCase\x20name}}Patch\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22delete\x22:{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22func\x22:\x22delete{{pluralPascalCase\x20name}}\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20},\x0a\x20\x20\x22button\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22export\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22add\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22delete\x22\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x22save\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20],\x0a\x20\x20\x22grid_column\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22string\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22id\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22header\x22:\x20\x22id\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22hidden\x22:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22editable\x22:\x20false,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mandatory\x22:\x20false,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22sortable\x22:\x20false,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22align\x22:\x20\x22left\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22width\x22:\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22exportable\x22:\x20false\x0a\x20\x20\x20\x20\x20\x20},\x0a{{GridColumns}}\x0a\x20\x20],\x0a\x20\x20\x22grid\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22button\x22:[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{{HistoryButton}}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22option\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mobile_mode\x22:\x20\x22LIST\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22desk_mode\x22:\x20\x22GRID\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22use_row_checker\x22:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22pages\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2020,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2050,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20100,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20300\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22view_mode\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22GRID\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22LIST\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22CARD\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22sorters\x22:\x20[\x0a{{SortColumns}}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x22row\x22:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22multiple_select\x22:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22click\x22:\x20\x22select-row-toggle\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20},\x0a\x20\x20\x22search\x22:\x20[\x0a{{SearchColumns}}\x0a\x20\x20]\x0a}\x0a','__esModule','replace','split','save','name','category','\x20,\x22editable\x22:\x20','hidden','aes-256-cfb8','4112665xhHtDC','\x22,\x22header\x22:\x20\x22','__param','update','default','checkStudioTemplateIsOverLimit','meta-grist-page','assign','28WfViXm','creator','aes-256-ctr','refType','createSearchCols','findOne','\x22,\x22width\x22:\x20100,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22,\x22object_opt\x22:{\x22queryName\x22:\x22users\x22}}','pluralize','entity','271980krdpMS','Operato\x20Tool\x20Create\x20Menu','\x22,\x22desc\x22:','Ctx','filter','Directive','\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22basic\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22label\x22:\x20\x22data_history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22icon\x22:\x20\x22history\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x22logic\x22:\x20\x22history_copy\x22\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20','enc','tslib','Menu','getRepository','\x22,\x22width\x22:','updatedAt','JSON','toolCreateMenu','parent','menuType','scenario','createMenuData','readonly','{\x22type\x22:\x20\x22object\x22,\x22name\x22:\x20\x22','routing',',\x22select_opt\x22:{\x22type\x22:\x22code\x22,\x22name\x22:\x22','aes-256-ofb','51taDNgp','@things-factory/meta-ui/client/pages/meta-grist-page','{\x22name\x22:\x22','rank','select\x20coalesce(max(rank),0)\x20as\x20rank\x20from\x20menus\x20where\x20parent_id\x20=\x20\x27','EntityColumn','find','Mutation','join','\x22,\x22codeField\x22:\x20\x22id\x22,\x22dispField\x22:\x20\x22name\x22}}','utf8','createCipheriv','@things-factory/resource-base','__metadata','Entity','Arg','length','14ZVpJpM','searchRank','created_at','randomBytes','520692NgdnJb','final','createGridColumns','h1z0q9i9x7q6','toString','{\x22type\x22:\x20\x22','\x22,\x22width\x22:\x20160,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22}','OperatoToolCreateMenu','updated_at','50Duzxnp','\x27\x20or\x20id\x20=\x20\x27','push','string','1623369rAamvJ','4504tiihhk','lodash','reverseSort','map','left','hex','substring','19583KEuZEi','prototype','__decorate','156eaUEVE','updater_id','searchOper','gridRank','creator_id','aes-256-cbc','createSortCols','aes-256-cfb1'];a0_0x3df7=function(){return _0x58a6f8;};return a0_0x3df7();}
@@ -1 +1 @@
1
- 'use strict';function a0_0x416f(){const _0x295181=['56BmCuAw','1736631FYcamK','state','@Field(','type\x20=>','indexOf','12215oBaFud','Operato\x20Tool\x20Create\x20Service','OperatoToolCreateService','text','30qOXrrF','Entities,','__decorate','updated_at','6352ovXrzb','4574840zGTgcq','Float','timestamp\x20without\x20time\x20zone','\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryList\x20}\x20from\x20\x27./{{name}}-history-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}}History)\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryQuery\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}History,\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}History(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}History>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}History).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}HistoryList,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}Histories(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}HistoryList>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}}History)\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}History.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.creatorId})\x0a\x20\x20}\x0a}\x0a','Resolvers\x20}\x20from\x20\x27./','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a\x20\x20@Column(\x27simple-json\x27,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20@Field(type\x20=>\x20ScalarObject,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20historyJson?:\x20any\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','writeFileSync','pluralize','\x27,\x20type:\x20\x27','import\x20{\x20entities\x20as\x20','/*\x20ENTITIES\x20*/\x0a\x09...','length','snakeCaseName','getProjectRootPath','writeFile','datetime','colSize','uniqRank','getColTxtType','COPY','findOne','push','/index.ts','existsSync','filter','@Index(\x27ix_{{snakeCase\x20name}}_0\x27,\x20({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20[{{indexColumns}}],\x20{\x20unique:\x20true\x20})','Resolvers,','creator_id','PWD','EntitySubscribers,','sort','tableName','-mutation.ts','-history\x27','getRepository','env','utf8','pluralCamelCaseName','camelCaseName','colType','/packages','createNoHistoryServiceFiels','50285KfSqhR','replace','bigint','join','index.ts','createHistoryEntityText','lodash','createServicePath','/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./','includes','@Column({name:\x27','existsPath','JSON','\x0a\x20\x20','\x20{\x20nullable:\x20','EntityColumn','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryList\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}History])\x0a\x20\x20items:\x20{{pascalCase\x20name}}History[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','/*\x20SUBSCRIBERS\x20*/\x0a\x09\x09...','string','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}}]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}Mutation]\x0a','prototype','created_at','\x0aimport\x20{\x20Resolver,\x20Mutation,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20In\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20New{{pascalCase\x20name}},\x20{{pascalCase\x20name}}Patch\x20}\x20from\x20\x27./{{name}}-type\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Mutation\x20{\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20create\x20new\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20create{{pascalCase\x20name}}(@Arg(\x27{{camelCase\x20name}}\x27)\x20{{camelCase\x20name}}:\x20New{{pascalCase\x20name}},\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20return\x20await\x20tx.getRepository({{pascalCase\x20name}}).save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20modify\x20{{pascalCase\x20name}}\x20information\x27\x20})\x0a\x20\x20async\x20update{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27id\x27)\x20id:\x20string,\x0a\x20\x20\x20\x20@Arg(\x27patch\x27)\x20patch:\x20{{pascalCase\x20name}}Patch,\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20repository\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20repository.findOne(\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20)\x0a\x0a\x20\x20\x20\x20return\x20await\x20repository.save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20...patch,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20[{{pascalCase\x20name}}],\x20{\x20description:\x20\x22To\x20modify\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20information\x22\x20})\x0a\x20\x20async\x20updateMultiple{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27patches\x27,\x20type\x20=>\x20[{{pascalCase\x20name}}Patch])\x20patches:\x20{{pascalCase\x20name}}Patch[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}[]>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20results\x20=\x20[]\x0a\x20\x20\x20\x20const\x20_createRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27+\x27)\x0a\x20\x20\x20\x20const\x20_updateRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27M\x27)\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}Repo\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x0a\x20\x20\x20\x20if\x20(_createRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_createRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newRecord\x20=\x20_createRecords[i]\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...newRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27+\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20if\x20(_updateRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_updateRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20updRecord\x20=\x20_updateRecords[i]\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20{{camelCase\x20name}}Repo.findOne({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id:updRecord.id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...updRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27M\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20return\x20results\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20delete{{pascalCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove({\x20domain,\x20id,\x20updater:user\x20})\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20multiple\x20{{camelCase\x20name}}s\x27\x20})\x0a\x20\x20async\x20delete{{pluralPascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27ids\x27,\x20type\x20=>\x20[String])\x20ids:\x20string[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20delEntitis\x20=\x20ids.map(id=>{\x0a\x20\x20\x20\x20\x20\x20return\x20{domain,id,updater:user}\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove(delEntitis)\x0a\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a}\x0a','11kaJWSq','Date','float','long','Arg',',length:','/service','columnToEntityColumn','\x27,\x20nullable:\x20','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','/server/service/','\x0a\x20\x20@VersionColumn({\x20default:\x201\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201','Query','{{camelCase\x20name}}.','integer','-type.ts','@things-factory/shell','dataProp','rank','-history-query.ts','pluralPascalCaseName','createHistoryServiceFiles','...','map','nullable','getFieldType','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@InputType()\x0aexport\x20class\x20New{{pascalCase\x20name}}\x20{\x0a{{newTypeColumns}}\x0a}\x0a\x0a@InputType()\x0aexport\x20class\x20{{pascalCase\x20name}}Patch\x20{\x0a\x20\x20@Field(type\x20=>\x20ID,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20id?:\x20string\x0a\x0a{{patchTypeColumns}}\x0a\x0a\x20\x20@Field()\x0a\x20\x20cuFlag:\x20string\x0a}\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}List\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}])\x0a\x20\x20items:\x20{{pascalCase\x20name}}[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','/event-subscriber.ts','__param','replaceNamesMap','readFileSync','/server','.ts','toolCreateService','15538oOkMpe','number','/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...','createDir','updater_id','pascalCaseName','-history.ts','updater','domain_id','18423240IeACUq','createEntityText','Entity','\x20})','__esModule','@things-factory/resource-base','Resolvers,\x20subscribers\x20as\x20','createTypeText','date','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20Domain\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0a@Entity(\x27{{tableName}}\x27)\x0a{{indexAnn}}\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}\x20{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','Int','double\x20precision','createServiceFiles','Ctx','/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20','packages','Entities,\x20resolvers\x20as\x20','design:type','export\x20*\x20from\x20\x27./','EntitySubscribers\x20}\x20from\x20\x27./','683324asFpNN','name','double','-query.ts','492nLKVTH'];a0_0x416f=function(){return _0x295181;};return a0_0x416f();}const a0_0x465319=a0_0x4fa9;(function(_0x1bc378,_0x41d763){const _0xe33630=a0_0x4fa9,_0x4b026d=_0x1bc378();while(!![]){try{const _0x851ad8=parseInt(_0xe33630(0x255))/0x1*(-parseInt(_0xe33630(0x233))/0x2)+parseInt(_0xe33630(0x25f))/0x3*(-parseInt(_0xe33630(0x250))/0x4)+parseInt(_0xe33630(0x1fa))/0x5*(parseInt(_0xe33630(0x254))/0x6)+-parseInt(_0xe33630(0x25b))/0x7*(-parseInt(_0xe33630(0x263))/0x8)+-parseInt(_0xe33630(0x256))/0x9+-parseInt(_0xe33630(0x264))/0xa*(parseInt(_0xe33630(0x211))/0xb)+parseInt(_0xe33630(0x23c))/0xc;if(_0x851ad8===_0x41d763)break;else _0x4b026d['push'](_0x4b026d['shift']());}catch(_0x5d6024){_0x4b026d['push'](_0x4b026d['shift']());}}}(a0_0x416f,0xe8569));function a0_0x4fa9(_0x21cb35,_0x18dee4){const _0x416fb4=a0_0x416f();return a0_0x4fa9=function(_0x4fa950,_0x213da1){_0x4fa950=_0x4fa950-0x1ee;let _0x2590ce=_0x416fb4[_0x4fa950];return _0x2590ce;},a0_0x4fa9(_0x21cb35,_0x18dee4);}Object['defineProperty'](exports,a0_0x465319(0x240),{'value':!0x0}),exports[a0_0x465319(0x25d)]=void 0x0;const tslib_1=require('tslib'),type_graphql_1=require('type-graphql'),shell_1=require(a0_0x465319(0x221)),resource_base_1=require(a0_0x465319(0x241)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x465319(0x200)),{plural:plural}=require(a0_0x465319(0x26b)),fs=require('fs');let OperatoToolCreateService=class{async[a0_0x465319(0x232)](_0x4034e7,_0xacc9cf){const _0x41a4a4=a0_0x465319,{domain:_0x1f0600}=_0xacc9cf[_0x41a4a4(0x257)],_0x7051db=await(0x0,shell_1[_0x41a4a4(0x1f2)])(resource_base_1[_0x41a4a4(0x23e)])[_0x41a4a4(0x278)]({'where':{'id':_0x4034e7}}),_0x30e701=await(0x0,shell_1[_0x41a4a4(0x1f2)])(resource_base_1[_0x41a4a4(0x209)])['find']({'where':{'domain':{'id':_0x1f0600['id']},'entity':{'id':_0x7051db['id']}}});let {name:_0x38af43='',bundle:_0x405f59=''}=_0x7051db||{},_0x19ffdc=this[_0x41a4a4(0x271)](),_0x32f6ad=kebabCase(_0x38af43);return await this[_0x41a4a4(0x201)](_0x19ffdc,_0x405f59,_0x32f6ad),await this[_0x41a4a4(0x248)](_0x19ffdc,_0x405f59,_0x38af43,_0x32f6ad,_0x7051db,_0x30e701),!0x0;}async[a0_0x465319(0x248)](_0x2c9453,_0x549e9b,_0xc1c8b0,_0x130322,_0x52b57f,_0x282c69){const _0x2273cf=a0_0x465319;let _0x548114={'name':_0x130322,'tableName':_0x52b57f[_0x2273cf(0x1ef)],'pascalCaseName':startCase(camelCase(_0xc1c8b0))[_0x2273cf(0x1fb)](/ /g,''),'camelCaseName':camelCase(_0xc1c8b0),'snakeCaseName':snakeCase(_0xc1c8b0),'pluralPascalCaseName':startCase(camelCase(plural(_0xc1c8b0)))[_0x2273cf(0x1fb)](/ /g,''),'pluralCamelCaseName':camelCase(plural(_0xc1c8b0))},_0x5f4ddc=_0x2c9453+'/packages/'+_0x549e9b+_0x2273cf(0x21b);[_0x2273cf(0x206),_0x2273cf(0x277)][_0x2273cf(0x203)](_0x52b57f[_0x2273cf(0x222)])?await this['createHistoryServiceFiles'](_0x5f4ddc,_0x130322,_0x52b57f,_0x282c69,_0x548114):await this[_0x2273cf(0x1f9)](_0x5f4ddc,_0x130322,_0x52b57f,_0x282c69,_0x548114);}async[a0_0x465319(0x226)](_0x3399ac,_0x98aa20,_0x43fc3e,_0x21643a,_0x239682){const _0x180b19=a0_0x465319;await this[_0x180b19(0x272)](_0x3399ac+(_0x98aa20+_0x180b19(0x27a)),serviceHistoryIndex,_0x239682);let _0x37a9ca=this[_0x180b19(0x23d)](_0x43fc3e,_0x21643a);await this[_0x180b19(0x272)](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+'.ts'),_0x37a9ca,_0x239682),await this['writeFile'](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+_0x180b19(0x253)),serviceQuery,_0x239682),await this['writeFile'](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+_0x180b19(0x1f0)),serviceMutation,_0x239682);let _0x583c88=this['createTypeText'](_0x21643a);await this['writeFile'](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+_0x180b19(0x220)),_0x583c88,_0x239682);let _0x425d71=this[_0x180b19(0x1ff)](_0x43fc3e,_0x21643a);await this[_0x180b19(0x272)](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+_0x180b19(0x239)),_0x425d71,_0x239682);let _0x42dddf='';_0x180b19(0x206)==_0x43fc3e[_0x180b19(0x222)]?(_0x42dddf='\x0a\x20\x20public\x20createHistoryEntity(manager,\x20entity)\x20{\x0a\x20\x20\x20\x20let\x20history\x20=\x20manager.create(this.historyEntity,\x20entity);\x0a\x20\x20\x20\x20history.historyJson\x20=\x20JSON.stringify(entity);\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20',await this[_0x180b19(0x272)](_0x3399ac+(_0x98aa20+_0x180b19(0x22c)),serviceEntitySubscriber,_0x239682)):_0x42dddf='';let _0x52e89d=serviceEntitySubscriber[_0x180b19(0x1fb)](/{{entityToJson}}/g,_0x42dddf);await this['writeFile'](_0x3399ac+(_0x98aa20+_0x180b19(0x22c)),_0x52e89d,_0x239682),await this[_0x180b19(0x272)](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+_0x180b19(0x224)),serviceHistoryQuery,_0x239682),await this[_0x180b19(0x272)](_0x3399ac+(_0x98aa20+'/'+_0x98aa20+'-history-type.ts'),sereviceHistoryType,_0x239682);let _0x4443cd=_0x3399ac+_0x180b19(0x1fe);0x0==await this[_0x180b19(0x205)](_0x4443cd)&&await this[_0x180b19(0x272)](_0x4443cd,allIndex,_0x239682);let _0x217c59=await fs[_0x180b19(0x22f)](_0x4443cd,_0x180b19(0x1f4));_0x217c59[_0x180b19(0x25a)](_0x180b19(0x24e)+_0x239682[_0x180b19(0x251)]+'/'+_0x239682[_0x180b19(0x251)]+_0x180b19(0x1f1))<0x0&&(_0x217c59=_0x217c59[_0x180b19(0x1fb)](/\/\* EXPORT ENTITY TYPES \*\//,_0x180b19(0x202)+_0x239682['name']+'/'+_0x239682['name']+_0x180b19(0x1f1))),_0x217c59[_0x180b19(0x25a)](_0x180b19(0x24e)+_0x239682[_0x180b19(0x251)]+'/'+_0x239682[_0x180b19(0x251)]+'\x27')<0x0&&(_0x217c59=_0x217c59[_0x180b19(0x1fb)](/\/\* EXPORT ENTITY TYPES \*\//,_0x180b19(0x202)+_0x239682[_0x180b19(0x251)]+'/'+_0x239682[_0x180b19(0x251)]+'\x27')),_0x217c59[_0x180b19(0x25a)]('import\x20{\x20entities\x20as\x20'+_0x239682[_0x180b19(0x238)]+_0x180b19(0x24c)+_0x239682['pascalCaseName']+_0x180b19(0x242)+_0x239682[_0x180b19(0x238)]+_0x180b19(0x24f)+_0x239682['name']+'\x27')<0x0&&(_0x217c59=_0x217c59['replace'](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,'/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20'+_0x239682[_0x180b19(0x238)]+'Entities,\x20resolvers\x20as\x20'+_0x239682['pascalCaseName']+_0x180b19(0x242)+_0x239682[_0x180b19(0x238)]+_0x180b19(0x24f)+_0x239682[_0x180b19(0x251)]+'\x27')),_0x217c59['indexOf'](_0x180b19(0x227)+_0x239682[_0x180b19(0x238)]+'Entities,')<0x0&&(_0x217c59=_0x217c59[_0x180b19(0x1fb)](/\/\* ENTITIES \*\//,'/*\x20ENTITIES\x20*/\x0a\x09...'+_0x239682[_0x180b19(0x238)]+_0x180b19(0x260))),_0x217c59[_0x180b19(0x25a)](_0x180b19(0x227)+_0x239682[_0x180b19(0x238)]+_0x180b19(0x27e))<0x0&&(_0x217c59=_0x217c59[_0x180b19(0x1fb)](/\/\* RESOLVER CLASSES \*\//,_0x180b19(0x235)+_0x239682[_0x180b19(0x238)]+_0x180b19(0x27e))),_0x217c59[_0x180b19(0x25a)](_0x180b19(0x227)+_0x239682[_0x180b19(0x238)]+_0x180b19(0x281))<0x0&&(_0x217c59=_0x217c59[_0x180b19(0x1fb)](/\/\* SUBSCRIBERS \*\//,_0x180b19(0x20b)+_0x239682[_0x180b19(0x238)]+_0x180b19(0x281))),await this[_0x180b19(0x272)](_0x4443cd,_0x217c59,_0x239682);}async[a0_0x465319(0x1f9)](_0x4a0210,_0x263487,_0x315bd1,_0x352696,_0x218153){const _0x3f2f5a=a0_0x465319;await this[_0x3f2f5a(0x272)](_0x4a0210+(_0x263487+'/index.ts'),serviceIndex,_0x218153),await this['writeFile'](_0x4a0210+(_0x263487+'/'+_0x263487+_0x3f2f5a(0x253)),serviceQuery,_0x218153),await this[_0x3f2f5a(0x272)](_0x4a0210+(_0x263487+'/'+_0x263487+_0x3f2f5a(0x1f0)),serviceMutation,_0x218153);let _0x4ce178=this['createEntityText'](_0x315bd1,_0x352696);await this[_0x3f2f5a(0x272)](_0x4a0210+(_0x263487+'/'+_0x263487+_0x3f2f5a(0x231)),_0x4ce178,_0x218153);let _0xdd379c=this[_0x3f2f5a(0x243)](_0x352696);await this[_0x3f2f5a(0x272)](_0x4a0210+(_0x263487+'/'+_0x263487+_0x3f2f5a(0x220)),_0xdd379c,_0x218153);let _0x205f1d=_0x4a0210+'index.ts';0x0==await this[_0x3f2f5a(0x205)](_0x205f1d)&&await this[_0x3f2f5a(0x272)](_0x205f1d,allIndex,_0x218153);let _0x191d10=await fs['readFileSync'](_0x205f1d,_0x3f2f5a(0x1f4));_0x191d10[_0x3f2f5a(0x25a)](_0x3f2f5a(0x24e)+_0x218153['name']+'/'+_0x218153[_0x3f2f5a(0x251)]+'\x27')<0x0&&(_0x191d10=_0x191d10[_0x3f2f5a(0x1fb)](/\/\* EXPORT ENTITY TYPES \*\//,_0x3f2f5a(0x202)+_0x218153['name']+'/'+_0x218153['name']+'\x27')),_0x191d10[_0x3f2f5a(0x25a)](_0x3f2f5a(0x26d)+_0x218153[_0x3f2f5a(0x238)]+_0x3f2f5a(0x24c)+_0x218153[_0x3f2f5a(0x238)]+_0x3f2f5a(0x268)+_0x218153[_0x3f2f5a(0x251)]+'\x27')<0x0&&(_0x191d10=_0x191d10[_0x3f2f5a(0x1fb)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x3f2f5a(0x24a)+_0x218153[_0x3f2f5a(0x238)]+_0x3f2f5a(0x24c)+_0x218153[_0x3f2f5a(0x238)]+_0x3f2f5a(0x268)+_0x218153[_0x3f2f5a(0x251)]+'\x27')),_0x191d10['indexOf'](_0x3f2f5a(0x227)+_0x218153[_0x3f2f5a(0x238)]+_0x3f2f5a(0x260))<0x0&&(_0x191d10=_0x191d10[_0x3f2f5a(0x1fb)](/\/\* ENTITIES \*\//,_0x3f2f5a(0x26e)+_0x218153[_0x3f2f5a(0x238)]+'Entities,')),_0x191d10[_0x3f2f5a(0x25a)]('...'+_0x218153[_0x3f2f5a(0x238)]+'Resolvers,')<0x0&&(_0x191d10=_0x191d10['replace'](/\/\* RESOLVER CLASSES \*\//,_0x3f2f5a(0x235)+_0x218153[_0x3f2f5a(0x238)]+_0x3f2f5a(0x27e))),await this[_0x3f2f5a(0x272)](_0x205f1d,_0x191d10,_0x218153);}[a0_0x465319(0x243)](_0x381bf7){const _0xc866f1=a0_0x465319;let _0x535a03=sereviceType,_0x6a6321=_0x381bf7[_0xc866f1(0x228)](_0x5c71f8=>{const _0x18f889=_0xc866f1;if('id'==_0x5c71f8[_0x18f889(0x251)])return'';if(_0x18f889(0x23b)==_0x5c71f8[_0x18f889(0x251)])return'';if(_0x18f889(0x20f)==_0x5c71f8['name'])return'';if(_0x18f889(0x262)==_0x5c71f8[_0x18f889(0x251)])return'';if(_0x18f889(0x27f)==_0x5c71f8['name'])return'';if(_0x18f889(0x237)==_0x5c71f8['name'])return'';let _0x574bcf=this[_0x18f889(0x22a)](_0x5c71f8),_0x22d919=this[_0x18f889(0x276)](_0x5c71f8),_0xa609a6=camelCase(_0x5c71f8[_0x18f889(0x251)]);return'\x20\x20'+(_0x18f889(0x258)+(0x0==_0x574bcf[_0x18f889(0x26f)]?'':_0x18f889(0x259)+_0x574bcf+',')+_0x18f889(0x208)+_0x5c71f8['nullable']+_0x18f889(0x23f))+_0x18f889(0x207)+(''+_0xa609a6+(_0x5c71f8[_0x18f889(0x229)]?'?':'')+':\x20'+_0x22d919)+'\x0a';});_0x535a03=_0x535a03[_0xc866f1(0x1fb)](/{{newTypeColumns}}/g,_0x6a6321[_0xc866f1(0x1fd)]('\x0a'));let _0x230ad6=_0x381bf7[_0xc866f1(0x228)](_0x4948ee=>{const _0x125a15=_0xc866f1;if('id'==_0x4948ee[_0x125a15(0x251)])return'';if(_0x125a15(0x23b)==_0x4948ee[_0x125a15(0x251)])return'';if(_0x125a15(0x20f)==_0x4948ee[_0x125a15(0x251)])return'';if(_0x125a15(0x262)==_0x4948ee[_0x125a15(0x251)])return'';if(_0x125a15(0x27f)==_0x4948ee[_0x125a15(0x251)])return'';if(_0x125a15(0x237)==_0x4948ee[_0x125a15(0x251)])return'';let _0xd0085=this['getFieldType'](_0x4948ee),_0x469a30=this[_0x125a15(0x276)](_0x4948ee);_0x4948ee[_0x125a15(0x229)]=!0x0;let _0x393de8=camelCase(_0x4948ee[_0x125a15(0x251)]);return'\x20\x20'+('@Field('+(0x0==_0xd0085[_0x125a15(0x26f)]?'':_0x125a15(0x259)+_0xd0085+',')+_0x125a15(0x208)+_0x4948ee['nullable']+'\x20})')+'\x0a\x20\x20'+(''+_0x393de8+(_0x4948ee[_0x125a15(0x229)]?'?':'')+':\x20'+_0x469a30)+'\x0a';});return _0x535a03=_0x535a03[_0xc866f1(0x1fb)](/{{patchTypeColumns}}/g,_0x230ad6[_0xc866f1(0x1fd)]('\x0a')),_0x535a03;}[a0_0x465319(0x23d)](_0x1b13ad,_0x40840c){const _0x52437e=a0_0x465319;let _0x305707=serviceEntity,_0xfcbfbf=_0x40840c[_0x52437e(0x1ee)](function(_0xbae6cb,_0x3f4880){const _0x25d092=_0x52437e;return _0xbae6cb[_0x25d092(0x223)]-_0x3f4880[_0x25d092(0x223)];})[_0x52437e(0x228)](_0x13faad=>this['columnToEntityColumn'](_0x13faad));['COPY','JSON'][_0x52437e(0x203)](_0x1b13ad[_0x52437e(0x222)])&&_0xfcbfbf['push'](_0x52437e(0x21c)),_0x305707=_0x305707['replace'](/{{entityColumns}}/g,_0xfcbfbf[_0x52437e(0x1fd)]('\x0a'));let _0x2f3b9e='',_0x4b9f0a=_0x40840c[_0x52437e(0x27c)](_0x33c974=>_0x33c974['uniqRank']&&_0x33c974[_0x52437e(0x275)]>0x0)[_0x52437e(0x1ee)](function(_0xd96d3f,_0x381061){const _0x373a6c=_0x52437e;return _0xd96d3f['uniqRank']-_0x381061[_0x373a6c(0x275)];});if(_0x4b9f0a[_0x52437e(0x26f)]>0x0){_0x2f3b9e=_0x52437e(0x27d);let _0x53e54b=_0x4b9f0a['map'](_0x19891a=>{const _0x137190=_0x52437e;let _0x86e3f1=_0x19891a['name'];return'domain_id'==_0x19891a[_0x137190(0x251)]&&(_0x86e3f1='domain'),_0x137190(0x27f)==_0x19891a[_0x137190(0x251)]&&(_0x86e3f1='creator'),_0x137190(0x237)==_0x19891a[_0x137190(0x251)]&&(_0x86e3f1=_0x137190(0x23a)),_0x137190(0x21e)+camelCase(_0x86e3f1);});_0x2f3b9e=_0x2f3b9e[_0x52437e(0x1fb)](/{{indexColumns}}/g,_0x53e54b['join'](','));}return _0x305707=_0x305707[_0x52437e(0x1fb)](/{{indexAnn}}/g,_0x2f3b9e),_0x305707;}['createHistoryEntityText'](_0x1da25e,_0x5e4aba){const _0x5e25da=a0_0x465319;let _0x135f81=_0x5e25da(0x206)==_0x1da25e[_0x5e25da(0x222)]?serviceEntityHistJson:serviceEntityHistCopy,_0x45b576=_0x5e4aba[_0x5e25da(0x1ee)](function(_0x3eb97d,_0x1f6d4c){const _0x5edc70=_0x5e25da;return _0x3eb97d[_0x5edc70(0x223)]-_0x1f6d4c['rank'];})['map'](_0x5a24a2=>this[_0x5e25da(0x218)](_0x5a24a2));return _0x135f81=_0x135f81[_0x5e25da(0x1fb)](/{{entityColumns}}/g,_0x45b576[_0x5e25da(0x1fd)]('\x0a')),_0x135f81;}[a0_0x465319(0x218)](_0x144566){const _0x4a163b=a0_0x465319;if('id'==_0x144566['name'])return'';if(_0x4a163b(0x23b)==_0x144566['name'])return'';if('created_at'==_0x144566[_0x4a163b(0x251)])return'';if(_0x4a163b(0x262)==_0x144566[_0x4a163b(0x251)])return'';if(_0x4a163b(0x27f)==_0x144566['name'])return'';if(_0x4a163b(0x237)==_0x144566[_0x4a163b(0x251)])return'';let _0x2930b9=_0x144566['colType'];'double'==_0x144566[_0x4a163b(0x1f7)]&&(_0x2930b9=_0x4a163b(0x247)),_0x4a163b(0x214)==_0x144566[_0x4a163b(0x1f7)]&&(_0x2930b9=_0x4a163b(0x1fc)),_0x4a163b(0x20c)==_0x144566[_0x4a163b(0x1f7)]&&(_0x2930b9='character\x20varying'),_0x4a163b(0x273)==_0x144566[_0x4a163b(0x1f7)]&&(_0x2930b9=_0x4a163b(0x266));let _0x16d82a='';_0x4a163b(0x20c)==_0x144566[_0x4a163b(0x1f7)]&&(_0x16d82a=_0x144566[_0x4a163b(0x274)]);let _0x33d65e=this[_0x4a163b(0x22a)](_0x144566),_0x902847=this[_0x4a163b(0x276)](_0x144566),_0x2a5694=camelCase(_0x144566[_0x4a163b(0x251)]);return'\x20\x20'+(_0x4a163b(0x204)+_0x144566[_0x4a163b(0x251)]+_0x4a163b(0x26c)+_0x2930b9+_0x4a163b(0x219)+_0x144566[_0x4a163b(0x229)]+'\x20'+(0x0==_0x16d82a[_0x4a163b(0x26f)]?'':_0x4a163b(0x216)+_0x16d82a)+_0x4a163b(0x23f))+'\x0a\x20\x20'+('@Field('+(0x0==_0x33d65e[_0x4a163b(0x26f)]?'':_0x4a163b(0x259)+_0x33d65e+',')+'\x20{\x20nullable:\x20'+_0x144566[_0x4a163b(0x229)]+_0x4a163b(0x23f))+_0x4a163b(0x207)+(''+_0x2a5694+(_0x144566['nullable']?'?':'')+':\x20'+_0x902847)+'\x0a';}['getFieldType'](_0x34b501){const _0x53a66e=a0_0x465319;let _0x3d52c9='';return _0x53a66e(0x252)==_0x34b501[_0x53a66e(0x1f7)]&&(_0x3d52c9='Float'),'float'==_0x34b501['colType']&&(_0x3d52c9=_0x53a66e(0x265)),_0x53a66e(0x214)==_0x34b501[_0x53a66e(0x1f7)]&&(_0x3d52c9=_0x53a66e(0x246)),'integer'==_0x34b501[_0x53a66e(0x1f7)]&&(_0x3d52c9=_0x53a66e(0x246)),_0x3d52c9;}[a0_0x465319(0x276)](_0x402ea7){const _0x19e5d5=a0_0x465319;let _0x4d3970=_0x402ea7[_0x19e5d5(0x1f7)];return'decimal'==_0x402ea7[_0x19e5d5(0x1f7)]&&(_0x4d3970=_0x19e5d5(0x234)),_0x19e5d5(0x252)==_0x402ea7['colType']&&(_0x4d3970=_0x19e5d5(0x234)),_0x19e5d5(0x213)==_0x402ea7['colType']&&(_0x4d3970=_0x19e5d5(0x234)),_0x19e5d5(0x21f)==_0x402ea7['colType']&&(_0x4d3970=_0x19e5d5(0x234)),_0x19e5d5(0x214)==_0x402ea7[_0x19e5d5(0x1f7)]&&(_0x4d3970=_0x19e5d5(0x234)),_0x19e5d5(0x273)==_0x402ea7['colType']&&(_0x4d3970=_0x19e5d5(0x212)),_0x19e5d5(0x244)==_0x402ea7[_0x19e5d5(0x1f7)]&&(_0x4d3970=_0x19e5d5(0x212)),_0x19e5d5(0x25e)==_0x402ea7[_0x19e5d5(0x1f7)]&&(_0x4d3970=_0x19e5d5(0x20c)),_0x4d3970;}async[a0_0x465319(0x272)](_0x89b884,_0x60de4c,_0xe5fb99){const _0x1b322f=a0_0x465319;await fs[_0x1b322f(0x26a)](_0x89b884,this[_0x1b322f(0x22e)](_0x60de4c,_0xe5fb99),_0x1b322f(0x1f4));}[a0_0x465319(0x22e)](_0x2d8953,_0x5cd2bc){const _0x28abc1=a0_0x465319;return _0x2d8953[_0x28abc1(0x1fb)](/{{pascalCase name}}/g,_0x5cd2bc[_0x28abc1(0x238)])[_0x28abc1(0x1fb)](/{{camelCase name}}/g,_0x5cd2bc[_0x28abc1(0x1f6)])['replace'](/{{snakeCase name}}/g,_0x5cd2bc[_0x28abc1(0x270)])[_0x28abc1(0x1fb)](/{{pluralPascalCase name}}/g,_0x5cd2bc[_0x28abc1(0x225)])[_0x28abc1(0x1fb)](/{{pluralCamelCase name}}/g,_0x5cd2bc[_0x28abc1(0x1f5)])['replace'](/{{tableName}}/g,_0x5cd2bc[_0x28abc1(0x1ef)])[_0x28abc1(0x1fb)](/{{name}}/g,_0x5cd2bc[_0x28abc1(0x251)]);}async['createServicePath'](_0x1dc147,_0x35d9e2,_0x4e2969){const _0x55f2e1=a0_0x465319;let _0x1946fe=_0x1dc147+_0x55f2e1(0x1f8);await this['createDir'](_0x1946fe),_0x1946fe=_0x1946fe+'/'+_0x35d9e2,await this[_0x55f2e1(0x236)](_0x1946fe),_0x1946fe+=_0x55f2e1(0x230),await this[_0x55f2e1(0x236)](_0x1946fe),_0x1946fe+=_0x55f2e1(0x217),await this[_0x55f2e1(0x236)](_0x1946fe),_0x1946fe=_0x1946fe+'/'+_0x4e2969,await this[_0x55f2e1(0x236)](_0x1946fe);}[a0_0x465319(0x271)](){const _0xa7a4da=a0_0x465319;let _0x59ae9a=process[_0xa7a4da(0x1f3)][_0xa7a4da(0x280)]['split']('/'),_0x468e1e=[];for(let _0x27c51f=0x0;_0x27c51f<_0x59ae9a[_0xa7a4da(0x26f)]&&_0xa7a4da(0x24b)!=_0x59ae9a[_0x27c51f];_0x27c51f++)_0x468e1e[_0xa7a4da(0x279)](_0x59ae9a[_0x27c51f]);return _0x468e1e[_0xa7a4da(0x1fd)]('/');}async[a0_0x465319(0x236)](_0x309f63){const _0x4834af=a0_0x465319;0x0==await this[_0x4834af(0x205)](_0x309f63)&&fs['mkdirSync'](_0x309f63);}async['existsPath'](_0x429ea2){const _0x1d96e9=a0_0x465319;return await fs[_0x1d96e9(0x27b)](_0x429ea2);}};tslib_1[a0_0x465319(0x261)]([(0x0,type_graphql_1[a0_0x465319(0x21d)])(_0x55ffc1=>Boolean,{'description':a0_0x465319(0x25c)}),tslib_1[a0_0x465319(0x22d)](0x0,(0x0,type_graphql_1[a0_0x465319(0x215)])('id')),tslib_1[a0_0x465319(0x22d)](0x1,(0x0,type_graphql_1[a0_0x465319(0x249)])()),tslib_1['__metadata'](a0_0x465319(0x24d),Function),tslib_1['__metadata']('design:paramtypes',[String,Object]),tslib_1['__metadata']('design:returntype',Promise)],OperatoToolCreateService[a0_0x465319(0x20e)],a0_0x465319(0x232),null),OperatoToolCreateService=tslib_1[a0_0x465319(0x261)]([(0x0,type_graphql_1['Resolver'])()],OperatoToolCreateService),exports[a0_0x465319(0x25d)]=OperatoToolCreateService;const allIndex='\x0a/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0a\x0a/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0a\x0aexport\x20const\x20entities\x20=\x20[\x20\x20\x0a\x20\x20/*\x20ENTITIES\x20*/\x0a]\x20\x0a\x0a\x0aexport\x20const\x20schema\x20=\x20{\x0a\x20\x20resolverClasses:\x20[\x0a\x20\x20\x20\x20/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x20\x20]\x20\x0a}\x0a\x0aexport\x20const\x20subscribers\x20=\x20[\x0a\x20\x20/*\x20SUBSCRIBERS\x20*/\x0a]\x0a',serviceIndex=a0_0x465319(0x20d),serviceHistoryIndex='\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryQuery\x20}\x20from\x20\x27./{{name}}-history-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20}\x20from\x20\x27./event-subscriber\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}},\x20{{pascalCase\x20name}}History]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}HistoryQuery,\x20{{pascalCase\x20name}}Mutation]\x0aexport\x20const\x20subscribers\x20=\x20[{{pascalCase\x20name}}HistoryEntitySubscriber]\x0a\x0a',serviceQuery='\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}List\x20}\x20from\x20\x27./{{name}}-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Query\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}List,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{pluralCamelCase\x20name}}(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}List>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20convertedParams\x20=\x20convertListParams(params,\x20domain.id)\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.creatorId})\x0a\x20\x20}\x0a}\x0a',serviceHistoryQuery=a0_0x465319(0x267),serviceMutation=a0_0x465319(0x210),sereviceType=a0_0x465319(0x22b),sereviceHistoryType=a0_0x465319(0x20a),serviceEntity=a0_0x465319(0x245),serviceEntityHistCopy=a0_0x465319(0x21a),serviceEntityHistJson=a0_0x465319(0x269),serviceEntitySubscriber='\x0aimport\x20{\x20EventSubscriber\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20HistoryEntitySubscriber\x20}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@EventSubscriber()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20extends\x20HistoryEntitySubscriber<{{pascalCase\x20name}},{{pascalCase\x20name}}History>\x20{\x0a\x20\x20public\x20get\x20entity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}\x0a\x20\x20}\x0a\x0a\x20\x20public\x20get\x20historyEntity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}History\x0a\x20\x20}\x0a\x0a\x20\x20{{entityToJson}}\x0a\x0a\x20\x20async\x20beforeRemoveHistory(history:{{pascalCase\x20name}}History,entity:{{pascalCase\x20name}}){\x0a\x20\x20\x20\x20let\x20repo\x20=\x20getRepository({{pascalCase\x20name}}History);\x0a\x20\x20\x20\x20const\x20revNo\x20=\x20await\x20repo.createQueryBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.select(\x27max(data_revision_no)\x27,\x20\x27rev_no\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.where(\x27domain_id\x20=\x20:domainId\x27,\x20{\x20domainId:\x20entity.domain.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.andWhere(\x27original_id\x20=\x20:originalId\x27,\x20{\x20originalId:\x20entity.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.getRawOne()\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20history.dataRevisionNo\x20=\x20revNo\x20?\x20revNo.rev_no\x20+\x201\x20:\x201;\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a}\x0a';
1
+ 'use strict';const a0_0x379931=a0_0x3e83;(function(_0xb4a3d1,_0x530981){const _0x475ccb=a0_0x3e83,_0x4de33d=_0xb4a3d1();while(!![]){try{const _0x3b851a=-parseInt(_0x475ccb(0x260))/0x1+-parseInt(_0x475ccb(0x212))/0x2*(-parseInt(_0x475ccb(0x202))/0x3)+parseInt(_0x475ccb(0x210))/0x4+-parseInt(_0x475ccb(0x235))/0x5+-parseInt(_0x475ccb(0x215))/0x6+parseInt(_0x475ccb(0x241))/0x7*(parseInt(_0x475ccb(0x242))/0x8)+parseInt(_0x475ccb(0x244))/0x9;if(_0x3b851a===_0x530981)break;else _0x4de33d['push'](_0x4de33d['shift']());}catch(_0x3ac1ce){_0x4de33d['push'](_0x4de33d['shift']());}}}(a0_0x33de,0xe3e6d));function a0_0x3e83(_0x23d74a,_0xd15979){const _0x33decc=a0_0x33de();return a0_0x3e83=function(_0x3e837b,_0x49d801){_0x3e837b=_0x3e837b-0x1d7;let _0x920ea2=_0x33decc[_0x3e837b];return _0x920ea2;},a0_0x3e83(_0x23d74a,_0xd15979);}Object[a0_0x379931(0x1e1)](exports,a0_0x379931(0x25e),{'value':!0x0}),exports[a0_0x379931(0x21c)]=void 0x0;const tslib_1=require(a0_0x379931(0x21a)),type_graphql_1=require(a0_0x379931(0x267)),shell_1=require(a0_0x379931(0x25d)),resource_base_1=require(a0_0x379931(0x1ef)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x379931(0x24f)),{plural:plural}=require(a0_0x379931(0x20b)),fs=require('fs');let OperatoToolCreateService=class{async['toolCreateService'](_0x488d35,_0xb99458){const _0xeb4f04=a0_0x379931,{domain:_0x161cea}=_0xb99458['state'],_0x576835=await(0x0,shell_1[_0xeb4f04(0x258)])(resource_base_1[_0xeb4f04(0x231)])[_0xeb4f04(0x21e)]({'where':{'id':_0x488d35}}),_0x4b5d0b=await(0x0,shell_1['getRepository'])(resource_base_1[_0xeb4f04(0x1fc)])[_0xeb4f04(0x1e4)]({'where':{'domain':{'id':_0x161cea['id']},'entity':{'id':_0x576835['id']}}});let {name:_0x2088d5='',bundle:_0x34ca65=''}=_0x576835||{},_0x1a8b17=this['getProjectRootPath'](),_0x142807=kebabCase(_0x2088d5);return await this[_0xeb4f04(0x23a)](_0x1a8b17,_0x34ca65,_0x142807),await this['createServiceFiles'](_0x1a8b17,_0x34ca65,_0x2088d5,_0x142807,_0x576835,_0x4b5d0b),!0x0;}async['createServiceFiles'](_0x434d99,_0x4376b2,_0x2fa9b9,_0x44f679,_0x2cae1d,_0x4c333c){const _0xfc82ee=a0_0x379931;let _0x521120={'name':_0x44f679,'tableName':_0x2cae1d[_0xfc82ee(0x252)],'pascalCaseName':startCase(camelCase(_0x2fa9b9))[_0xfc82ee(0x23d)](/ /g,''),'camelCaseName':camelCase(_0x2fa9b9),'snakeCaseName':snakeCase(_0x2fa9b9),'pluralPascalCaseName':startCase(camelCase(plural(_0x2fa9b9)))[_0xfc82ee(0x23d)](/ /g,''),'pluralCamelCaseName':camelCase(plural(_0x2fa9b9))},_0x5b561c=_0x434d99+_0xfc82ee(0x1d8)+_0x4376b2+_0xfc82ee(0x25a);[_0xfc82ee(0x1f2),_0xfc82ee(0x1fe)][_0xfc82ee(0x265)](_0x2cae1d[_0xfc82ee(0x1ff)])?await this[_0xfc82ee(0x225)](_0x5b561c,_0x44f679,_0x2cae1d,_0x4c333c,_0x521120):await this[_0xfc82ee(0x24d)](_0x5b561c,_0x44f679,_0x2cae1d,_0x4c333c,_0x521120);}async[a0_0x379931(0x225)](_0xf150bc,_0x1f7d98,_0x8b439b,_0x21dce6,_0x5b1d96){const _0x75e7a4=a0_0x379931;await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+_0x75e7a4(0x21d)),serviceHistoryIndex,_0x5b1d96);let _0x51a307=this['createEntityText'](_0x8b439b,_0x21dce6);await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+_0x75e7a4(0x206)),_0x51a307,_0x5b1d96),await this['writeFile'](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+_0x75e7a4(0x239)),serviceQuery,_0x5b1d96),await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+'-mutation.ts'),serviceMutation,_0x5b1d96);let _0x2adf9a=this['createTypeText'](_0x21dce6);await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+_0x75e7a4(0x20c)),_0x2adf9a,_0x5b1d96);let _0x479c75=this[_0x75e7a4(0x214)](_0x8b439b,_0x21dce6);await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+_0x75e7a4(0x228)),_0x479c75,_0x5b1d96);let _0x317b2a='';_0x75e7a4(0x1f2)==_0x8b439b[_0x75e7a4(0x1ff)]?(_0x317b2a=_0x75e7a4(0x23b),await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/event-subscriber.ts'),serviceEntitySubscriber,_0x5b1d96)):_0x317b2a='';let _0x36e2ab=serviceEntitySubscriber['replace'](/{{entityToJson}}/g,_0x317b2a);await this['writeFile'](_0xf150bc+(_0x1f7d98+_0x75e7a4(0x227)),_0x36e2ab,_0x5b1d96),await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+_0x75e7a4(0x1ec)),serviceHistoryQuery,_0x5b1d96),await this[_0x75e7a4(0x201)](_0xf150bc+(_0x1f7d98+'/'+_0x1f7d98+'-history-type.ts'),sereviceHistoryType,_0x5b1d96);let _0x33d2da=_0xf150bc+_0x75e7a4(0x253);0x0==await this['existsPath'](_0x33d2da)&&await this[_0x75e7a4(0x201)](_0x33d2da,allIndex,_0x5b1d96);let _0x1c8d73=await fs[_0x75e7a4(0x264)](_0x33d2da,_0x75e7a4(0x223));_0x1c8d73[_0x75e7a4(0x1fb)](_0x75e7a4(0x1f7)+_0x5b1d96[_0x75e7a4(0x218)]+'/'+_0x5b1d96[_0x75e7a4(0x218)]+_0x75e7a4(0x1e6))<0x0&&(_0x1c8d73=_0x1c8d73[_0x75e7a4(0x23d)](/\/\* EXPORT ENTITY TYPES \*\//,_0x75e7a4(0x251)+_0x5b1d96['name']+'/'+_0x5b1d96[_0x75e7a4(0x218)]+_0x75e7a4(0x1e6))),_0x1c8d73[_0x75e7a4(0x1fb)](_0x75e7a4(0x1f7)+_0x5b1d96[_0x75e7a4(0x218)]+'/'+_0x5b1d96[_0x75e7a4(0x218)]+'\x27')<0x0&&(_0x1c8d73=_0x1c8d73[_0x75e7a4(0x23d)](/\/\* EXPORT ENTITY TYPES \*\//,_0x75e7a4(0x251)+_0x5b1d96[_0x75e7a4(0x218)]+'/'+_0x5b1d96['name']+'\x27')),_0x1c8d73[_0x75e7a4(0x1fb)](_0x75e7a4(0x261)+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x204)+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x22c)+_0x5b1d96['pascalCaseName']+'EntitySubscribers\x20}\x20from\x20\x27./'+_0x5b1d96[_0x75e7a4(0x218)]+'\x27')<0x0&&(_0x1c8d73=_0x1c8d73[_0x75e7a4(0x23d)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x75e7a4(0x1e8)+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x204)+_0x5b1d96['pascalCaseName']+'Resolvers,\x20subscribers\x20as\x20'+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x208)+_0x5b1d96['name']+'\x27')),_0x1c8d73[_0x75e7a4(0x1fb)](_0x75e7a4(0x222)+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x1eb))<0x0&&(_0x1c8d73=_0x1c8d73[_0x75e7a4(0x23d)](/\/\* ENTITIES \*\//,'/*\x20ENTITIES\x20*/\x0a\x09...'+_0x5b1d96['pascalCaseName']+_0x75e7a4(0x1eb))),_0x1c8d73[_0x75e7a4(0x1fb)](_0x75e7a4(0x222)+_0x5b1d96['pascalCaseName']+'Resolvers,')<0x0&&(_0x1c8d73=_0x1c8d73[_0x75e7a4(0x23d)](/\/\* RESOLVER CLASSES \*\//,_0x75e7a4(0x1e7)+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x263))),_0x1c8d73[_0x75e7a4(0x1fb)](_0x75e7a4(0x222)+_0x5b1d96['pascalCaseName']+'EntitySubscribers,')<0x0&&(_0x1c8d73=_0x1c8d73[_0x75e7a4(0x23d)](/\/\* SUBSCRIBERS \*\//,_0x75e7a4(0x22a)+_0x5b1d96[_0x75e7a4(0x236)]+_0x75e7a4(0x217))),await this['writeFile'](_0x33d2da,_0x1c8d73,_0x5b1d96);}async[a0_0x379931(0x24d)](_0x4ebb24,_0x4c137a,_0x1ab277,_0x4346fe,_0x276d06){const _0x522a72=a0_0x379931;await this[_0x522a72(0x201)](_0x4ebb24+(_0x4c137a+_0x522a72(0x21d)),serviceIndex,_0x276d06),await this[_0x522a72(0x201)](_0x4ebb24+(_0x4c137a+'/'+_0x4c137a+'-query.ts'),serviceQuery,_0x276d06),await this[_0x522a72(0x201)](_0x4ebb24+(_0x4c137a+'/'+_0x4c137a+_0x522a72(0x1fa)),serviceMutation,_0x276d06);let _0x19a09c=this[_0x522a72(0x249)](_0x1ab277,_0x4346fe);await this[_0x522a72(0x201)](_0x4ebb24+(_0x4c137a+'/'+_0x4c137a+'.ts'),_0x19a09c,_0x276d06);let _0x37d3c7=this[_0x522a72(0x24e)](_0x4346fe);await this[_0x522a72(0x201)](_0x4ebb24+(_0x4c137a+'/'+_0x4c137a+'-type.ts'),_0x37d3c7,_0x276d06);let _0x40f6a0=_0x4ebb24+'index.ts';0x0==await this[_0x522a72(0x26b)](_0x40f6a0)&&await this[_0x522a72(0x201)](_0x40f6a0,allIndex,_0x276d06);let _0x3ab5c8=await fs[_0x522a72(0x264)](_0x40f6a0,_0x522a72(0x223));_0x3ab5c8[_0x522a72(0x1fb)](_0x522a72(0x1f7)+_0x276d06[_0x522a72(0x218)]+'/'+_0x276d06[_0x522a72(0x218)]+'\x27')<0x0&&(_0x3ab5c8=_0x3ab5c8[_0x522a72(0x23d)](/\/\* EXPORT ENTITY TYPES \*\//,'/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./'+_0x276d06[_0x522a72(0x218)]+'/'+_0x276d06[_0x522a72(0x218)]+'\x27')),_0x3ab5c8[_0x522a72(0x1fb)](_0x522a72(0x261)+_0x276d06[_0x522a72(0x236)]+'Entities,\x20resolvers\x20as\x20'+_0x276d06[_0x522a72(0x236)]+_0x522a72(0x213)+_0x276d06[_0x522a72(0x218)]+'\x27')<0x0&&(_0x3ab5c8=_0x3ab5c8[_0x522a72(0x23d)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x522a72(0x1e8)+_0x276d06[_0x522a72(0x236)]+_0x522a72(0x204)+_0x276d06[_0x522a72(0x236)]+_0x522a72(0x213)+_0x276d06[_0x522a72(0x218)]+'\x27')),_0x3ab5c8['indexOf']('...'+_0x276d06['pascalCaseName']+_0x522a72(0x1eb))<0x0&&(_0x3ab5c8=_0x3ab5c8[_0x522a72(0x23d)](/\/\* ENTITIES \*\//,_0x522a72(0x1ee)+_0x276d06[_0x522a72(0x236)]+_0x522a72(0x1eb))),_0x3ab5c8[_0x522a72(0x1fb)]('...'+_0x276d06[_0x522a72(0x236)]+_0x522a72(0x263))<0x0&&(_0x3ab5c8=_0x3ab5c8[_0x522a72(0x23d)](/\/\* RESOLVER CLASSES \*\//,_0x522a72(0x1e7)+_0x276d06[_0x522a72(0x236)]+_0x522a72(0x263))),await this[_0x522a72(0x201)](_0x40f6a0,_0x3ab5c8,_0x276d06);}[a0_0x379931(0x24e)](_0x770437){const _0xe11f54=a0_0x379931;let _0x3aa2a7=sereviceType,_0x73f42f=_0x770437['map'](_0x13e0a0=>{const _0x4565cf=a0_0x3e83;if('id'==_0x13e0a0[_0x4565cf(0x218)])return'';if(_0x4565cf(0x243)==_0x13e0a0['name'])return'';if(_0x4565cf(0x22e)==_0x13e0a0['name'])return'';if(_0x4565cf(0x1ea)==_0x13e0a0[_0x4565cf(0x218)])return'';if('creator_id'==_0x13e0a0[_0x4565cf(0x218)])return'';if(_0x4565cf(0x20a)==_0x13e0a0[_0x4565cf(0x218)])return'';let _0x465087=this[_0x4565cf(0x23e)](_0x13e0a0),_0x56d6fe=this[_0x4565cf(0x21b)](_0x13e0a0),_0xdfd7d7=camelCase(_0x13e0a0[_0x4565cf(0x218)]);return'\x20\x20'+('@Field('+(0x0==_0x465087['length']?'':'type\x20=>'+_0x465087+',')+_0x4565cf(0x24a)+_0x13e0a0[_0x4565cf(0x1df)]+_0x4565cf(0x20f))+_0x4565cf(0x200)+(''+_0xdfd7d7+(_0x13e0a0[_0x4565cf(0x1df)]?'?':'')+':\x20'+_0x56d6fe)+'\x0a';});_0x3aa2a7=_0x3aa2a7[_0xe11f54(0x23d)](/{{newTypeColumns}}/g,_0x73f42f[_0xe11f54(0x247)]('\x0a'));let _0x452321=_0x770437[_0xe11f54(0x25c)](_0x2aee9a=>{const _0x21d69f=_0xe11f54;if('id'==_0x2aee9a[_0x21d69f(0x218)])return'';if(_0x21d69f(0x243)==_0x2aee9a[_0x21d69f(0x218)])return'';if('created_at'==_0x2aee9a[_0x21d69f(0x218)])return'';if(_0x21d69f(0x1ea)==_0x2aee9a['name'])return'';if('creator_id'==_0x2aee9a[_0x21d69f(0x218)])return'';if(_0x21d69f(0x20a)==_0x2aee9a[_0x21d69f(0x218)])return'';let _0x1c109d=this['getFieldType'](_0x2aee9a),_0xc10f12=this['getColTxtType'](_0x2aee9a);_0x2aee9a['nullable']=!0x0;let _0x4fe568=camelCase(_0x2aee9a[_0x21d69f(0x218)]);return'\x20\x20'+(_0x21d69f(0x22b)+(0x0==_0x1c109d['length']?'':_0x21d69f(0x219)+_0x1c109d+',')+_0x21d69f(0x24a)+_0x2aee9a[_0x21d69f(0x1df)]+_0x21d69f(0x20f))+_0x21d69f(0x200)+(''+_0x4fe568+(_0x2aee9a['nullable']?'?':'')+':\x20'+_0xc10f12)+'\x0a';});return _0x3aa2a7=_0x3aa2a7[_0xe11f54(0x23d)](/{{patchTypeColumns}}/g,_0x452321['join']('\x0a')),_0x3aa2a7;}[a0_0x379931(0x249)](_0x520362,_0x350353){const _0xd8179d=a0_0x379931;let _0x227815=serviceEntity,_0x2e07bc=_0x350353[_0xd8179d(0x216)](function(_0x13c0f7,_0x1e33ab){const _0x2d5dfd=_0xd8179d;return _0x13c0f7[_0x2d5dfd(0x207)]-_0x1e33ab['rank'];})['map'](_0x46abf1=>this[_0xd8179d(0x1f3)](_0x46abf1));[_0xd8179d(0x1fe),'JSON']['includes'](_0x520362['dataProp'])&&_0x2e07bc['push'](_0xd8179d(0x1f8)),_0x227815=_0x227815[_0xd8179d(0x23d)](/{{entityColumns}}/g,_0x2e07bc[_0xd8179d(0x247)]('\x0a'));let _0x50ffe6='',_0x297456=_0x350353[_0xd8179d(0x250)](_0x5c4766=>_0x5c4766['uniqRank']&&_0x5c4766['uniqRank']>0x0)[_0xd8179d(0x216)](function(_0x7c339d,_0x4cc1e7){const _0xe9bb45=_0xd8179d;return _0x7c339d['uniqRank']-_0x4cc1e7[_0xe9bb45(0x1e5)];});if(_0x297456['length']>0x0){_0x50ffe6=_0xd8179d(0x1f6);let _0x2ccfbe=_0x297456[_0xd8179d(0x25c)](_0x3db633=>{const _0x378194=_0xd8179d;let _0xa5560=_0x3db633['name'];return'domain_id'==_0x3db633[_0x378194(0x218)]&&(_0xa5560=_0x378194(0x237)),_0x378194(0x1f9)==_0x3db633['name']&&(_0xa5560=_0x378194(0x20d)),'updater_id'==_0x3db633[_0x378194(0x218)]&&(_0xa5560=_0x378194(0x1d7)),_0x378194(0x1e2)+camelCase(_0xa5560);});_0x50ffe6=_0x50ffe6[_0xd8179d(0x23d)](/{{indexColumns}}/g,_0x2ccfbe[_0xd8179d(0x247)](','));}return _0x227815=_0x227815['replace'](/{{indexAnn}}/g,_0x50ffe6),_0x227815;}[a0_0x379931(0x214)](_0x5aa662,_0x2b3c75){const _0x3dba5a=a0_0x379931;let _0x3d0a4d=_0x3dba5a(0x1f2)==_0x5aa662[_0x3dba5a(0x1ff)]?serviceEntityHistJson:serviceEntityHistCopy,_0x1932c7=_0x2b3c75['sort'](function(_0x19da42,_0xf5f283){const _0x577b3f=_0x3dba5a;return _0x19da42[_0x577b3f(0x207)]-_0xf5f283[_0x577b3f(0x207)];})[_0x3dba5a(0x25c)](_0x26327b=>this['columnToEntityColumn'](_0x26327b));return _0x3d0a4d=_0x3d0a4d['replace'](/{{entityColumns}}/g,_0x1932c7[_0x3dba5a(0x247)]('\x0a')),_0x3d0a4d;}[a0_0x379931(0x1f3)](_0x459148){const _0x509436=a0_0x379931;if('id'==_0x459148[_0x509436(0x218)])return'';if(_0x509436(0x243)==_0x459148[_0x509436(0x218)])return'';if(_0x509436(0x22e)==_0x459148['name'])return'';if('updated_at'==_0x459148[_0x509436(0x218)])return'';if(_0x509436(0x1f9)==_0x459148[_0x509436(0x218)])return'';if(_0x509436(0x20a)==_0x459148[_0x509436(0x218)])return'';let _0x4b8d93=_0x459148[_0x509436(0x21f)];_0x509436(0x24b)==_0x459148['colType']&&(_0x4b8d93='double\x20precision'),'long'==_0x459148['colType']&&(_0x4b8d93='bigint'),_0x509436(0x1e0)==_0x459148[_0x509436(0x21f)]&&(_0x4b8d93=_0x509436(0x254)),_0x509436(0x224)==_0x459148[_0x509436(0x21f)]&&(_0x4b8d93=_0x509436(0x205));let _0x4e2068='';_0x509436(0x1e0)==_0x459148[_0x509436(0x21f)]&&(_0x4e2068=_0x459148[_0x509436(0x1f1)]);let _0x42599c=this[_0x509436(0x23e)](_0x459148),_0x170884=this[_0x509436(0x21b)](_0x459148),_0x13f9e5=camelCase(_0x459148[_0x509436(0x218)]);return'\x20\x20'+(_0x509436(0x255)+_0x459148['name']+'\x27,\x20type:\x20\x27'+_0x4b8d93+_0x509436(0x1f4)+_0x459148['nullable']+'\x20'+(0x0==_0x4e2068[_0x509436(0x1d9)]?'':',length:'+_0x4e2068)+'\x20})')+_0x509436(0x200)+(_0x509436(0x22b)+(0x0==_0x42599c[_0x509436(0x1d9)]?'':_0x509436(0x219)+_0x42599c+',')+_0x509436(0x24a)+_0x459148[_0x509436(0x1df)]+_0x509436(0x20f))+_0x509436(0x200)+(''+_0x13f9e5+(_0x459148['nullable']?'?':'')+':\x20'+_0x170884)+'\x0a';}[a0_0x379931(0x23e)](_0x3fe9b9){const _0x2414d8=a0_0x379931;let _0x24860b='';return _0x2414d8(0x24b)==_0x3fe9b9[_0x2414d8(0x21f)]&&(_0x24860b=_0x2414d8(0x256)),_0x2414d8(0x1db)==_0x3fe9b9[_0x2414d8(0x21f)]&&(_0x24860b='Float'),_0x2414d8(0x1de)==_0x3fe9b9[_0x2414d8(0x21f)]&&(_0x24860b=_0x2414d8(0x26c)),'integer'==_0x3fe9b9[_0x2414d8(0x21f)]&&(_0x24860b=_0x2414d8(0x26c)),_0x24860b;}[a0_0x379931(0x21b)](_0x14b103){const _0x45d406=a0_0x379931;let _0x571e7c=_0x14b103[_0x45d406(0x21f)];return _0x45d406(0x248)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x238)),_0x45d406(0x24b)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x238)),_0x45d406(0x1db)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x238)),_0x45d406(0x266)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x238)),_0x45d406(0x1de)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c='number'),_0x45d406(0x224)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x20e)),_0x45d406(0x22d)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x20e)),_0x45d406(0x1dc)==_0x14b103[_0x45d406(0x21f)]&&(_0x571e7c=_0x45d406(0x1e0)),_0x571e7c;}async[a0_0x379931(0x201)](_0x53aab3,_0x31d3ce,_0x48b7f6){const _0x1d8f18=a0_0x379931;await fs[_0x1d8f18(0x1f5)](_0x53aab3,this[_0x1d8f18(0x257)](_0x31d3ce,_0x48b7f6),_0x1d8f18(0x223));}['replaceNamesMap'](_0x499071,_0x47c5bd){const _0x1aab91=a0_0x379931;return _0x499071[_0x1aab91(0x23d)](/{{pascalCase name}}/g,_0x47c5bd[_0x1aab91(0x236)])[_0x1aab91(0x23d)](/{{camelCase name}}/g,_0x47c5bd[_0x1aab91(0x22f)])['replace'](/{{snakeCase name}}/g,_0x47c5bd[_0x1aab91(0x1fd)])['replace'](/{{pluralPascalCase name}}/g,_0x47c5bd['pluralPascalCaseName'])[_0x1aab91(0x23d)](/{{pluralCamelCase name}}/g,_0x47c5bd[_0x1aab91(0x23f)])[_0x1aab91(0x23d)](/{{tableName}}/g,_0x47c5bd[_0x1aab91(0x252)])[_0x1aab91(0x23d)](/{{name}}/g,_0x47c5bd[_0x1aab91(0x218)]);}async['createServicePath'](_0x239f67,_0x42d980,_0x3e8553){const _0x28b726=a0_0x379931;let _0x26f783=_0x239f67+_0x28b726(0x1e3);await this[_0x28b726(0x25b)](_0x26f783),_0x26f783=_0x26f783+'/'+_0x42d980,await this[_0x28b726(0x25b)](_0x26f783),_0x26f783+=_0x28b726(0x221),await this[_0x28b726(0x25b)](_0x26f783),_0x26f783+=_0x28b726(0x1da),await this['createDir'](_0x26f783),_0x26f783=_0x26f783+'/'+_0x3e8553,await this['createDir'](_0x26f783);}[a0_0x379931(0x234)](){const _0x37afa9=a0_0x379931;let _0x53a439=process[_0x37afa9(0x23c)]['PWD']['split']('/'),_0x2a8696=[];for(let _0x375e1c=0x0;_0x375e1c<_0x53a439['length']&&_0x37afa9(0x259)!=_0x53a439[_0x375e1c];_0x375e1c++)_0x2a8696[_0x37afa9(0x25f)](_0x53a439[_0x375e1c]);return _0x2a8696[_0x37afa9(0x247)]('/');}async[a0_0x379931(0x25b)](_0x25a0b1){const _0x592d3d=a0_0x379931;0x0==await this['existsPath'](_0x25a0b1)&&fs[_0x592d3d(0x220)](_0x25a0b1);}async[a0_0x379931(0x26b)](_0x3b15d2){const _0x38099b=a0_0x379931;return await fs[_0x38099b(0x246)](_0x3b15d2);}};function a0_0x33de(){const _0x1fc50a=['integer','type-graphql','Query','design:type','\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}List\x20}\x20from\x20\x27./{{name}}-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Query\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}List,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20{{pluralCamelCase\x20name}}(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}List>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20convertedParams\x20=\x20convertListParams(params,\x20domain.id)\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}:\x20{{pascalCase\x20name}}):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}.creatorId})\x0a\x20\x20}\x0a}\x0a','existsPath','Int','updater','/packages/','length','/service','float','text','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@InputType()\x0aexport\x20class\x20New{{pascalCase\x20name}}\x20{\x0a{{newTypeColumns}}\x0a}\x0a\x0a@InputType()\x0aexport\x20class\x20{{pascalCase\x20name}}Patch\x20{\x0a\x20\x20@Field(type\x20=>\x20ID,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20id?:\x20string\x0a\x0a{{patchTypeColumns}}\x0a\x0a\x20\x20@Field()\x0a\x20\x20cuFlag:\x20string\x0a}\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}List\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}])\x0a\x20\x20items:\x20{{pascalCase\x20name}}[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','long','nullable','string','defineProperty','{{camelCase\x20name}}.','/packages','find','uniqRank','-history\x27','/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...','/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20','design:paramtypes','updated_at','Entities,','-history-query.ts','\x0a/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0a\x0a/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0a\x0aexport\x20const\x20entities\x20=\x20[\x20\x20\x0a\x20\x20/*\x20ENTITIES\x20*/\x0a]\x20\x0a\x0a\x0aexport\x20const\x20schema\x20=\x20{\x0a\x20\x20resolverClasses:\x20[\x0a\x20\x20\x20\x20/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x20\x20]\x20\x0a}\x0a\x0aexport\x20const\x20subscribers\x20=\x20[\x0a\x20\x20/*\x20SUBSCRIBERS\x20*/\x0a]\x0a','/*\x20ENTITIES\x20*/\x0a\x09...','@things-factory/resource-base','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','colSize','JSON','columnToEntityColumn','\x27,\x20nullable:\x20','writeFileSync','@Index(\x27ix_{{snakeCase\x20name}}_0\x27,\x20({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20[{{indexColumns}}],\x20{\x20unique:\x20true\x20})','export\x20*\x20from\x20\x27./','\x0a\x20\x20@VersionColumn({\x20default:\x201\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201','creator_id','-mutation.ts','indexOf','EntityColumn','snakeCaseName','COPY','dataProp','\x0a\x20\x20','writeFile','3SAzPyK','Resolver','Entities,\x20resolvers\x20as\x20','timestamp\x20without\x20time\x20zone','.ts','rank','EntitySubscribers\x20}\x20from\x20\x27./','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryQuery\x20}\x20from\x20\x27./{{name}}-history-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20}\x20from\x20\x27./event-subscriber\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}},\x20{{pascalCase\x20name}}History]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}HistoryQuery,\x20{{pascalCase\x20name}}Mutation]\x0aexport\x20const\x20subscribers\x20=\x20[{{pascalCase\x20name}}HistoryEntitySubscriber]\x0a\x0a','updater_id','pluralize','-type.ts','creator','Date','\x20})','1593676ODFdPC','\x0aimport\x20{\x20Resolver,\x20Mutation,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20In\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20New{{pascalCase\x20name}},\x20{{pascalCase\x20name}}Patch\x20}\x20from\x20\x27./{{name}}-type\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@Resolver({{pascalCase\x20name}})\x0aexport\x20class\x20{{pascalCase\x20name}}Mutation\x20{\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20create\x20new\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20create{{pascalCase\x20name}}(@Arg(\x27{{camelCase\x20name}}\x27)\x20{{camelCase\x20name}}:\x20New{{pascalCase\x20name}},\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20return\x20await\x20tx.getRepository({{pascalCase\x20name}}).save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20{{pascalCase\x20name}},\x20{\x20description:\x20\x27To\x20modify\x20{{pascalCase\x20name}}\x20information\x27\x20})\x0a\x20\x20async\x20update{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27id\x27)\x20id:\x20string,\x0a\x20\x20\x20\x20@Arg(\x27patch\x27)\x20patch:\x20{{pascalCase\x20name}}Patch,\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20repository\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20repository.findOne(\x0a\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20)\x0a\x0a\x20\x20\x20\x20return\x20await\x20repository.save({\x0a\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20...patch,\x0a\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20[{{pascalCase\x20name}}],\x20{\x20description:\x20\x22To\x20modify\x20multiple\x20{{pluralPascalCase\x20name}}\x27\x20information\x22\x20})\x0a\x20\x20async\x20updateMultiple{{pascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27patches\x27,\x20type\x20=>\x20[{{pascalCase\x20name}}Patch])\x20patches:\x20{{pascalCase\x20name}}Patch[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<{{pascalCase\x20name}}[]>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20user,\x20tx\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20results\x20=\x20[]\x0a\x20\x20\x20\x20const\x20_createRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27+\x27)\x0a\x20\x20\x20\x20const\x20_updateRecords\x20=\x20patches.filter((patch:\x20any)\x20=>\x20patch.cuFlag.toUpperCase()\x20===\x20\x27M\x27)\x0a\x20\x20\x20\x20const\x20{{camelCase\x20name}}Repo\x20=\x20tx.getRepository({{pascalCase\x20name}})\x0a\x0a\x20\x20\x20\x20if\x20(_createRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_createRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newRecord\x20=\x20_createRecords[i]\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...newRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20creator:\x20user,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27+\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20if\x20(_updateRecords.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20_updateRecords.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20updRecord\x20=\x20_updateRecords[i]\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20{{camelCase\x20name}}\x20=\x20await\x20{{camelCase\x20name}}Repo.findOne({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id:updRecord.id\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20relations:\x20[\x27domain\x27,\x20\x27updater\x27,\x20\x27creator\x27]\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20result\x20=\x20await\x20{{camelCase\x20name}}Repo.save({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...{{camelCase\x20name}},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20...updRecord,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updater:\x20user\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20results.push({\x20...result,\x20cuFlag:\x20\x27M\x27\x20})\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20return\x20results\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20{{pascalCase\x20name}}\x27\x20})\x0a\x20\x20async\x20delete{{pascalCase\x20name}}(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove({\x20domain,\x20id,\x20updater:user\x20})\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a\x0a\x20\x20@Directive(\x27@transaction\x27)\x0a\x20\x20@Mutation(returns\x20=>\x20Boolean,\x20{\x20description:\x20\x27To\x20delete\x20multiple\x20{{camelCase\x20name}}s\x27\x20})\x0a\x20\x20async\x20delete{{pluralPascalCase\x20name}}(\x0a\x20\x20\x20\x20@Arg(\x27ids\x27,\x20type\x20=>\x20[String])\x20ids:\x20string[],\x0a\x20\x20\x20\x20@Ctx()\x20context:\x20any\x0a\x20\x20):\x20Promise<boolean>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain,\x20tx,\x20user\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20let\x20delEntitis\x20=\x20ids.map(id=>{\x0a\x20\x20\x20\x20\x20\x20return\x20{domain,id,updater:user}\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20await\x20tx.getRepository({{pascalCase\x20name}}).remove(delEntitis)\x0a\x0a\x20\x20\x20\x20return\x20true\x0a\x20\x20}\x0a}\x0a','857478bgBmia','Resolvers\x20}\x20from\x20\x27./','createHistoryEntityText','9558282qPaXOc','sort','EntitySubscribers,','name','type\x20=>','tslib','getColTxtType','OperatoToolCreateService','/index.ts','findOne','colType','mkdirSync','/server','...','utf8','datetime','createHistoryServiceFiles','design:returntype','/event-subscriber.ts','-history.ts','prototype','/*\x20SUBSCRIBERS\x20*/\x0a\x09\x09...','@Field(','Resolvers,\x20subscribers\x20as\x20','date','created_at','camelCaseName','\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Query\x20}\x20from\x20\x27./{{name}}-query\x27\x0aimport\x20{\x20{{pascalCase\x20name}}Mutation\x20}\x20from\x20\x27./{{name}}-mutation\x27\x0a\x0aexport\x20const\x20entities\x20=\x20[{{pascalCase\x20name}}]\x0aexport\x20const\x20resolvers\x20=\x20[{{pascalCase\x20name}}Query,\x20{{pascalCase\x20name}}Mutation]\x0a','Entity','Arg','\x0aimport\x20{\x20ObjectType,\x20Field,\x20InputType,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0a\x0a@ObjectType()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryList\x20{\x0a\x20\x20@Field(type\x20=>\x20[{{pascalCase\x20name}}History])\x0a\x20\x20items:\x20{{pascalCase\x20name}}History[]\x0a\x0a\x20\x20@Field(type\x20=>\x20Int)\x0a\x20\x20total:\x20number\x0a}\x0a','getProjectRootPath','1330730yVJMrf','pascalCaseName','domain','number','-query.ts','createServicePath','\x0a\x20\x20public\x20createHistoryEntity(manager,\x20entity)\x20{\x0a\x20\x20\x20\x20let\x20history\x20=\x20manager.create(this.historyEntity,\x20entity);\x0a\x20\x20\x20\x20history.historyJson\x20=\x20JSON.stringify(entity);\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20','env','replace','getFieldType','pluralCamelCaseName','__param','6486732MWuWpb','16MSKPpt','domain_id','3630051jYwrlP','\x0aimport\x20{\x20EventSubscriber\x20}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20HistoryEntitySubscriber\x20}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20getRepository\x20}\x20from\x20\x27@things-factory/shell\x27\x0a\x0a@EventSubscriber()\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryEntitySubscriber\x20extends\x20HistoryEntitySubscriber<{{pascalCase\x20name}},{{pascalCase\x20name}}History>\x20{\x0a\x20\x20public\x20get\x20entity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}\x0a\x20\x20}\x0a\x0a\x20\x20public\x20get\x20historyEntity()\x20{\x0a\x20\x20\x20\x20return\x20{{pascalCase\x20name}}History\x0a\x20\x20}\x0a\x0a\x20\x20{{entityToJson}}\x0a\x0a\x20\x20async\x20beforeRemoveHistory(history:{{pascalCase\x20name}}History,entity:{{pascalCase\x20name}}){\x0a\x20\x20\x20\x20let\x20repo\x20=\x20getRepository({{pascalCase\x20name}}History);\x0a\x20\x20\x20\x20const\x20revNo\x20=\x20await\x20repo.createQueryBuilder()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.select(\x27max(data_revision_no)\x27,\x20\x27rev_no\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.where(\x27domain_id\x20=\x20:domainId\x27,\x20{\x20domainId:\x20entity.domain.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.andWhere(\x27original_id\x20=\x20:originalId\x27,\x20{\x20originalId:\x20entity.id\x20})\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.getRawOne()\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20history.dataRevisionNo\x20=\x20revNo\x20?\x20revNo.rev_no\x20+\x201\x20:\x201;\x0a\x20\x20\x20\x20return\x20history;\x0a\x20\x20}\x0a}\x0a','existsSync','join','decimal','createEntityText','\x20{\x20nullable:\x20','double','__decorate','createNoHistoryServiceFiels','createTypeText','lodash','filter','/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./','tableName','index.ts','character\x20varying','@Column({name:\x27','Float','replaceNamesMap','getRepository','packages','/server/service/','createDir','map','@things-factory/shell','__esModule','push','291171OclDpn','import\x20{\x20entities\x20as\x20','\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0a\x0aimport\x20{\x0a\x20\x20HistoryActionColumn,\x0a\x20\x20HistoryActionType,\x0a\x20\x20HistoryEntityInterface,\x0a\x20\x20HistoryOriginalIdColumn\x0a}\x20from\x20\x27@operato/typeorm-history\x27\x0a\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20config\x20}\x20from\x20\x27@things-factory/env\x27\x0aimport\x20{\x20Domain,\x20ScalarObject\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0aconst\x20ORMCONFIG\x20=\x20config.get(\x27ormconfig\x27,\x20{})\x0aconst\x20DATABASE_TYPE\x20=\x20ORMCONFIG.type\x0a\x0aimport\x20{\x20{{pascalCase\x20name}}\x20}\x20from\x20\x27./{{name}}\x27\x0a\x0a@Entity(\x27{{tableName}}_histories\x27)\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_0\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId,{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_1\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_2\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId\x20],\x20{\x20unique:\x20false\x20})\x0a@Index(\x27ix_{{snakeCase\x20name}}_histories_3\x27,\x20({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20[{{camelCase\x20name}}History.domain,\x20{{camelCase\x20name}}History.originalId,\x20{{camelCase\x20name}}History.dataRevisionNo],\x20{\x20unique:\x20true\x20})\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}History\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}History\x20\x20implements\x20HistoryEntityInterface<{{pascalCase\x20name}}>{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a\x20\x20@HistoryOriginalIdColumn({type:\x20\x27character\x20varying\x27,\x20nullable:\x20false\x20,length:40})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20originalId!:\x20string\x0a\x0a\x20\x20@HistoryActionColumn({\x0a\x20\x20\x20\x20nullable:\x20false,\x0a\x20\x20\x20\x20type:\x0a\x20\x20\x20\x20\x20\x20DATABASE_TYPE\x20==\x20\x27postgres\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mysql\x27\x20||\x20DATABASE_TYPE\x20==\x20\x27mariadb\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27enum\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20DATABASE_TYPE\x20==\x20\x27oracle\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20?\x20\x27varchar2\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20:\x20\x27smallint\x27,\x0a\x20\x20\x20\x20enum:\x20HistoryActionType\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20public\x20dataRevisionAction!:\x20HistoryActionType\x0a\x0a\x0a\x20\x20@Column({\x20default:\x201,\x20nullable:\x20false\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201\x0a\x0a\x20\x20@Column(\x27simple-json\x27,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20@Field(type\x20=>\x20ScalarObject,\x20{\x20nullable:\x20true\x20})\x0a\x20\x20historyJson?:\x20any\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History)\x20=>\x20{{camelCase\x20name}}History.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a','Resolvers,','readFileSync','includes'];a0_0x33de=function(){return _0x1fc50a;};return a0_0x33de();}tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x379931(0x268)])(_0x30584e=>Boolean,{'description':'Operato\x20Tool\x20Create\x20Service'}),tslib_1[a0_0x379931(0x240)](0x0,(0x0,type_graphql_1[a0_0x379931(0x232)])('id')),tslib_1[a0_0x379931(0x240)](0x1,(0x0,type_graphql_1['Ctx'])()),tslib_1['__metadata'](a0_0x379931(0x269),Function),tslib_1['__metadata'](a0_0x379931(0x1e9),[String,Object]),tslib_1['__metadata'](a0_0x379931(0x226),Promise)],OperatoToolCreateService[a0_0x379931(0x229)],'toolCreateService',null),OperatoToolCreateService=tslib_1[a0_0x379931(0x24c)]([(0x0,type_graphql_1[a0_0x379931(0x203)])()],OperatoToolCreateService),exports[a0_0x379931(0x21c)]=OperatoToolCreateService;const allIndex=a0_0x379931(0x1ed),serviceIndex=a0_0x379931(0x230),serviceHistoryIndex=a0_0x379931(0x209),serviceQuery=a0_0x379931(0x26a),serviceHistoryQuery='\x0aimport\x20{\x20Resolver,\x20Query,\x20FieldResolver,\x20Root,\x20Args,\x20Arg,\x20Ctx,\x20Directive\x20}\x20from\x20\x27type-graphql\x27\x0aimport\x20{\x20Domain,\x20ListParam,\x20convertListParams,\x20getRepository,\x20getQueryBuilderFromListParams\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0aimport\x20{\x20{{pascalCase\x20name}}History\x20}\x20from\x20\x27./{{name}}-history\x27\x0aimport\x20{\x20{{pascalCase\x20name}}HistoryList\x20}\x20from\x20\x27./{{name}}-history-type\x27\x0a\x0a@Resolver({{pascalCase\x20name}}History)\x0aexport\x20class\x20{{pascalCase\x20name}}HistoryQuery\x20{\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}History,\x20{\x20description:\x20\x27To\x20fetch\x20a\x20{{pascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}History(@Arg(\x27id\x27)\x20id:\x20string,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}History>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x20\x20\x20\x20return\x20await\x20getRepository({{pascalCase\x20name}}History).findOne({\x0a\x20\x20\x20\x20\x20\x20where:\x20{\x20domain:\x20{\x20id:\x20domain.id\x20},\x20id\x20}\x0a\x20\x20\x20\x20})\x0a\x20\x20}\x0a\x0a\x20\x20@Query(returns\x20=>\x20{{pascalCase\x20name}}HistoryList,\x20{\x20description:\x20\x27To\x20fetch\x20multiple\x20{{pluralPascalCase\x20name}}History\x27\x20})\x0a\x20\x20async\x20{{camelCase\x20name}}Histories(@Args()\x20params:\x20ListParam,\x20@Ctx()\x20context:\x20any):\x20Promise<{{pascalCase\x20name}}HistoryList>\x20{\x0a\x20\x20\x20\x20const\x20{\x20domain\x20}\x20=\x20context.state\x0a\x0a\x20\x20\x20\x20const\x20queryBuilder\x20=\x20getQueryBuilderFromListParams({\x0a\x20\x20\x20\x20\x20\x20domain,\x0a\x20\x20\x20\x20\x20\x20params,\x0a\x20\x20\x20\x20\x20\x20repository:\x20await\x20getRepository({{pascalCase\x20name}}History)\x0a\x20\x20\x20\x20})\x0a\x0a\x20\x20\x20\x20const\x20[items,\x20total]\x20=\x20await\x20queryBuilder.getManyAndCount()\x0a\x0a\x20\x20\x20\x20return\x20{\x20items,\x20total\x20}\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20Domain)\x0a\x20\x20async\x20domain(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<Domain>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(Domain).findOneBy({id:{{camelCase\x20name}}History.domainId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20updater(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.updaterId})\x0a\x20\x20}\x0a\x0a\x20\x20@FieldResolver(type\x20=>\x20User)\x0a\x20\x20async\x20creator(@Root()\x20{{camelCase\x20name}}History:\x20{{pascalCase\x20name}}History):\x20Promise<User>\x20{\x0a\x20\x20\x20\x20return\x20await\x20getRepository(User).findOneBy({id:{{camelCase\x20name}}History.creatorId})\x0a\x20\x20}\x0a}\x0a',serviceMutation=a0_0x379931(0x211),sereviceType=a0_0x379931(0x1dd),sereviceHistoryType=a0_0x379931(0x233),serviceEntity='\x0aimport\x20{\x0a\x20\x20CreateDateColumn,\x0a\x20\x20UpdateDateColumn,\x0a\x20\x20Entity,\x0a\x20\x20Index,\x0a\x20\x20Column,\x0a\x20\x20RelationId,\x0a\x20\x20ManyToOne,\x0a\x20\x20PrimaryGeneratedColumn,\x0a\x20\x20VersionColumn\x0a}\x20from\x20\x27typeorm\x27\x0aimport\x20{\x20ObjectType,\x20Field,\x20Int,\x20ID,\x20Float,\x20registerEnumType\x20}\x20from\x20\x27type-graphql\x27\x0a\x0aimport\x20{\x20Domain\x20}\x20from\x20\x27@things-factory/shell\x27\x0aimport\x20{\x20User\x20}\x20from\x20\x27@things-factory/auth-base\x27\x0a\x0a@Entity(\x27{{tableName}}\x27)\x0a{{indexAnn}}\x0a@ObjectType({\x20description:\x20\x27Entity\x20for\x20{{pascalCase\x20name}}\x27\x20})\x0aexport\x20class\x20{{pascalCase\x20name}}\x20{\x0a\x20\x20@PrimaryGeneratedColumn(\x27uuid\x27)\x0a\x20\x20@Field(type\x20=>\x20ID)\x0a\x20\x20readonly\x20id:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20Domain,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20false\x20})\x0a\x20\x20domain:\x20Domain\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.domain)\x0a\x20\x20domainId:\x20string\x0a\x0a{{entityColumns}}\x0a\x0a\x20\x20@CreateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20createdAt?:\x20Date\x0a\x0a\x20\x20@UpdateDateColumn()\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updatedAt?:\x20Date\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20creator?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.creator)\x0a\x20\x20creatorId?:\x20string\x0a\x0a\x20\x20@ManyToOne(type\x20=>\x20User,\x20{\x0a\x20\x20\x20\x20createForeignKeyConstraints:\x20false,\x0a\x20\x20\x20\x20nullable:\x20true\x0a\x20\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20updater?:\x20User\x0a\x0a\x20\x20@RelationId(({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20{{camelCase\x20name}}.updater)\x0a\x20\x20updaterId?:\x20string\x0a}\x0a',serviceEntityHistCopy=a0_0x379931(0x1f0),serviceEntityHistJson=a0_0x379931(0x262),serviceEntitySubscriber=a0_0x379931(0x245);
@@ -1 +1 @@
1
- 'use strict';const a0_0x4e1ed8=a0_0x2fa4;(function(_0x5e9984,_0x21ce82){const _0x64b0d1=a0_0x2fa4,_0xce8e62=_0x5e9984();while(!![]){try{const _0x181239=-parseInt(_0x64b0d1(0xd6))/0x1*(parseInt(_0x64b0d1(0xd1))/0x2)+parseInt(_0x64b0d1(0xe5))/0x3*(-parseInt(_0x64b0d1(0xd4))/0x4)+-parseInt(_0x64b0d1(0xdb))/0x5+parseInt(_0x64b0d1(0xe8))/0x6*(parseInt(_0x64b0d1(0xd0))/0x7)+-parseInt(_0x64b0d1(0xd2))/0x8+parseInt(_0x64b0d1(0xce))/0x9+parseInt(_0x64b0d1(0xe0))/0xa;if(_0x181239===_0x21ce82)break;else _0xce8e62['push'](_0xce8e62['shift']());}catch(_0x5bd130){_0xce8e62['push'](_0xce8e62['shift']());}}}(a0_0x5c48,0x64608));Object['defineProperty'](exports,'__esModule',{'value':!0x0}),exports[a0_0x4e1ed8(0xe4)]=exports['checkStudioPermission']=void 0x0;const operato_license_checker_1=require('@things-factory/operato-license-checker'),shell_1=require('@things-factory/shell'),menu_base_1=require('@things-factory/menu-base'),license_error_1=require(a0_0x4e1ed8(0xe1));function a0_0x5c48(){const _0x222916=['from','checkStudioTemplateIsOverLimit','31107qZrHfx','ERROR_CODES','includes','420054mjOjmO','manager','LicenseError','getCount','(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)','6776424vNQWwZ','menu','77voCSWt','10TuqsPC','4295992YnYdYc','select','52wgNzhe','id\x20!=\x20:id','66709VNLKsh','checkTarget','andWhere','map','getPermission','3155195Qtfizm','getRepository','Menu','OVER_LIMIT','createQueryBuilder','5244890QCsDcg','../../errors/license-error','Studio'];a0_0x5c48=function(){return _0x222916;};return a0_0x5c48();}function a0_0x2fa4(_0xa4c1b7,_0x4af579){const _0x5c48cb=a0_0x5c48();return a0_0x2fa4=function(_0x2fa4b3,_0x66502d){_0x2fa4b3=_0x2fa4b3-0xcb;let _0x54bee7=_0x5c48cb[_0x2fa4b3];return _0x54bee7;},a0_0x2fa4(_0xa4c1b7,_0x4af579);}async function checkStudioPermission(){const _0x351651=a0_0x4e1ed8;let _0x5c25c8=((0x0,operato_license_checker_1[_0x351651(0xda)])('Permissions\x20For\x20Tailor\x20Tool')||',')['split'](',')[_0x351651(0xd9)](_0x324139=>_0x324139['trim']()),_0x5b2d5d=!0x1;return _0x5c25c8['forEach'](_0x3a9e9a=>{const _0x34f67c=_0x351651;_0x3a9e9a[_0x34f67c(0xe7)](_0x34f67c(0xe2))&&(_0x5b2d5d=!0x0);}),_0x5b2d5d;}async function checkStudioTemplateIsOverLimit(_0x377d63,_0x375782){const _0x1143d4=a0_0x4e1ed8;if(0x0==await checkStudioPermission())throw new license_error_1[(_0x1143d4(0xcb))]({'errorCode':_0x375782['t'](license_error_1[_0x1143d4(0xcb)][_0x1143d4(0xe6)]['INVALID_LICENSE'])});var _0x4eee50=0x0;if(_0x4eee50=_0x377d63&&''!=_0x377d63?await(0x0,shell_1[_0x1143d4(0xdc)])(menu_base_1[_0x1143d4(0xdd)])[_0x1143d4(0xe9)][_0x1143d4(0xdf)]()[_0x1143d4(0xd3)](_0x1143d4(0xcf))[_0x1143d4(0xe3)](menu_base_1[_0x1143d4(0xdd)],_0x1143d4(0xcf))['where'](_0x1143d4(0xd5),{'id':_0x377d63})[_0x1143d4(0xd8)](_0x1143d4(0xcd))[_0x1143d4(0xcc)]()+0x1:await(0x0,shell_1[_0x1143d4(0xdc)])(menu_base_1[_0x1143d4(0xdd)])[_0x1143d4(0xe9)]['createQueryBuilder']()[_0x1143d4(0xd3)](_0x1143d4(0xcf))['from'](menu_base_1[_0x1143d4(0xdd)],'menu')['where'](_0x1143d4(0xcd))[_0x1143d4(0xcc)]()+0x1,!(0x0,operato_license_checker_1[_0x1143d4(0xd7)])(_0x4eee50))throw new license_error_1[(_0x1143d4(0xcb))]({'errorCode':_0x375782['t'](license_error_1['LicenseError']['ERROR_CODES'][_0x1143d4(0xde)])});return!0x0;}exports['checkStudioPermission']=checkStudioPermission,exports[a0_0x4e1ed8(0xe4)]=checkStudioTemplateIsOverLimit;
1
+ 'use strict';const a0_0x2a9dc0=a0_0x4737;function a0_0x4737(_0x65f200,_0x17e1d8){const _0x47ebd2=a0_0x47eb();return a0_0x4737=function(_0x4737c1,_0x477c8f){_0x4737c1=_0x4737c1-0x1c7;let _0x432049=_0x47ebd2[_0x4737c1];return _0x432049;},a0_0x4737(_0x65f200,_0x17e1d8);}function a0_0x47eb(){const _0x3c7663=['../../errors/license-error','checkStudioPermission','trim','manager','forEach','map','select','@things-factory/menu-base','355720YJvLIC','where','checkTarget','4vcaRZV','Permissions\x20For\x20Tailor\x20Tool','LicenseError','80765kvKPkv','378072bRLyUM','Menu','split','includes','Studio','119aKHfaF','createQueryBuilder','2087360RKcdvF','@things-factory/operato-license-checker','from','@things-factory/shell','defineProperty','getPermission','menu','1635267YjeTLP','checkStudioTemplateIsOverLimit','1025986cLMYAO','OVER_LIMIT','id\x20!=\x20:id','90xfEwPe','27858292OCtQfY','654PvLHSu','(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)','ERROR_CODES','getRepository'];a0_0x47eb=function(){return _0x3c7663;};return a0_0x47eb();}(function(_0x1af991,_0xe61d9d){const _0x257540=a0_0x4737,_0x531430=_0x1af991();while(!![]){try{const _0x3c9569=parseInt(_0x257540(0x1cf))/0x1+-parseInt(_0x257540(0x1ee))/0x2+parseInt(_0x257540(0x1cd))/0x3*(parseInt(_0x257540(0x1e3))/0x4)+parseInt(_0x257540(0x1e6))/0x5*(parseInt(_0x257540(0x1d4))/0x6)+-parseInt(_0x257540(0x1ec))/0x7*(-parseInt(_0x257540(0x1e7))/0x8)+parseInt(_0x257540(0x1d2))/0x9*(parseInt(_0x257540(0x1e0))/0xa)+-parseInt(_0x257540(0x1d3))/0xb;if(_0x3c9569===_0xe61d9d)break;else _0x531430['push'](_0x531430['shift']());}catch(_0x35e9cb){_0x531430['push'](_0x531430['shift']());}}}(a0_0x47eb,0xdf4bf));Object[a0_0x2a9dc0(0x1ca)](exports,'__esModule',{'value':!0x0}),exports[a0_0x2a9dc0(0x1ce)]=exports['checkStudioPermission']=void 0x0;const operato_license_checker_1=require(a0_0x2a9dc0(0x1c7)),shell_1=require(a0_0x2a9dc0(0x1c9)),menu_base_1=require(a0_0x2a9dc0(0x1df)),license_error_1=require(a0_0x2a9dc0(0x1d8));async function checkStudioPermission(){const _0x4abdfc=a0_0x2a9dc0;let _0x2e4cff=((0x0,operato_license_checker_1[_0x4abdfc(0x1cb)])(_0x4abdfc(0x1e4))||',')[_0x4abdfc(0x1e9)](',')[_0x4abdfc(0x1dd)](_0x11a81b=>_0x11a81b[_0x4abdfc(0x1da)]()),_0x3659=!0x1;return _0x2e4cff[_0x4abdfc(0x1dc)](_0xe0f920=>{const _0x4411a4=_0x4abdfc;_0xe0f920[_0x4411a4(0x1ea)](_0x4411a4(0x1eb))&&(_0x3659=!0x0);}),_0x3659;}async function checkStudioTemplateIsOverLimit(_0xd4a420,_0x31fcb8){const _0x455d3c=a0_0x2a9dc0;if(0x0==await checkStudioPermission())throw new license_error_1[(_0x455d3c(0x1e5))]({'errorCode':_0x31fcb8['t'](license_error_1[_0x455d3c(0x1e5)]['ERROR_CODES']['INVALID_LICENSE'])});var _0x340507=0x0;if(_0x340507=_0xd4a420&&''!=_0xd4a420?await(0x0,shell_1['getRepository'])(menu_base_1[_0x455d3c(0x1e8)])[_0x455d3c(0x1db)][_0x455d3c(0x1ed)]()[_0x455d3c(0x1de)](_0x455d3c(0x1cc))[_0x455d3c(0x1c8)](menu_base_1['Menu'],_0x455d3c(0x1cc))[_0x455d3c(0x1e1)](_0x455d3c(0x1d1),{'id':_0xd4a420})['andWhere']('(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)')['getCount']()+0x1:await(0x0,shell_1[_0x455d3c(0x1d7)])(menu_base_1[_0x455d3c(0x1e8)])[_0x455d3c(0x1db)][_0x455d3c(0x1ed)]()[_0x455d3c(0x1de)]('menu')['from'](menu_base_1['Menu'],_0x455d3c(0x1cc))[_0x455d3c(0x1e1)](_0x455d3c(0x1d5))['getCount']()+0x1,!(0x0,operato_license_checker_1[_0x455d3c(0x1e2)])(_0x340507))throw new license_error_1[(_0x455d3c(0x1e5))]({'errorCode':_0x31fcb8['t'](license_error_1[_0x455d3c(0x1e5)][_0x455d3c(0x1d6)][_0x455d3c(0x1d0)])});return!0x0;}exports[a0_0x2a9dc0(0x1d9)]=checkStudioPermission,exports['checkStudioTemplateIsOverLimit']=checkStudioTemplateIsOverLimit;
@@ -1 +1 @@
1
- 'use strict';const a0_0x6884c7=a0_0x4856;(function(_0x1b4bc5,_0x556028){const _0x53b2c4=a0_0x4856,_0x11086d=_0x1b4bc5();while(!![]){try{const _0x598c1d=parseInt(_0x53b2c4(0xc5))/0x1+-parseInt(_0x53b2c4(0xb0))/0x2*(-parseInt(_0x53b2c4(0xbd))/0x3)+parseInt(_0x53b2c4(0xb4))/0x4*(-parseInt(_0x53b2c4(0xab))/0x5)+parseInt(_0x53b2c4(0xaa))/0x6*(parseInt(_0x53b2c4(0xb7))/0x7)+-parseInt(_0x53b2c4(0xac))/0x8*(-parseInt(_0x53b2c4(0xc2))/0x9)+parseInt(_0x53b2c4(0xc6))/0xa+-parseInt(_0x53b2c4(0xbb))/0xb;if(_0x598c1d===_0x556028)break;else _0x11086d['push'](_0x11086d['shift']());}catch(_0x565e5f){_0x11086d['push'](_0x11086d['shift']());}}}(a0_0x2f11,0x63cef));Object[a0_0x6884c7(0xba)](exports,a0_0x6884c7(0xb8),{'value':!0x0}),exports[a0_0x6884c7(0xb9)]=void 0x0;const tslib_1=require('tslib'),type_graphql_1=require(a0_0x6884c7(0xc7)),tool_permission_1=require(a0_0x6884c7(0xc0));function a0_0x4856(_0x5e2b84,_0x72e045){const _0x2f113b=a0_0x2f11();return a0_0x4856=function(_0x485683,_0x5698fc){_0x485683=_0x485683-0xaa;let _0xeab908=_0x2f113b[_0x485683];return _0xeab908;},a0_0x4856(_0x5e2b84,_0x72e045);}let OperatoToolResolver=class{async[a0_0x6884c7(0xaf)](_0x9ab09){return(0x0,tool_permission_1['checkStudioPermission'])();}async[a0_0x6884c7(0xbc)](_0x388394,_0x21aa60){const _0x29aa1c=a0_0x6884c7;return(0x0,tool_permission_1[_0x29aa1c(0xbe)])(_0x388394,_0x21aa60);}};tslib_1[a0_0x6884c7(0xc4)]([(0x0,type_graphql_1[a0_0x6884c7(0xae)])(_0x1a4379=>Boolean,{'description':'Operato\x20Tool\x20Studio\x20Usage\x20Permissions'}),tslib_1[a0_0x6884c7(0xb6)](0x0,(0x0,type_graphql_1[a0_0x6884c7(0xc1)])()),tslib_1[a0_0x6884c7(0xad)]('design:type',Function),tslib_1[a0_0x6884c7(0xad)](a0_0x6884c7(0xbf),[Object]),tslib_1['__metadata'](a0_0x6884c7(0xc3),Promise)],OperatoToolResolver[a0_0x6884c7(0xb3)],a0_0x6884c7(0xaf),null),tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x6884c7(0xae)])(_0x3a1dfd=>Boolean,{'description':a0_0x6884c7(0xb5)}),tslib_1[a0_0x6884c7(0xb6)](0x0,(0x0,type_graphql_1['Arg'])('id')),tslib_1[a0_0x6884c7(0xb6)](0x1,(0x0,type_graphql_1['Ctx'])()),tslib_1[a0_0x6884c7(0xad)](a0_0x6884c7(0xb1),Function),tslib_1['__metadata'](a0_0x6884c7(0xbf),[String,Object]),tslib_1[a0_0x6884c7(0xad)](a0_0x6884c7(0xc3),Promise)],OperatoToolResolver[a0_0x6884c7(0xb3)],'studioTemplateIsOverLimit',null),OperatoToolResolver=tslib_1[a0_0x6884c7(0xc4)]([(0x0,type_graphql_1[a0_0x6884c7(0xb2)])()],OperatoToolResolver),exports[a0_0x6884c7(0xb9)]=OperatoToolResolver;function a0_0x2f11(){const _0x501592=['type-graphql','1511358ogdjTZ','5mrFYzR','331976WNexbU','__metadata','Query','studioPermission','10SltwOq','design:type','Resolver','prototype','460388WNKUMH','Operato\x20Tool\x20Studio\x20Limit\x20check','__param','14rbMuSq','__esModule','OperatoToolResolver','defineProperty','10621215TRjjbx','studioTemplateIsOverLimit','107034fxQSTK','checkStudioTemplateIsOverLimit','design:paramtypes','./tool-permission','Ctx','27ohhkye','design:returntype','__decorate','190059sPbpKj','4927510VMBFYh'];a0_0x2f11=function(){return _0x501592;};return a0_0x2f11();}
1
+ 'use strict';const a0_0x28058b=a0_0x2515;function a0_0x3fe9(){const _0x508ad7=['1493540cGPkAd','21LIeyCF','design:paramtypes','design:type','18773330lrimpP','__metadata','defineProperty','Ctx','3heGmLR','10606548SxZOWD','studioTemplateIsOverLimit','OperatoToolResolver','9csdLjc','design:returntype','3176872wdrkGc','__param','5CJkGLx','checkStudioPermission','Operato\x20Tool\x20Studio\x20Limit\x20check','__decorate','Operato\x20Tool\x20Studio\x20Usage\x20Permissions','165xBEYMb','2585076qxOqME','176708TgjECO','tslib','studioPermission','Resolver','Arg','prototype','1937912sgbNrh','Query'];a0_0x3fe9=function(){return _0x508ad7;};return a0_0x3fe9();}function a0_0x2515(_0x234c55,_0x2f70a9){const _0x3fe9a3=a0_0x3fe9();return a0_0x2515=function(_0x251590,_0x453da6){_0x251590=_0x251590-0xa9;let _0x4b6510=_0x3fe9a3[_0x251590];return _0x4b6510;},a0_0x2515(_0x234c55,_0x2f70a9);}(function(_0x5348c8,_0x1b8f24){const _0x110f74=a0_0x2515,_0x510063=_0x5348c8();while(!![]){try{const _0x3034ae=parseInt(_0x110f74(0xb4))/0x1+-parseInt(_0x110f74(0xab))/0x2*(-parseInt(_0x110f74(0xc4))/0x3)+parseInt(_0x110f74(0xbc))/0x4+-parseInt(_0x110f74(0xad))/0x5*(parseInt(_0x110f74(0xc5))/0x6)+parseInt(_0x110f74(0xbd))/0x7*(-parseInt(_0x110f74(0xba))/0x8)+-parseInt(_0x110f74(0xa9))/0x9*(parseInt(_0x110f74(0xc0))/0xa)+-parseInt(_0x110f74(0xb2))/0xb*(-parseInt(_0x110f74(0xb3))/0xc);if(_0x3034ae===_0x1b8f24)break;else _0x510063['push'](_0x510063['shift']());}catch(_0x19794b){_0x510063['push'](_0x510063['shift']());}}}(a0_0x3fe9,0xf3ab2));Object[a0_0x28058b(0xc2)](exports,'__esModule',{'value':!0x0}),exports[a0_0x28058b(0xc7)]=void 0x0;const tslib_1=require(a0_0x28058b(0xb5)),type_graphql_1=require('type-graphql'),tool_permission_1=require('./tool-permission');let OperatoToolResolver=class{async['studioPermission'](_0x54b5a4){const _0x4087cf=a0_0x28058b;return(0x0,tool_permission_1[_0x4087cf(0xae)])();}async['studioTemplateIsOverLimit'](_0x19fb3f,_0x1fb573){return(0x0,tool_permission_1['checkStudioTemplateIsOverLimit'])(_0x19fb3f,_0x1fb573);}};tslib_1[a0_0x28058b(0xb0)]([(0x0,type_graphql_1[a0_0x28058b(0xbb)])(_0x195102=>Boolean,{'description':a0_0x28058b(0xb1)}),tslib_1[a0_0x28058b(0xac)](0x0,(0x0,type_graphql_1[a0_0x28058b(0xc3)])()),tslib_1[a0_0x28058b(0xc1)]('design:type',Function),tslib_1[a0_0x28058b(0xc1)]('design:paramtypes',[Object]),tslib_1['__metadata'](a0_0x28058b(0xaa),Promise)],OperatoToolResolver[a0_0x28058b(0xb9)],a0_0x28058b(0xb6),null),tslib_1[a0_0x28058b(0xb0)]([(0x0,type_graphql_1['Query'])(_0x1938dd=>Boolean,{'description':a0_0x28058b(0xaf)}),tslib_1[a0_0x28058b(0xac)](0x0,(0x0,type_graphql_1[a0_0x28058b(0xb8)])('id')),tslib_1[a0_0x28058b(0xac)](0x1,(0x0,type_graphql_1['Ctx'])()),tslib_1[a0_0x28058b(0xc1)](a0_0x28058b(0xbf),Function),tslib_1[a0_0x28058b(0xc1)](a0_0x28058b(0xbe),[String,Object]),tslib_1['__metadata'](a0_0x28058b(0xaa),Promise)],OperatoToolResolver['prototype'],a0_0x28058b(0xc6),null),OperatoToolResolver=tslib_1[a0_0x28058b(0xb0)]([(0x0,type_graphql_1[a0_0x28058b(0xb7)])()],OperatoToolResolver),exports[a0_0x28058b(0xc7)]=OperatoToolResolver;