@things-factory/operato-tools 6.1.30 → 6.1.32
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.
- package/client/actions/main.js +1 -1
- package/client/pages/generator/button-config-tab-mixin.js +4 -4
- package/client/pages/generator/column-config-tab-mixin.js +4 -4
- package/client/pages/generator/etc-config-tab-mixin.js +4 -4
- package/client/pages/generator/form-config-tab-mixin.js +4 -4
- package/client/pages/generator/graphql-config-tab-mixin.js +24 -24
- package/client/pages/generator/grid-config-tab-mixin.js +23 -23
- package/client/pages/generator/grid-emphasized-config-tab-mixin.js +7 -7
- package/client/pages/generator/menu-config-tab-mixin.js +11 -11
- package/client/pages/generator/meta-generator-page.js +10 -10
- package/client/pages/generator/search-config-tab-mixin.js +4 -4
- package/client/pages/generator/tab-config-tab-mixin.js +4 -4
- package/client/pages/main.js +4 -4
- package/client/reducers/main.js +1 -1
- package/package.json +3 -3
- package/server/constants/error-code.js +1 -1
- package/server/errors/license-error.js +1 -1
- package/server/routes.js +1 -1
- package/server/service/tool-entity/create-menu.js +1 -1
- package/server/service/tool-entity/create-service.js +1 -1
- package/server/service/tool-secret/tool-permission.js +1 -1
- package/server/service/tool-secret/tool-resolver.js +1 -1
package/client/pages/main.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var
|
|
1
|
+
var a0_0x1c393f=a0_0x2704;(function(_0x56329b,_0x130cc6){var _0x238367=a0_0x2704,_0x43fb62=_0x56329b();while(!![]){try{var _0xc4fc76=parseInt(_0x238367(0x148))/0x1*(parseInt(_0x238367(0x143))/0x2)+parseInt(_0x238367(0x151))/0x3+-parseInt(_0x238367(0x14f))/0x4*(-parseInt(_0x238367(0x14a))/0x5)+parseInt(_0x238367(0x14b))/0x6*(parseInt(_0x238367(0x14e))/0x7)+-parseInt(_0x238367(0x152))/0x8*(parseInt(_0x238367(0x14d))/0x9)+parseInt(_0x238367(0x147))/0xa*(-parseInt(_0x238367(0x145))/0xb)+-parseInt(_0x238367(0x149))/0xc;if(_0xc4fc76===_0x130cc6)break;else _0x43fb62['push'](_0x43fb62['shift']());}catch(_0x5e485d){_0x43fb62['push'](_0x43fb62['shift']());}}}(a0_0x5d49,0x379ac));import{html,css}from'lit-element';import{connect}from'pwa-helpers/connect-mixin.js';function a0_0x2704(_0x360260,_0x125252){var _0x5d49de=a0_0x5d49();return a0_0x2704=function(_0x270426,_0x131cc8){_0x270426=_0x270426-0x143;var _0x52397f=_0x5d49de[_0x270426];return _0x52397f;},a0_0x2704(_0x360260,_0x125252);}import{store,PageView}from'@things-factory/shell';import{TermsUtil}from'@things-factory/meta-ui';function a0_0x5d49(){var _0x126c24=['9vOnhor','14CLxOuz','4RnFHEb','tool\x20start\x20msg','871245QNDPts','3429464uXgbgQ','6ucyVct','context','5159YGoaJo','operato-tools-main','230DTxSLR','136201jyqLMS','2852844UZAiAt','678905vVvpnn','210492xgrVDN','render'];a0_0x5d49=function(){return _0x126c24;};return a0_0x5d49();}class OperatoToolsMain extends connect(store)(PageView){static get['styles'](){return[css`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
background-color: var(--main-section-background-color);
|
|
@@ -41,11 +41,11 @@ var a0_0xbf498=a0_0x25fc;(function(_0x42b4b4,_0x2d78d3){var _0x575def=a0_0x25fc,
|
|
|
41
41
|
display: none;
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
`];}get[
|
|
44
|
+
`];}get[a0_0x1c393f(0x144)](){return{'title':'Operato\x20Tools','actions':[]};}[a0_0x1c393f(0x14c)](){var _0x3ce6ff=a0_0x1c393f;return html`
|
|
45
45
|
<h2>Operato Tools</h2>
|
|
46
46
|
<p page-description>
|
|
47
|
-
${TermsUtil['tText'](
|
|
47
|
+
${TermsUtil['tText'](_0x3ce6ff(0x150))}
|
|
48
48
|
</p>
|
|
49
49
|
|
|
50
50
|
<img src="/assets/images/operato-tools.png" />
|
|
51
|
-
`;}}window[
|
|
51
|
+
`;}}window['customElements']['define'](a0_0x1c393f(0x146),OperatoToolsMain);
|
package/client/reducers/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x37061f=a0_0x274e;(function(_0x27e215,_0x15ef15){const _0x441896=a0_0x274e,_0x46d27e=_0x27e215();while(!![]){try{const _0x2a51b0=-parseInt(_0x441896(0x143))/0x1+parseInt(_0x441896(0x13e))/0x2*(parseInt(_0x441896(0x137))/0x3)+parseInt(_0x441896(0x141))/0x4*(-parseInt(_0x441896(0x140))/0x5)+-parseInt(_0x441896(0x13b))/0x6+-parseInt(_0x441896(0x13a))/0x7+parseInt(_0x441896(0x13f))/0x8*(parseInt(_0x441896(0x13d))/0x9)+parseInt(_0x441896(0x138))/0xa;if(_0x2a51b0===_0x15ef15)break;else _0x46d27e['push'](_0x46d27e['shift']());}catch(_0xf18f32){_0x46d27e['push'](_0x46d27e['shift']());}}}(a0_0x5462,0x1abf7));import a0_0x536710 from'graphql-tag';import{i18next}from'@operato/i18n';import{store}from'@operato/shell';import{client,gqlContext}from'@operato/graphql';import{UPDATE_OPERATO_TOOLS}from'../actions/main';const INITIAL_STATE={'operatoTools':a0_0x37061f(0x139),'studioPermission':!0x1};export const UPDATE_OPERATO_TOOLS_PERMISSION=a0_0x37061f(0x13c);function a0_0x274e(_0x48b4dc,_0x582a9f){const _0x546276=a0_0x5462();return a0_0x274e=function(_0x274e38,_0x2be239){_0x274e38=_0x274e38-0x137;let _0x5f3b4c=_0x546276[_0x274e38];return _0x5f3b4c;},a0_0x274e(_0x48b4dc,_0x582a9f);}((async()=>{const _0x4ebf22=a0_0x37061f;var _0x1d8042=await client['query']({'query':a0_0x536710`{studioPermission}`});let _0x12bb50=!0x1;_0x1d8042['errors']||(_0x12bb50=_0x1d8042['data']['studioPermission']),store[_0x4ebf22(0x142)]({'type':UPDATE_OPERATO_TOOLS_PERMISSION,'state':{'studioPermission':_0x12bb50}});})());const operatoTools=(_0x472e91=INITIAL_STATE,_0x4a079b)=>{switch(_0x4a079b['type']){case UPDATE_OPERATO_TOOLS:return{..._0x472e91};case UPDATE_OPERATO_TOOLS_PERMISSION:return{...INITIAL_STATE,..._0x4a079b['state']};default:return _0x472e91;}};function a0_0x5462(){const _0x35fe07=['UPDATE_OPERATO_TOOLS_PERMISSION','457974UaFWnY','398742KFMYwA','32JwRbAS','24030bOEgye','88GwWUHy','dispatch','136055OYDPLl','3MxiLOR','1870050kGQpwS','ABC','1449973TMTneV','188610iKZgfR'];a0_0x5462=function(){return _0x35fe07;};return a0_0x5462();}export default operatoTools;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/operato-tools",
|
|
3
|
-
"version": "6.1.
|
|
3
|
+
"version": "6.1.32",
|
|
4
4
|
"main": "server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
"docker:run": "docker run -it -p 4000:3000 hatiolab/operato-tools:latest"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@things-factory/meta-ui": "^6.1.
|
|
32
|
+
"@things-factory/meta-ui": "^6.1.32",
|
|
33
33
|
"@things-factory/operato-license-checker": "^3.1.0"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@things-factory/builder": "^6.1.28",
|
|
37
37
|
"@things-factory/meta-ui": "^6.0.0-alpha.6"
|
|
38
38
|
},
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "bc25e4bddf354e780176b9b74d64fc0a00d38c00"
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var a0_0x3b26a2=a0_0x18ea;(function(_0x4463fc,_0x1f0851){var _0x5d1f1e=a0_0x18ea,_0x1ad1b0=_0x4463fc();while(!![]){try{var _0x571ead=-parseInt(_0x5d1f1e(0x65))/0x1+-parseInt(_0x5d1f1e(0x64))/0x2*(-parseInt(_0x5d1f1e(0x67))/0x3)+parseInt(_0x5d1f1e(0x70))/0x4+parseInt(_0x5d1f1e(0x6d))/0x5+-parseInt(_0x5d1f1e(0x6e))/0x6*(parseInt(_0x5d1f1e(0x6a))/0x7)+parseInt(_0x5d1f1e(0x66))/0x8*(-parseInt(_0x5d1f1e(0x6f))/0x9)+parseInt(_0x5d1f1e(0x6b))/0xa*(parseInt(_0x5d1f1e(0x71))/0xb);if(_0x571ead===_0x1f0851)break;else _0x1ad1b0['push'](_0x1ad1b0['shift']());}catch(_0x248a5a){_0x1ad1b0['push'](_0x1ad1b0['shift']());}}}(a0_0x1c7e,0x1b3e6));Object[a0_0x3b26a2(0x68)](exports,'__esModule',{'value':!0x0}),exports['OVER_LIMIT']=exports[a0_0x3b26a2(0x72)]=void 0x0,exports[a0_0x3b26a2(0x72)]=a0_0x3b26a2(0x69),exports[a0_0x3b26a2(0x6c)]='error.page\x20count\x20over\x20license\x20limit';function a0_0x18ea(_0x274389,_0x22399e){var _0x1c7ef5=a0_0x1c7e();return a0_0x18ea=function(_0x18eaf4,_0x4c61bc){_0x18eaf4=_0x18eaf4-0x64;var _0x1033aa=_0x1c7ef5[_0x18eaf4];return _0x1033aa;},a0_0x18ea(_0x274389,_0x22399e);}function a0_0x1c7e(){var _0x615ad3=['378745zNwPDN','126DHJXsX','1791Umlvfv','276844rhxrcz','44gOrnfP','INVALID_LICENSE','8318jEBAZD','18679XMCGmG','6744HsXTiA','84zrsPCp','defineProperty','error.invalid\x20license\x20key','20706pnRaaE','246830mYcahr','OVER_LIMIT'];a0_0x1c7e=function(){return _0x615ad3;};return a0_0x1c7e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0x11ac90=a0_0x314a;(function(_0x40bcb3,_0x13a6c5){const _0x2b9992=a0_0x314a,_0x32f4a1=_0x40bcb3();while(!![]){try{const _0x25efdc=-parseInt(_0x2b9992(0x180))/0x1*(parseInt(_0x2b9992(0x17a))/0x2)+-parseInt(_0x2b9992(0x188))/0x3+parseInt(_0x2b9992(0x178))/0x4+parseInt(_0x2b9992(0x17f))/0x5+parseInt(_0x2b9992(0x189))/0x6*(-parseInt(_0x2b9992(0x184))/0x7)+-parseInt(_0x2b9992(0x186))/0x8*(-parseInt(_0x2b9992(0x17c))/0x9)+-parseInt(_0x2b9992(0x176))/0xa;if(_0x25efdc===_0x13a6c5)break;else _0x32f4a1['push'](_0x32f4a1['shift']());}catch(_0x4d00d5){_0x32f4a1['push'](_0x32f4a1['shift']());}}}(a0_0x2567,0x1f006));function a0_0x2567(){const _0x2211f8=['6SwogFl','2333820EnsIjs','tslib','826508sKZcsh','LicenseError','152MfGKdZ','ERROR_CODES','9qppSAy','defineProperty','license-error','1134710qFxkvC','334GKlqQH','__esModule','__importStar','name','893249jjXXHv','assign','1730992NNgKMn','detail','409764RbJCWX'];a0_0x2567=function(){return _0x2211f8;};return a0_0x2567();}Object[a0_0x11ac90(0x17d)](exports,a0_0x11ac90(0x181),{'value':!0x0}),exports[a0_0x11ac90(0x179)]=void 0x0;function a0_0x314a(_0x702682,_0x28fa03){const _0x2567f2=a0_0x2567();return a0_0x314a=function(_0x314a8e,_0x36f24e){_0x314a8e=_0x314a8e-0x176;let _0x3b76f3=_0x2567f2[_0x314a8e];return _0x3b76f3;},a0_0x314a(_0x702682,_0x28fa03);}const tslib_1=require(a0_0x11ac90(0x177)),ERROR_CODES=tslib_1[a0_0x11ac90(0x182)](require('../constants/error-code'));class LicenseError extends Error{static get[a0_0x11ac90(0x17b)](){const _0x443f61=a0_0x11ac90;return Object[_0x443f61(0x185)]({},ERROR_CODES);}constructor({errorCode:_0x54a289,detail:_0x553387}){const _0x3f937b=a0_0x11ac90;super(_0x54a289),this[_0x3f937b(0x183)]=_0x3f937b(0x17e),this['errorCode']=_0x54a289,this[_0x3f937b(0x187)]=_0x553387;}}exports[a0_0x11ac90(0x179)]=LicenseError;
|
package/server/routes.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a0_0x128b(){const _0x123438=['1332850hkXeYb','debug','183100UXtXhL','bootstrap-module-domain-public-route','1263331WakWZB','things-factory:operato-tools:routes','3743910Hmxbzv','3491796BTItcE','bootstrap-module-global-private-route','7103719MaLZZn','3756036ScPvRz'];a0_0x128b=function(){return _0x123438;};return a0_0x128b();}function a0_0x44ce(_0x5c6652,_0x2e5c3d){const _0x128ba2=a0_0x128b();return a0_0x44ce=function(_0x44ce0a,_0x40b544){_0x44ce0a=_0x44ce0a-0x1c4;let _0x36cfdd=_0x128ba2[_0x44ce0a];return _0x36cfdd;},a0_0x44ce(_0x5c6652,_0x2e5c3d);}const a0_0x3b4688=a0_0x44ce;(function(_0x413358,_0x2c865b){const _0x5b14c0=a0_0x44ce,_0x273edb=_0x413358();while(!![]){try{const _0x4fbf31=parseInt(_0x5b14c0(0x1cd))/0x1+-parseInt(_0x5b14c0(0x1cb))/0x2+-parseInt(_0x5b14c0(0x1c4))/0x3+parseInt(_0x5b14c0(0x1c5))/0x4+parseInt(_0x5b14c0(0x1c9))/0x5+parseInt(_0x5b14c0(0x1c8))/0x6+-parseInt(_0x5b14c0(0x1c7))/0x7;if(_0x4fbf31===_0x2c865b)break;else _0x273edb['push'](_0x273edb['shift']());}catch(_0x33b8ed){_0x273edb['push'](_0x273edb['shift']());}}}(a0_0x128b,0xa4ad7));const debug=require(a0_0x3b4688(0x1ca))(a0_0x3b4688(0x1ce));process['on']('bootstrap-module-global-public-route',(_0x1798e5,_0x58229f)=>{}),process['on'](a0_0x3b4688(0x1c6),(_0x3c17e7,_0x540812)=>{}),process['on'](a0_0x3b4688(0x1cc),(_0x1a98a6,_0x488312)=>{}),process['on']('bootstrap-module-domain-private-route',(_0x355ced,_0x2c77cc)=>{});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function a0_0x2fcd(){const _0x4f15a6=['split','Entity','readonly','gridRank','join','1308YXNbhR','refName','code','defineProperty','\x27\x20or\x20id\x20=\x20\x27','refType','\x22,\x22width\x22:\x20100,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22,\x22object_opt\x22:{\x22queryName\x22:\x22users\x22}}','aes-256-cfb1','1573160ytcQyR','replace','\x20,\x22exportable\x22:\x20true','searchOper','sortRank',',\x22select_opt\x22:{\x22type\x22:\x22code\x22,\x22name\x22:\x22','creator','__decorate','updater_id','aes-256-cfb','dataProp','tslib','Menu','aes-256-cbc','substring','2603ddqprR','aes-256-ctr','\x22,\x22width\x22:','scenario','stringify','__param','aes-256-ecb','COPY','template','assign',',\x22select_opt\x22:{\x22type\x22:\x22scenario\x22,\x22name\x22:\x22','menuType',',\x22sortable\x22:true\x20,\x22align\x22:\x20\x22','enc','left','string','filter','{\x22type\x22:\x20\x22datetime\x22,\x22name\x22:\x20\x22','resourceUrl','map','createSearchCols','\x22,\x22name\x22:\x20\x22','aes-256-cfb8','75204fSZxaj','toolCreateMenu','find','592990RvnUCW','@things-factory/meta-ui/client/pages/meta-grist-page','parent_menu_id','\x22,\x22width\x22:\x20160,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22}','utf8','push','OperatoToolCreateMenu','274kwtsZH','updater','name','sort','select\x20coalesce(max(rank),0)\x20as\x20rank\x20from\x20menus\x20where\x20parent_id\x20=\x20\x27','\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',',\x22select_opt\x22:{\x22type\x22:\x20\x22entity\x22,\x22args\x22:\x20{\x22queryName\x22:\x20\x22','Resolver','category','SCREEN','searchRank','\x20,\x22editable\x22:\x20','entity','design:type','\x22,\x22header\x22:\x20\x22','@transaction','__metadata','Mutation','update','getRepository','prototype','48MRIUAk','createGridColumns','length','6mwKskb','aes256','JSON','creator_id','lodash','createCipheriv','checkStudioTemplateIsOverLimit','createMenuData','type-graphql','\x22,\x22hidden\x22:','704FokYQo','design:returntype','default','meta-grist-page','./../tool-secret/tool-permission','{\x22name\x22:\x22','h1z0q9i9x7q6','updatedAt','aes-256-ofb','final','2448754ACTnKP','__importDefault','\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','parent','EntityColumn','hidden','\x22,\x22codeField\x22:\x20\x22id\x22,\x22dispField\x22:\x20\x22name\x22}}','69aJSDBG','Directive','from','Operato\x20Tool\x20Create\x20Menu','222741hVlANp','findOne','routing','Arg','hex','createSortCols','created_at','randomBytes','updated_at'];a0_0x2fcd=function(){return _0x4f15a6;};return a0_0x2fcd();}const a0_0x4da135=a0_0x2642;(function(_0x497764,_0x110428){const _0x56d28a=a0_0x2642,_0xfb20fc=_0x497764();while(!![]){try{const _0x4ad182=-parseInt(_0x56d28a(0xa5))/0x1*(parseInt(_0x56d28a(0xc6))/0x2)+parseInt(_0x56d28a(0x7c))/0x3*(-parseInt(_0x56d28a(0x8e))/0x4)+parseInt(_0x56d28a(0xbf))/0x5+parseInt(_0x56d28a(0xde))/0x6*(parseInt(_0x56d28a(0xf2))/0x7)+-parseInt(_0x56d28a(0xdb))/0x8*(parseInt(_0x56d28a(0x80))/0x9)+-parseInt(_0x56d28a(0x96))/0xa+-parseInt(_0x56d28a(0xe8))/0xb*(-parseInt(_0x56d28a(0xbc))/0xc);if(_0x4ad182===_0x110428)break;else _0xfb20fc['push'](_0xfb20fc['shift']());}catch(_0x240ba9){_0xfb20fc['push'](_0xfb20fc['shift']());}}}(a0_0x2fcd,0x30b8e));Object[a0_0x4da135(0x91)](exports,'__esModule',{'value':!0x0}),exports[a0_0x4da135(0xc5)]=void 0x0;function a0_0x2642(_0x117baf,_0x478329){const _0x2fcd2d=a0_0x2fcd();return a0_0x2642=function(_0x264233,_0x363f26){_0x264233=_0x264233-0x78;let _0x276190=_0x2fcd2d[_0x264233];return _0x276190;},a0_0x2642(_0x117baf,_0x478329);}const tslib_1=require(a0_0x4da135(0xa1)),type_graphql_1=require(a0_0x4da135(0xe6)),resource_base_1=require('@things-factory/resource-base'),menu_base_1=require('@things-factory/menu-base'),tool_permission_1=require(a0_0x4da135(0xec)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x4da135(0xe2)),{plural:plural}=require('pluralize'),crypto_1=tslib_1[a0_0x4da135(0xf3)](require('crypto'));let OperatoToolCreateMenu=class{async[a0_0x4da135(0xbd)](_0x5505d7,_0x319a3c,_0x1c99cf){const _0x28eeac=a0_0x4da135,{domain:_0x2ccd29,user:_0x59b41d,tx:_0x276144}=_0x1c99cf['state'];await(0x0,tool_permission_1[_0x28eeac(0xe4)])('',_0x1c99cf);const _0x45cccb=await _0x276144[_0x28eeac(0xd9)](resource_base_1[_0x28eeac(0x8a)])[_0x28eeac(0x81)]({'where':{'domain':{'id':_0x2ccd29['id']},'id':_0x5505d7}}),_0x252306=await _0x276144['getRepository'](resource_base_1[_0x28eeac(0x79)])[_0x28eeac(0xbe)]({'where':{'domain':{'id':_0x2ccd29['id']},'entity':{'id':_0x45cccb['id']}}});let {name:_0x2c8055=''}=_0x45cccb||{},_0x565cdb=kebabCase(_0x2c8055),_0xdd93f=modelTemplate[_0x28eeac(0x97)](/{{pascalCase name}}/g,startCase(camelCase(_0x2c8055))[_0x28eeac(0x97)](/ /g,''))[_0x28eeac(0x97)](/{{camelCase name}}/g,camelCase(_0x2c8055))[_0x28eeac(0x97)](/{{snakeCase name}}/g,snakeCase(_0x2c8055))[_0x28eeac(0x97)](/{{pluralPascalCase name}}/g,startCase(camelCase(plural(_0x2c8055)))[_0x28eeac(0x97)](/ /g,''))['replace'](/{{pluralCamelCase name}}/g,camelCase(plural(_0x2c8055)))[_0x28eeac(0x97)](/{{name}}/g,_0x2c8055),_0x3a0dc2='';_0x28eeac(0xe0)==_0x45cccb[_0x28eeac(0xa0)]?_0x3a0dc2=_0x28eeac(0xf4):_0x28eeac(0xac)==_0x45cccb[_0x28eeac(0xa0)]&&(_0x3a0dc2=_0x28eeac(0xcb)),_0xdd93f=_0xdd93f[_0x28eeac(0x97)](/{{HistoryButton}}/g,_0x3a0dc2);let _0x5f4a54=this[_0x28eeac(0x85)](_0x252306);_0xdd93f=_0xdd93f[_0x28eeac(0x97)](/{{SortColumns}}/g,_0x5f4a54[_0x28eeac(0x8d)](','));let _0x56d188=this[_0x28eeac(0xb9)](_0x252306);_0xdd93f=_0xdd93f[_0x28eeac(0x97)](/{{SearchColumns}}/g,_0x56d188['join'](','));let _0x2dd7ec=this[_0x28eeac(0xdc)](_0x252306);return _0xdd93f=_0xdd93f[_0x28eeac(0x97)](/{{GridColumns}}/g,_0x2dd7ec[_0x28eeac(0x8d)](',')),_0xdd93f=this[_0x28eeac(0xb2)](_0xdd93f),await this[_0x28eeac(0xe5)](_0x276144,_0x2ccd29,_0x59b41d,_0x319a3c,_0x565cdb,_0xdd93f),!0x0;}[a0_0x4da135(0xdc)](_0x5ee0d6){const _0x3f4461=a0_0x4da135;return _0x5ee0d6[_0x3f4461(0xb5)](_0xf1a6f8=>'id'!=_0xf1a6f8[_0x3f4461(0xc8)]&&_0xf1a6f8[_0x3f4461(0x8c)]>0x0)[_0x3f4461(0xc9)](function(_0x4f21ff,_0x5e434f){const _0x508a5b=_0x3f4461;return _0x4f21ff[_0x508a5b(0x8c)]-_0x5e434f[_0x508a5b(0x8c)];})[_0x3f4461(0xb8)](_0x388ac3=>{const _0x50847f=_0x3f4461;let {gridEditor:_0x3bdbee=_0x50847f(0xb4),name:_0x3a1299,term:_0x411c66,gridWidth:_0x13a787=0x0,gridAlign:_0x500bde='left',nullable:_0x51b239=!0x1}=_0x388ac3;if(null==_0x3bdbee&&(_0x3bdbee=_0x50847f(0xb4)),null==_0x500bde&&(_0x500bde=_0x50847f(0xb3)),_0x50847f(0x9e)==_0x3a1299||_0x50847f(0xe1)==_0x3a1299)return _0x3a1299=_0x50847f(0x9e)==_0x3a1299?_0x50847f(0xc7):_0x50847f(0x9c),'{\x22type\x22:\x20\x22object\x22,\x22name\x22:\x20\x22'+_0x3a1299+'\x22,\x22header\x22:\x20\x22'+_0x3a1299+_0x50847f(0x94);if(_0x50847f(0x88)==_0x3a1299||_0x50847f(0x86)==_0x3a1299)return _0x50847f(0xb6)+(_0x50847f(0x88)==_0x3a1299?_0x50847f(0xef):'createdAt')+_0x50847f(0xd4)+_0x3a1299+_0x50847f(0xc2);let _0x40cd13=_0x50847f(0x8b)!=_0x3bdbee&&_0x50847f(0x7a)!=_0x3bdbee,_0x193612=_0x50847f(0x7a)==_0x3bdbee;0x1!=_0x193612&&0x0!=_0x40cd13||(_0x3bdbee=_0x50847f(0xb4));let _0x241d53='{\x22type\x22:\x20\x22'+_0x3bdbee+_0x50847f(0xba)+camelCase(_0x3a1299)+_0x50847f(0xd4)+_0x411c66+_0x50847f(0xe7)+_0x193612+_0x50847f(0xd1)+_0x40cd13+',\x22mandatory\x22:\x20'+!_0x51b239+_0x50847f(0xb1)+_0x500bde+_0x50847f(0xa7)+_0x13a787+_0x50847f(0x98);return _0x50847f(0x90)==_0x388ac3[_0x50847f(0x93)]&&(_0x241d53+=_0x50847f(0x9b)+_0x388ac3[_0x50847f(0x8f)]+'\x22}'),_0x50847f(0xa8)==_0x388ac3[_0x50847f(0x93)]&&(_0x241d53+=_0x50847f(0xaf)+_0x388ac3[_0x50847f(0x8f)]+'\x22}'),_0x50847f(0xd2)==_0x388ac3['refType']&&(_0x241d53+=_0x50847f(0xcc)+camelCase(plural(_0x388ac3[_0x50847f(0x8f)]))+_0x50847f(0x7b)),_0x241d53+='}',_0x241d53;});}[a0_0x4da135(0xb9)](_0x215411){const _0x1e919e=a0_0x4da135;return _0x215411[_0x1e919e(0xb5)](_0x42c5e7=>_0x42c5e7[_0x1e919e(0xd0)]>0x0)[_0x1e919e(0xc9)](function(_0x5081d7,_0x58d454){return _0x5081d7['searchRank']-_0x58d454['searchRank'];})[_0x1e919e(0xb8)](_0x5deed1=>{const _0x3ae54d=_0x1e919e;let _0x5dfe27=_0x5deed1[_0x3ae54d(0x99)];return _0x3ae54d(0xb5)==_0x5dfe27?'\x22'+camelCase(_0x5deed1[_0x3ae54d(0xc8)])+'\x22':(_0x5dfe27||(_0x5dfe27='eq'),'{\x22name\x22:\x20\x22'+camelCase(_0x5deed1['name'])+'\x22,\x22operator\x22:\x20\x22'+_0x5dfe27+'\x22}');});}[a0_0x4da135(0x85)](_0x41b92c){const _0x59c8ac=a0_0x4da135;return _0x41b92c['filter'](_0x4a2cd6=>_0x4a2cd6['sortRank']>0x0)[_0x59c8ac(0xc9)](function(_0x522144,_0x734fa4){const _0x4e2059=_0x59c8ac;return _0x522144[_0x4e2059(0x9a)]-_0x734fa4[_0x4e2059(0x9a)];})[_0x59c8ac(0xb8)](_0x1cb671=>_0x59c8ac(0xed)+camelCase(_0x1cb671[_0x59c8ac(0xc8)])+'\x22,\x22desc\x22:'+_0x1cb671['reverseSort']+'}');}async[a0_0x4da135(0xe5)](_0x2f706e,_0x22983c,_0x181fcd,_0x273f3c,_0x59031a,_0x5ae49e){const _0x469a11=a0_0x4da135;let _0x50c349=await _0x2f706e[_0x469a11(0xd9)](menu_base_1[_0x469a11(0xa2)])['findOne']({'where':{'domain':{'id':_0x22983c['id']},'id':_0x273f3c}}),_0x2654dd=(await _0x2f706e[_0x469a11(0xd9)](menu_base_1[_0x469a11(0xa2)])['query'](_0x469a11(0xca)+_0x273f3c+_0x469a11(0x92)+_0x273f3c+'\x27'))[0x0]['rank']+0xa,_0x2adc64=new menu_base_1[(_0x469a11(0xa2))]();_0x2adc64[_0x469a11(0xc8)]=_0x59031a,_0x2adc64[_0x469a11(0xb0)]=_0x469a11(0xcf),_0x2adc64[_0x469a11(0xce)]=_0x469a11(0xeb),_0x2adc64['rank']=_0x2654dd,_0x2adc64['hiddenFlag']=!0x1,_0x2adc64[_0x469a11(0x82)]=_0x59031a,_0x2adc64[_0x469a11(0xad)]=_0x5ae49e,_0x2adc64[_0x469a11(0xb7)]=_0x469a11(0xc0),_0x2adc64[_0x469a11(0x78)]=_0x50c349,await _0x2f706e[_0x469a11(0xd9)](menu_base_1['Menu'])['save'](Object['assign'](Object[_0x469a11(0xae)]({},_0x2adc64),{'domain':_0x22983c,'creator':_0x181fcd,'updater':_0x181fcd}));}[a0_0x4da135(0xb2)](_0x42f3c8){const _0xa690ab=a0_0x4da135;let _0x4b05bc=JSON[_0xa690ab(0xa9)](_0x42f3c8)[_0xa690ab(0x89)](/(.{100})/)[_0xa690ab(0xb5)](_0x3d46a7=>_0x3d46a7),_0x165b30=[_0xa690ab(0xab),_0xa690ab(0xa3),_0xa690ab(0x9f),_0xa690ab(0xbb),_0xa690ab(0x95),_0xa690ab(0xf0),_0xa690ab(0xa6),_0xa690ab(0xdf)],_0x2b3f60=crypto_1[_0xa690ab(0xea)][_0xa690ab(0x87)](0x20)['toString']('hex'),_0x3b4096=Buffer[_0xa690ab(0x7e)](_0x2b3f60,_0xa690ab(0x84)),_0xe142ee=_0x2b3f60[_0xa690ab(0xa4)](0x0,0x10),_0x3e3fbe=['',_0xe142ee,_0xe142ee,_0xe142ee,_0xe142ee,_0xe142ee,_0xe142ee,_0xe142ee],_0x2e65db=0x0,_0x1c1f94=[];_0x1c1f94[_0xa690ab(0xc4)](_0x2b3f60);for(var _0x588e91=0x0;_0x588e91<_0x4b05bc['length'];_0x588e91++,_0x2e65db++){_0x2e65db==_0x165b30[_0xa690ab(0xdd)]&&(_0x2e65db=0x0);let _0x28e704=crypto_1['default'][_0xa690ab(0xe3)](_0x165b30[_0x2e65db],_0x3b4096,_0x3e3fbe[_0x2e65db]),_0x5593f3=_0x28e704[_0xa690ab(0xd8)](_0x4b05bc[_0x588e91],_0xa690ab(0xc3),_0xa690ab(0x84));_0x5593f3+=_0x28e704[_0xa690ab(0xf1)](_0xa690ab(0x84)),_0x1c1f94['push'](_0x5593f3);}return _0x1c1f94['join'](_0xa690ab(0xee));}};tslib_1[a0_0x4da135(0x9d)]([(0x0,type_graphql_1[a0_0x4da135(0x7d)])(a0_0x4da135(0xd5)),(0x0,type_graphql_1[a0_0x4da135(0xd7)])(_0x3db1a5=>Boolean,{'description':a0_0x4da135(0x7f)}),tslib_1[a0_0x4da135(0xaa)](0x0,(0x0,type_graphql_1[a0_0x4da135(0x83)])('id')),tslib_1['__param'](0x1,(0x0,type_graphql_1['Arg'])(a0_0x4da135(0xc1))),tslib_1[a0_0x4da135(0xaa)](0x2,(0x0,type_graphql_1['Ctx'])()),tslib_1[a0_0x4da135(0xd6)](a0_0x4da135(0xd3),Function),tslib_1[a0_0x4da135(0xd6)]('design:paramtypes',[String,String,Object]),tslib_1['__metadata'](a0_0x4da135(0xe9),Promise)],OperatoToolCreateMenu[a0_0x4da135(0xda)],a0_0x4da135(0xbd),null),OperatoToolCreateMenu=tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x4da135(0xcd)])()],OperatoToolCreateMenu),exports['OperatoToolCreateMenu']=OperatoToolCreateMenu;const modelTemplate='\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';
|
|
1
|
+
'use strict';const a0_0x4598ac=a0_0x13a9;(function(_0x5887c0,_0x23247c){const _0x15e284=a0_0x13a9,_0x11554d=_0x5887c0();while(!![]){try{const _0x278ee5=parseInt(_0x15e284(0x18f))/0x1*(parseInt(_0x15e284(0x1e2))/0x2)+-parseInt(_0x15e284(0x1ab))/0x3*(parseInt(_0x15e284(0x1d5))/0x4)+parseInt(_0x15e284(0x1a3))/0x5*(-parseInt(_0x15e284(0x1c8))/0x6)+-parseInt(_0x15e284(0x1da))/0x7*(parseInt(_0x15e284(0x1ee))/0x8)+parseInt(_0x15e284(0x1e8))/0x9*(-parseInt(_0x15e284(0x1a8))/0xa)+-parseInt(_0x15e284(0x1f4))/0xb+parseInt(_0x15e284(0x1db))/0xc;if(_0x278ee5===_0x23247c)break;else _0x11554d['push'](_0x11554d['shift']());}catch(_0x1f23f9){_0x11554d['push'](_0x11554d['shift']());}}}(a0_0xa98c,0xcc1c7));function a0_0xa98c(){const _0x2134b7=['hidden','refName',',\x22select_opt\x22:{\x22type\x22:\x22scenario\x22,\x22name\x22:\x22','creator_id','9OmOnzK','\x22,\x22width\x22:\x20160,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22}','query','__param','default','{\x22type\x22:\x20\x22','48vOUlJz','findOne','replace','Mutation','gridRank','\x22,\x22desc\x22:','8253289cagmnx','Resolver','OperatoToolCreateMenu','./../tool-secret/tool-permission','map','left','length','__decorate','@transaction','rank','COPY','updater_id','template','updated_at','1467gdroSo','meta-grist-page','utf8','createGridColumns','push','h1z0q9i9x7q6','menuType','\x22,\x22width\x22:','design:type','searchOper','{\x22type\x22:\x20\x22datetime\x22,\x22name\x22:\x20\x22','hex','__metadata','filter','stringify','select\x20coalesce(max(rank),0)\x20as\x20rank\x20from\x20menus\x20where\x20parent_id\x20=\x20\x27','parent_menu_id','searchRank','getRepository','createCipheriv','65wxQcnV','pluralize','resourceUrl','aes-256-cfb','string','191090kuJjVc','design:returntype','\x27\x20or\x20id\x20=\x20\x27','37050nJlhOv','category','EntityColumn','sortRank','aes-256-ecb','aes-256-ofb','routing','join','createSortCols','\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','updatedAt','\x22,\x22header\x22:\x20\x22','from','enc','assign','Menu','readonly','sort','\x22,\x22width\x22:\x20100,\x22editable\x22:false,\x20\x22align\x22:\x20\x22center\x22,\x22object_opt\x22:{\x22queryName\x22:\x22users\x22}}',',\x22sortable\x22:true\x20,\x22align\x22:\x20\x22','defineProperty','Entity','aes-256-ctr','createSearchCols','state','Directive','updater','\x22,\x22codeField\x22:\x20\x22id\x22,\x22dispField\x22:\x20\x22name\x22}}','SCREEN','140718dpCNls','aes-256-cfb8','{\x22name\x22:\x20\x22','\x22,\x22hidden\x22:','createMenuData',',\x22mandatory\x22:\x20','{\x22type\x22:\x20\x22object\x22,\x22name\x22:\x20\x22','creator','createdAt','\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','\x22,\x22name\x22:\x20\x22','design:paramtypes','@things-factory/meta-ui/client/pages/meta-grist-page','108ZnOqIg','dataProp','find','toolCreateMenu','@things-factory/resource-base','1211952etbaHE','31680672cbbwSG','save','name','__importDefault','split','aes-256-cfb1','\x22,\x22operator\x22:\x20\x22','876EXMLBy','scenario'];a0_0xa98c=function(){return _0x2134b7;};return a0_0xa98c();}function a0_0x13a9(_0x5f05d9,_0x55fd88){const _0xa98c6a=a0_0xa98c();return a0_0x13a9=function(_0x13a91b,_0x24041b){_0x13a91b=_0x13a91b-0x188;let _0x1add14=_0xa98c6a[_0x13a91b];return _0x1add14;},a0_0x13a9(_0x5f05d9,_0x55fd88);}Object[a0_0x4598ac(0x1bf)](exports,'__esModule',{'value':!0x0}),exports[a0_0x4598ac(0x1f6)]=void 0x0;const tslib_1=require('tslib'),type_graphql_1=require('type-graphql'),resource_base_1=require(a0_0x4598ac(0x1d9)),menu_base_1=require('@things-factory/menu-base'),tool_permission_1=require(a0_0x4598ac(0x1f7)),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require('lodash'),{plural:plural}=require(a0_0x4598ac(0x1a4)),crypto_1=tslib_1[a0_0x4598ac(0x1de)](require('crypto'));let OperatoToolCreateMenu=class{async[a0_0x4598ac(0x1d8)](_0x32a1e4,_0x2a235a,_0x2ca892){const _0x57ebd1=a0_0x4598ac,{domain:_0x27e5fa,user:_0x23b2f8,tx:_0x29cb8a}=_0x2ca892[_0x57ebd1(0x1c3)];await(0x0,tool_permission_1['checkStudioTemplateIsOverLimit'])('',_0x2ca892);const _0x581816=await _0x29cb8a[_0x57ebd1(0x1a1)](resource_base_1[_0x57ebd1(0x1c0)])[_0x57ebd1(0x1ef)]({'where':{'domain':{'id':_0x27e5fa['id']},'id':_0x32a1e4}}),_0x186b30=await _0x29cb8a['getRepository'](resource_base_1[_0x57ebd1(0x1ad)])[_0x57ebd1(0x1d7)]({'where':{'domain':{'id':_0x27e5fa['id']},'entity':{'id':_0x581816['id']}}});let {name:_0x3741ba=''}=_0x581816||{},_0x52bc3e=kebabCase(_0x3741ba),_0x1fbfd8=modelTemplate[_0x57ebd1(0x1f0)](/{{pascalCase name}}/g,startCase(camelCase(_0x3741ba))[_0x57ebd1(0x1f0)](/ /g,''))[_0x57ebd1(0x1f0)](/{{camelCase name}}/g,camelCase(_0x3741ba))['replace'](/{{snakeCase name}}/g,snakeCase(_0x3741ba))[_0x57ebd1(0x1f0)](/{{pluralPascalCase name}}/g,startCase(camelCase(plural(_0x3741ba)))[_0x57ebd1(0x1f0)](/ /g,''))[_0x57ebd1(0x1f0)](/{{pluralCamelCase name}}/g,camelCase(plural(_0x3741ba)))[_0x57ebd1(0x1f0)](/{{name}}/g,_0x3741ba),_0x5569da='';'JSON'==_0x581816['dataProp']?_0x5569da='\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':_0x57ebd1(0x18b)==_0x581816[_0x57ebd1(0x1d6)]&&(_0x5569da=_0x57ebd1(0x1d1)),_0x1fbfd8=_0x1fbfd8[_0x57ebd1(0x1f0)](/{{HistoryButton}}/g,_0x5569da);let _0x2a5763=this[_0x57ebd1(0x1b3)](_0x186b30);_0x1fbfd8=_0x1fbfd8[_0x57ebd1(0x1f0)](/{{SortColumns}}/g,_0x2a5763[_0x57ebd1(0x1b2)](','));let _0x29141d=this[_0x57ebd1(0x1c2)](_0x186b30);_0x1fbfd8=_0x1fbfd8['replace'](/{{SearchColumns}}/g,_0x29141d[_0x57ebd1(0x1b2)](','));let _0x29fde3=this['createGridColumns'](_0x186b30);return _0x1fbfd8=_0x1fbfd8['replace'](/{{GridColumns}}/g,_0x29fde3['join'](',')),_0x1fbfd8=this[_0x57ebd1(0x1b8)](_0x1fbfd8),await this[_0x57ebd1(0x1cc)](_0x29cb8a,_0x27e5fa,_0x23b2f8,_0x2a235a,_0x52bc3e,_0x1fbfd8),!0x0;}[a0_0x4598ac(0x192)](_0x17f0ab){const _0x3964be=a0_0x4598ac;return _0x17f0ab[_0x3964be(0x19c)](_0x24e313=>'id'!=_0x24e313[_0x3964be(0x1dd)]&&_0x24e313[_0x3964be(0x1f2)]>0x0)[_0x3964be(0x1bc)](function(_0x1af18e,_0x17c4a8){const _0x5d587f=_0x3964be;return _0x1af18e['gridRank']-_0x17c4a8[_0x5d587f(0x1f2)];})[_0x3964be(0x1f8)](_0x5be364=>{const _0x2f69a8=_0x3964be;let {gridEditor:_0x29565a='string',name:_0x494bb7,term:_0x3b9914,gridWidth:_0x168d41=0x0,gridAlign:_0x3e281c=_0x2f69a8(0x1f9),nullable:_0x1af0b2=!0x1}=_0x5be364;if(null==_0x29565a&&(_0x29565a='string'),null==_0x3e281c&&(_0x3e281c=_0x2f69a8(0x1f9)),'updater_id'==_0x494bb7||_0x2f69a8(0x1e7)==_0x494bb7)return _0x494bb7=_0x2f69a8(0x18c)==_0x494bb7?_0x2f69a8(0x1c5):_0x2f69a8(0x1cf),_0x2f69a8(0x1ce)+_0x494bb7+'\x22,\x22header\x22:\x20\x22'+_0x494bb7+_0x2f69a8(0x1bd);if(_0x2f69a8(0x18e)==_0x494bb7||'created_at'==_0x494bb7)return _0x2f69a8(0x199)+(_0x2f69a8(0x18e)==_0x494bb7?_0x2f69a8(0x1b5):_0x2f69a8(0x1d0))+_0x2f69a8(0x1b6)+_0x494bb7+_0x2f69a8(0x1e9);let _0x102bee=_0x2f69a8(0x1bb)!=_0x29565a&&_0x2f69a8(0x1e4)!=_0x29565a,_0x51a560=_0x2f69a8(0x1e4)==_0x29565a;0x1!=_0x51a560&&0x0!=_0x102bee||(_0x29565a=_0x2f69a8(0x1a7));let _0xbeea8d=_0x2f69a8(0x1ed)+_0x29565a+_0x2f69a8(0x1d2)+camelCase(_0x494bb7)+_0x2f69a8(0x1b6)+_0x3b9914+_0x2f69a8(0x1cb)+_0x51a560+'\x20,\x22editable\x22:\x20'+_0x102bee+_0x2f69a8(0x1cd)+!_0x1af0b2+_0x2f69a8(0x1be)+_0x3e281c+_0x2f69a8(0x196)+_0x168d41+'\x20,\x22exportable\x22:\x20true';return'code'==_0x5be364['refType']&&(_0xbeea8d+=',\x22select_opt\x22:{\x22type\x22:\x22code\x22,\x22name\x22:\x22'+_0x5be364[_0x2f69a8(0x1e5)]+'\x22}'),_0x2f69a8(0x1e3)==_0x5be364['refType']&&(_0xbeea8d+=_0x2f69a8(0x1e6)+_0x5be364['refName']+'\x22}'),'entity'==_0x5be364['refType']&&(_0xbeea8d+=',\x22select_opt\x22:{\x22type\x22:\x20\x22entity\x22,\x22args\x22:\x20{\x22queryName\x22:\x20\x22'+camelCase(plural(_0x5be364[_0x2f69a8(0x1e5)]))+_0x2f69a8(0x1c6)),_0xbeea8d+='}',_0xbeea8d;});}[a0_0x4598ac(0x1c2)](_0xce4295){const _0x14e029=a0_0x4598ac;return _0xce4295[_0x14e029(0x19c)](_0x6497e7=>_0x6497e7[_0x14e029(0x1a0)]>0x0)[_0x14e029(0x1bc)](function(_0x4c15bb,_0x496796){const _0x4a7ce0=_0x14e029;return _0x4c15bb[_0x4a7ce0(0x1a0)]-_0x496796['searchRank'];})[_0x14e029(0x1f8)](_0x5bc876=>{const _0x2615e3=_0x14e029;let _0x1a96ec=_0x5bc876[_0x2615e3(0x198)];return _0x2615e3(0x19c)==_0x1a96ec?'\x22'+camelCase(_0x5bc876[_0x2615e3(0x1dd)])+'\x22':(_0x1a96ec||(_0x1a96ec='eq'),_0x2615e3(0x1ca)+camelCase(_0x5bc876[_0x2615e3(0x1dd)])+_0x2615e3(0x1e1)+_0x1a96ec+'\x22}');});}['createSortCols'](_0xff9e0c){const _0x638be2=a0_0x4598ac;return _0xff9e0c[_0x638be2(0x19c)](_0x1a04dd=>_0x1a04dd[_0x638be2(0x1ae)]>0x0)[_0x638be2(0x1bc)](function(_0x5d547c,_0x20d8b5){const _0x11d5ca=_0x638be2;return _0x5d547c[_0x11d5ca(0x1ae)]-_0x20d8b5['sortRank'];})[_0x638be2(0x1f8)](_0x76918=>'{\x22name\x22:\x22'+camelCase(_0x76918[_0x638be2(0x1dd)])+_0x638be2(0x1f3)+_0x76918['reverseSort']+'}');}async['createMenuData'](_0x291596,_0x52320d,_0x421182,_0x39095f,_0x2259c5,_0xe6a41d){const _0x18e6a6=a0_0x4598ac;let _0x3d7c9c=await _0x291596['getRepository'](menu_base_1['Menu'])['findOne']({'where':{'domain':{'id':_0x52320d['id']},'id':_0x39095f}}),_0xd45e6c=(await _0x291596[_0x18e6a6(0x1a1)](menu_base_1[_0x18e6a6(0x1ba)])[_0x18e6a6(0x1ea)](_0x18e6a6(0x19e)+_0x39095f+_0x18e6a6(0x1aa)+_0x39095f+'\x27'))[0x0][_0x18e6a6(0x18a)]+0xa,_0x84c9bb=new menu_base_1[(_0x18e6a6(0x1ba))]();_0x84c9bb[_0x18e6a6(0x1dd)]=_0x2259c5,_0x84c9bb[_0x18e6a6(0x195)]=_0x18e6a6(0x1c7),_0x84c9bb[_0x18e6a6(0x1ac)]=_0x18e6a6(0x190),_0x84c9bb['rank']=_0xd45e6c,_0x84c9bb['hiddenFlag']=!0x1,_0x84c9bb[_0x18e6a6(0x1b1)]=_0x2259c5,_0x84c9bb[_0x18e6a6(0x18d)]=_0xe6a41d,_0x84c9bb[_0x18e6a6(0x1a5)]=_0x18e6a6(0x1d4),_0x84c9bb['parent']=_0x3d7c9c,await _0x291596[_0x18e6a6(0x1a1)](menu_base_1[_0x18e6a6(0x1ba)])[_0x18e6a6(0x1dc)](Object[_0x18e6a6(0x1b9)](Object[_0x18e6a6(0x1b9)]({},_0x84c9bb),{'domain':_0x52320d,'creator':_0x421182,'updater':_0x421182}));}['enc'](_0x2231d6){const _0x582707=a0_0x4598ac;let _0x4e9c43=JSON[_0x582707(0x19d)](_0x2231d6)[_0x582707(0x1df)](/(.{100})/)[_0x582707(0x19c)](_0x274576=>_0x274576),_0x13e9e6=[_0x582707(0x1af),'aes-256-cbc',_0x582707(0x1a6),_0x582707(0x1c9),_0x582707(0x1e0),_0x582707(0x1b0),_0x582707(0x1c1),'aes256'],_0x189da4=crypto_1[_0x582707(0x1ec)]['randomBytes'](0x20)['toString'](_0x582707(0x19a)),_0x301c9e=Buffer[_0x582707(0x1b7)](_0x189da4,_0x582707(0x19a)),_0x214d62=_0x189da4['substring'](0x0,0x10),_0x1a8768=['',_0x214d62,_0x214d62,_0x214d62,_0x214d62,_0x214d62,_0x214d62,_0x214d62],_0x21f899=0x0,_0x571b41=[];_0x571b41[_0x582707(0x193)](_0x189da4);for(var _0x29cfdd=0x0;_0x29cfdd<_0x4e9c43[_0x582707(0x1fa)];_0x29cfdd++,_0x21f899++){_0x21f899==_0x13e9e6[_0x582707(0x1fa)]&&(_0x21f899=0x0);let _0x2299c4=crypto_1[_0x582707(0x1ec)][_0x582707(0x1a2)](_0x13e9e6[_0x21f899],_0x301c9e,_0x1a8768[_0x21f899]),_0x543271=_0x2299c4['update'](_0x4e9c43[_0x29cfdd],_0x582707(0x191),_0x582707(0x19a));_0x543271+=_0x2299c4['final']('hex'),_0x571b41[_0x582707(0x193)](_0x543271);}return _0x571b41[_0x582707(0x1b2)](_0x582707(0x194));}};tslib_1[a0_0x4598ac(0x188)]([(0x0,type_graphql_1[a0_0x4598ac(0x1c4)])(a0_0x4598ac(0x189)),(0x0,type_graphql_1[a0_0x4598ac(0x1f1)])(_0x50e058=>Boolean,{'description':'Operato\x20Tool\x20Create\x20Menu'}),tslib_1['__param'](0x0,(0x0,type_graphql_1['Arg'])('id')),tslib_1[a0_0x4598ac(0x1eb)](0x1,(0x0,type_graphql_1['Arg'])(a0_0x4598ac(0x19f))),tslib_1[a0_0x4598ac(0x1eb)](0x2,(0x0,type_graphql_1['Ctx'])()),tslib_1['__metadata'](a0_0x4598ac(0x197),Function),tslib_1['__metadata'](a0_0x4598ac(0x1d3),[String,String,Object]),tslib_1[a0_0x4598ac(0x19b)](a0_0x4598ac(0x1a9),Promise)],OperatoToolCreateMenu['prototype'],a0_0x4598ac(0x1d8),null),OperatoToolCreateMenu=tslib_1[a0_0x4598ac(0x188)]([(0x0,type_graphql_1[a0_0x4598ac(0x1f5)])()],OperatoToolCreateMenu),exports['OperatoToolCreateMenu']=OperatoToolCreateMenu;const modelTemplate=a0_0x4598ac(0x1b4);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const a0_0x4e8664=a0_0x92d1;(function(_0x53f03f,_0x4a26d6){const _0x4d8541=a0_0x92d1,_0x12d29c=_0x53f03f();while(!![]){try{const _0x508caf=parseInt(_0x4d8541(0x1a9))/0x1*(parseInt(_0x4d8541(0x18d))/0x2)+parseInt(_0x4d8541(0x16e))/0x3*(-parseInt(_0x4d8541(0x161))/0x4)+parseInt(_0x4d8541(0x16c))/0x5+parseInt(_0x4d8541(0x1bb))/0x6+-parseInt(_0x4d8541(0x14d))/0x7+-parseInt(_0x4d8541(0x1b8))/0x8*(-parseInt(_0x4d8541(0x14b))/0x9)+-parseInt(_0x4d8541(0x191))/0xa;if(_0x508caf===_0x4a26d6)break;else _0x12d29c['push'](_0x12d29c['shift']());}catch(_0x3e2456){_0x12d29c['push'](_0x12d29c['shift']());}}}(a0_0x3f2e,0x2ad8c));Object[a0_0x4e8664(0x15c)](exports,'__esModule',{'value':!0x0}),exports[a0_0x4e8664(0x18f)]=void 0x0;function a0_0x3f2e(){const _0x4484ff=['createDir','2859530wwwHKX','createTypeText','createHistoryServiceFiles','PWD','pluralize','Entities,\x20resolvers\x20as\x20','{{camelCase\x20name}}.','double','pluralCamelCaseName','-type.ts','@things-factory/shell','__metadata','/*\x20SUBSCRIBERS\x20*/\x0a\x09\x09...','getProjectRootPath','uniqRank','Int','-query.ts','/service','EntitySubscribers,','number','colType','-history-query.ts','lodash','createHistoryEntityText','323096yGeMmS','-history\x27','creator','toolCreateService','-mutation.ts','float','design:returntype','__param','JSON','writeFile','indexOf','/event-subscriber.ts','updater_id','sort','colSize','472952zmAHYy','\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','\x20})','197454WMPjJT','.ts','design:type','\x0a\x20\x20@VersionColumn({\x20default:\x201\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201','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\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','pluralPascalCaseName','bigint','Date','/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...','createEntityText','created_at','Resolvers,\x20subscribers\x20as\x20','split','Ctx','name','createServiceFiles','long','existsPath','state','/*\x20ENTITIES\x20*/\x0a\x09...','dataProp','Entities,','map','\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','nullable','Query','getFieldType','index.ts','18EJplSi','integer','1452808mEufdC','Float','string','filter','updated_at','export\x20*\x20from\x20\x27./','/server/service/','decimal','...','/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20','packages','COPY','-history.ts','__decorate','columnToEntityColumn','defineProperty','Resolvers,','getRepository','-history-type.ts','type\x20=>','16624oEGWqj','Arg','Operato\x20Tool\x20Create\x20Service','\x20{\x20nullable:\x20','\x27,\x20nullable:\x20','design:paramtypes','replace','utf8','@Field(','/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./','datetime','1638730YvoLTw','pascalCaseName','96RWngOh','import\x20{\x20entities\x20as\x20','domain','\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','snakeCaseName','tableName','\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','\x27,\x20type:\x20\x27','@Index(\x27ix_{{snakeCase\x20name}}_0\x27,\x20({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20[{{indexColumns}}],\x20{\x20unique:\x20true\x20})','getColTxtType','findOne','length','camelCaseName','\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','\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','/index.ts','character\x20varying','/packages/','Resolvers\x20}\x20from\x20\x27./','find','includes','readFileSync','creator_id','join','Entity','\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','\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','\x0a\x20\x20','EntitySubscribers\x20}\x20from\x20\x27./','createServicePath','rank','2wwpAyi','domain_id','OperatoToolCreateService'];a0_0x3f2e=function(){return _0x4484ff;};return a0_0x3f2e();}const tslib_1=require('tslib'),type_graphql_1=require('type-graphql'),shell_1=require(a0_0x4e8664(0x19b)),resource_base_1=require('@things-factory/resource-base'),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x4e8664(0x1a7)),{plural:plural}=require(a0_0x4e8664(0x195)),fs=require('fs');let OperatoToolCreateService=class{async[a0_0x4e8664(0x1ac)](_0x70bca7,_0x67e00b){const _0x3235da=a0_0x4e8664,{domain:_0x2f5420}=_0x67e00b[_0x3235da(0x141)],_0x1f164d=await(0x0,shell_1['getRepository'])(resource_base_1[_0x3235da(0x186)])[_0x3235da(0x178)]({'where':{'id':_0x70bca7}}),_0x12e3a5=await(0x0,shell_1[_0x3235da(0x15e)])(resource_base_1['EntityColumn'])[_0x3235da(0x181)]({'where':{'domain':{'id':_0x2f5420['id']},'entity':{'id':_0x1f164d['id']}}});let {name:_0x5c7821='',bundle:_0x1e87d1=''}=_0x1f164d||{},_0x582a48=this['getProjectRootPath'](),_0x53fc00=kebabCase(_0x5c7821);return await this[_0x3235da(0x18b)](_0x582a48,_0x1e87d1,_0x53fc00),await this[_0x3235da(0x13e)](_0x582a48,_0x1e87d1,_0x5c7821,_0x53fc00,_0x1f164d,_0x12e3a5),!0x0;}async[a0_0x4e8664(0x13e)](_0x82c1db,_0x5174df,_0x390eab,_0x5938f9,_0x4d07d1,_0x577b79){const _0xd6bfb0=a0_0x4e8664;let _0x305abd={'name':_0x5938f9,'tableName':_0x4d07d1[_0xd6bfb0(0x173)],'pascalCaseName':startCase(camelCase(_0x390eab))['replace'](/ /g,''),'camelCaseName':camelCase(_0x390eab),'snakeCaseName':snakeCase(_0x390eab),'pluralPascalCaseName':startCase(camelCase(plural(_0x390eab)))[_0xd6bfb0(0x167)](/ /g,''),'pluralCamelCaseName':camelCase(plural(_0x390eab))},_0xe68ff9=_0x82c1db+_0xd6bfb0(0x17f)+_0x5174df+_0xd6bfb0(0x153);[_0xd6bfb0(0x1b1),_0xd6bfb0(0x158)][_0xd6bfb0(0x182)](_0x4d07d1[_0xd6bfb0(0x143)])?await this[_0xd6bfb0(0x193)](_0xe68ff9,_0x5938f9,_0x4d07d1,_0x577b79,_0x305abd):await this['createNoHistoryServiceFiels'](_0xe68ff9,_0x5938f9,_0x4d07d1,_0x577b79,_0x305abd);}async[a0_0x4e8664(0x193)](_0x1ee64b,_0x260a5b,_0x7d9f4c,_0x421ec3,_0x336855){const _0x1fafc5=a0_0x4e8664;await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+_0x1fafc5(0x17d)),serviceHistoryIndex,_0x336855);let _0x539107=this[_0x1fafc5(0x138)](_0x7d9f4c,_0x421ec3);await this['writeFile'](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+'.ts'),_0x539107,_0x336855),await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+_0x1fafc5(0x1a1)),serviceQuery,_0x336855),await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+_0x1fafc5(0x1ad)),serviceMutation,_0x336855);let _0x27441b=this['createTypeText'](_0x421ec3);await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+_0x1fafc5(0x19a)),_0x27441b,_0x336855);let _0x39c958=this[_0x1fafc5(0x1a8)](_0x7d9f4c,_0x421ec3);await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+_0x1fafc5(0x159)),_0x39c958,_0x336855);let _0x1b9a30='';_0x1fafc5(0x1b1)==_0x7d9f4c[_0x1fafc5(0x143)]?(_0x1b9a30=_0x1fafc5(0x188),await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+_0x1fafc5(0x1b4)),serviceEntitySubscriber,_0x336855)):_0x1b9a30='';let _0x292ccd=serviceEntitySubscriber[_0x1fafc5(0x167)](/{{entityToJson}}/g,_0x1b9a30);await this['writeFile'](_0x1ee64b+(_0x260a5b+_0x1fafc5(0x1b4)),_0x292ccd,_0x336855),await this[_0x1fafc5(0x1b2)](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+_0x1fafc5(0x1a6)),serviceHistoryQuery,_0x336855),await this['writeFile'](_0x1ee64b+(_0x260a5b+'/'+_0x260a5b+_0x1fafc5(0x15f)),sereviceHistoryType,_0x336855);let _0x3d631e=_0x1ee64b+_0x1fafc5(0x14a);0x0==await this['existsPath'](_0x3d631e)&&await this[_0x1fafc5(0x1b2)](_0x3d631e,allIndex,_0x336855);let _0x2ad311=await fs[_0x1fafc5(0x183)](_0x3d631e,_0x1fafc5(0x168));_0x2ad311['indexOf'](_0x1fafc5(0x152)+_0x336855[_0x1fafc5(0x13d)]+'/'+_0x336855[_0x1fafc5(0x13d)]+_0x1fafc5(0x1aa))<0x0&&(_0x2ad311=_0x2ad311[_0x1fafc5(0x167)](/\/\* EXPORT ENTITY TYPES \*\//,'/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./'+_0x336855[_0x1fafc5(0x13d)]+'/'+_0x336855[_0x1fafc5(0x13d)]+'-history\x27')),_0x2ad311[_0x1fafc5(0x1b3)](_0x1fafc5(0x152)+_0x336855[_0x1fafc5(0x13d)]+'/'+_0x336855[_0x1fafc5(0x13d)]+'\x27')<0x0&&(_0x2ad311=_0x2ad311[_0x1fafc5(0x167)](/\/\* EXPORT ENTITY TYPES \*\//,_0x1fafc5(0x16a)+_0x336855['name']+'/'+_0x336855['name']+'\x27')),_0x2ad311[_0x1fafc5(0x1b3)]('import\x20{\x20entities\x20as\x20'+_0x336855[_0x1fafc5(0x16d)]+'Entities,\x20resolvers\x20as\x20'+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x13a)+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x18a)+_0x336855[_0x1fafc5(0x13d)]+'\x27')<0x0&&(_0x2ad311=_0x2ad311['replace'](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x1fafc5(0x156)+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x196)+_0x336855['pascalCaseName']+'Resolvers,\x20subscribers\x20as\x20'+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x18a)+_0x336855[_0x1fafc5(0x13d)]+'\x27')),_0x2ad311['indexOf']('...'+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x144))<0x0&&(_0x2ad311=_0x2ad311[_0x1fafc5(0x167)](/\/\* ENTITIES \*\//,_0x1fafc5(0x142)+_0x336855['pascalCaseName']+_0x1fafc5(0x144))),_0x2ad311[_0x1fafc5(0x1b3)](_0x1fafc5(0x155)+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x15d))<0x0&&(_0x2ad311=_0x2ad311[_0x1fafc5(0x167)](/\/\* RESOLVER CLASSES \*\//,_0x1fafc5(0x137)+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x15d))),_0x2ad311['indexOf'](_0x1fafc5(0x155)+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x1a3))<0x0&&(_0x2ad311=_0x2ad311[_0x1fafc5(0x167)](/\/\* SUBSCRIBERS \*\//,_0x1fafc5(0x19d)+_0x336855[_0x1fafc5(0x16d)]+_0x1fafc5(0x1a3))),await this[_0x1fafc5(0x1b2)](_0x3d631e,_0x2ad311,_0x336855);}async['createNoHistoryServiceFiels'](_0x1f67fc,_0x21b491,_0x14113b,_0x1efe0a,_0x12e406){const _0x56eff3=a0_0x4e8664;await this['writeFile'](_0x1f67fc+(_0x21b491+'/index.ts'),serviceIndex,_0x12e406),await this[_0x56eff3(0x1b2)](_0x1f67fc+(_0x21b491+'/'+_0x21b491+_0x56eff3(0x1a1)),serviceQuery,_0x12e406),await this['writeFile'](_0x1f67fc+(_0x21b491+'/'+_0x21b491+_0x56eff3(0x1ad)),serviceMutation,_0x12e406);let _0x7e5605=this['createEntityText'](_0x14113b,_0x1efe0a);await this[_0x56eff3(0x1b2)](_0x1f67fc+(_0x21b491+'/'+_0x21b491+_0x56eff3(0x1bc)),_0x7e5605,_0x12e406);let _0x3718c6=this[_0x56eff3(0x192)](_0x1efe0a);await this['writeFile'](_0x1f67fc+(_0x21b491+'/'+_0x21b491+_0x56eff3(0x19a)),_0x3718c6,_0x12e406);let _0x4f1583=_0x1f67fc+_0x56eff3(0x14a);0x0==await this[_0x56eff3(0x140)](_0x4f1583)&&await this[_0x56eff3(0x1b2)](_0x4f1583,allIndex,_0x12e406);let _0x2f0290=await fs[_0x56eff3(0x183)](_0x4f1583,_0x56eff3(0x168));_0x2f0290[_0x56eff3(0x1b3)](_0x56eff3(0x152)+_0x12e406[_0x56eff3(0x13d)]+'/'+_0x12e406[_0x56eff3(0x13d)]+'\x27')<0x0&&(_0x2f0290=_0x2f0290[_0x56eff3(0x167)](/\/\* EXPORT ENTITY TYPES \*\//,_0x56eff3(0x16a)+_0x12e406[_0x56eff3(0x13d)]+'/'+_0x12e406[_0x56eff3(0x13d)]+'\x27')),_0x2f0290[_0x56eff3(0x1b3)](_0x56eff3(0x16f)+_0x12e406[_0x56eff3(0x16d)]+_0x56eff3(0x196)+_0x12e406['pascalCaseName']+_0x56eff3(0x180)+_0x12e406['name']+'\x27')<0x0&&(_0x2f0290=_0x2f0290[_0x56eff3(0x167)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0x56eff3(0x156)+_0x12e406[_0x56eff3(0x16d)]+'Entities,\x20resolvers\x20as\x20'+_0x12e406['pascalCaseName']+_0x56eff3(0x180)+_0x12e406[_0x56eff3(0x13d)]+'\x27')),_0x2f0290[_0x56eff3(0x1b3)](_0x56eff3(0x155)+_0x12e406[_0x56eff3(0x16d)]+_0x56eff3(0x144))<0x0&&(_0x2f0290=_0x2f0290[_0x56eff3(0x167)](/\/\* ENTITIES \*\//,'/*\x20ENTITIES\x20*/\x0a\x09...'+_0x12e406[_0x56eff3(0x16d)]+_0x56eff3(0x144))),_0x2f0290[_0x56eff3(0x1b3)](_0x56eff3(0x155)+_0x12e406[_0x56eff3(0x16d)]+_0x56eff3(0x15d))<0x0&&(_0x2f0290=_0x2f0290['replace'](/\/\* RESOLVER CLASSES \*\//,'/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...'+_0x12e406[_0x56eff3(0x16d)]+'Resolvers,')),await this[_0x56eff3(0x1b2)](_0x4f1583,_0x2f0290,_0x12e406);}[a0_0x4e8664(0x192)](_0x369286){const _0x4eb829=a0_0x4e8664;let _0x194b25=sereviceType,_0x23c326=_0x369286[_0x4eb829(0x145)](_0x1142a9=>{const _0xe3167=_0x4eb829;if('id'==_0x1142a9[_0xe3167(0x13d)])return'';if(_0xe3167(0x18e)==_0x1142a9[_0xe3167(0x13d)])return'';if(_0xe3167(0x139)==_0x1142a9[_0xe3167(0x13d)])return'';if(_0xe3167(0x151)==_0x1142a9['name'])return'';if(_0xe3167(0x184)==_0x1142a9[_0xe3167(0x13d)])return'';if(_0xe3167(0x1b5)==_0x1142a9[_0xe3167(0x13d)])return'';let _0x13967c=this[_0xe3167(0x149)](_0x1142a9),_0x5d6448=this[_0xe3167(0x177)](_0x1142a9),_0x393ad1=camelCase(_0x1142a9[_0xe3167(0x13d)]);return'\x20\x20'+('@Field('+(0x0==_0x13967c['length']?'':_0xe3167(0x160)+_0x13967c+',')+_0xe3167(0x164)+_0x1142a9['nullable']+_0xe3167(0x1ba))+_0xe3167(0x189)+(''+_0x393ad1+(_0x1142a9[_0xe3167(0x147)]?'?':'')+':\x20'+_0x5d6448)+'\x0a';});_0x194b25=_0x194b25[_0x4eb829(0x167)](/{{newTypeColumns}}/g,_0x23c326['join']('\x0a'));let _0x15adf6=_0x369286[_0x4eb829(0x145)](_0x57cad0=>{const _0x38327b=_0x4eb829;if('id'==_0x57cad0[_0x38327b(0x13d)])return'';if(_0x38327b(0x18e)==_0x57cad0[_0x38327b(0x13d)])return'';if(_0x38327b(0x139)==_0x57cad0['name'])return'';if(_0x38327b(0x151)==_0x57cad0[_0x38327b(0x13d)])return'';if(_0x38327b(0x184)==_0x57cad0[_0x38327b(0x13d)])return'';if(_0x38327b(0x1b5)==_0x57cad0[_0x38327b(0x13d)])return'';let _0x5f2a34=this[_0x38327b(0x149)](_0x57cad0),_0x46277c=this[_0x38327b(0x177)](_0x57cad0);_0x57cad0[_0x38327b(0x147)]=!0x0;let _0x3c9638=camelCase(_0x57cad0['name']);return'\x20\x20'+(_0x38327b(0x169)+(0x0==_0x5f2a34['length']?'':_0x38327b(0x160)+_0x5f2a34+',')+_0x38327b(0x164)+_0x57cad0[_0x38327b(0x147)]+_0x38327b(0x1ba))+_0x38327b(0x189)+(''+_0x3c9638+(_0x57cad0[_0x38327b(0x147)]?'?':'')+':\x20'+_0x46277c)+'\x0a';});return _0x194b25=_0x194b25[_0x4eb829(0x167)](/{{patchTypeColumns}}/g,_0x15adf6[_0x4eb829(0x185)]('\x0a')),_0x194b25;}[a0_0x4e8664(0x138)](_0x42b857,_0x18e9a8){const _0x54af62=a0_0x4e8664;let _0x2eaad8=serviceEntity,_0x4d1e3a=_0x18e9a8['sort'](function(_0x554984,_0x5ba556){const _0x317b57=a0_0x92d1;return _0x554984['rank']-_0x5ba556[_0x317b57(0x18c)];})[_0x54af62(0x145)](_0x493596=>this['columnToEntityColumn'](_0x493596));[_0x54af62(0x158),_0x54af62(0x1b1)][_0x54af62(0x182)](_0x42b857['dataProp'])&&_0x4d1e3a['push'](_0x54af62(0x1be)),_0x2eaad8=_0x2eaad8['replace'](/{{entityColumns}}/g,_0x4d1e3a[_0x54af62(0x185)]('\x0a'));let _0x392bdd='',_0x14f0c3=_0x18e9a8[_0x54af62(0x150)](_0x2fb279=>_0x2fb279['uniqRank']&&_0x2fb279[_0x54af62(0x19f)]>0x0)[_0x54af62(0x1b6)](function(_0x108a62,_0x3a6c1b){const _0x3e9217=_0x54af62;return _0x108a62[_0x3e9217(0x19f)]-_0x3a6c1b[_0x3e9217(0x19f)];});if(_0x14f0c3['length']>0x0){_0x392bdd=_0x54af62(0x176);let _0x288bfa=_0x14f0c3['map'](_0x2fce99=>{const _0x38207f=_0x54af62;let _0x481a84=_0x2fce99[_0x38207f(0x13d)];return _0x38207f(0x18e)==_0x2fce99[_0x38207f(0x13d)]&&(_0x481a84=_0x38207f(0x170)),_0x38207f(0x184)==_0x2fce99['name']&&(_0x481a84=_0x38207f(0x1ab)),_0x38207f(0x1b5)==_0x2fce99[_0x38207f(0x13d)]&&(_0x481a84='updater'),_0x38207f(0x197)+camelCase(_0x481a84);});_0x392bdd=_0x392bdd[_0x54af62(0x167)](/{{indexColumns}}/g,_0x288bfa['join'](','));}return _0x2eaad8=_0x2eaad8[_0x54af62(0x167)](/{{indexAnn}}/g,_0x392bdd),_0x2eaad8;}[a0_0x4e8664(0x1a8)](_0x28d371,_0x14c704){const _0x1c1af2=a0_0x4e8664;let _0x4c5087='JSON'==_0x28d371[_0x1c1af2(0x143)]?serviceEntityHistJson:serviceEntityHistCopy,_0x4e2559=_0x14c704[_0x1c1af2(0x1b6)](function(_0x8bfe6b,_0x39ff21){const _0x1062e0=_0x1c1af2;return _0x8bfe6b[_0x1062e0(0x18c)]-_0x39ff21[_0x1062e0(0x18c)];})[_0x1c1af2(0x145)](_0x3d395b=>this['columnToEntityColumn'](_0x3d395b));return _0x4c5087=_0x4c5087[_0x1c1af2(0x167)](/{{entityColumns}}/g,_0x4e2559['join']('\x0a')),_0x4c5087;}[a0_0x4e8664(0x15b)](_0x2f4909){const _0x499c68=a0_0x4e8664;if('id'==_0x2f4909[_0x499c68(0x13d)])return'';if('domain_id'==_0x2f4909['name'])return'';if(_0x499c68(0x139)==_0x2f4909['name'])return'';if(_0x499c68(0x151)==_0x2f4909[_0x499c68(0x13d)])return'';if(_0x499c68(0x184)==_0x2f4909[_0x499c68(0x13d)])return'';if('updater_id'==_0x2f4909[_0x499c68(0x13d)])return'';let _0x1e42fd=_0x2f4909[_0x499c68(0x1a5)];_0x499c68(0x198)==_0x2f4909[_0x499c68(0x1a5)]&&(_0x1e42fd='double\x20precision'),_0x499c68(0x13f)==_0x2f4909['colType']&&(_0x1e42fd=_0x499c68(0x135)),'string'==_0x2f4909['colType']&&(_0x1e42fd=_0x499c68(0x17e)),_0x499c68(0x16b)==_0x2f4909[_0x499c68(0x1a5)]&&(_0x1e42fd='timestamp\x20without\x20time\x20zone');let _0x3caae0='';_0x499c68(0x14f)==_0x2f4909[_0x499c68(0x1a5)]&&(_0x3caae0=_0x2f4909[_0x499c68(0x1b7)]);let _0x2f87a0=this[_0x499c68(0x149)](_0x2f4909),_0xd05e93=this[_0x499c68(0x177)](_0x2f4909),_0x40054b=camelCase(_0x2f4909['name']);return'\x20\x20'+('@Column({name:\x27'+_0x2f4909['name']+_0x499c68(0x175)+_0x1e42fd+_0x499c68(0x165)+_0x2f4909[_0x499c68(0x147)]+'\x20'+(0x0==_0x3caae0[_0x499c68(0x179)]?'':',length:'+_0x3caae0)+_0x499c68(0x1ba))+_0x499c68(0x189)+(_0x499c68(0x169)+(0x0==_0x2f87a0['length']?'':'type\x20=>'+_0x2f87a0+',')+_0x499c68(0x164)+_0x2f4909['nullable']+'\x20})')+_0x499c68(0x189)+(''+_0x40054b+(_0x2f4909[_0x499c68(0x147)]?'?':'')+':\x20'+_0xd05e93)+'\x0a';}[a0_0x4e8664(0x149)](_0xdb51c2){const _0x2b18a8=a0_0x4e8664;let _0x46a6f3='';return'double'==_0xdb51c2[_0x2b18a8(0x1a5)]&&(_0x46a6f3=_0x2b18a8(0x14e)),_0x2b18a8(0x1ae)==_0xdb51c2['colType']&&(_0x46a6f3=_0x2b18a8(0x14e)),_0x2b18a8(0x13f)==_0xdb51c2[_0x2b18a8(0x1a5)]&&(_0x46a6f3=_0x2b18a8(0x1a0)),_0x2b18a8(0x14c)==_0xdb51c2['colType']&&(_0x46a6f3=_0x2b18a8(0x1a0)),_0x46a6f3;}['getColTxtType'](_0xe3f4c2){const _0x87ea0d=a0_0x4e8664;let _0x52986f=_0xe3f4c2[_0x87ea0d(0x1a5)];return _0x87ea0d(0x154)==_0xe3f4c2[_0x87ea0d(0x1a5)]&&(_0x52986f=_0x87ea0d(0x1a4)),_0x87ea0d(0x198)==_0xe3f4c2[_0x87ea0d(0x1a5)]&&(_0x52986f='number'),'float'==_0xe3f4c2[_0x87ea0d(0x1a5)]&&(_0x52986f='number'),_0x87ea0d(0x14c)==_0xe3f4c2['colType']&&(_0x52986f='number'),'long'==_0xe3f4c2['colType']&&(_0x52986f=_0x87ea0d(0x1a4)),_0x87ea0d(0x16b)==_0xe3f4c2[_0x87ea0d(0x1a5)]&&(_0x52986f=_0x87ea0d(0x136)),_0x87ea0d(0x1bf)==_0xe3f4c2[_0x87ea0d(0x1a5)]&&(_0x52986f='Date'),'text'==_0xe3f4c2['colType']&&(_0x52986f='string'),_0x52986f;}async['writeFile'](_0x9d4611,_0x332a5e,_0x377b50){await fs['writeFileSync'](_0x9d4611,this['replaceNamesMap'](_0x332a5e,_0x377b50),'utf8');}['replaceNamesMap'](_0x14cf69,_0x1d1a35){const _0x4f5622=a0_0x4e8664;return _0x14cf69['replace'](/{{pascalCase name}}/g,_0x1d1a35[_0x4f5622(0x16d)])[_0x4f5622(0x167)](/{{camelCase name}}/g,_0x1d1a35[_0x4f5622(0x17a)])[_0x4f5622(0x167)](/{{snakeCase name}}/g,_0x1d1a35[_0x4f5622(0x172)])['replace'](/{{pluralPascalCase name}}/g,_0x1d1a35[_0x4f5622(0x134)])[_0x4f5622(0x167)](/{{pluralCamelCase name}}/g,_0x1d1a35[_0x4f5622(0x199)])[_0x4f5622(0x167)](/{{tableName}}/g,_0x1d1a35[_0x4f5622(0x173)])[_0x4f5622(0x167)](/{{name}}/g,_0x1d1a35[_0x4f5622(0x13d)]);}async['createServicePath'](_0xf11f12,_0x5423b2,_0xd74dad){const _0x400111=a0_0x4e8664;let _0x10d31d=_0xf11f12+'/packages';await this['createDir'](_0x10d31d),_0x10d31d=_0x10d31d+'/'+_0x5423b2,await this['createDir'](_0x10d31d),_0x10d31d+='/server',await this[_0x400111(0x190)](_0x10d31d),_0x10d31d+=_0x400111(0x1a2),await this[_0x400111(0x190)](_0x10d31d),_0x10d31d=_0x10d31d+'/'+_0xd74dad,await this[_0x400111(0x190)](_0x10d31d);}[a0_0x4e8664(0x19e)](){const _0xc829b2=a0_0x4e8664;let _0xcf4cb3=process['env'][_0xc829b2(0x194)][_0xc829b2(0x13b)]('/'),_0xce931=[];for(let _0x29211b=0x0;_0x29211b<_0xcf4cb3['length']&&_0xc829b2(0x157)!=_0xcf4cb3[_0x29211b];_0x29211b++)_0xce931['push'](_0xcf4cb3[_0x29211b]);return _0xce931[_0xc829b2(0x185)]('/');}async[a0_0x4e8664(0x190)](_0xc9447a){0x0==await this['existsPath'](_0xc9447a)&&fs['mkdirSync'](_0xc9447a);}async[a0_0x4e8664(0x140)](_0x4dc66c){return await fs['existsSync'](_0x4dc66c);}};function a0_0x92d1(_0x39906e,_0x4e3d0e){const _0x3f2e90=a0_0x3f2e();return a0_0x92d1=function(_0x92d1a,_0x3f33ce){_0x92d1a=_0x92d1a-0x133;let _0x10a6b0=_0x3f2e90[_0x92d1a];return _0x10a6b0;},a0_0x92d1(_0x39906e,_0x4e3d0e);}tslib_1[a0_0x4e8664(0x15a)]([(0x0,type_graphql_1[a0_0x4e8664(0x148)])(_0x5808a9=>Boolean,{'description':a0_0x4e8664(0x163)}),tslib_1['__param'](0x0,(0x0,type_graphql_1[a0_0x4e8664(0x162)])('id')),tslib_1[a0_0x4e8664(0x1b0)](0x1,(0x0,type_graphql_1[a0_0x4e8664(0x13c)])()),tslib_1[a0_0x4e8664(0x19c)](a0_0x4e8664(0x1bd),Function),tslib_1['__metadata'](a0_0x4e8664(0x166),[String,Object]),tslib_1['__metadata'](a0_0x4e8664(0x1af),Promise)],OperatoToolCreateService['prototype'],'toolCreateService',null),OperatoToolCreateService=tslib_1[a0_0x4e8664(0x15a)]([(0x0,type_graphql_1['Resolver'])()],OperatoToolCreateService),exports['OperatoToolCreateService']=OperatoToolCreateService;const allIndex=a0_0x4e8664(0x174),serviceIndex=a0_0x4e8664(0x1b9),serviceHistoryIndex=a0_0x4e8664(0x187),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_0x4e8664(0x146),serviceMutation='\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',sereviceType='\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',sereviceHistoryType=a0_0x4e8664(0x17c),serviceEntity=a0_0x4e8664(0x17b),serviceEntityHistCopy='\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',serviceEntityHistJson=a0_0x4e8664(0x133),serviceEntitySubscriber=a0_0x4e8664(0x171);
|
|
1
|
+
'use strict';const a0_0x5ccbf1=a0_0x20af;function a0_0x20af(_0x2e66ed,_0x254e35){const _0x20669d=a0_0x2066();return a0_0x20af=function(_0x20af04,_0x567e36){_0x20af04=_0x20af04-0x137;let _0x37395a=_0x20669d[_0x20af04];return _0x37395a;},a0_0x20af(_0x2e66ed,_0x254e35);}(function(_0x1630ff,_0x5b1840){const _0x508aab=a0_0x20af,_0x19bd62=_0x1630ff();while(!![]){try{const _0x425aa2=parseInt(_0x508aab(0x1b0))/0x1*(-parseInt(_0x508aab(0x163))/0x2)+parseInt(_0x508aab(0x1a4))/0x3+parseInt(_0x508aab(0x13e))/0x4*(parseInt(_0x508aab(0x150))/0x5)+parseInt(_0x508aab(0x168))/0x6*(-parseInt(_0x508aab(0x1a2))/0x7)+parseInt(_0x508aab(0x1bc))/0x8*(-parseInt(_0x508aab(0x16c))/0x9)+parseInt(_0x508aab(0x14f))/0xa+parseInt(_0x508aab(0x15a))/0xb;if(_0x425aa2===_0x5b1840)break;else _0x19bd62['push'](_0x19bd62['shift']());}catch(_0x914469){_0x19bd62['push'](_0x19bd62['shift']());}}}(a0_0x2066,0xbc97f));Object['defineProperty'](exports,a0_0x5ccbf1(0x1af),{'value':!0x0}),exports[a0_0x5ccbf1(0x18c)]=void 0x0;const tslib_1=require('tslib'),type_graphql_1=require(a0_0x5ccbf1(0x193)),shell_1=require(a0_0x5ccbf1(0x142)),resource_base_1=require('@things-factory/resource-base'),{camelCase:camelCase,startCase:startCase,snakeCase:snakeCase,kebabCase:kebabCase}=require(a0_0x5ccbf1(0x149)),{plural:plural}=require(a0_0x5ccbf1(0x140)),fs=require('fs');let OperatoToolCreateService=class{async[a0_0x5ccbf1(0x138)](_0x1f392e,_0xf6b306){const _0x1a4716=a0_0x5ccbf1,{domain:_0x1adba8}=_0xf6b306[_0x1a4716(0x186)],_0x8dce8d=await(0x0,shell_1['getRepository'])(resource_base_1[_0x1a4716(0x17d)])[_0x1a4716(0x1a8)]({'where':{'id':_0x1f392e}}),_0x273fcf=await(0x0,shell_1['getRepository'])(resource_base_1['EntityColumn'])[_0x1a4716(0x13c)]({'where':{'domain':{'id':_0x1adba8['id']},'entity':{'id':_0x8dce8d['id']}}});let {name:_0x50ed80='',bundle:_0x24353e=''}=_0x8dce8d||{},_0x23dd13=this[_0x1a4716(0x16d)](),_0x2c3231=kebabCase(_0x50ed80);return await this[_0x1a4716(0x194)](_0x23dd13,_0x24353e,_0x2c3231),await this['createServiceFiles'](_0x23dd13,_0x24353e,_0x50ed80,_0x2c3231,_0x8dce8d,_0x273fcf),!0x0;}async[a0_0x5ccbf1(0x146)](_0x2b2b31,_0x38dfc0,_0x302df8,_0x2f4554,_0x44107b,_0x5b8a44){const _0x4c902a=a0_0x5ccbf1;let _0x3dc171={'name':_0x2f4554,'tableName':_0x44107b[_0x4c902a(0x180)],'pascalCaseName':startCase(camelCase(_0x302df8))[_0x4c902a(0x182)](/ /g,''),'camelCaseName':camelCase(_0x302df8),'snakeCaseName':snakeCase(_0x302df8),'pluralPascalCaseName':startCase(camelCase(plural(_0x302df8)))['replace'](/ /g,''),'pluralCamelCaseName':camelCase(plural(_0x302df8))},_0x3a53a4=_0x2b2b31+_0x4c902a(0x1ad)+_0x38dfc0+_0x4c902a(0x15d);[_0x4c902a(0x190),'COPY']['includes'](_0x44107b['dataProp'])?await this[_0x4c902a(0x1ac)](_0x3a53a4,_0x2f4554,_0x44107b,_0x5b8a44,_0x3dc171):await this[_0x4c902a(0x181)](_0x3a53a4,_0x2f4554,_0x44107b,_0x5b8a44,_0x3dc171);}async[a0_0x5ccbf1(0x1ac)](_0x4ace52,_0x1eb5ff,_0x249211,_0x4ead64,_0x402071){const _0xb14980=a0_0x5ccbf1;await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+_0xb14980(0x144)),serviceHistoryIndex,_0x402071);let _0x1a5714=this[_0xb14980(0x17e)](_0x249211,_0x4ead64);await this['writeFile'](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+_0xb14980(0x18b)),_0x1a5714,_0x402071),await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+'-query.ts'),serviceQuery,_0x402071),await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+'-mutation.ts'),serviceMutation,_0x402071);let _0x576ddf=this[_0xb14980(0x171)](_0x4ead64);await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+_0xb14980(0x1b8)),_0x576ddf,_0x402071);let _0x32936a=this[_0xb14980(0x1c1)](_0x249211,_0x4ead64);await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+_0xb14980(0x183)),_0x32936a,_0x402071);let _0x1958bd='';_0xb14980(0x190)==_0x249211[_0xb14980(0x19c)]?(_0x1958bd=_0xb14980(0x14c),await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+_0xb14980(0x19a)),serviceEntitySubscriber,_0x402071)):_0x1958bd='';let _0x3f2231=serviceEntitySubscriber['replace'](/{{entityToJson}}/g,_0x1958bd);await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+_0xb14980(0x19a)),_0x3f2231,_0x402071),await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+_0xb14980(0x16b)),serviceHistoryQuery,_0x402071),await this[_0xb14980(0x154)](_0x4ace52+(_0x1eb5ff+'/'+_0x1eb5ff+'-history-type.ts'),sereviceHistoryType,_0x402071);let _0x3b54a6=_0x4ace52+_0xb14980(0x1ae);0x0==await this[_0xb14980(0x1b4)](_0x3b54a6)&&await this[_0xb14980(0x154)](_0x3b54a6,allIndex,_0x402071);let _0x3f017f=await fs['readFileSync'](_0x3b54a6,_0xb14980(0x158));_0x3f017f['indexOf'](_0xb14980(0x1b3)+_0x402071[_0xb14980(0x15b)]+'/'+_0x402071[_0xb14980(0x15b)]+'-history\x27')<0x0&&(_0x3f017f=_0x3f017f['replace'](/\/\* EXPORT ENTITY TYPES \*\//,_0xb14980(0x15c)+_0x402071[_0xb14980(0x15b)]+'/'+_0x402071[_0xb14980(0x15b)]+_0xb14980(0x13b))),_0x3f017f[_0xb14980(0x162)]('export\x20*\x20from\x20\x27./'+_0x402071[_0xb14980(0x15b)]+'/'+_0x402071[_0xb14980(0x15b)]+'\x27')<0x0&&(_0x3f017f=_0x3f017f[_0xb14980(0x182)](/\/\* EXPORT ENTITY TYPES \*\//,_0xb14980(0x15c)+_0x402071['name']+'/'+_0x402071[_0xb14980(0x15b)]+'\x27')),_0x3f017f[_0xb14980(0x162)](_0xb14980(0x176)+_0x402071[_0xb14980(0x1ab)]+'Entities,\x20resolvers\x20as\x20'+_0x402071['pascalCaseName']+_0xb14980(0x18e)+_0x402071[_0xb14980(0x1ab)]+'EntitySubscribers\x20}\x20from\x20\x27./'+_0x402071[_0xb14980(0x15b)]+'\x27')<0x0&&(_0x3f017f=_0x3f017f[_0xb14980(0x182)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,'/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20'+_0x402071['pascalCaseName']+'Entities,\x20resolvers\x20as\x20'+_0x402071['pascalCaseName']+_0xb14980(0x18e)+_0x402071[_0xb14980(0x1ab)]+_0xb14980(0x175)+_0x402071[_0xb14980(0x15b)]+'\x27')),_0x3f017f[_0xb14980(0x162)](_0xb14980(0x148)+_0x402071[_0xb14980(0x1ab)]+_0xb14980(0x184))<0x0&&(_0x3f017f=_0x3f017f[_0xb14980(0x182)](/\/\* ENTITIES \*\//,_0xb14980(0x14d)+_0x402071[_0xb14980(0x1ab)]+'Entities,')),_0x3f017f['indexOf'](_0xb14980(0x148)+_0x402071['pascalCaseName']+_0xb14980(0x188))<0x0&&(_0x3f017f=_0x3f017f[_0xb14980(0x182)](/\/\* RESOLVER CLASSES \*\//,'/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...'+_0x402071[_0xb14980(0x1ab)]+_0xb14980(0x188))),_0x3f017f[_0xb14980(0x162)](_0xb14980(0x148)+_0x402071[_0xb14980(0x1ab)]+'EntitySubscribers,')<0x0&&(_0x3f017f=_0x3f017f[_0xb14980(0x182)](/\/\* SUBSCRIBERS \*\//,_0xb14980(0x189)+_0x402071[_0xb14980(0x1ab)]+_0xb14980(0x159))),await this[_0xb14980(0x154)](_0x3b54a6,_0x3f017f,_0x402071);}async[a0_0x5ccbf1(0x181)](_0xfc60b9,_0x2a50c3,_0x1a4d4a,_0x107884,_0x31d9ad){const _0xac34f9=a0_0x5ccbf1;await this[_0xac34f9(0x154)](_0xfc60b9+(_0x2a50c3+'/index.ts'),serviceIndex,_0x31d9ad),await this[_0xac34f9(0x154)](_0xfc60b9+(_0x2a50c3+'/'+_0x2a50c3+'-query.ts'),serviceQuery,_0x31d9ad),await this[_0xac34f9(0x154)](_0xfc60b9+(_0x2a50c3+'/'+_0x2a50c3+_0xac34f9(0x17c)),serviceMutation,_0x31d9ad);let _0x1493a1=this['createEntityText'](_0x1a4d4a,_0x107884);await this[_0xac34f9(0x154)](_0xfc60b9+(_0x2a50c3+'/'+_0x2a50c3+_0xac34f9(0x18b)),_0x1493a1,_0x31d9ad);let _0x4b20da=this[_0xac34f9(0x171)](_0x107884);await this['writeFile'](_0xfc60b9+(_0x2a50c3+'/'+_0x2a50c3+_0xac34f9(0x1b8)),_0x4b20da,_0x31d9ad);let _0x34cab6=_0xfc60b9+_0xac34f9(0x1ae);0x0==await this[_0xac34f9(0x1b4)](_0x34cab6)&&await this[_0xac34f9(0x154)](_0x34cab6,allIndex,_0x31d9ad);let _0x45b76d=await fs['readFileSync'](_0x34cab6,_0xac34f9(0x158));_0x45b76d[_0xac34f9(0x162)](_0xac34f9(0x1b3)+_0x31d9ad['name']+'/'+_0x31d9ad['name']+'\x27')<0x0&&(_0x45b76d=_0x45b76d[_0xac34f9(0x182)](/\/\* EXPORT ENTITY TYPES \*\//,_0xac34f9(0x15c)+_0x31d9ad[_0xac34f9(0x15b)]+'/'+_0x31d9ad['name']+'\x27')),_0x45b76d['indexOf'](_0xac34f9(0x176)+_0x31d9ad[_0xac34f9(0x1ab)]+_0xac34f9(0x16e)+_0x31d9ad['pascalCaseName']+_0xac34f9(0x179)+_0x31d9ad[_0xac34f9(0x15b)]+'\x27')<0x0&&(_0x45b76d=_0x45b76d[_0xac34f9(0x182)](/\/\* IMPORT ENTITIES AND RESOLVERS \*\//,_0xac34f9(0x1b7)+_0x31d9ad[_0xac34f9(0x1ab)]+'Entities,\x20resolvers\x20as\x20'+_0x31d9ad[_0xac34f9(0x1ab)]+_0xac34f9(0x179)+_0x31d9ad[_0xac34f9(0x15b)]+'\x27')),_0x45b76d['indexOf'](_0xac34f9(0x148)+_0x31d9ad['pascalCaseName']+_0xac34f9(0x184))<0x0&&(_0x45b76d=_0x45b76d['replace'](/\/\* ENTITIES \*\//,_0xac34f9(0x14d)+_0x31d9ad[_0xac34f9(0x1ab)]+_0xac34f9(0x184))),_0x45b76d[_0xac34f9(0x162)](_0xac34f9(0x148)+_0x31d9ad['pascalCaseName']+'Resolvers,')<0x0&&(_0x45b76d=_0x45b76d['replace'](/\/\* RESOLVER CLASSES \*\//,_0xac34f9(0x1b1)+_0x31d9ad[_0xac34f9(0x1ab)]+_0xac34f9(0x188))),await this[_0xac34f9(0x154)](_0x34cab6,_0x45b76d,_0x31d9ad);}[a0_0x5ccbf1(0x171)](_0x51c20d){const _0x580085=a0_0x5ccbf1;let _0x17f692=sereviceType,_0x508e5c=_0x51c20d[_0x580085(0x1a5)](_0x19e6f1=>{const _0x2f4f76=_0x580085;if('id'==_0x19e6f1[_0x2f4f76(0x15b)])return'';if('domain_id'==_0x19e6f1[_0x2f4f76(0x15b)])return'';if(_0x2f4f76(0x14a)==_0x19e6f1[_0x2f4f76(0x15b)])return'';if(_0x2f4f76(0x1ba)==_0x19e6f1[_0x2f4f76(0x15b)])return'';if(_0x2f4f76(0x156)==_0x19e6f1[_0x2f4f76(0x15b)])return'';if(_0x2f4f76(0x1b5)==_0x19e6f1['name'])return'';let _0x3c5437=this[_0x2f4f76(0x1b9)](_0x19e6f1),_0x46508a=this[_0x2f4f76(0x147)](_0x19e6f1),_0x538b29=camelCase(_0x19e6f1['name']);return'\x20\x20'+(_0x2f4f76(0x185)+(0x0==_0x3c5437[_0x2f4f76(0x1a3)]?'':'type\x20=>'+_0x3c5437+',')+_0x2f4f76(0x1bf)+_0x19e6f1[_0x2f4f76(0x17a)]+_0x2f4f76(0x143))+_0x2f4f76(0x19d)+(''+_0x538b29+(_0x19e6f1[_0x2f4f76(0x17a)]?'?':'')+':\x20'+_0x46508a)+'\x0a';});_0x17f692=_0x17f692[_0x580085(0x182)](/{{newTypeColumns}}/g,_0x508e5c[_0x580085(0x187)]('\x0a'));let _0x1798eb=_0x51c20d['map'](_0x5b7103=>{const _0xae47c1=_0x580085;if('id'==_0x5b7103[_0xae47c1(0x15b)])return'';if('domain_id'==_0x5b7103['name'])return'';if(_0xae47c1(0x14a)==_0x5b7103[_0xae47c1(0x15b)])return'';if('updated_at'==_0x5b7103[_0xae47c1(0x15b)])return'';if('creator_id'==_0x5b7103[_0xae47c1(0x15b)])return'';if('updater_id'==_0x5b7103[_0xae47c1(0x15b)])return'';let _0x47af3f=this['getFieldType'](_0x5b7103),_0x221cab=this[_0xae47c1(0x147)](_0x5b7103);_0x5b7103[_0xae47c1(0x17a)]=!0x0;let _0x309267=camelCase(_0x5b7103[_0xae47c1(0x15b)]);return'\x20\x20'+(_0xae47c1(0x185)+(0x0==_0x47af3f['length']?'':'type\x20=>'+_0x47af3f+',')+_0xae47c1(0x1bf)+_0x5b7103[_0xae47c1(0x17a)]+_0xae47c1(0x143))+_0xae47c1(0x19d)+(''+_0x309267+(_0x5b7103[_0xae47c1(0x17a)]?'?':'')+':\x20'+_0x221cab)+'\x0a';});return _0x17f692=_0x17f692[_0x580085(0x182)](/{{patchTypeColumns}}/g,_0x1798eb[_0x580085(0x187)]('\x0a')),_0x17f692;}[a0_0x5ccbf1(0x17e)](_0x288431,_0x145595){const _0x329cad=a0_0x5ccbf1;let _0x2ce9ed=serviceEntity,_0x498a89=_0x145595[_0x329cad(0x199)](function(_0x110b80,_0x79a170){const _0x59633e=_0x329cad;return _0x110b80[_0x59633e(0x170)]-_0x79a170[_0x59633e(0x170)];})['map'](_0x26e818=>this[_0x329cad(0x1c0)](_0x26e818));[_0x329cad(0x17b),_0x329cad(0x190)]['includes'](_0x288431[_0x329cad(0x19c)])&&_0x498a89[_0x329cad(0x173)]('\x0a\x20\x20@VersionColumn({\x20default:\x201\x20})\x0a\x20\x20@Field({\x20nullable:\x20true\x20})\x0a\x20\x20dataRevisionNo?:\x20number\x20=\x201'),_0x2ce9ed=_0x2ce9ed['replace'](/{{entityColumns}}/g,_0x498a89[_0x329cad(0x187)]('\x0a'));let _0x17e009='',_0x1f5718=_0x145595['filter'](_0x4188ec=>_0x4188ec[_0x329cad(0x1c4)]&&_0x4188ec[_0x329cad(0x1c4)]>0x0)[_0x329cad(0x199)](function(_0xe5961a,_0x3452cd){const _0x4757bb=_0x329cad;return _0xe5961a['uniqRank']-_0x3452cd[_0x4757bb(0x1c4)];});if(_0x1f5718[_0x329cad(0x1a3)]>0x0){_0x17e009=_0x329cad(0x14b);let _0x504fdc=_0x1f5718[_0x329cad(0x1a5)](_0x130170=>{const _0x32a1a1=_0x329cad;let _0x205941=_0x130170[_0x32a1a1(0x15b)];return _0x32a1a1(0x172)==_0x130170[_0x32a1a1(0x15b)]&&(_0x205941='domain'),_0x32a1a1(0x156)==_0x130170[_0x32a1a1(0x15b)]&&(_0x205941='creator'),_0x32a1a1(0x1b5)==_0x130170['name']&&(_0x205941='updater'),_0x32a1a1(0x137)+camelCase(_0x205941);});_0x17e009=_0x17e009[_0x329cad(0x182)](/{{indexColumns}}/g,_0x504fdc[_0x329cad(0x187)](','));}return _0x2ce9ed=_0x2ce9ed[_0x329cad(0x182)](/{{indexAnn}}/g,_0x17e009),_0x2ce9ed;}[a0_0x5ccbf1(0x1c1)](_0x4378b5,_0x229cb1){const _0x339f4a=a0_0x5ccbf1;let _0x2141b0=_0x339f4a(0x190)==_0x4378b5[_0x339f4a(0x19c)]?serviceEntityHistJson:serviceEntityHistCopy,_0x47e19b=_0x229cb1['sort'](function(_0x362567,_0x1586c6){const _0x1a713b=_0x339f4a;return _0x362567[_0x1a713b(0x170)]-_0x1586c6[_0x1a713b(0x170)];})['map'](_0x14521e=>this[_0x339f4a(0x1c0)](_0x14521e));return _0x2141b0=_0x2141b0[_0x339f4a(0x182)](/{{entityColumns}}/g,_0x47e19b[_0x339f4a(0x187)]('\x0a')),_0x2141b0;}[a0_0x5ccbf1(0x1c0)](_0x42b9a8){const _0x3499e1=a0_0x5ccbf1;if('id'==_0x42b9a8[_0x3499e1(0x15b)])return'';if(_0x3499e1(0x172)==_0x42b9a8['name'])return'';if('created_at'==_0x42b9a8[_0x3499e1(0x15b)])return'';if(_0x3499e1(0x1ba)==_0x42b9a8[_0x3499e1(0x15b)])return'';if(_0x3499e1(0x156)==_0x42b9a8['name'])return'';if(_0x3499e1(0x1b5)==_0x42b9a8[_0x3499e1(0x15b)])return'';let _0x31c533=_0x42b9a8['colType'];_0x3499e1(0x139)==_0x42b9a8[_0x3499e1(0x198)]&&(_0x31c533=_0x3499e1(0x1bd)),_0x3499e1(0x18d)==_0x42b9a8[_0x3499e1(0x198)]&&(_0x31c533=_0x3499e1(0x13a)),_0x3499e1(0x16a)==_0x42b9a8[_0x3499e1(0x198)]&&(_0x31c533='character\x20varying'),_0x3499e1(0x160)==_0x42b9a8[_0x3499e1(0x198)]&&(_0x31c533='timestamp\x20without\x20time\x20zone');let _0x52f9cc='';'string'==_0x42b9a8[_0x3499e1(0x198)]&&(_0x52f9cc=_0x42b9a8[_0x3499e1(0x1bb)]);let _0x3dd68e=this[_0x3499e1(0x1b9)](_0x42b9a8),_0x40e8c1=this[_0x3499e1(0x147)](_0x42b9a8),_0x19f57f=camelCase(_0x42b9a8[_0x3499e1(0x15b)]);return'\x20\x20'+(_0x3499e1(0x15f)+_0x42b9a8[_0x3499e1(0x15b)]+_0x3499e1(0x19b)+_0x31c533+_0x3499e1(0x151)+_0x42b9a8[_0x3499e1(0x17a)]+'\x20'+(0x0==_0x52f9cc[_0x3499e1(0x1a3)]?'':_0x3499e1(0x14e)+_0x52f9cc)+_0x3499e1(0x143))+_0x3499e1(0x19d)+(_0x3499e1(0x185)+(0x0==_0x3dd68e['length']?'':_0x3499e1(0x169)+_0x3dd68e+',')+'\x20{\x20nullable:\x20'+_0x42b9a8[_0x3499e1(0x17a)]+_0x3499e1(0x143))+_0x3499e1(0x19d)+(''+_0x19f57f+(_0x42b9a8[_0x3499e1(0x17a)]?'?':'')+':\x20'+_0x40e8c1)+'\x0a';}[a0_0x5ccbf1(0x1b9)](_0x7cc932){const _0x4af68a=a0_0x5ccbf1;let _0x1a55b4='';return _0x4af68a(0x139)==_0x7cc932[_0x4af68a(0x198)]&&(_0x1a55b4='Float'),_0x4af68a(0x165)==_0x7cc932[_0x4af68a(0x198)]&&(_0x1a55b4=_0x4af68a(0x178)),_0x4af68a(0x18d)==_0x7cc932[_0x4af68a(0x198)]&&(_0x1a55b4=_0x4af68a(0x145)),'integer'==_0x7cc932[_0x4af68a(0x198)]&&(_0x1a55b4=_0x4af68a(0x145)),_0x1a55b4;}[a0_0x5ccbf1(0x147)](_0x2d14b8){const _0x42387c=a0_0x5ccbf1;let _0x488768=_0x2d14b8[_0x42387c(0x198)];return _0x42387c(0x166)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x1b2)),_0x42387c(0x139)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x1b2)),_0x42387c(0x165)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x1b2)),_0x42387c(0x13f)==_0x2d14b8['colType']&&(_0x488768='number'),_0x42387c(0x18d)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x1b2)),_0x42387c(0x160)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x141)),_0x42387c(0x1be)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x141)),_0x42387c(0x1a7)==_0x2d14b8[_0x42387c(0x198)]&&(_0x488768=_0x42387c(0x16a)),_0x488768;}async[a0_0x5ccbf1(0x154)](_0x27eb57,_0x2102d9,_0x100bfe){const _0x51e298=a0_0x5ccbf1;await fs['writeFileSync'](_0x27eb57,this[_0x51e298(0x13d)](_0x2102d9,_0x100bfe),_0x51e298(0x158));}[a0_0x5ccbf1(0x13d)](_0x5606f1,_0x3d325d){const _0x2b07b5=a0_0x5ccbf1;return _0x5606f1['replace'](/{{pascalCase name}}/g,_0x3d325d[_0x2b07b5(0x1ab)])[_0x2b07b5(0x182)](/{{camelCase name}}/g,_0x3d325d['camelCaseName'])[_0x2b07b5(0x182)](/{{snakeCase name}}/g,_0x3d325d[_0x2b07b5(0x19f)])[_0x2b07b5(0x182)](/{{pluralPascalCase name}}/g,_0x3d325d[_0x2b07b5(0x18a)])[_0x2b07b5(0x182)](/{{pluralCamelCase name}}/g,_0x3d325d['pluralCamelCaseName'])[_0x2b07b5(0x182)](/{{tableName}}/g,_0x3d325d[_0x2b07b5(0x180)])[_0x2b07b5(0x182)](/{{name}}/g,_0x3d325d[_0x2b07b5(0x15b)]);}async[a0_0x5ccbf1(0x194)](_0xc213a,_0x449ecd,_0x8fcd3a){const _0x2bfcf8=a0_0x5ccbf1;let _0x15d0b7=_0xc213a+_0x2bfcf8(0x1b6);await this[_0x2bfcf8(0x153)](_0x15d0b7),_0x15d0b7=_0x15d0b7+'/'+_0x449ecd,await this[_0x2bfcf8(0x153)](_0x15d0b7),_0x15d0b7+=_0x2bfcf8(0x1c3),await this[_0x2bfcf8(0x153)](_0x15d0b7),_0x15d0b7+=_0x2bfcf8(0x167),await this[_0x2bfcf8(0x153)](_0x15d0b7),_0x15d0b7=_0x15d0b7+'/'+_0x8fcd3a,await this[_0x2bfcf8(0x153)](_0x15d0b7);}[a0_0x5ccbf1(0x16d)](){const _0x37f6dd=a0_0x5ccbf1;let _0x1750af=process['env'][_0x37f6dd(0x19e)][_0x37f6dd(0x164)]('/'),_0x25807c=[];for(let _0x26f3ef=0x0;_0x26f3ef<_0x1750af[_0x37f6dd(0x1a3)]&&_0x37f6dd(0x155)!=_0x1750af[_0x26f3ef];_0x26f3ef++)_0x25807c[_0x37f6dd(0x173)](_0x1750af[_0x26f3ef]);return _0x25807c[_0x37f6dd(0x187)]('/');}async[a0_0x5ccbf1(0x153)](_0x17704e){const _0xf913cf=a0_0x5ccbf1;0x0==await this[_0xf913cf(0x1b4)](_0x17704e)&&fs['mkdirSync'](_0x17704e);}async[a0_0x5ccbf1(0x1b4)](_0x1f880d){const _0x1ca868=a0_0x5ccbf1;return await fs[_0x1ca868(0x17f)](_0x1f880d);}};function a0_0x2066(){const _0x2a4187=['Resolvers,\x20subscribers\x20as\x20','design:returntype','JSON','Operato\x20Tool\x20Create\x20Service','Arg','type-graphql','createServicePath','\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','\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','\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','colType','sort','/event-subscriber.ts','\x27,\x20type:\x20\x27','dataProp','\x0a\x20\x20','PWD','snakeCaseName','\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','\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','161eyyWXm','length','709503HJNcTe','map','\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','text','findOne','\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','prototype','pascalCaseName','createHistoryServiceFiles','/packages/','index.ts','__esModule','212FUjTgC','/*\x20RESOLVER\x20CLASSES\x20*/\x0a\x09\x09...','number','export\x20*\x20from\x20\x27./','existsPath','updater_id','/packages','/*\x20IMPORT\x20ENTITIES\x20AND\x20RESOLVERS\x20*/\x0aimport\x20{\x20entities\x20as\x20','-type.ts','getFieldType','updated_at','colSize','5439272UidDKG','double\x20precision','date','\x20{\x20nullable:\x20','columnToEntityColumn','createHistoryEntityText','\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','/server','uniqRank','{{camelCase\x20name}}.','toolCreateService','double','bigint','-history\x27','find','replaceNamesMap','8FDWRCo','integer','pluralize','Date','@things-factory/shell','\x20})','/index.ts','Int','createServiceFiles','getColTxtType','...','lodash','created_at','@Index(\x27ix_{{snakeCase\x20name}}_0\x27,\x20({{camelCase\x20name}}:\x20{{pascalCase\x20name}})\x20=>\x20[{{indexColumns}}],\x20{\x20unique:\x20true\x20})','\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','/*\x20ENTITIES\x20*/\x0a\x09...',',length:','9891170TJDvDw','42530ZuuvFJ','\x27,\x20nullable:\x20','\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','createDir','writeFile','packages','creator_id','design:type','utf8','EntitySubscribers,','17706007hstuPx','name','/*\x20EXPORT\x20ENTITY\x20TYPES\x20*/\x0aexport\x20*\x20from\x20\x27./','/server/service/','__param','@Column({name:\x27','datetime','__decorate','indexOf','8154lVbGdm','split','float','decimal','/service','139710lVRbJY','type\x20=>','string','-history-query.ts','9Nrsnfh','getProjectRootPath','Entities,\x20resolvers\x20as\x20','__metadata','rank','createTypeText','domain_id','push','\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','EntitySubscribers\x20}\x20from\x20\x27./','import\x20{\x20entities\x20as\x20','Ctx','Float','Resolvers\x20}\x20from\x20\x27./','nullable','COPY','-mutation.ts','Entity','createEntityText','existsSync','tableName','createNoHistoryServiceFiels','replace','-history.ts','Entities,','@Field(','state','join','Resolvers,','/*\x20SUBSCRIBERS\x20*/\x0a\x09\x09...','pluralPascalCaseName','.ts','OperatoToolCreateService','long'];a0_0x2066=function(){return _0x2a4187;};return a0_0x2066();}tslib_1[a0_0x5ccbf1(0x161)]([(0x0,type_graphql_1['Query'])(_0x516439=>Boolean,{'description':a0_0x5ccbf1(0x191)}),tslib_1[a0_0x5ccbf1(0x15e)](0x0,(0x0,type_graphql_1[a0_0x5ccbf1(0x192)])('id')),tslib_1[a0_0x5ccbf1(0x15e)](0x1,(0x0,type_graphql_1[a0_0x5ccbf1(0x177)])()),tslib_1[a0_0x5ccbf1(0x16f)](a0_0x5ccbf1(0x157),Function),tslib_1[a0_0x5ccbf1(0x16f)]('design:paramtypes',[String,Object]),tslib_1[a0_0x5ccbf1(0x16f)](a0_0x5ccbf1(0x18f),Promise)],OperatoToolCreateService[a0_0x5ccbf1(0x1aa)],a0_0x5ccbf1(0x138),null),OperatoToolCreateService=tslib_1[a0_0x5ccbf1(0x161)]([(0x0,type_graphql_1['Resolver'])()],OperatoToolCreateService),exports[a0_0x5ccbf1(0x18c)]=OperatoToolCreateService;const allIndex=a0_0x5ccbf1(0x1a0),serviceIndex=a0_0x5ccbf1(0x152),serviceHistoryIndex=a0_0x5ccbf1(0x196),serviceQuery=a0_0x5ccbf1(0x1c2),serviceHistoryQuery=a0_0x5ccbf1(0x1a1),serviceMutation=a0_0x5ccbf1(0x195),sereviceType='\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',sereviceHistoryType=a0_0x5ccbf1(0x197),serviceEntity=a0_0x5ccbf1(0x174),serviceEntityHistCopy='\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',serviceEntityHistJson=a0_0x5ccbf1(0x1a6),serviceEntitySubscriber=a0_0x5ccbf1(0x1a9);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';const a0_0x191c28=a0_0x1662;(function(_0x307382,_0x4f8c63){const _0x113a16=a0_0x1662,_0x2c87cb=_0x307382();while(!![]){try{const _0x463424=-parseInt(_0x113a16(0xcc))/0x1*(-parseInt(_0x113a16(0xc7))/0x2)+-parseInt(_0x113a16(0xc6))/0x3+-parseInt(_0x113a16(0xdd))/0x4+-parseInt(_0x113a16(0xe4))/0x5+parseInt(_0x113a16(0xc9))/0x6*(parseInt(_0x113a16(0xd8))/0x7)+parseInt(_0x113a16(0xe5))/0x8*(parseInt(_0x113a16(0xd1))/0x9)+-parseInt(_0x113a16(0xd9))/0xa*(-parseInt(_0x113a16(0xe7))/0xb);if(_0x463424===_0x4f8c63)break;else _0x2c87cb['push'](_0x2c87cb['shift']());}catch(_0x15032d){_0x2c87cb['push'](_0x2c87cb['shift']());}}}(a0_0x3e71,0x2fefa));function a0_0x1662(_0x13072b,_0x206de7){const _0x3e7111=a0_0x3e71();return a0_0x1662=function(_0x1662c9,_0x34d91f){_0x1662c9=_0x1662c9-0xc3;let _0x31275b=_0x3e7111[_0x1662c9];return _0x31275b;},a0_0x1662(_0x13072b,_0x206de7);}Object[a0_0x191c28(0xca)](exports,a0_0x191c28(0xdb),{'value':!0x0}),exports['checkStudioTemplateIsOverLimit']=exports[a0_0x191c28(0xde)]=void 0x0;const operato_license_checker_1=require(a0_0x191c28(0xdc)),shell_1=require(a0_0x191c28(0xd7)),menu_base_1=require(a0_0x191c28(0xd5)),license_error_1=require('../../errors/license-error');async function checkStudioPermission(){const _0x1f9d8f=a0_0x191c28;let _0x98c316=((0x0,operato_license_checker_1[_0x1f9d8f(0xe6)])('Permissions\x20For\x20Tailor\x20Tool')||',')[_0x1f9d8f(0xd2)](',')['map'](_0xe19b2b=>_0xe19b2b[_0x1f9d8f(0xd0)]()),_0x1853e4=!0x1;return _0x98c316[_0x1f9d8f(0xe2)](_0x3a6f9d=>{const _0x2c140e=_0x1f9d8f;_0x3a6f9d['includes'](_0x2c140e(0xdf))&&(_0x1853e4=!0x0);}),_0x1853e4;}function a0_0x3e71(){const _0x26a472=['where','menu','@things-factory/menu-base','getCount','@things-factory/shell','890309qEpWPm','130lrOXDu','createQueryBuilder','__esModule','@things-factory/operato-license-checker','1483208LAabLi','checkStudioPermission','Studio','(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)','ERROR_CODES','forEach','getRepository','1482630Ilwdri','1112LxmJrw','getPermission','668206OHpUAh','LicenseError','INVALID_LICENSE','manager','632511JkTASW','2auuIFS','id\x20!=\x20:id','12qrgSJs','defineProperty','select','8894PifeZt','checkStudioTemplateIsOverLimit','Menu','from','trim','1395RKXgDt','split'];a0_0x3e71=function(){return _0x26a472;};return a0_0x3e71();}async function checkStudioTemplateIsOverLimit(_0x3b2c11,_0x26ad8e){const _0x1cd76b=a0_0x191c28;if(0x0==await checkStudioPermission())throw new license_error_1[(_0x1cd76b(0xc3))]({'errorCode':_0x26ad8e['t'](license_error_1[_0x1cd76b(0xc3)][_0x1cd76b(0xe1)][_0x1cd76b(0xc4)])});var _0x215f07=0x0;if(_0x215f07=_0x3b2c11&&''!=_0x3b2c11?await(0x0,shell_1[_0x1cd76b(0xe3)])(menu_base_1['Menu'])['manager'][_0x1cd76b(0xda)]()[_0x1cd76b(0xcb)](_0x1cd76b(0xd4))[_0x1cd76b(0xcf)](menu_base_1['Menu'],_0x1cd76b(0xd4))['where'](_0x1cd76b(0xc8),{'id':_0x3b2c11})['andWhere'](_0x1cd76b(0xe0))[_0x1cd76b(0xd6)]()+0x1:await(0x0,shell_1[_0x1cd76b(0xe3)])(menu_base_1[_0x1cd76b(0xce)])[_0x1cd76b(0xc5)]['createQueryBuilder']()[_0x1cd76b(0xcb)](_0x1cd76b(0xd4))[_0x1cd76b(0xcf)](menu_base_1[_0x1cd76b(0xce)],_0x1cd76b(0xd4))[_0x1cd76b(0xd3)]('(template\x20is\x20not\x20null\x20and\x20template\x20!=\x20\x27\x27\x20)')['getCount']()+0x1,!(0x0,operato_license_checker_1['checkTarget'])(_0x215f07))throw new license_error_1['LicenseError']({'errorCode':_0x26ad8e['t'](license_error_1[_0x1cd76b(0xc3)][_0x1cd76b(0xe1)]['OVER_LIMIT'])});return!0x0;}exports[a0_0x191c28(0xde)]=checkStudioPermission,exports[a0_0x191c28(0xcd)]=checkStudioTemplateIsOverLimit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';const a0_0x56930e=a0_0x4b93;(function(_0xa6a120,_0xb6cf0d){const _0x47a487=a0_0x4b93,_0x244866=_0xa6a120();while(!![]){try{const _0x564c8c=-parseInt(_0x47a487(0x151))/0x1+parseInt(_0x47a487(0x14a))/0x2*(-parseInt(_0x47a487(0x146))/0x3)+parseInt(_0x47a487(0x157))/0x4+-parseInt(_0x47a487(0x156))/0x5*(-parseInt(_0x47a487(0x160))/0x6)+-parseInt(_0x47a487(0x15a))/0x7*(-parseInt(_0x47a487(0x145))/0x8)+-parseInt(_0x47a487(0x14b))/0x9+parseInt(_0x47a487(0x14e))/0xa;if(_0x564c8c===_0xb6cf0d)break;else _0x244866['push'](_0x244866['shift']());}catch(_0x4df5fe){_0x244866['push'](_0x244866['shift']());}}}(a0_0x13cf,0x48a19));Object['defineProperty'](exports,'__esModule',{'value':!0x0}),exports[a0_0x56930e(0x15f)]=void 0x0;function a0_0x4b93(_0x14aa83,_0x5d4865){const _0x13cfde=a0_0x13cf();return a0_0x4b93=function(_0x4b930b,_0x25e11f){_0x4b930b=_0x4b930b-0x143;let _0x3baae1=_0x13cfde[_0x4b930b];return _0x3baae1;},a0_0x4b93(_0x14aa83,_0x5d4865);}const tslib_1=require(a0_0x56930e(0x15b)),type_graphql_1=require(a0_0x56930e(0x153)),tool_permission_1=require(a0_0x56930e(0x14d));function a0_0x13cf(){const _0x58dcb2=['Ctx','Operato\x20Tool\x20Studio\x20Limit\x20check','76mGQLUc','4766040mdMthS','__param','./tool-permission','6754500WcEcpM','studioPermission','Arg','263678MmdPpD','checkStudioTemplateIsOverLimit','type-graphql','design:paramtypes','__metadata','4325VFvHpe','175308EysfxC','design:returntype','design:type','3865624yxedQr','tslib','Resolver','prototype','studioTemplateIsOverLimit','OperatoToolResolver','1956HeRoOl','Query','Operato\x20Tool\x20Studio\x20Usage\x20Permissions','8wvXbyl','36534KhKWrP','__decorate'];a0_0x13cf=function(){return _0x58dcb2;};return a0_0x13cf();}let OperatoToolResolver=class{async[a0_0x56930e(0x14f)](_0x1c84b9){return(0x0,tool_permission_1['checkStudioPermission'])();}async['studioTemplateIsOverLimit'](_0x2d6021,_0x333716){const _0x3b2712=a0_0x56930e;return(0x0,tool_permission_1[_0x3b2712(0x152)])(_0x2d6021,_0x333716);}};tslib_1[a0_0x56930e(0x147)]([(0x0,type_graphql_1['Query'])(_0x34fd94=>Boolean,{'description':a0_0x56930e(0x144)}),tslib_1['__param'](0x0,(0x0,type_graphql_1[a0_0x56930e(0x148)])()),tslib_1[a0_0x56930e(0x155)]('design:type',Function),tslib_1['__metadata'](a0_0x56930e(0x154),[Object]),tslib_1[a0_0x56930e(0x155)](a0_0x56930e(0x158),Promise)],OperatoToolResolver[a0_0x56930e(0x15d)],a0_0x56930e(0x14f),null),tslib_1[a0_0x56930e(0x147)]([(0x0,type_graphql_1[a0_0x56930e(0x143)])(_0x747cec=>Boolean,{'description':a0_0x56930e(0x149)}),tslib_1[a0_0x56930e(0x14c)](0x0,(0x0,type_graphql_1[a0_0x56930e(0x150)])('id')),tslib_1[a0_0x56930e(0x14c)](0x1,(0x0,type_graphql_1[a0_0x56930e(0x148)])()),tslib_1[a0_0x56930e(0x155)](a0_0x56930e(0x159),Function),tslib_1[a0_0x56930e(0x155)](a0_0x56930e(0x154),[String,Object]),tslib_1[a0_0x56930e(0x155)](a0_0x56930e(0x158),Promise)],OperatoToolResolver[a0_0x56930e(0x15d)],a0_0x56930e(0x15e),null),OperatoToolResolver=tslib_1['__decorate']([(0x0,type_graphql_1[a0_0x56930e(0x15c)])()],OperatoToolResolver),exports[a0_0x56930e(0x15f)]=OperatoToolResolver;
|