anncic-apihelper 3.7.18 → 3.7.19
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/dist/configuration.js +38 -1
- package/dist/helper.js +40 -1
- package/dist/index.js +8 -1
- package/dist/service/ApicreateService.js +259 -1
- package/dist/templateFun/Action.js +57 -1
- package/dist/templateFun/Common.js +50 -1
- package/dist/templateFun/Entities.js +131 -1
- package/dist/templateFun/Event.js +24 -1
- package/dist/templateFun/Handler.js +99 -1
- package/dist/templateFun/Search.js +85 -1
- package/dist/templateFun/Validator.js +238 -1
- package/dist/templateVue/Api.js +53 -1
- package/dist/templateVue/Layout.js +39 -1
- package/dist/templateVue/LayoutVue.js +398 -1
- package/dist/templateVue/Router.js +36 -1
- package/dist/templateVue/Validator.js +188 -1
- package/dist/templateVueV2/Api.js +43 -1
- package/dist/templateVueV2/Layout.js +36 -1
- package/dist/templateVueV2/LayoutVue.js +392 -1
- package/dist/templateVueV2/Router.js +39 -1
- package/dist/templateVueV2/Validator.js +180 -1
- package/dist/templateVueV3/Api.js +43 -1
- package/dist/templateVueV3/Layout.js +36 -1
- package/dist/templateVueV3/LayoutVue.js +567 -1
- package/dist/templateVueV3/Router.js +47 -1
- package/dist/templateVueV3/Validator.js +180 -1
- package/dist/types/index.js +3 -1
- package/package.json +3 -3
|
@@ -1 +1,567 @@
|
|
|
1
|
-
const a23_0x2f2439=a23_0x2409;(function(_0x5a2d63,_0x248b13){const _0x577b1e=a23_0x2409,_0x2ecae6=_0x5a2d63();while(!![]){try{const _0x2f2a04=-parseInt(_0x577b1e(0x1c2))/0x1*(-parseInt(_0x577b1e(0x12d))/0x2)+-parseInt(_0x577b1e(0x15f))/0x3+parseInt(_0x577b1e(0x135))/0x4*(parseInt(_0x577b1e(0x138))/0x5)+-parseInt(_0x577b1e(0x165))/0x6+parseInt(_0x577b1e(0x1b2))/0x7+parseInt(_0x577b1e(0x210))/0x8*(parseInt(_0x577b1e(0x1fb))/0x9)+-parseInt(_0x577b1e(0x1d9))/0xa;if(_0x2f2a04===_0x248b13)break;else _0x2ecae6['push'](_0x2ecae6['shift']());}catch(_0x30f88e){_0x2ecae6['push'](_0x2ecae6['shift']());}}}(a23_0x57a4,0x4ef87));function a23_0x2409(_0x13c993,_0xb9a8c8){const _0x278f0d=a23_0x57a4();return a23_0x2409=function(_0x2e6de1,_0x269a31){_0x2e6de1=_0x2e6de1-0x12d;let _0x57a417=_0x278f0d[_0x2e6de1];return _0x57a417;},a23_0x2409(_0x13c993,_0xb9a8c8);}const a23_0x269a31=(function(){let _0x41bcd6=!![];return function(_0x5792e4,_0x4b8720){const _0x469c1d=_0x41bcd6?function(){const _0x2c9e50=a23_0x2409;if(_0x4b8720){const _0x7eeb6b=_0x4b8720[_0x2c9e50(0x1b1)](_0x5792e4,arguments);return _0x4b8720=null,_0x7eeb6b;}}:function(){};return _0x41bcd6=![],_0x469c1d;};}()),a23_0x2e6de1=a23_0x269a31(this,function(){const _0x315f71=a23_0x2409;return a23_0x2e6de1['toString']()[_0x315f71(0x1b6)](_0x315f71(0x1db))['toString']()[_0x315f71(0x1f7)](a23_0x2e6de1)['search'](_0x315f71(0x1db));});a23_0x2e6de1();'use strict';Object[a23_0x2f2439(0x1e0)](exports,a23_0x2f2439(0x1d1),{'value':!![]}),exports[a23_0x2f2439(0x154)]=default_1;const fs=require('fs'),path_1=require(a23_0x2f2439(0x159)),helper_1=require(a23_0x2f2439(0x1e7));async function default_1({moduleName:_0x5cd8ec,controller:_0x495655,tablestartUpShort:_0x323695,tablestartUpShort2:_0x566943,Primary:_0x225b79,Fields:_0x3cfbdc,apporbasic:_0x276ca3,Comment:_0x330fb5,vuedialog:_0x1f2622}){const _0x51c2ab=a23_0x2f2439;await createIndex({'moduleName':_0x5cd8ec,'controller':_0x495655,'tablestartUpShort':_0x323695,'tablestartUpShort2':_0x566943,'Primary':_0x225b79,'Fields':_0x3cfbdc,'apporbasic':_0x276ca3,'vuedialog':_0x1f2622}),await createSearch({'moduleName':_0x5cd8ec,'controller':_0x495655,'tablestartUpShort2':_0x566943,'Primary':_0x225b79,'Fields':_0x3cfbdc,'apporbasic':_0x276ca3,'vuedialog':_0x1f2622}),!_0x1f2622?(await createAddOrEdit({'moduleName':_0x5cd8ec,'controller':_0x495655,'tablestartUpShort':_0x323695,'tablestartUpShort2':_0x566943,'Primary':_0x225b79,'Fields':_0x3cfbdc,'apporbasic':_0x276ca3,'Comment':_0x330fb5},_0x51c2ab(0x13d)),await createAddOrEdit({'moduleName':_0x5cd8ec,'controller':_0x495655,'tablestartUpShort':_0x323695,'tablestartUpShort2':_0x566943,'Primary':_0x225b79,'Fields':_0x3cfbdc,'apporbasic':_0x276ca3,'Comment':_0x330fb5},_0x51c2ab(0x192))):(await createAddOrEditDialog({'moduleName':_0x5cd8ec,'controller':_0x495655,'tablestartUpShort':_0x323695,'tablestartUpShort2':_0x566943,'Primary':_0x225b79,'Fields':_0x3cfbdc,'apporbasic':_0x276ca3,'Comment':_0x330fb5},_0x51c2ab(0x13d)),await createAddOrEditDialog({'moduleName':_0x5cd8ec,'controller':_0x495655,'tablestartUpShort':_0x323695,'tablestartUpShort2':_0x566943,'Primary':_0x225b79,'Fields':_0x3cfbdc,'apporbasic':_0x276ca3,'Comment':_0x330fb5},_0x51c2ab(0x192)));}async function createIndex({moduleName:_0x2d4ff3,controller:_0x5c98d8,tablestartUpShort:_0x1bf1b0,tablestartUpShort2:_0x3366a3,Primary:_0x2b6acf,Fields:_0x1aafaa,apporbasic:_0xdf5d65,vuedialog:_0x674138}){const _0xc076b9=a23_0x2f2439;let _0x546018=process['cwd']()+'/vue'+(typeof _0x5c98d8==_0xc076b9(0x189)?'/'+_0x5c98d8:'');_0x2d4ff3?_0x546018=_0x546018+('/pages/apps/'+_0x2d4ff3+'/'+_0x3366a3+(!_0x674138?_0xc076b9(0x1a5):'/')+_0xc076b9(0x1d7)):_0x546018=_0x546018+(_0xc076b9(0x191)+_0xdf5d65+'/'+_0x3366a3+(!_0x674138?_0xc076b9(0x1a5):'/')+_0xc076b9(0x1d7));if(!fs[_0xc076b9(0x19b)](_0x546018)){let _0x51ac85=_0xc076b9(0x174)+('\x22'+_0x2b6acf[_0xc076b9(0x1fa)]+'\x22')[_0xc076b9(0x17b)](0x14)+(_0xc076b9(0x14b)+(_0x2b6acf[_0xc076b9(0x1b0)]||'编号')+'\x22\x20align=\x22center\x22\x20fixed=\x22left\x22\x20/>');for(let _0x37b96c in _0x1aafaa){const _0x3f44b6=_0x1aafaa[_0x37b96c];if([_0xc076b9(0x1d5),_0xc076b9(0x1c6),'deleted_at',_0xc076b9(0x190)][_0xc076b9(0x1c0)](_0x37b96c)!=-0x1)continue;if(_0x37b96c[_0xc076b9(0x1b4)](_0x37b96c[_0xc076b9(0x180)]-0x3)==_0xc076b9(0x207)||_0x37b96c[_0xc076b9(0x1b4)](_0x37b96c[_0xc076b9(0x180)]-0x5)==_0xc076b9(0x17a)||_0x37b96c=='thumb'||_0x37b96c[_0xc076b9(0x1b4)](_0x37b96c['length']-0x4)==_0xc076b9(0x1cb)||_0x37b96c==_0xc076b9(0x1cb))_0x51ac85+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0xc076b9(0x174)+('\x22'+_0x37b96c+'\x22')[_0xc076b9(0x17b)](0x14)+('\x20label=\x22'+(_0x3f44b6[_0xc076b9(0x1b0)]||_0x3f44b6['Field'])+_0xc076b9(0x1f3)),_0x51ac85+='\x0a'+_0xc076b9(0x1e5)+_0xc076b9(0x1a2),_0x51ac85+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0xc076b9(0x1cd),_0x51ac85+='\x0a'+_0xc076b9(0x162)+('<a\x20:href=\x22scope.row.'+_0x37b96c+_0xc076b9(0x15a)),_0x51ac85+='\x0a'+_0xc076b9(0x160)+(_0xc076b9(0x16b)+_0x37b96c+_0xc076b9(0x1f8)),_0x51ac85+='\x0a'+_0xc076b9(0x162)+_0xc076b9(0x1d2),_0x51ac85+='\x0a'+_0xc076b9(0x162)+_0xc076b9(0x1c1),_0x51ac85+='\x0a'+_0xc076b9(0x160)+('<el-avatar\x20:src=\x22scope.row.'+_0x37b96c+_0xc076b9(0x145)),_0x51ac85+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'</template>',_0x51ac85+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0xc076b9(0x175),_0x51ac85+='\x0a'+_0xc076b9(0x1e5)+_0xc076b9(0x1ef),_0x51ac85+='\x0a'+_0xc076b9(0x136)+'</el-table-column>';else{if(['tinyint']['indexOf']((0x0,helper_1[_0xc076b9(0x199)])(_0x3f44b6[_0xc076b9(0x1bf)]))!=-0x1)_0x51ac85+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0xc076b9(0x174)+('\x22'+_0x37b96c+'\x22')[_0xc076b9(0x17b)](0x14)+(_0xc076b9(0x14b)+(_0x3f44b6['Comment']||_0x3f44b6[_0xc076b9(0x1fa)])+'\x22\x20align=\x27center\x27\x20sortable=\x22custom\x22>'),_0x51ac85+='\x0a'+_0xc076b9(0x1e5)+'<template\x20#default=\x22scope\x22>',_0x51ac85+='\x0a'+_0xc076b9(0x208)+(_0xc076b9(0x155)+_0x37b96c+_0xc076b9(0x132)),_0x51ac85+='\x0a'+_0xc076b9(0x1e5)+_0xc076b9(0x1ef),_0x51ac85+='\x0a'+_0xc076b9(0x136)+_0xc076b9(0x1a7);else['text'][_0xc076b9(0x1c0)]((0x0,helper_1['getProp'])(_0x3f44b6[_0xc076b9(0x1bf)]))==-0x1&&(_0x51ac85+='\x0a'+_0xc076b9(0x136)+_0xc076b9(0x174)+('\x22'+_0x37b96c+'\x22')[_0xc076b9(0x17b)](0x14)+('\x20label=\x22'+(_0x3f44b6[_0xc076b9(0x1b0)]||_0x3f44b6[_0xc076b9(0x1fa)])+_0xc076b9(0x170)));}}const _0x4e09aa=''+(typeof _0x5c98d8==_0xc076b9(0x189)?_0x5c98d8+'/':'')+(_0x2d4ff3?_0x2d4ff3+'/':'')+_0x3366a3;fs[_0xc076b9(0x164)]((0x0,path_1[_0xc076b9(0x139)])(_0x546018),{'recursive':!![]}),fs[_0xc076b9(0x1ae)](_0x546018,'<template>\x0a\x20\x20\x20\x20<page-main>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<elplus-table\x20:datas=\x22table.data\x22\x20:pageinfo=\x22table.search\x22\x20:loading=\x22loading\x22\x20@transform=\x22LoadDatas\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#search>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<search\x20v-model:search=\x22table.search\x22\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#header>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`get@/'+_0x4e09aa+'/add`)\x22\x20@click=\x22'+(!_0x674138?_0xc076b9(0x19e):_0xc076b9(0x182))+_0xc076b9(0x203)+_0x51ac85+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-table-column\x20label=\x22排序\x22\x20prop=\x22displayorder\x22\x20align=\x22center\x22\x20width=\x2280\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#default=\x22scope\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-input\x20v-model=\x22scope.row.displayorder\x22\x20type=\x22number\x22\x20@change=\x22handlerFieldChange(scope.row,\x27displayorder\x27)\x22></el-input>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-table-column>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-table-column\x20label=\x22操作\x22\x20align=\x22center\x22\x20fixed=\x22right\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#default=\x22scope\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`get@/'+_0x4e09aa+_0xc076b9(0x202)+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x211)+(!_0x674138?'$router.push(`edit?'+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x20e)+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x157):_0xc076b9(0x1f4))+_0xc076b9(0x13c)+_0x4e09aa+_0xc076b9(0x176)+(!_0x674138?'':_0xc076b9(0x212))+_0xc076b9(0x1da)+(!_0x674138?'':_0xc076b9(0x1ab))+_0xc076b9(0x198)+(!_0x674138?'':_0xc076b9(0x1ba))+'\x0a'+(!_0x674138?'':_0xc076b9(0x1d3))+'\x0aimport\x20{\x20'+_0x1bf1b0+_0xc076b9(0x1de)+_0x1bf1b0+_0xc076b9(0x186)+_0x1bf1b0+_0xc076b9(0x1c9)+(_0x2d4ff3?'apps/'+_0x2d4ff3:''+_0xdf5d65)+'/'+_0x1bf1b0+_0xc076b9(0x1bd)+_0x1bf1b0+_0xc076b9(0x166)+_0x1bf1b0+'Remove({\x20'+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x16e)+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x1f6)+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x187)+_0x1bf1b0+_0xc076b9(0x1e1)+_0x2b6acf[_0xc076b9(0x1fa)]+_0xc076b9(0x193),_0xc076b9(0x204));}}async function createSearch({moduleName:_0x1a0121,tablestartUpShort2:_0x29d719,controller:_0x4bbe4c,Primary:_0x593029,Fields:_0x439aba,apporbasic:_0x4119ec,vuedialog:_0x3e2313}){const _0x2394e4=a23_0x2f2439;let _0x4253f1=process['cwd']()+_0x2394e4(0x19a)+(typeof _0x4bbe4c==_0x2394e4(0x189)?'/'+_0x4bbe4c:'');_0x1a0121?_0x4253f1=_0x4253f1+(_0x2394e4(0x209)+_0x1a0121+'/'+_0x29d719+(!_0x3e2313?_0x2394e4(0x1a5):'/')+_0x2394e4(0x172)):_0x4253f1=_0x4253f1+('/pages/'+_0x4119ec+'/'+_0x29d719+(!_0x3e2313?_0x2394e4(0x1a5):'/')+_0x2394e4(0x172));if(!fs['existsSync'](_0x4253f1)){let _0xc908c5='';_0xc908c5+='\x0a'+_0x2394e4(0x20c)+(_0x2394e4(0x1bb)+(_0x593029[_0x2394e4(0x1b0)]||'编号')+'\x22>'),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x179)+_0x593029[_0x2394e4(0x1fa)]+_0x2394e4(0x1e3)+(_0x593029[_0x2394e4(0x1b0)]||'编号')+_0x2394e4(0x171)),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b);for(let _0x557d6b in _0x439aba){const _0x4e1d66=_0x439aba[_0x557d6b];if([_0x2394e4(0x1c6),'deleted_at',_0x2394e4(0x190)]['indexOf'](_0x557d6b)!=-0x1)continue;if(_0x557d6b[_0x2394e4(0x1b4)](_0x557d6b[_0x2394e4(0x180)]-0x3)==_0x2394e4(0x207)||_0x557d6b[_0x2394e4(0x1b4)](_0x557d6b['length']-0x5)==_0x2394e4(0x17a)||_0x557d6b==_0x2394e4(0x17a)||_0x557d6b['substring'](_0x557d6b[_0x2394e4(0x180)]-0x4)=='logo'||_0x557d6b==_0x2394e4(0x1cb))continue;if(_0x557d6b[_0x2394e4(0x1b4)](_0x557d6b[_0x2394e4(0x180)]-0x3)==_0x2394e4(0x148))_0xc908c5+='\x0a'+'\x20\x20\x20\x20'+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+'\x22>'),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x131)+_0x557d6b+_0x2394e4(0x1e3)+_0x4e1d66[_0x2394e4(0x1b0)]+_0x2394e4(0x1f2)),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a';else{if(_0x557d6b['endsWith'](_0x2394e4(0x1af))){let _0xf55c3f=''+(typeof _0x4bbe4c==_0x2394e4(0x189)?_0x4bbe4c+'/':'')+(_0x1a0121?_0x1a0121+'/':'')+_0x29d719;_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+'\x22>'),_0xc908c5+='\x0a'+_0x2394e4(0x1a4)+('<elplus-select-search\x20v-model=\x22props.search.'+_0x557d6b+_0x2394e4(0x1fd)+_0xf55c3f+'\x22\x20lakey=\x22id\x22\x20\x20label=\x22id\x22\x20clearable/>'),_0xc908c5+='\x0a'+_0x2394e4(0x201)+_0x2394e4(0x15b)+'\x0a';}else switch((0x0,helper_1[_0x2394e4(0x199)])(_0x4e1d66[_0x2394e4(0x1bf)])){case _0x2394e4(0x1fc):_0xc908c5+='\x0a'+_0x2394e4(0x20c)+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+'\x22>'),_0xc908c5+='\x0a'+_0x2394e4(0x201)+('<el-select\x20v-model=\x22props.search.'+_0x557d6b+_0x2394e4(0x19c)+_0x4e1d66['Comment']+_0x2394e4(0x1bc));for(let _0x495d14 of(0x0,helper_1[_0x2394e4(0x1d4)])(_0x4e1d66[_0x2394e4(0x1bf)])){_0xc908c5+='\x0a'+_0x2394e4(0x1a4)+('<el-option\x20label=\x22'+_0x495d14+'\x22\x20value=\x22'+_0x495d14+_0x2394e4(0x213));}_0xc908c5+='\x0a'+_0x2394e4(0x201)+'</el-select>',_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a';break;case _0x2394e4(0x1b5):_0xc908c5+='\x0a'+_0x2394e4(0x20c)+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+_0x2394e4(0x141)),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x1cc)+_0x557d6b+_0x2394e4(0x1c4)+_0x4e1d66[_0x2394e4(0x1b0)]+'开始时间\x22\x20type=\x22date\x22\x20value-format=\x22YYYY-MM-DD\x22/>'),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a',_0xc908c5+='\x0a'+'\x20\x20\x20\x20'+(_0x2394e4(0x1bb)+(_0x4e1d66['Comment']||_0x4e1d66[_0x2394e4(0x1fa)])+_0x2394e4(0x150)),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x1cc)+_0x557d6b+_0x2394e4(0x19d)+_0x4e1d66[_0x2394e4(0x1b0)]+_0x2394e4(0x197)),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a';break;case'datetime':_0xc908c5+='\x0a'+'\x20\x20\x20\x20'+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+_0x2394e4(0x141)),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x1cc)+_0x557d6b+'_start\x22\x20placeholder=\x22选择'+_0x4e1d66['Comment']+_0x2394e4(0x17c)),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a',_0xc908c5+='\x0a'+_0x2394e4(0x20c)+('<el-form-item\x20label=\x22'+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+_0x2394e4(0x150)),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x1cc)+_0x557d6b+_0x2394e4(0x19d)+_0x4e1d66[_0x2394e4(0x1b0)]+'结束时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a';break;case'timestamp':_0xc908c5+='\x0a'+'\x20\x20\x20\x20'+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+_0x2394e4(0x141)),_0xc908c5+='\x0a'+_0x2394e4(0x201)+('<el-date-picker\x20v-model=\x22props.search.'+_0x557d6b+_0x2394e4(0x1c4)+_0x4e1d66[_0x2394e4(0x1b0)]+_0x2394e4(0x17c)),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a',_0xc908c5+='\x0a'+_0x2394e4(0x20c)+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+_0x2394e4(0x150)),_0xc908c5+='\x0a'+_0x2394e4(0x201)+('<el-date-picker\x20v-model=\x22props.search.'+_0x557d6b+_0x2394e4(0x19d)+_0x4e1d66[_0x2394e4(0x1b0)]+'结束时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a';break;case'string':_0xc908c5+='\x0a'+_0x2394e4(0x20c)+(_0x2394e4(0x1bb)+(_0x4e1d66[_0x2394e4(0x1b0)]||_0x4e1d66[_0x2394e4(0x1fa)])+'\x22>'),_0xc908c5+='\x0a'+_0x2394e4(0x201)+(_0x2394e4(0x179)+_0x557d6b+_0x2394e4(0x1e3)+_0x4e1d66[_0x2394e4(0x1b0)]+_0x2394e4(0x171)),_0xc908c5+='\x0a'+_0x2394e4(0x20c)+_0x2394e4(0x15b)+'\x0a';}}}fs['mkdirSync']((0x0,path_1[_0x2394e4(0x139)])(_0x4253f1),{'recursive':!![]}),fs[_0x2394e4(0x1ae)](_0x4253f1,'<template>\x0a\x20\x20\x20\x20'+_0xc908c5+_0x2394e4(0x130),_0x2394e4(0x204));}}function a23_0x57a4(){const _0x1a895b=['\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`post@/','path','\x22\x20target=\x22_blank\x22\x20title=\x22查看最大化图片\x22>','</el-form-item>','\x22\x20placeholder=\x22请输入或选择','<el-select\x20v-model=\x22formdata.','thumbs','1409265hYTygc','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','<tinymce-editor\x20v-model=\x22formdata.','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27操作成功\x27),\x20emits(\x27save\x27),\x20refDialog?.value?.close()\x0a','mkdirSync','1194990xkFsXD','List(Object.assign({},\x20route?.query\x20||\x20{},\x20table.search\x20||\x20{},\x20sortable)).then(res\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20table.data\x20=\x20res.data\x20||\x20[],\x20table.search\x20=\x20{\x20...table.search,\x20...res?.extra?.pageinfo\x20||\x20{},\x20_count:\x20res?.extra?.pagetotal\x20||\x200\x20};\x0a\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27);\x0a\x20\x20\x20\x20});\x0a}\x0a\x0a/**\x0a\x20*\x20删除数据\x0a\x20*\x20**/\x0aconst\x20handlerRemove\x20=\x20(item:any)\x20=>\x20{\x0a\x20\x20\x20\x20loading.value\x20=\x20true,\x20$confirm(`确定删除数据吗?`,\x20\x27提示\x27,\x20{\x20confirmButtonText:\x20\x27确定\x27,\x20cancelButtonText:\x20\x27取消\x27,\x20type:\x20\x27warning\x27\x20}).then(()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a','\x20as\x20unknown\x20as\x20','tags','\x22\x20placeholder=\x22选择','<img\x20:src=\x22scope.row.','<elplus-select-tags\x20v-model=\x22formdata.','/components/dialog-',':\x20item.','defineExpose({\x20open\x20})\x0a','\x22\x20align=\x27center\x27\x20sortable=\x22custom\x22\x20show-overflow-tooltip\x20/>','\x22\x20clearable/>','components/search.vue','//\x20保存数据\x0a','<el-table-column\x20prop=','</el-popover>','/remove`)\x22\x20@click=\x22handlerRemove(scope.row)\x22\x20type=\x22danger\x22\x20text>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20删除\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-table-column>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</elplus-table>\x0a\x20\x20\x20\x20\x20\x20\x20\x20','<el-input-number\x20v-model=\x22formdata.','import\x20{\x20','<el-input\x20v-model=\x22props.search.','thumb','padEnd','开始时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>','\x22\x20class=\x22block\x22>','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20formdata.value\x20=\x20res.data;\x0a',').then(res\x20=>\x20{\x0a','length','\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err=>{\x0a','$refs?.refDialogAdd?.open()','<el-input-number\x20v-model=\x22formdata.displayorder\x22\x20placeholder=\x22请输入排序权重\x22\x20controls-position=\x22right\x22/>','\x20\x20\x20\x20<page-main>\x0a','\x20/>','Remove,\x20',')\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20','\x22\x20:limit=\x221\x22\x20','string','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`post@/','\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a','</script>\x0a','\x22>\x0a','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27);\x0a','\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20','displayorder','/pages/','edit',',\x20{\x20[field]:\x20item[field]\x20}).then(res\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(\x20typeof(res?.data)\x20!=\x20\x27undefined\x27\x20){\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20item\x20=\x20res.data;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27操作成功\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27操作失败\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20}\x0a}\x0a\x0a/**\x0a\x20*\x20加载数据\x0a\x20*\x20**/\x0aLoadDatas()\x0a\x0a</script>','<attachment-image\x20v-model=\x22formdata.','\x20\x20\x20\x20\x20\x20\x20\x20<elplus-form\x20ref=\x22refForm\x22\x20:model=\x22formdata\x22\x20:rules=\x22','\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a','结束时间\x22\x20type=\x22date\x22\x20value-format=\x22YYYY-MM-DD\x22/>','\x0a\x20\x20\x20\x20</page-main>\x0a</template>\x0a<script\x20lang=\x22ts\x22\x20setup>\x0aimport\x20search\x20from\x20\x27./components/search.vue\x27;\x0a','getProp','/vue','existsSync','\x22\x20placeholder=\x22请选择','_end\x22\x20placeholder=\x22选择','$router.push(`add`)','text','AddRule\x20}\x20from\x20\x27../interface\x27;\x0a','\x22\x20:model=\x22formdata\x22\x20:rules=\x22','<template\x20#default=\x22scope\x22>','longtext','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','/list/','deleted_at','</el-table-column>','\x22\x20\x20placeholder=\x22请输入','edit/:','<el-form-item\x20label=\x22排序\x22\x20prop=\x22displayorder\x22>','<dialog-edit-vue\x20ref=\x22refDialogEdit\x22\x20@save=\x22LoadDatas()\x22/>','_ids','\x20\x20\x20\x20refForm.value?.validate().then((item:\x20any)\x20=>\x20{\x0a','writeFileSync','_id','Comment','apply','2094659OSRGwQ','\x20\x20\x20\x20</page-main>\x0a','substring','date','search','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27操作成功\x27),\x20router.back();\x0a','timestamp','\x20\x20\x20\x20formdata.value\x20=\x20{},\x20refDialog?.value?.open();\x0a','import\x20dialogAddVue\x20from\x20\x27./components/dialog-add.vue\x27;','<el-form-item\x20label=\x22','\x22\x20clearable>','\x27;\x0a\x0aconst\x20loading\x20=\x20ref(false),\x20route\x20=\x20useRoute(),\x20table\x20=\x20reactive({\x0a\x20\x20\x20\x20data:\x20[],\x0a\x20\x20\x20\x20select:\x20[],\x0a\x20\x20\x20\x20search:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20_page:\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20_size:\x2020,\x0a\x20\x20\x20\x20\x20\x20\x20\x20_count:\x200,\x0a\x20\x20\x20\x20}\x0a})\x0a\x0a\x0a/**\x0a\x20*\x20获取数据列表\x0a\x20*\x20@param\x20page\x20分页-当前页\x0a\x20*\x20@param\x20size\x20分页-每页数量\x0a\x20*\x20**/\x0aconst\x20LoadDatas\x20=\x20(page?:\x20number,\x20size?:\x20number,\x20sortable\x20=\x20{})\x20=>\x20{\x0a\x20\x20\x20\x20loading.value\x20=\x20true,\x20page\x20&&\x20(table.search._page\x20=\x20page),\x20size\x20&&\x20(table.search._size\x20=\x20size);\x0a\x20\x20\x20\x20','\x20\x20\x20\x20\x20\x20\x20\x20formdata.value\x20=\x20res?.data\x20||\x20{},\x20refDialog?.value?.open();\x0a','Type','indexOf','<template\x20#reference>','2144YmRcnc','\x20\x20\x20\x20formdata.value\x20=\x20{},\x20','_start\x22\x20placeholder=\x22选择','Rule\x22\x20:loading=\x22loading\x22\x20:disabled=\x22!$hasPrem(`post@/','updated_at','\x20\x20\x20\x20\x20\x20\x20\x20<elplus-form\x20ref=\x22refForm\x22\x20title=\x22','const\x20handlerSave\x20=\x20()=>{\x0a','Edit\x20}\x20from\x20\x27@/apis/','Detail(','logo','<el-date-picker\x20v-model=\x22props.search.','<el-popover\x20placement=\x22bottom\x22\x20trigger=\x22click\x22>','EditRule\x20}\x20from\x20\x27../interface\x27;\x0a','mediumtext','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27),\x20router.back();\x0a','__esModule','</a>','import\x20dialogEditVue\x20from\x20\x27./components/dialog-edit.vue\x27;','getEnum','created_at','\x20\x20\x20\x20\x20\x20\x20\x20router.back();\x0a','index.vue','tag','6054550ThJRmo','\x0a\x20\x20\x20\x20\x20\x20\x20\x20','(((.+)+)+)+$','\x20\x20\x20\x20\x20\x20\x20\x20</elplus-form>\x0a','const\x20getDetail\x20=\x20(','List,\x20','Edit,\x20','defineProperty','Edit(item.','\x22\x20value=\x22','\x22\x20placeholder=\x22请输入','imgs','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','\x22\x20type=\x22date\x22\x20value-format=\x22YYYY-MM-DD\x22/>','../helper','//\x20获取详情\x0a','Add','\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20formdata.value\x20=\x20{};\x0a','}\x0a\x0a\x0a','\x27;\x0a\x0a','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#footer>\x0a','module=\x22','</template>','\x22\x20type=\x22textarea\x22\x20:rows=\x224\x22/>','</template>\x0a','\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20clearable/>','\x22\x20align=\x27center\x27\x20show-overflow-tooltip>','$refs?.refDialogEdit?.open(scope.row.id)','.vue','\x20}).then(res\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27删除成功\x27),\x20LoadDatas();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27删除失败\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20}).catch(()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false;\x0a\x20\x20\x20\x20})\x0a}\x0a\x0a/**\x0a\x20*\x20修改字段状态\x0a\x20*\x20**/\x0a\x20const\x20handlerFieldChange\x20=\x20(item:\x20any,\x20field:string)=>{\x0a\x20\x20\x20\x20if\x20(item.','constructor','\x22\x20style=\x22width:\x20100%;max-width:500px\x22\x20/>','\x20\x20\x20\x20\x20\x20\x20\x20})\x0a','Field','56421rnXdBB','enum','\x22\x20api=\x22','substr','\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20/>','datetime','\x20\x20\x20\x20\x20\x20\x20\x20','/edit/:','\x22\x20\x20type=\x22primary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20添加\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#column>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','utf-8','\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a','const\x20loading\x20=\x20ref(false),\x20refDialog\x20=\x20ref(null),\x20refForm\x20=\x20ref(null),\x20formdata\x20=\x20ref<any>({}),\x20emits\x20=\x20defineEmits([\x27save\x27]),\x20open\x20=\x20()\x20=>\x20{\x0a','img','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','/pages/apps/','Edit','\x22\x20split=\x22-\x22\x20clearable/>','\x20\x20\x20\x20','number','=${scope.row.','apps/','328jbNUkZ','`)\x22\x20@click=\x22','<dialog-add-vue\x20ref=\x22refDialogAdd\x22\x20@save=\x22LoadDatas()\x22\x20/>','\x22\x20/>','420bFCvYM','\x22\x20prop=\x22','<el-date-picker\x20v-model=\x22formdata.','\x0a</template>\x0a<script\x20lang=\x22ts\x22\x20setup>\x0aconst\x20props\x20=\x20defineProps({\x0a\x20\x20\x20\x20search:\x20{type:\x20Object\x20,default:\x20()=>{return\x20{}}},\x0a})\x0a</script>','<el-input-number\x20v-model=\x22props.search.','\x22\x20active-text=\x22启用\x22\x20inactive-text=\x22禁用\x22\x20@change=\x22handlerFieldChange\x22\x20/>','\x22\x20lakey=\x22id\x22\x20\x20label=\x22id\x22\x20clearable/>','`)\x22>\x0a','337904ugYRtZ','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','<elplus-select-search\x20v-model=\x22formdata.','35hTWVFp','dirname',')\x20=>\x20{\x0a','<el-input\x20v-model=\x22formdata.','\x22\x20type=\x22primary\x22\x20text>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20编辑\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`post@/','add','\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>','<template>\x0a','<script\x20lang=\x22ts\x22\x20setup>\x0a','>=\x22>','Detail\x20}\x20from\x20\x27@/apis/','const\x20loading\x20=\x20ref(false),\x20router\x20=\x20useRouter(),\x20route\x20=\x20useRoute();\x0a\x0a','item).then(res=>{\x0a','\x22\x20style=\x22cursor:pointer\x22/>','\x20\x20\x20\x20\x20\x20\x20\x20$notify.error(err\x20||\x20\x27网络请求错误\x27)\x0a','\x22\x20:limit=\x225\x22\x20','num','\x20\x20\x20\x20<elplus-dialog\x20ref=\x22refDialog\x22\x20:loading=\x22loading\x22\x20title=\x22','item.','\x20label=\x22','cwd','\x20\x20\x20\x20</elplus-dialog>\x0a','`)\x22\x20type=\x22primary\x22\x20@click=\x22handlerSave()\x22>保存</el-button>\x0a','}\x0a\x0a','<=\x22>',')\x20{\x0a','\x20\x20\x20\x20if\x20(','<el-option\x20label=\x22','default','<elplus-switch\x20v-model=\x22scope.row\x22\x20field=\x22','const\x20loading\x20=\x20ref(false),\x20router\x20=\x20useRouter();\x0a\x0a','}`)'];a23_0x57a4=function(){return _0x1a895b;};return a23_0x57a4();}async function createAddOrEdit({moduleName:_0x2b5604,controller:_0x3ecaa1,tablestartUpShort:_0x59aebb,tablestartUpShort2:_0x4ac6a6,Primary:_0x47f5e5,Fields:_0x1988c5,apporbasic:_0xea158,Comment:_0x2494fe},_0x3c7f85='add'){const _0x3bc8da=a23_0x2f2439;let _0x10f6f5=process[_0x3bc8da(0x14c)]()+'/vue'+(typeof _0x3ecaa1==_0x3bc8da(0x189)?'/'+_0x3ecaa1:'');_0x2b5604?_0x10f6f5=_0x10f6f5+(_0x3bc8da(0x209)+_0x2b5604+'/'+_0x4ac6a6+'/'+_0x3c7f85+'/index.vue'):_0x10f6f5=_0x10f6f5+(_0x3bc8da(0x191)+_0xea158+'/'+_0x4ac6a6+'/'+_0x3c7f85+'/index.vue');if(!fs[_0x3bc8da(0x19b)](_0x10f6f5)){const _0x1490c6=[_0x3bc8da(0x19f),'mediumtext',_0x3bc8da(0x189)][_0x3bc8da(0x1c0)]((0x0,helper_1[_0x3bc8da(0x199)])(_0x47f5e5[_0x3bc8da(0x1bf)]))==-0x1,_0x51638b=''+(typeof _0x3ecaa1==_0x3bc8da(0x189)?_0x3ecaa1+'/':'')+(_0x2b5604?_0x2b5604+'/':'')+_0x4ac6a6;let _0x4af006='';for(let _0x558913 in _0x1988c5){const _0x1bb00f=_0x1988c5[_0x558913];if(['created_at',_0x3bc8da(0x1c6),_0x3bc8da(0x1a6),_0x3bc8da(0x190)]['indexOf'](_0x558913)!=-0x1)continue;if(_0x558913[_0x3bc8da(0x1b4)](_0x558913[_0x3bc8da(0x180)]-0x4)==_0x3bc8da(0x1e4)||_0x558913[_0x3bc8da(0x1b4)](_0x558913[_0x3bc8da(0x180)]-0x6)==_0x3bc8da(0x15e))_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+('<el-form-item\x20label=\x22'+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+_0x3bc8da(0x17d)),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x194)+_0x558913+_0x3bc8da(0x147)+(_0x2b5604?_0x3bc8da(0x1ee)+_0x2b5604+'\x22':'')+'\x20/>'),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';else{if(_0x558913[_0x3bc8da(0x1b4)](_0x558913[_0x3bc8da(0x180)]-0x3)==_0x3bc8da(0x207)||_0x558913[_0x3bc8da(0x1b4)](_0x558913[_0x3bc8da(0x180)]-0x5)==_0x3bc8da(0x17a)||_0x558913==_0x3bc8da(0x17a)||_0x558913[_0x3bc8da(0x1b4)](_0x558913[_0x3bc8da(0x180)]-0x4)==_0x3bc8da(0x1cb)||_0x558913=='logo')_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+('<el-form-item\x20label=\x22'+(_0x1bb00f['Comment']||_0x1bb00f['Field'])+_0x3bc8da(0x12e)+_0x558913+_0x3bc8da(0x17d)),_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3bc8da(0x194)+_0x558913+_0x3bc8da(0x188)+(_0x2b5604?_0x3bc8da(0x1ee)+_0x2b5604+'\x22':'')+'/>'),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';else{if(_0x558913[_0x3bc8da(0x1b4)](_0x558913['length']-0x4)==_0x3bc8da(0x169)||_0x558913[_0x3bc8da(0x1b4)](_0x558913['length']-0x3)=='tag')_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x16c)+_0x558913+_0x3bc8da(0x15c)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x20b)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';else{if(_0x558913[_0x3bc8da(0x1fe)](-0x3)==_0x3bc8da(0x148))_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+('<el-form-item\x20label=\x22'+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x177)+_0x558913+_0x3bc8da(0x1e3)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x1ff)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+'</el-form-item>'+'\x0a';else{if(_0x558913[_0x3bc8da(0x1fe)](-0x4)==_0x3bc8da(0x1ac))_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+'\x22\x20prop=\x22'+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x13b)+_0x558913+_0x3bc8da(0x1e3)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x171)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+'</el-form-item>'+'\x0a';else{if(_0x558913['substr'](-0x3)=='_id'){let _0x50889b=''+(typeof _0x3ecaa1=='string'?_0x3ecaa1+'/':'')+(_0x2b5604?_0x2b5604+'/':'')+_0x4ac6a6;_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x137)+_0x558913+_0x3bc8da(0x1fd)+_0x50889b+_0x3bc8da(0x133)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+'</el-form-item>'+'\x0a';}else switch((0x0,helper_1[_0x3bc8da(0x199)])(_0x1bb00f[_0x3bc8da(0x1bf)])){case _0x3bc8da(0x20d):_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f['Comment']||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x177)+_0x558913+_0x3bc8da(0x1e3)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x1ff)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';break;case _0x3bc8da(0x1fc):_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+'\x22\x20prop=\x22'+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+('<el-select\x20v-model=\x22formdata.'+_0x558913+_0x3bc8da(0x19c)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x1bc));for(let _0x21c7f4 of(0x0,helper_1[_0x3bc8da(0x1d4)])(_0x1bb00f['Type'])){_0x4af006+='\x0a'+_0x3bc8da(0x1e5)+(_0x3bc8da(0x153)+_0x21c7f4+_0x3bc8da(0x1e2)+_0x21c7f4+_0x3bc8da(0x213));}_0x4af006+='\x0a'+_0x3bc8da(0x136)+'</el-select>',_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3bc8da(0x15b)+'\x0a';break;case _0x3bc8da(0x19f):_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+_0x3bc8da(0x17d)),_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-input\x20v-model=\x22formdata.'+_0x558913+_0x3bc8da(0x1a8)+_0x1bb00f['Comment']+_0x3bc8da(0x1f0)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';break;case _0x3bc8da(0x1a3):_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f['Comment']||_0x1bb00f['Field'])+'\x22\x20prop=\x22'+_0x558913+_0x3bc8da(0x17d)),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x161)+_0x558913+'\x22\x20'+(_0x2b5604?_0x3bc8da(0x1ee)+_0x2b5604+'\x22':'')+'/>'),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';break;case _0x3bc8da(0x1cf):_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f['Comment']||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+_0x3bc8da(0x17d)),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x161)+_0x558913+'\x22\x20'+(_0x2b5604?_0x3bc8da(0x1ee)+_0x2b5604+'\x22':'')+'/>'),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';break;case'date':_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+'\x22\x20prop=\x22'+_0x558913+'\x22>'),_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-date-picker\x20v-model=\x22formdata.'+_0x558913+_0x3bc8da(0x16a)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x1e6)),_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3bc8da(0x15b)+'\x0a';break;case _0x3bc8da(0x200):_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+('<el-date-picker\x20v-model=\x22formdata.'+_0x558913+_0x3bc8da(0x16a)+_0x1bb00f[_0x3bc8da(0x1b0)]+_0x3bc8da(0x13e)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';break;case _0x3bc8da(0x1b8):_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f[_0x3bc8da(0x1fa)])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x12f)+_0x558913+_0x3bc8da(0x16a)+_0x1bb00f[_0x3bc8da(0x1b0)]+'\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';break;default:_0x4af006+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3bc8da(0x1bb)+(_0x1bb00f[_0x3bc8da(0x1b0)]||_0x1bb00f['Field'])+_0x3bc8da(0x12e)+_0x558913+'\x22>'),_0x4af006+='\x0a'+_0x3bc8da(0x136)+(_0x3bc8da(0x13b)+_0x558913+_0x3bc8da(0x1e3)+_0x1bb00f['Comment']+_0x3bc8da(0x171)),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';}}}}}}}_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+'<el-form-item\x20label=\x22排序\x22\x20prop=\x22displayorder\x22>',_0x4af006+='\x0a'+_0x3bc8da(0x136)+_0x3bc8da(0x183),_0x4af006+='\x0a'+_0x3bc8da(0x1a4)+_0x3bc8da(0x15b)+'\x0a';let _0x51ac88=_0x3bc8da(0x13f);_0x51ac88+=_0x3bc8da(0x184),_0x51ac88+=_0x3bc8da(0x1c7)+(_0x3c7f85==_0x3bc8da(0x13d)?'添加'+_0x2494fe:'编辑'+_0x2494fe)+_0x3bc8da(0x1a1)+_0x59aebb+(_0x3c7f85=='add'?'Add':'Edit')+_0x3bc8da(0x1c5)+_0x51638b+'/'+(_0x3c7f85==_0x3bc8da(0x13d)?'add':'edit/:'+_0x47f5e5[_0x3bc8da(0x1fa)])+'`)\x22>\x0a',_0x51ac88+=_0x3bc8da(0x1a4)+_0x4af006+'\x0a\x0a',_0x51ac88+=_0x3bc8da(0x1ed),_0x51ac88+=_0x3bc8da(0x158)+_0x51638b+'/'+(_0x3c7f85==_0x3bc8da(0x13d)?'add':'edit/:'+_0x47f5e5[_0x3bc8da(0x1fa)])+_0x3bc8da(0x14e),_0x51ac88+=_0x3bc8da(0x167),_0x51ac88+=_0x3bc8da(0x1dc),_0x51ac88+=_0x3bc8da(0x1b3),_0x51ac88+=_0x3bc8da(0x1f1),_0x51ac88+='<script\x20lang=\x22ts\x22\x20setup>\x0a';if(_0x3c7f85=='add')_0x51ac88+=_0x3bc8da(0x178)+_0x59aebb+_0x3bc8da(0x1a0),_0x51ac88+=_0x3bc8da(0x178)+_0x59aebb+'Add\x20}\x20from\x20\x27@/apis/'+(_0x2b5604?_0x3bc8da(0x20f)+_0x2b5604:''+_0xea158)+'/'+_0x59aebb+_0x3bc8da(0x1ec);else _0x3c7f85==_0x3bc8da(0x192)&&(_0x51ac88+=_0x3bc8da(0x178)+_0x59aebb+_0x3bc8da(0x1ce),_0x51ac88+=_0x3bc8da(0x178)+_0x59aebb+_0x3bc8da(0x1df)+_0x59aebb+_0x3bc8da(0x142)+(_0x2b5604?_0x3bc8da(0x20f)+_0x2b5604:''+_0xea158)+'/'+_0x59aebb+_0x3bc8da(0x1ec));_0x51ac88+='const\x20refForm\x20=\x20ref(),\x20formdata\x20=\x20ref<any>({});\x0a';if(_0x3c7f85=='add')_0x51ac88+=_0x3bc8da(0x156);else _0x3c7f85==_0x3bc8da(0x192)&&(_0x51ac88+=_0x3bc8da(0x143));_0x51ac88+=_0x3bc8da(0x173),_0x51ac88+=_0x3bc8da(0x1c8),_0x51ac88+=_0x3bc8da(0x1ad),_0x51ac88+=_0x3bc8da(0x18f)+_0x59aebb+(_0x3c7f85==_0x3bc8da(0x13d)?_0x3bc8da(0x1e9):'Edit')+'('+(_0x3c7f85==_0x3bc8da(0x192)?_0x3bc8da(0x14a)+_0x47f5e5[_0x3bc8da(0x1fa)]+',\x20':'')+_0x3bc8da(0x144),_0x51ac88+=_0x3bc8da(0x1b7),_0x51ac88+='\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err=>{\x0a',_0x51ac88+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27);\x0a',_0x51ac88+=_0x3bc8da(0x1f9),_0x51ac88+='\x20\x20\x20\x20})\x0a',_0x51ac88+=_0x3bc8da(0x14f),_0x3c7f85=='edit'&&(_0x51ac88+=_0x3bc8da(0x1e8),_0x51ac88+=_0x3bc8da(0x1dd)+_0x47f5e5[_0x3bc8da(0x1fa)]+':\x20'+(_0x1490c6?_0x3bc8da(0x20d):_0x3bc8da(0x189))+_0x3bc8da(0x13a),_0x51ac88+=_0x3bc8da(0x152)+_0x47f5e5[_0x3bc8da(0x1fa)]+_0x3bc8da(0x151),_0x51ac88+=_0x3bc8da(0x1ea),_0x51ac88+=_0x3bc8da(0x201)+_0x59aebb+_0x3bc8da(0x1ca)+_0x47f5e5['Field']+_0x3bc8da(0x17f),_0x51ac88+=_0x3bc8da(0x17e),_0x51ac88+=_0x3bc8da(0x18b),_0x51ac88+=_0x3bc8da(0x1d0),_0x51ac88+=_0x3bc8da(0x1f9),_0x51ac88+='\x20\x20\x20\x20}\x20else\x20{\x0a',_0x51ac88+=_0x3bc8da(0x1d6),_0x51ac88+='\x20\x20\x20\x20}\x0a',_0x51ac88+=_0x3bc8da(0x1eb),_0x51ac88+='getDetail(route?.query?.'+_0x47f5e5[_0x3bc8da(0x1fa)]+_0x3bc8da(0x168)+(_0x1490c6?_0x3bc8da(0x20d):'string')+')\x0a'),_0x51ac88+='</script>\x0a',fs['mkdirSync']((0x0,path_1['dirname'])(_0x10f6f5),{'recursive':!![]}),fs[_0x3bc8da(0x1ae)](_0x10f6f5,_0x51ac88,_0x3bc8da(0x204));}}async function createAddOrEditDialog({moduleName:_0x12e2f1,controller:_0x300946,tablestartUpShort:_0x511758,tablestartUpShort2:_0x23d5c8,Primary:_0x349c8b,Fields:_0x37ce99,apporbasic:_0x17dcd1,Comment:_0x2dcef9},_0x586fc2=a23_0x2f2439(0x13d)){const _0x1e9f26=a23_0x2f2439;let _0x4e5c49=process[_0x1e9f26(0x14c)]()+_0x1e9f26(0x19a)+(typeof _0x300946==_0x1e9f26(0x189)?'/'+_0x300946:'');_0x12e2f1?_0x4e5c49=_0x4e5c49+(_0x1e9f26(0x209)+_0x12e2f1+'/'+_0x23d5c8+_0x1e9f26(0x16d)+_0x586fc2+_0x1e9f26(0x1f5)):_0x4e5c49=_0x4e5c49+('/pages/'+_0x17dcd1+'/'+_0x23d5c8+'/components/dialog-'+_0x586fc2+_0x1e9f26(0x1f5));if(!fs['existsSync'](_0x4e5c49)){const _0x4444d4=''+(typeof _0x300946=='string'?_0x300946+'/':'')+(_0x12e2f1?_0x12e2f1+'/':'')+_0x23d5c8;let _0x50bce3='';for(let _0x478ee1 in _0x37ce99){const _0x193913=_0x37ce99[_0x478ee1];if([_0x1e9f26(0x1d5),_0x1e9f26(0x1c6),_0x1e9f26(0x1a6),'displayorder'][_0x1e9f26(0x1c0)](_0x478ee1)!=-0x1)continue;if(_0x478ee1[_0x1e9f26(0x1b4)](_0x478ee1['length']-0x4)=='imgs'||_0x478ee1['substring'](_0x478ee1[_0x1e9f26(0x180)]-0x6)==_0x1e9f26(0x15e))_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+_0x1e9f26(0x12e)+_0x478ee1+_0x1e9f26(0x17d)),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x194)+_0x478ee1+_0x1e9f26(0x147)+(_0x12e2f1?_0x1e9f26(0x1ee)+_0x12e2f1+'\x22':'')+_0x1e9f26(0x185)),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';else{if(_0x478ee1['substring'](_0x478ee1['length']-0x3)=='img'||_0x478ee1['substring'](_0x478ee1[_0x1e9f26(0x180)]-0x5)=='thumb'||_0x478ee1==_0x1e9f26(0x17a)||_0x478ee1[_0x1e9f26(0x1b4)](_0x478ee1['length']-0x4)==_0x1e9f26(0x1cb)||_0x478ee1==_0x1e9f26(0x1cb))_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+_0x1e9f26(0x12e)+_0x478ee1+_0x1e9f26(0x17d)),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+('<attachment-image\x20v-model=\x22formdata.'+_0x478ee1+_0x1e9f26(0x188)+(_0x12e2f1?_0x1e9f26(0x1ee)+_0x12e2f1+'\x22':'')+'/>'),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';else{if(_0x478ee1[_0x1e9f26(0x1b4)](_0x478ee1[_0x1e9f26(0x180)]-0x4)==_0x1e9f26(0x169)||_0x478ee1['substring'](_0x478ee1[_0x1e9f26(0x180)]-0x3)==_0x1e9f26(0x1d8))_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1e9f26(0x1bb)+(_0x193913['Comment']||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+('<elplus-select-tags\x20v-model=\x22formdata.'+_0x478ee1+_0x1e9f26(0x15c)+_0x193913['Comment']+'\x22\x20split=\x22-\x22\x20clearable/>'),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'</el-form-item>'+'\x0a';else{if(_0x478ee1['substr'](-0x3)=='num')_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x177)+_0x478ee1+_0x1e9f26(0x1e3)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x1ff)),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1e9f26(0x15b)+'\x0a';else{if(_0x478ee1['substr'](-0x4)==_0x1e9f26(0x1ac))_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x13b)+_0x478ee1+_0x1e9f26(0x1e3)+_0x193913[_0x1e9f26(0x1b0)]+'\x22\x20clearable/>'),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';else{if(_0x478ee1['substr'](-0x3)==_0x1e9f26(0x1af)){let _0x2ed4c6=''+(typeof _0x300946=='string'?_0x300946+'/':'')+(_0x12e2f1?_0x12e2f1+'/':'')+_0x23d5c8;_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+_0x1e9f26(0x12e)+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<elplus-select-search\x20v-model=\x22formdata.'+_0x478ee1+_0x1e9f26(0x1fd)+_0x2ed4c6+_0x1e9f26(0x133)),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';}else switch((0x0,helper_1['getProp'])(_0x193913[_0x1e9f26(0x1bf)])){case _0x1e9f26(0x20d):_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913['Field'])+_0x1e9f26(0x12e)+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x177)+_0x478ee1+_0x1e9f26(0x1e3)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x1ff)),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';break;case _0x1e9f26(0x1fc):_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913['Comment']||_0x193913[_0x1e9f26(0x1fa)])+_0x1e9f26(0x12e)+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x15d)+_0x478ee1+_0x1e9f26(0x19c)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x1bc));for(let _0x2e02a3 of(0x0,helper_1[_0x1e9f26(0x1d4)])(_0x193913[_0x1e9f26(0x1bf)])){_0x50bce3+='\x0a'+_0x1e9f26(0x1e5)+('<el-option\x20label=\x22'+_0x2e02a3+_0x1e9f26(0x1e2)+_0x2e02a3+_0x1e9f26(0x213));}_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'</el-select>',_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';break;case _0x1e9f26(0x19f):_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913['Field'])+_0x1e9f26(0x12e)+_0x478ee1+_0x1e9f26(0x17d)),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1e9f26(0x13b)+_0x478ee1+_0x1e9f26(0x1a8)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x1f0)),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+'</el-form-item>'+'\x0a';break;case _0x1e9f26(0x1a3):_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+_0x1e9f26(0x12e)+_0x478ee1+_0x1e9f26(0x17d)),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1e9f26(0x161)+_0x478ee1+'\x22\x20'+(_0x12e2f1?'module=\x22'+_0x12e2f1+'\x22':'')+'/>'),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+'</el-form-item>'+'\x0a';break;case _0x1e9f26(0x1cf):_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+_0x1e9f26(0x12e)+_0x478ee1+_0x1e9f26(0x17d)),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+('<tinymce-editor\x20v-model=\x22formdata.'+_0x478ee1+'\x22\x20'+(_0x12e2f1?_0x1e9f26(0x1ee)+_0x12e2f1+'\x22':'')+'/>'),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';break;case _0x1e9f26(0x1b5):_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x12f)+_0x478ee1+_0x1e9f26(0x16a)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x1e6)),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'</el-form-item>'+'\x0a';break;case _0x1e9f26(0x200):_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x12f)+_0x478ee1+_0x1e9f26(0x16a)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x13e)),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+'</el-form-item>'+'\x0a';break;case _0x1e9f26(0x1b8):_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x12f)+_0x478ee1+_0x1e9f26(0x16a)+_0x193913[_0x1e9f26(0x1b0)]+_0x1e9f26(0x13e)),_0x50bce3+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1e9f26(0x15b)+'\x0a';break;default:_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+(_0x1e9f26(0x1bb)+(_0x193913[_0x1e9f26(0x1b0)]||_0x193913[_0x1e9f26(0x1fa)])+'\x22\x20prop=\x22'+_0x478ee1+'\x22>'),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+(_0x1e9f26(0x13b)+_0x478ee1+_0x1e9f26(0x1e3)+_0x193913[_0x1e9f26(0x1b0)]+'\x22\x20clearable/>'),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x15b)+'\x0a';}}}}}}}_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+_0x1e9f26(0x1aa),_0x50bce3+='\x0a'+_0x1e9f26(0x136)+_0x1e9f26(0x183),_0x50bce3+='\x0a'+_0x1e9f26(0x1a4)+'</el-form-item>'+'\x0a';let _0x319ea0=_0x1e9f26(0x13f);_0x319ea0+=_0x1e9f26(0x149)+(_0x586fc2==_0x1e9f26(0x13d)?'添加'+_0x2dcef9:'编辑'+_0x2dcef9)+_0x1e9f26(0x18d),_0x319ea0+=_0x1e9f26(0x195)+_0x511758+(_0x586fc2==_0x1e9f26(0x13d)?_0x1e9f26(0x1e9):_0x1e9f26(0x20a))+_0x1e9f26(0x1c5)+_0x4444d4+'/'+(_0x586fc2=='add'?_0x1e9f26(0x13d):_0x1e9f26(0x1a9)+_0x349c8b[_0x1e9f26(0x1fa)])+_0x1e9f26(0x134),_0x319ea0+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x50bce3+'\x0a\x0a',_0x319ea0+=_0x1e9f26(0x1dc),_0x319ea0+='\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#footer>\x0a',_0x319ea0+=_0x1e9f26(0x18a)+_0x4444d4+'/'+(_0x586fc2==_0x1e9f26(0x13d)?_0x1e9f26(0x13d):_0x1e9f26(0x1a9)+_0x349c8b[_0x1e9f26(0x1fa)])+_0x1e9f26(0x14e),_0x319ea0+=_0x1e9f26(0x196),_0x319ea0+=_0x1e9f26(0x14d),_0x319ea0+=_0x1e9f26(0x1f1),_0x319ea0+=_0x1e9f26(0x140);if(_0x586fc2==_0x1e9f26(0x13d))_0x319ea0+=_0x1e9f26(0x178)+_0x511758+_0x1e9f26(0x1a0),_0x319ea0+=_0x1e9f26(0x178)+_0x511758+'Add\x20}\x20from\x20\x27@/apis/'+(_0x12e2f1?_0x1e9f26(0x20f)+_0x12e2f1:''+_0x17dcd1)+'/'+_0x511758+_0x1e9f26(0x1ec);else _0x586fc2==_0x1e9f26(0x192)&&(_0x319ea0+=_0x1e9f26(0x178)+_0x511758+_0x1e9f26(0x1ce),_0x319ea0+=_0x1e9f26(0x178)+_0x511758+'Detail,\x20'+_0x511758+_0x1e9f26(0x1c9)+(_0x12e2f1?'apps/'+_0x12e2f1:''+_0x17dcd1)+'/'+_0x511758+'\x27;\x0a\x0a');if(_0x586fc2=='add')_0x319ea0+=_0x1e9f26(0x206),_0x319ea0+=_0x1e9f26(0x1b9),_0x319ea0+=_0x1e9f26(0x14f);else _0x586fc2==_0x1e9f26(0x192)&&(_0x319ea0+='const\x20loading\x20=\x20ref(false),\x20refDialog\x20=\x20ref(null),\x20refForm\x20=\x20ref(null),\x20formdata\x20=\x20ref<any>({}),\x20emits\x20=\x20defineEmits([\x27save\x27]),\x20open\x20=\x20('+_0x349c8b['Field']+_0x1e9f26(0x13a),_0x319ea0+=_0x1e9f26(0x1c3)+_0x511758+_0x1e9f26(0x1ca)+_0x349c8b['Field']+_0x1e9f26(0x17f),_0x319ea0+=_0x1e9f26(0x1be),_0x319ea0+=_0x1e9f26(0x205),_0x319ea0+=_0x1e9f26(0x146),_0x319ea0+='\x20\x20\x20\x20})\x0a',_0x319ea0+=_0x1e9f26(0x14f));;_0x319ea0+=_0x1e9f26(0x173),_0x319ea0+='const\x20handlerSave\x20=\x20()=>{\x0a',_0x319ea0+=_0x1e9f26(0x1ad),_0x319ea0+='\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20'+_0x511758+(_0x586fc2==_0x1e9f26(0x13d)?_0x1e9f26(0x1e9):_0x1e9f26(0x20a))+'('+(_0x586fc2==_0x1e9f26(0x192)?_0x1e9f26(0x14a)+_0x349c8b[_0x1e9f26(0x1fa)]+',\x20':'')+_0x1e9f26(0x144),_0x319ea0+=_0x1e9f26(0x163),_0x319ea0+=_0x1e9f26(0x181),_0x319ea0+=_0x1e9f26(0x18e),_0x319ea0+=_0x1e9f26(0x1f9),_0x319ea0+='\x20\x20\x20\x20})\x0a',_0x319ea0+=_0x1e9f26(0x14f),_0x319ea0+=_0x1e9f26(0x16f),_0x319ea0+=_0x1e9f26(0x18c),fs['mkdirSync']((0x0,path_1[_0x1e9f26(0x139)])(_0x4e5c49),{'recursive':!![]}),fs[_0x1e9f26(0x1ae)](_0x4e5c49,_0x319ea0,_0x1e9f26(0x204));}}
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = default_1;
|
|
4
|
+
const fs = require("fs");
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const helper_1 = require("../helper");
|
|
7
|
+
async function default_1({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment, vuedialog }) {
|
|
8
|
+
await createIndex({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, vuedialog });
|
|
9
|
+
await createSearch({ moduleName, controller, tablestartUpShort2, Primary, Fields, apporbasic, vuedialog });
|
|
10
|
+
if (!vuedialog) {
|
|
11
|
+
await createAddOrEdit({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'add');
|
|
12
|
+
await createAddOrEdit({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'edit');
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
await createAddOrEditDialog({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'add');
|
|
16
|
+
await createAddOrEditDialog({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'edit');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
async function createIndex({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, vuedialog }) {
|
|
20
|
+
let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
|
|
21
|
+
if (moduleName) {
|
|
22
|
+
TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}index.vue`;
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}index.vue`;
|
|
26
|
+
}
|
|
27
|
+
if (!fs.existsSync(TmpFilePath)) {
|
|
28
|
+
let tmpstr = `<el-table-column prop=` + `"${Primary.Field}"`.padEnd(20) + ` label="${Primary.Comment || '编号'}" align="center" fixed="left" />`;
|
|
29
|
+
for (let tableKey in Fields) {
|
|
30
|
+
const Field = Fields[tableKey];
|
|
31
|
+
if (['created_at', 'updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
|
|
35
|
+
tmpstr += "\n" + ' ' + `<el-table-column prop=` + `"${tableKey}"`.padEnd(20) + ` label="${Field.Comment || Field.Field}" align='center' show-overflow-tooltip>`;
|
|
36
|
+
tmpstr += "\n" + ' ' + `<template #default="scope">`;
|
|
37
|
+
tmpstr += "\n" + ' ' + `<el-popover placement="bottom" trigger="click">`;
|
|
38
|
+
tmpstr += "\n" + ' ' + `<a :href="scope.row.${tableKey}" target="_blank" title="查看最大化图片">`;
|
|
39
|
+
tmpstr += "\n" + ' ' + `<img :src="scope.row.${tableKey}" style="width: 100%;max-width:500px" />`;
|
|
40
|
+
tmpstr += "\n" + ' ' + `</a>`;
|
|
41
|
+
tmpstr += "\n" + ' ' + `<template #reference>`;
|
|
42
|
+
tmpstr += "\n" + ' ' + `<el-avatar :src="scope.row.${tableKey}" style="cursor:pointer"/>`;
|
|
43
|
+
tmpstr += "\n" + ' ' + `</template>`;
|
|
44
|
+
tmpstr += "\n" + ' ' + `</el-popover>`;
|
|
45
|
+
tmpstr += "\n" + ' ' + `</template>`;
|
|
46
|
+
tmpstr += "\n" + ' ' + `</el-table-column>`;
|
|
47
|
+
}
|
|
48
|
+
else if (['tinyint'].indexOf((0, helper_1.getProp)(Field.Type)) != -1) {
|
|
49
|
+
tmpstr += "\n" + ' ' + `<el-table-column prop=` + `"${tableKey}"`.padEnd(20) + ` label="${Field.Comment || Field.Field}" align='center' sortable="custom">`;
|
|
50
|
+
tmpstr += "\n" + ' ' + `<template #default="scope">`;
|
|
51
|
+
tmpstr += "\n" + ' ' + `<elplus-switch v-model="scope.row" field="${tableKey}" active-text="启用" inactive-text="禁用" @change="handlerFieldChange" />`;
|
|
52
|
+
tmpstr += "\n" + ' ' + `</template>`;
|
|
53
|
+
tmpstr += "\n" + ' ' + `</el-table-column>`;
|
|
54
|
+
}
|
|
55
|
+
else if (['text'].indexOf((0, helper_1.getProp)(Field.Type)) == -1) {
|
|
56
|
+
tmpstr += "\n" + ' ' + `<el-table-column prop=` + `"${tableKey}"`.padEnd(20) + ` label="${Field.Comment || Field.Field}" align='center' sortable="custom" show-overflow-tooltip />`;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
const apiPrefix = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
|
|
60
|
+
fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
|
|
61
|
+
fs.writeFileSync(TmpFilePath, `<template>
|
|
62
|
+
<page-main>
|
|
63
|
+
<elplus-table :datas="table.data" :pageinfo="table.search" :loading="loading" @transform="LoadDatas">
|
|
64
|
+
<template #search>
|
|
65
|
+
<search v-model:search="table.search" />
|
|
66
|
+
</template>
|
|
67
|
+
|
|
68
|
+
<template #header>
|
|
69
|
+
<el-button v-if="$hasPrem(\`get@/${apiPrefix}/add\`)" @click="${!vuedialog ? '$router.push(\`add\`)' : '$refs?.refDialogAdd?.open()'}" type="primary">
|
|
70
|
+
添加
|
|
71
|
+
</el-button>
|
|
72
|
+
</template>
|
|
73
|
+
|
|
74
|
+
<template #column>
|
|
75
|
+
${tmpstr}
|
|
76
|
+
<el-table-column label="排序" prop="displayorder" align="center" width="80">
|
|
77
|
+
<template #default="scope">
|
|
78
|
+
<el-input v-model="scope.row.displayorder" type="number" @change="handlerFieldChange(scope.row,'displayorder')"></el-input>
|
|
79
|
+
</template>
|
|
80
|
+
</el-table-column>
|
|
81
|
+
|
|
82
|
+
<el-table-column label="操作" align="center" fixed="right">
|
|
83
|
+
<template #default="scope">
|
|
84
|
+
<el-button v-if="$hasPrem(\`get@/${apiPrefix}/edit/:${Primary.Field}\`)" @click="${!vuedialog ? `$router.push(\`edit?${Primary.Field}=\${scope.row.${Primary.Field}}\`)` : `$refs?.refDialogEdit?.open(scope.row.id)`}" type="primary" text>
|
|
85
|
+
编辑
|
|
86
|
+
</el-button>
|
|
87
|
+
<el-button v-if="$hasPrem(\`post@/${apiPrefix}/remove\`)" @click="handlerRemove(scope.row)" type="danger" text>
|
|
88
|
+
删除
|
|
89
|
+
</el-button>
|
|
90
|
+
</template>
|
|
91
|
+
</el-table-column>
|
|
92
|
+
</template>
|
|
93
|
+
</elplus-table>
|
|
94
|
+
${!vuedialog ? `` : `<dialog-add-vue ref="refDialogAdd" @save="LoadDatas()" />`}
|
|
95
|
+
${!vuedialog ? `` : `<dialog-edit-vue ref="refDialogEdit" @save="LoadDatas()"/>`}
|
|
96
|
+
</page-main>
|
|
97
|
+
</template>
|
|
98
|
+
<script lang="ts" setup>
|
|
99
|
+
import search from './components/search.vue';
|
|
100
|
+
${!vuedialog ? `` : `import dialogAddVue from './components/dialog-add.vue';`}
|
|
101
|
+
${!vuedialog ? `` : `import dialogEditVue from './components/dialog-edit.vue';`}
|
|
102
|
+
import { ${tablestartUpShort}List, ${tablestartUpShort}Remove, ${tablestartUpShort}Edit } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';
|
|
103
|
+
|
|
104
|
+
const loading = ref(false), route = useRoute(), table = reactive({
|
|
105
|
+
data: [],
|
|
106
|
+
select: [],
|
|
107
|
+
search: {
|
|
108
|
+
_page: 1,
|
|
109
|
+
_size: 20,
|
|
110
|
+
_count: 0,
|
|
111
|
+
}
|
|
112
|
+
})
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* 获取数据列表
|
|
117
|
+
* @param page 分页-当前页
|
|
118
|
+
* @param size 分页-每页数量
|
|
119
|
+
* **/
|
|
120
|
+
const LoadDatas = (page?: number, size?: number, sortable = {}) => {
|
|
121
|
+
loading.value = true, page && (table.search._page = page), size && (table.search._size = size);
|
|
122
|
+
${tablestartUpShort}List(Object.assign({}, route?.query || {}, table.search || {}, sortable)).then(res => {
|
|
123
|
+
loading.value = false, table.data = res.data || [], table.search = { ...table.search, ...res?.extra?.pageinfo || {}, _count: res?.extra?.pagetotal || 0 };
|
|
124
|
+
}).catch(err => {
|
|
125
|
+
loading.value = false, $notify.error(err || '网络请求错误');
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* 删除数据
|
|
131
|
+
* **/
|
|
132
|
+
const handlerRemove = (item:any) => {
|
|
133
|
+
loading.value = true, $confirm(\`确定删除数据吗?\`, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => {
|
|
134
|
+
${tablestartUpShort}Remove({ ${Primary.Field}: item.${Primary.Field} }).then(res => {
|
|
135
|
+
loading.value = false, $notify.success(res?.message || '删除成功'), LoadDatas();
|
|
136
|
+
}).catch(err => {
|
|
137
|
+
loading.value = false, $notify.error(err || '删除失败');
|
|
138
|
+
})
|
|
139
|
+
}).catch(() => {
|
|
140
|
+
loading.value = false;
|
|
141
|
+
})
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* 修改字段状态
|
|
146
|
+
* **/
|
|
147
|
+
const handlerFieldChange = (item: any, field:string)=>{
|
|
148
|
+
if (item.${Primary.Field}) {
|
|
149
|
+
loading.value = true, ${tablestartUpShort}Edit(item.${Primary.Field}, { [field]: item[field] }).then(res => {
|
|
150
|
+
if( typeof(res?.data) != 'undefined' ){
|
|
151
|
+
item = res.data;
|
|
152
|
+
}
|
|
153
|
+
loading.value = false, $notify.success(res?.message || '操作成功');
|
|
154
|
+
}).catch(err => {
|
|
155
|
+
loading.value = false, $notify.error(err || '操作失败');
|
|
156
|
+
})
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* 加载数据
|
|
162
|
+
* **/
|
|
163
|
+
LoadDatas()
|
|
164
|
+
|
|
165
|
+
</script>`, 'utf-8');
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
async function createSearch({ moduleName, tablestartUpShort2, controller, Primary, Fields, apporbasic, vuedialog }) {
|
|
169
|
+
let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
|
|
170
|
+
if (moduleName) {
|
|
171
|
+
TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}components/search.vue`;
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}components/search.vue`;
|
|
175
|
+
}
|
|
176
|
+
if (!fs.existsSync(TmpFilePath)) {
|
|
177
|
+
let tmpstr = '';
|
|
178
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Primary.Comment || '编号'}">`;
|
|
179
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="props.search.${Primary.Field}" placeholder="请输入${Primary.Comment || '编号'}" clearable/>`;
|
|
180
|
+
tmpstr += "\n" + ' ' + `</el-form-item>`;
|
|
181
|
+
for (let tableKey in Fields) {
|
|
182
|
+
const Field = Fields[tableKey];
|
|
183
|
+
if (['updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
|
|
184
|
+
continue;
|
|
185
|
+
}
|
|
186
|
+
if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
|
|
187
|
+
continue;
|
|
188
|
+
}
|
|
189
|
+
if (tableKey.substring(tableKey.length - 3) == 'num') {
|
|
190
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
|
|
191
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="props.search.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" clearable/>`;
|
|
192
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
193
|
+
}
|
|
194
|
+
else if (tableKey.endsWith('_id')) {
|
|
195
|
+
let _table_ = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
|
|
196
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
|
|
197
|
+
tmpstr += "\n" + ' ' + `<elplus-select-search v-model="props.search.${tableKey}" api="${_table_}" lakey="id" label="id" clearable/>`;
|
|
198
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
switch ((0, helper_1.getProp)(Field.Type)) {
|
|
202
|
+
case 'enum':
|
|
203
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
|
|
204
|
+
tmpstr += "\n" + ' ' + `<el-select v-model="props.search.${tableKey}" placeholder="请选择${Field.Comment}" clearable>`;
|
|
205
|
+
for (let _enum of (0, helper_1.getEnum)(Field.Type)) {
|
|
206
|
+
tmpstr += "\n" + ' ' + `<el-option label="${_enum}" value="${_enum}" />`;
|
|
207
|
+
}
|
|
208
|
+
tmpstr += "\n" + ' ' + `</el-select>`;
|
|
209
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
210
|
+
break;
|
|
211
|
+
case 'date':
|
|
212
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}>=">`;
|
|
213
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_start" placeholder="选择${Field.Comment}开始时间" type="date" value-format="YYYY-MM-DD"/>`;
|
|
214
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
215
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}<=">`;
|
|
216
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_end" placeholder="选择${Field.Comment}结束时间" type="date" value-format="YYYY-MM-DD"/>`;
|
|
217
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
218
|
+
break;
|
|
219
|
+
case 'datetime':
|
|
220
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}>=">`;
|
|
221
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_start" placeholder="选择${Field.Comment}开始时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
222
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
223
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}<=">`;
|
|
224
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_end" placeholder="选择${Field.Comment}结束时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
225
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
226
|
+
break;
|
|
227
|
+
case 'timestamp':
|
|
228
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}>=">`;
|
|
229
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_start" placeholder="选择${Field.Comment}开始时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
230
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
231
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}<=">`;
|
|
232
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_end" placeholder="选择${Field.Comment}结束时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
233
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
234
|
+
break;
|
|
235
|
+
case 'string':
|
|
236
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
|
|
237
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="props.search.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
|
|
238
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
|
|
243
|
+
fs.writeFileSync(TmpFilePath, `<template>
|
|
244
|
+
${tmpstr}
|
|
245
|
+
</template>
|
|
246
|
+
<script lang="ts" setup>
|
|
247
|
+
const props = defineProps({
|
|
248
|
+
search: {type: Object ,default: ()=>{return {}}},
|
|
249
|
+
})
|
|
250
|
+
</script>`, 'utf-8');
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
async function createAddOrEdit({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, addOrEdit = 'add') {
|
|
254
|
+
let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
|
|
255
|
+
if (moduleName) {
|
|
256
|
+
TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}/${addOrEdit}/index.vue`;
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}/${addOrEdit}/index.vue`;
|
|
260
|
+
}
|
|
261
|
+
if (!fs.existsSync(TmpFilePath)) {
|
|
262
|
+
const primaryIsInt = ['text', 'mediumtext', 'string'].indexOf((0, helper_1.getProp)(Primary.Type)) == -1;
|
|
263
|
+
const apiPrefix = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
|
|
264
|
+
let tmpstr = '';
|
|
265
|
+
for (let tableKey in Fields) {
|
|
266
|
+
const Field = Fields[tableKey];
|
|
267
|
+
if (['created_at', 'updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
|
|
268
|
+
continue;
|
|
269
|
+
}
|
|
270
|
+
if (tableKey.substring(tableKey.length - 4) == 'imgs' || tableKey.substring(tableKey.length - 6) == 'thumbs') {
|
|
271
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
272
|
+
tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="5" ${moduleName ? `module="${moduleName}"` : ``} />`;
|
|
273
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
274
|
+
}
|
|
275
|
+
else if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
|
|
276
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
277
|
+
tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="1" ${moduleName ? `module="${moduleName}"` : ``}/>`;
|
|
278
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
279
|
+
}
|
|
280
|
+
else if (tableKey.substring(tableKey.length - 4) == 'tags' || tableKey.substring(tableKey.length - 3) == 'tag') {
|
|
281
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
282
|
+
tmpstr += "\n" + ' ' + `<elplus-select-tags v-model="formdata.${tableKey}" placeholder="请输入或选择${Field.Comment}" split="-" clearable/>`;
|
|
283
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
284
|
+
}
|
|
285
|
+
else if (tableKey.substr(-3) == 'num') {
|
|
286
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
287
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
|
|
288
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
289
|
+
}
|
|
290
|
+
else if (tableKey.substr(-4) == '_ids') {
|
|
291
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
292
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
|
|
293
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
294
|
+
}
|
|
295
|
+
else if (tableKey.substr(-3) == '_id') {
|
|
296
|
+
let _table_ = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
|
|
297
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
298
|
+
tmpstr += "\n" + ' ' + `<elplus-select-search v-model="formdata.${tableKey}" api="${_table_}" lakey="id" label="id" clearable/>`;
|
|
299
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
switch ((0, helper_1.getProp)(Field.Type)) {
|
|
303
|
+
case 'number':
|
|
304
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
305
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
|
|
306
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
307
|
+
break;
|
|
308
|
+
case 'enum':
|
|
309
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
310
|
+
tmpstr += "\n" + ' ' + `<el-select v-model="formdata.${tableKey}" placeholder="请选择${Field.Comment}" clearable>`;
|
|
311
|
+
for (let _enum of (0, helper_1.getEnum)(Field.Type)) {
|
|
312
|
+
tmpstr += "\n" + ' ' + `<el-option label="${_enum}" value="${_enum}" />`;
|
|
313
|
+
}
|
|
314
|
+
tmpstr += "\n" + ' ' + `</el-select>`;
|
|
315
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
316
|
+
break;
|
|
317
|
+
case 'text':
|
|
318
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
319
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" type="textarea" :rows="4"/>`;
|
|
320
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
321
|
+
break;
|
|
322
|
+
case 'longtext':
|
|
323
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
324
|
+
tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
|
|
325
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
326
|
+
break;
|
|
327
|
+
case 'mediumtext':
|
|
328
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
329
|
+
tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
|
|
330
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
331
|
+
break;
|
|
332
|
+
case 'date':
|
|
333
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
334
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="date" value-format="YYYY-MM-DD"/>`;
|
|
335
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
336
|
+
break;
|
|
337
|
+
case 'datetime':
|
|
338
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
339
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
340
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
341
|
+
break;
|
|
342
|
+
case 'timestamp':
|
|
343
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
344
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
345
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
346
|
+
break;
|
|
347
|
+
default:
|
|
348
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
349
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
|
|
350
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="排序" prop="displayorder">`;
|
|
355
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.displayorder" placeholder="请输入排序权重" controls-position="right"/>`;
|
|
356
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
357
|
+
let template = `<template>\n`;
|
|
358
|
+
template += ` <page-main>\n`;
|
|
359
|
+
template += ` <elplus-form ref="refForm" title="${addOrEdit == 'add' ? `添加${Comment}` : `编辑${Comment}`}" :model="formdata" :rules="${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}Rule" :loading="loading" :disabled="!$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? 'add' : `edit/:${Primary.Field}`}\`)">\n`;
|
|
360
|
+
template += ` ${tmpstr}\n\n`;
|
|
361
|
+
template += ` <template #footer>\n`;
|
|
362
|
+
template += ` <el-button v-if="$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? `add` : `edit/:${Primary.Field}`}\`)" type="primary" @click="handlerSave()">保存</el-button>\n`;
|
|
363
|
+
template += ` </template>\n`;
|
|
364
|
+
template += ` </elplus-form>\n`;
|
|
365
|
+
template += ` </page-main>\n`;
|
|
366
|
+
template += `</template>\n`;
|
|
367
|
+
template += `<script lang="ts" setup>\n`;
|
|
368
|
+
if (addOrEdit == 'add') {
|
|
369
|
+
template += `import { ${tablestartUpShort}AddRule } from '../interface';\n`;
|
|
370
|
+
template += `import { ${tablestartUpShort}Add } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
|
|
371
|
+
}
|
|
372
|
+
else if (addOrEdit == 'edit') {
|
|
373
|
+
template += `import { ${tablestartUpShort}EditRule } from '../interface';\n`;
|
|
374
|
+
template += `import { ${tablestartUpShort}Edit, ${tablestartUpShort}Detail } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
|
|
375
|
+
}
|
|
376
|
+
template += `const refForm = ref(), formdata = ref<any>({});\n`;
|
|
377
|
+
if (addOrEdit == 'add') {
|
|
378
|
+
template += `const loading = ref(false), router = useRouter();\n\n`;
|
|
379
|
+
}
|
|
380
|
+
else if (addOrEdit == 'edit') {
|
|
381
|
+
template += `const loading = ref(false), router = useRouter(), route = useRoute();\n\n`;
|
|
382
|
+
}
|
|
383
|
+
template += `// 保存数据\n`;
|
|
384
|
+
template += `const handlerSave = ()=>{\n`;
|
|
385
|
+
template += ` refForm.value?.validate().then((item: any) => {\n`;
|
|
386
|
+
template += ` loading.value = true, ${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}(${addOrEdit == 'edit' ? `item.${Primary.Field}, ` : ''}item).then(res=>{\n`;
|
|
387
|
+
template += ` loading.value = false, $notify.success(res?.message || '操作成功'), router.back();\n`;
|
|
388
|
+
template += ` }).catch(err=>{\n`;
|
|
389
|
+
template += ` loading.value = false, $notify.error(err || '网络请求错误');\n`;
|
|
390
|
+
template += ` })\n`;
|
|
391
|
+
template += ` })\n`;
|
|
392
|
+
template += `}\n\n`;
|
|
393
|
+
if (addOrEdit == 'edit') {
|
|
394
|
+
template += `// 获取详情\n`;
|
|
395
|
+
template += `const getDetail = (${Primary.Field}: ${primaryIsInt ? 'number' : 'string'}) => {\n`;
|
|
396
|
+
template += ` if (${Primary.Field}) {\n`;
|
|
397
|
+
template += ` loading.value = true, formdata.value = {};\n`;
|
|
398
|
+
template += ` ${tablestartUpShort}Detail(${Primary.Field}).then(res => {\n`;
|
|
399
|
+
template += ` loading.value = false, formdata.value = res.data;\n`;
|
|
400
|
+
template += ` }).catch(err => {\n`;
|
|
401
|
+
template += ` loading.value = false, $notify.error(err || '网络请求错误'), router.back();\n`;
|
|
402
|
+
template += ` })\n`;
|
|
403
|
+
template += ` } else {\n`;
|
|
404
|
+
template += ` router.back();\n`;
|
|
405
|
+
template += ` }\n`;
|
|
406
|
+
template += `}\n\n\n`;
|
|
407
|
+
template += `getDetail(route?.query?.${Primary.Field} as unknown as ${primaryIsInt ? 'number' : 'string'})\n`;
|
|
408
|
+
}
|
|
409
|
+
template += `</script>\n`;
|
|
410
|
+
fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
|
|
411
|
+
fs.writeFileSync(TmpFilePath, template, 'utf-8');
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
async function createAddOrEditDialog({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, addOrEdit = 'add') {
|
|
415
|
+
let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
|
|
416
|
+
if (moduleName) {
|
|
417
|
+
TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}/components/dialog-${addOrEdit}.vue`;
|
|
418
|
+
}
|
|
419
|
+
else {
|
|
420
|
+
TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}/components/dialog-${addOrEdit}.vue`;
|
|
421
|
+
}
|
|
422
|
+
if (!fs.existsSync(TmpFilePath)) {
|
|
423
|
+
const apiPrefix = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
|
|
424
|
+
let tmpstr = '';
|
|
425
|
+
for (let tableKey in Fields) {
|
|
426
|
+
const Field = Fields[tableKey];
|
|
427
|
+
if (['created_at', 'updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
|
|
428
|
+
continue;
|
|
429
|
+
}
|
|
430
|
+
if (tableKey.substring(tableKey.length - 4) == 'imgs' || tableKey.substring(tableKey.length - 6) == 'thumbs') {
|
|
431
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
432
|
+
tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="5" ${moduleName ? `module="${moduleName}"` : ``} />`;
|
|
433
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
434
|
+
}
|
|
435
|
+
else if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
|
|
436
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
437
|
+
tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="1" ${moduleName ? `module="${moduleName}"` : ``}/>`;
|
|
438
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
439
|
+
}
|
|
440
|
+
else if (tableKey.substring(tableKey.length - 4) == 'tags' || tableKey.substring(tableKey.length - 3) == 'tag') {
|
|
441
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
442
|
+
tmpstr += "\n" + ' ' + `<elplus-select-tags v-model="formdata.${tableKey}" placeholder="请输入或选择${Field.Comment}" split="-" clearable/>`;
|
|
443
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
444
|
+
}
|
|
445
|
+
else if (tableKey.substr(-3) == 'num') {
|
|
446
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
447
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
|
|
448
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
449
|
+
}
|
|
450
|
+
else if (tableKey.substr(-4) == '_ids') {
|
|
451
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
452
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
|
|
453
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
454
|
+
}
|
|
455
|
+
else if (tableKey.substr(-3) == '_id') {
|
|
456
|
+
let _table_ = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
|
|
457
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
458
|
+
tmpstr += "\n" + ' ' + `<elplus-select-search v-model="formdata.${tableKey}" api="${_table_}" lakey="id" label="id" clearable/>`;
|
|
459
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
460
|
+
}
|
|
461
|
+
else {
|
|
462
|
+
switch ((0, helper_1.getProp)(Field.Type)) {
|
|
463
|
+
case 'number':
|
|
464
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
465
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
|
|
466
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
467
|
+
break;
|
|
468
|
+
case 'enum':
|
|
469
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
470
|
+
tmpstr += "\n" + ' ' + `<el-select v-model="formdata.${tableKey}" placeholder="请选择${Field.Comment}" clearable>`;
|
|
471
|
+
for (let _enum of (0, helper_1.getEnum)(Field.Type)) {
|
|
472
|
+
tmpstr += "\n" + ' ' + `<el-option label="${_enum}" value="${_enum}" />`;
|
|
473
|
+
}
|
|
474
|
+
tmpstr += "\n" + ' ' + `</el-select>`;
|
|
475
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
476
|
+
break;
|
|
477
|
+
case 'text':
|
|
478
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
479
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" type="textarea" :rows="4"/>`;
|
|
480
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
481
|
+
break;
|
|
482
|
+
case 'longtext':
|
|
483
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
484
|
+
tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
|
|
485
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
486
|
+
break;
|
|
487
|
+
case 'mediumtext':
|
|
488
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
|
|
489
|
+
tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
|
|
490
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
491
|
+
break;
|
|
492
|
+
case 'date':
|
|
493
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
494
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="date" value-format="YYYY-MM-DD"/>`;
|
|
495
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
496
|
+
break;
|
|
497
|
+
case 'datetime':
|
|
498
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
499
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
500
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
501
|
+
break;
|
|
502
|
+
case 'timestamp':
|
|
503
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
504
|
+
tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
|
|
505
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
506
|
+
break;
|
|
507
|
+
default:
|
|
508
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
|
|
509
|
+
tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
|
|
510
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
tmpstr += "\n" + ' ' + `<el-form-item label="排序" prop="displayorder">`;
|
|
515
|
+
tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.displayorder" placeholder="请输入排序权重" controls-position="right"/>`;
|
|
516
|
+
tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
|
|
517
|
+
let template = `<template>\n`;
|
|
518
|
+
template += ` <elplus-dialog ref="refDialog" :loading="loading" title="${addOrEdit == 'add' ? `添加${Comment}` : `编辑${Comment}`}">\n`;
|
|
519
|
+
template += ` <elplus-form ref="refForm" :model="formdata" :rules="${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}Rule" :loading="loading" :disabled="!$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? 'add' : `edit/:${Primary.Field}`}\`)">\n`;
|
|
520
|
+
template += ` ${tmpstr}\n\n`;
|
|
521
|
+
template += ` </elplus-form>\n`;
|
|
522
|
+
template += ` <template #footer>\n`;
|
|
523
|
+
template += ` <el-button v-if="$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? `add` : `edit/:${Primary.Field}`}\`)" type="primary" @click="handlerSave()">保存</el-button>\n`;
|
|
524
|
+
template += ` </template>\n`;
|
|
525
|
+
template += ` </elplus-dialog>\n`;
|
|
526
|
+
template += `</template>\n`;
|
|
527
|
+
template += `<script lang="ts" setup>\n`;
|
|
528
|
+
if (addOrEdit == 'add') {
|
|
529
|
+
template += `import { ${tablestartUpShort}AddRule } from '../interface';\n`;
|
|
530
|
+
template += `import { ${tablestartUpShort}Add } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
|
|
531
|
+
}
|
|
532
|
+
else if (addOrEdit == 'edit') {
|
|
533
|
+
template += `import { ${tablestartUpShort}EditRule } from '../interface';\n`;
|
|
534
|
+
template += `import { ${tablestartUpShort}Detail, ${tablestartUpShort}Edit } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
|
|
535
|
+
}
|
|
536
|
+
if (addOrEdit == 'add') {
|
|
537
|
+
template += `const loading = ref(false), refDialog = ref(null), refForm = ref(null), formdata = ref<any>({}), emits = defineEmits(['save']), open = () => {\n`;
|
|
538
|
+
template += ` formdata.value = {}, refDialog?.value?.open();\n`;
|
|
539
|
+
template += `}\n\n`;
|
|
540
|
+
}
|
|
541
|
+
else if (addOrEdit == 'edit') {
|
|
542
|
+
template += `const loading = ref(false), refDialog = ref(null), refForm = ref(null), formdata = ref<any>({}), emits = defineEmits(['save']), open = (${Primary.Field}) => {\n`;
|
|
543
|
+
template += ` formdata.value = {}, ${tablestartUpShort}Detail(${Primary.Field}).then(res => {\n`;
|
|
544
|
+
template += ` formdata.value = res?.data || {}, refDialog?.value?.open();\n`;
|
|
545
|
+
template += ` }).catch(err => {\n`;
|
|
546
|
+
template += ` $notify.error(err || '网络请求错误')\n`;
|
|
547
|
+
template += ` })\n`;
|
|
548
|
+
template += `}\n\n`;
|
|
549
|
+
}
|
|
550
|
+
;
|
|
551
|
+
template += `// 保存数据\n`;
|
|
552
|
+
template += `const handlerSave = ()=>{\n`;
|
|
553
|
+
template += ` refForm.value?.validate().then((item: any) => {\n`;
|
|
554
|
+
template += ` loading.value = true, ${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}(${addOrEdit == 'edit' ? `item.${Primary.Field}, ` : ''}item).then(res=>{\n`;
|
|
555
|
+
template += ` loading.value = false, $notify.success(res?.message || '操作成功'), emits('save'), refDialog?.value?.close()\n`;
|
|
556
|
+
template += ` }).catch(err=>{\n`;
|
|
557
|
+
template += ` loading.value = false, $notify.error(err || '网络请求错误');\n`;
|
|
558
|
+
template += ` })\n`;
|
|
559
|
+
template += ` })\n`;
|
|
560
|
+
template += `}\n\n`;
|
|
561
|
+
template += `defineExpose({ open })\n`;
|
|
562
|
+
template += `</script>\n`;
|
|
563
|
+
fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
|
|
564
|
+
fs.writeFileSync(TmpFilePath, template, 'utf-8');
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGF5b3V0VnVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RlbXBsYXRlVnVlVjMvTGF5b3V0VnVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBSUEsNEJBWUM7QUFoQkQseUJBQXlCO0FBQ3pCLCtCQUE4QjtBQUM5QixzQ0FBNEM7QUFFN0IsS0FBSyxvQkFBVyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRTtJQUU3SSxNQUFNLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUM1SCxNQUFNLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUUxRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDYixNQUFNLGVBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDckksTUFBTSxlQUFlLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQzFJLENBQUM7U0FBSSxDQUFDO1FBQ0YsTUFBTSxxQkFBcUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDM0ksTUFBTSxxQkFBcUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDaEosQ0FBQztBQUNMLENBQUM7QUFHRCxLQUFLLFVBQVUsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUU7SUFFaEksSUFBSSxXQUFXLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDYixXQUFXLEdBQUcsV0FBVyxHQUFHLGVBQWUsVUFBVSxJQUFJLGtCQUFrQixHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDO0lBQ3pILENBQUM7U0FBTSxDQUFDO1FBQ0osV0FBVyxHQUFHLFdBQVcsR0FBRyxVQUFVLFVBQVUsSUFBSSxrQkFBa0IsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQztJQUNwSCxDQUFDO0lBR0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUU5QixJQUFJLE1BQU0sR0FBRyx3QkFBd0IsR0FBRyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksa0NBQWtDLENBQUM7UUFDL0ksS0FBSyxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMxQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNyRixTQUFTO1lBQ2IsQ0FBQztZQUVELElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksT0FBTyxJQUFJLFFBQVEsSUFBSSxPQUFPLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLE1BQU0sSUFBSSxRQUFRLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQzNNLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsd0JBQXdCLEdBQUcsSUFBSSxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLHlDQUF5QyxDQUFDO2dCQUMvSyxNQUFNLElBQUksSUFBSSxHQUFHLHNCQUFzQixHQUFHLDZCQUE2QixDQUFDO2dCQUN4RSxNQUFNLElBQUksSUFBSSxHQUFHLDBCQUEwQixHQUFHLGlEQUFpRCxDQUFDO2dCQUNoRyxNQUFNLElBQUksSUFBSSxHQUFHLDhCQUE4QixHQUFHLHVCQUF1QixRQUFRLG9DQUFvQyxDQUFDO2dCQUN0SCxNQUFNLElBQUksSUFBSSxHQUFHLGtDQUFrQyxHQUFHLHdCQUF3QixRQUFRLDBDQUEwQyxDQUFDO2dCQUNqSSxNQUFNLElBQUksSUFBSSxHQUFHLDhCQUE4QixHQUFHLE1BQU0sQ0FBQztnQkFDekQsTUFBTSxJQUFJLElBQUksR0FBRyw4QkFBOEIsR0FBRyx1QkFBdUIsQ0FBQztnQkFDMUUsTUFBTSxJQUFJLElBQUksR0FBRyxrQ0FBa0MsR0FBRyw4QkFBOEIsUUFBUSw0QkFBNEIsQ0FBQztnQkFDekgsTUFBTSxJQUFJLElBQUksR0FBRyw4QkFBOEIsR0FBRyxhQUFhLENBQUM7Z0JBQ2hFLE1BQU0sSUFBSSxJQUFJLEdBQUcsMEJBQTBCLEdBQUcsZUFBZSxDQUFDO2dCQUM5RCxNQUFNLElBQUksSUFBSSxHQUFHLHNCQUFzQixHQUFHLGFBQWEsQ0FBQztnQkFDeEQsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztZQUMvRCxDQUFDO2lCQUVJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBQSxnQkFBTyxFQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RELE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsd0JBQXdCLEdBQUcsSUFBSSxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLHFDQUFxQyxDQUFDO2dCQUMzSyxNQUFNLElBQUksSUFBSSxHQUFHLHNCQUFzQixHQUFHLDZCQUE2QixDQUFDO2dCQUN4RSxNQUFNLElBQUksSUFBSSxHQUFHLDBCQUEwQixHQUFHLDZDQUE2QyxRQUFRLHVFQUF1RSxDQUFDO2dCQUMzSyxNQUFNLElBQUksSUFBSSxHQUFHLHNCQUFzQixHQUFHLGFBQWEsQ0FBQztnQkFDeEQsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztZQUMvRCxDQUFDO2lCQUVJLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBQSxnQkFBTyxFQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ25ELE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsd0JBQXdCLEdBQUcsSUFBSSxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLDZEQUE2RCxDQUFDO1lBQ3ZNLENBQUM7UUFDTCxDQUFDO1FBQ0QsTUFBTSxTQUFTLEdBQUcsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztRQUV6SSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUEsY0FBTyxFQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7UUFDdkQsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQ3hCOzs7Ozs7OzttREFRdUMsU0FBUyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyw2QkFBNkI7Ozs7OztrQkFNbEksTUFBTTs7Ozs7Ozs7OzJEQVNtQyxTQUFTLFVBQVUsT0FBTyxDQUFDLEtBQUssZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsT0FBTyxDQUFDLEtBQUssaUJBQWlCLE9BQU8sQ0FBQyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsMENBQTBDOzs7NERBR2pMLFNBQVM7Ozs7Ozs7VUFPM0QsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMkRBQTJEO1VBQzdFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDREQUE0RDs7Ozs7RUFLdEYsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMseURBQXlEO0VBQzNFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJEQUEyRDtXQUNwRSxpQkFBaUIsU0FBUyxpQkFBaUIsV0FBVyxpQkFBaUIsdUJBQXVCLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxVQUFVLEVBQUUsSUFBSSxpQkFBaUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01Bb0IzSyxpQkFBaUI7Ozs7Ozs7Ozs7OztVQVliLGlCQUFpQixZQUFZLE9BQU8sQ0FBQyxLQUFLLFVBQVUsT0FBTyxDQUFDLEtBQUs7Ozs7Ozs7Ozs7Ozs7O2VBYzVELE9BQU8sQ0FBQyxLQUFLO2dDQUNJLGlCQUFpQixhQUFhLE9BQU8sQ0FBQyxLQUFLOzs7Ozs7Ozs7Ozs7Ozs7O1VBZ0JqRSxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQ2hCLENBQUM7QUFDTCxDQUFDO0FBRUQsS0FBSyxVQUFVLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFO0lBRTlHLElBQUksV0FBVyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVyRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2IsV0FBVyxHQUFHLFdBQVcsR0FBRyxlQUFlLFVBQVUsSUFBSSxrQkFBa0IsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLHVCQUF1QixDQUFDO0lBQ3JJLENBQUM7U0FBTSxDQUFDO1FBQ0osV0FBVyxHQUFHLFdBQVcsR0FBRyxVQUFVLFVBQVUsSUFBSSxrQkFBa0IsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLHVCQUF1QixDQUFDO0lBQ2hJLENBQUM7SUFJRCxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzlCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyx3QkFBd0IsT0FBTyxDQUFDLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQztRQUM5RSxNQUFNLElBQUksSUFBSSxHQUFHLFVBQVUsR0FBRyxtQ0FBbUMsT0FBTyxDQUFDLEtBQUsscUJBQXFCLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxlQUFlLENBQUM7UUFDMUksTUFBTSxJQUFJLElBQUksR0FBRyxNQUFNLEdBQUcsaUJBQWlCLENBQUM7UUFDNUMsS0FBSyxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMxQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZFLFNBQVM7WUFDYixDQUFDO1lBQ0QsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxPQUFPLElBQUksUUFBUSxJQUFJLE9BQU8sSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksTUFBTSxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDM00sU0FBUztZQUNiLENBQUM7WUFFRCxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDbkQsTUFBTSxJQUFJLElBQUksR0FBRyxNQUFNLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDO2dCQUNuRixNQUFNLElBQUksSUFBSSxHQUFHLFVBQVUsR0FBRywwQ0FBMEMsUUFBUSxxQkFBcUIsS0FBSyxDQUFDLE9BQU8sa0RBQWtELENBQUM7Z0JBQ3JLLE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUV2RCxDQUFDO2lCQUFNLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxJQUFJLE9BQU8sR0FBRyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxrQkFBa0IsRUFBRSxDQUFBO2dCQUNwSSxNQUFNLElBQUksSUFBSSxHQUFHLFVBQVUsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUM7Z0JBQ3ZGLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLCtDQUErQyxRQUFRLFVBQVUsT0FBTyxzQ0FBc0MsQ0FBQztnQkFDakosTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQzNELENBQUM7aUJBQU0sQ0FBQztnQkFDSixRQUFRLElBQUEsZ0JBQU8sRUFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDMUIsS0FBSyxNQUFNO3dCQUNQLE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQzt3QkFDbkYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcsb0NBQW9DLFFBQVEscUJBQXFCLEtBQUssQ0FBQyxPQUFPLGNBQWMsQ0FBQzt3QkFDM0gsS0FBSyxJQUFJLEtBQUssSUFBSSxJQUFBLGdCQUFPLEVBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7NEJBQ3BDLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHFCQUFxQixLQUFLLFlBQVksS0FBSyxNQUFNLENBQUM7d0JBQ3hGLENBQUM7d0JBQ0QsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcsY0FBYyxDQUFDO3dCQUM3QyxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQ25ELE1BQU07b0JBRVYsS0FBSyxNQUFNO3dCQUNQLE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLE1BQU0sQ0FBQzt3QkFDckYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcseUNBQXlDLFFBQVEsMEJBQTBCLEtBQUssQ0FBQyxPQUFPLCtDQUErQyxDQUFDO3dCQUN0SyxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQ25ELE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLE1BQU0sQ0FBQzt3QkFDckYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcseUNBQXlDLFFBQVEsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLCtDQUErQyxDQUFDO3dCQUNwSyxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQ25ELE1BQU07b0JBQ1YsS0FBSyxVQUFVO3dCQUNYLE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLE1BQU0sQ0FBQzt3QkFDckYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcseUNBQXlDLFFBQVEsMEJBQTBCLEtBQUssQ0FBQyxPQUFPLDREQUE0RCxDQUFDO3dCQUNuTCxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQ25ELE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLE1BQU0sQ0FBQzt3QkFDckYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcseUNBQXlDLFFBQVEsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLDREQUE0RCxDQUFDO3dCQUNqTCxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBRW5ELE1BQU07b0JBQ1YsS0FBSyxXQUFXO3dCQUNaLE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLE1BQU0sQ0FBQzt3QkFDckYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcseUNBQXlDLFFBQVEsMEJBQTBCLEtBQUssQ0FBQyxPQUFPLDREQUE0RCxDQUFDO3dCQUNuTCxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQ25ELE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLE1BQU0sQ0FBQzt3QkFDckYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcseUNBQXlDLFFBQVEsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLDREQUE0RCxDQUFDO3dCQUNqTCxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQ25ELE1BQU07b0JBRVYsS0FBSyxRQUFRO3dCQUNULE1BQU0sSUFBSSxJQUFJLEdBQUcsTUFBTSxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQzt3QkFDbkYsTUFBTSxJQUFJLElBQUksR0FBRyxVQUFVLEdBQUcsbUNBQW1DLFFBQVEsc0JBQXNCLEtBQUssQ0FBQyxPQUFPLGdCQUFnQixDQUFDO3dCQUM3SCxNQUFNLElBQUksSUFBSSxHQUFHLE1BQU0sR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7Z0JBQzNELENBQUM7WUFDTCxDQUFDO1FBRUwsQ0FBQztRQUVELEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBQSxjQUFPLEVBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUN2RCxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFDeEI7TUFDTixNQUFNOzs7Ozs7VUFNRixFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQ2hCLENBQUM7QUFDTCxDQUFDO0FBRUQsS0FBSyxVQUFVLGVBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEVBQUUsWUFBNEIsS0FBSztJQUNySyxJQUFJLFdBQVcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFckcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNiLFdBQVcsR0FBRyxXQUFXLEdBQUcsZUFBZSxVQUFVLElBQUksa0JBQWtCLElBQUksU0FBUyxZQUFZLENBQUM7SUFDekcsQ0FBQztTQUFNLENBQUM7UUFDSixXQUFXLEdBQUcsV0FBVyxHQUFHLFVBQVUsVUFBVSxJQUFJLGtCQUFrQixJQUFJLFNBQVMsWUFBWSxDQUFDO0lBQ3BHLENBQUM7SUFHRCxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBRTlCLE1BQU0sWUFBWSxHQUFHLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBQSxnQkFBTyxFQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO1FBQzFGLE1BQU0sU0FBUyxHQUFHLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLGtCQUFrQixFQUFFLENBQUM7UUFDekksSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLEtBQUssSUFBSSxRQUFRLElBQUksTUFBTSxFQUFFLENBQUM7WUFDMUIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDckYsU0FBUztZQUNiLENBQUM7WUFFRCxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxNQUFNLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxDQUFDO2dCQUMzRyxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsa0JBQWtCLENBQUM7Z0JBQzVILE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsdUNBQXVDLFFBQVEsZ0JBQWdCLFVBQVUsQ0FBQSxDQUFDLENBQUMsV0FBVyxVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUM7Z0JBQ3BKLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUMvRCxDQUFDO2lCQUFNLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksT0FBTyxJQUFJLFFBQVEsSUFBSSxPQUFPLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLE1BQU0sSUFBSSxRQUFRLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ2xOLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxrQkFBa0IsQ0FBQztnQkFDNUgsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyx1Q0FBdUMsUUFBUSxnQkFBZ0IsVUFBVSxDQUFBLENBQUMsQ0FBQyxXQUFXLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQztnQkFDbkosTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQy9ELENBQUM7aUJBQU0sSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksTUFBTSxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDL0csTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLElBQUksQ0FBQztnQkFDOUcsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyx5Q0FBeUMsUUFBUSx3QkFBd0IsS0FBSyxDQUFDLE9BQU8seUJBQXlCLENBQUM7Z0JBQ3RKLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUMvRCxDQUFDO2lCQUFNLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUN0QyxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO2dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHNDQUFzQyxRQUFRLHFCQUFxQixLQUFLLENBQUMsT0FBTyx5Q0FBeUMsQ0FBQztnQkFDaEssTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQy9ELENBQUM7aUJBQU0sSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ3ZDLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxJQUFJLENBQUM7Z0JBQzlHLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsK0JBQStCLFFBQVEsc0JBQXNCLEtBQUssQ0FBQyxPQUFPLGdCQUFnQixDQUFDO2dCQUNqSSxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7WUFDL0QsQ0FBQztpQkFBTSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxPQUFPLEdBQUcsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQTtnQkFFcEksTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLElBQUksQ0FBQztnQkFDOUcsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRywyQ0FBMkMsUUFBUSxVQUFVLE9BQU8sc0NBQXNDLENBQUM7Z0JBQ2pKLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUMvRCxDQUFDO2lCQUFNLENBQUM7Z0JBRUosUUFBUSxJQUFBLGdCQUFPLEVBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7b0JBQzFCLEtBQUssUUFBUTt3QkFFVCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO3dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHNDQUFzQyxRQUFRLHFCQUFxQixLQUFLLENBQUMsT0FBTyx5Q0FBeUMsQ0FBQzt3QkFDaEssTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUNWLEtBQUssTUFBTTt3QkFFUCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO3dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLGdDQUFnQyxRQUFRLHFCQUFxQixLQUFLLENBQUMsT0FBTyxjQUFjLENBQUM7d0JBQy9ILEtBQUssSUFBSSxLQUFLLElBQUksSUFBQSxnQkFBTyxFQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDOzRCQUNwQyxNQUFNLElBQUksSUFBSSxHQUFHLHNCQUFzQixHQUFHLHFCQUFxQixLQUFLLFlBQVksS0FBSyxNQUFNLENBQUM7d0JBQ2hHLENBQUM7d0JBQ0QsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxjQUFjLENBQUM7d0JBQ3JELE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQzt3QkFDM0QsTUFBTTtvQkFDVixLQUFLLE1BQU07d0JBQ1AsTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLGtCQUFrQixDQUFDO3dCQUM1SCxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLCtCQUErQixRQUFRLHNCQUFzQixLQUFLLENBQUMsT0FBTywrQkFBK0IsQ0FBQzt3QkFDaEosTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUNWLEtBQUssVUFBVTt3QkFDWCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsa0JBQWtCLENBQUM7d0JBQzVILE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcscUNBQXFDLFFBQVEsS0FBSyxVQUFVLENBQUEsQ0FBQyxDQUFDLFdBQVcsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDO3dCQUN0SSxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQzNELE1BQU07b0JBQ1YsS0FBSyxZQUFZO3dCQUNiLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxrQkFBa0IsQ0FBQzt3QkFDNUgsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxxQ0FBcUMsUUFBUSxLQUFLLFVBQVUsQ0FBQSxDQUFDLENBQUMsV0FBVyxVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUM7d0JBQ3RJLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQzt3QkFDM0QsTUFBTTtvQkFDVixLQUFLLE1BQU07d0JBQ1AsTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLElBQUksQ0FBQzt3QkFDOUcsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxxQ0FBcUMsUUFBUSxvQkFBb0IsS0FBSyxDQUFDLE9BQU8sMkNBQTJDLENBQUM7d0JBQ2hLLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQzt3QkFDM0QsTUFBTTtvQkFDVixLQUFLLFVBQVU7d0JBQ1gsTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLElBQUksQ0FBQzt3QkFDOUcsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxxQ0FBcUMsUUFBUSxvQkFBb0IsS0FBSyxDQUFDLE9BQU8sd0RBQXdELENBQUM7d0JBQzdLLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQzt3QkFDM0QsTUFBTTtvQkFDVixLQUFLLFdBQVc7d0JBQ1osTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLElBQUksQ0FBQzt3QkFDOUcsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxxQ0FBcUMsUUFBUSxvQkFBb0IsS0FBSyxDQUFDLE9BQU8sd0RBQXdELENBQUM7d0JBQzdLLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQzt3QkFDM0QsTUFBTTtvQkFFVjt3QkFDSSxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO3dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLCtCQUErQixRQUFRLHNCQUFzQixLQUFLLENBQUMsT0FBTyxnQkFBZ0IsQ0FBQzt3QkFDakksTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO2dCQUNuRSxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRywrQ0FBK0MsQ0FBQztRQUNsRixNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLG9HQUFvRyxDQUFDO1FBQzNJLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUczRCxJQUFJLFFBQVEsR0FBRyxjQUFjLENBQUM7UUFDOUIsUUFBUSxJQUFJLG1CQUFtQixDQUFDO1FBQ2hDLFFBQVEsSUFBSSw2Q0FBNkMsU0FBUyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxPQUFPLEVBQUUsK0JBQStCLGlCQUFpQixHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSx5REFBeUQsU0FBUyxJQUFJLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxPQUFPLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQztRQUN4VSxRQUFRLElBQUksZUFBZSxNQUFNLE1BQU0sQ0FBQztRQUN4QyxRQUFRLElBQUksa0NBQWtDLENBQUM7UUFDL0MsUUFBUSxJQUFJLHFEQUFxRCxTQUFTLElBQUksU0FBUyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLE9BQU8sQ0FBQyxLQUFLLEVBQUUsNkRBQTZELENBQUM7UUFDak0sUUFBUSxJQUFJLDJCQUEyQixDQUFDO1FBQ3hDLFFBQVEsSUFBSSwwQkFBMEIsQ0FBQztRQUN2QyxRQUFRLElBQUksb0JBQW9CLENBQUM7UUFDakMsUUFBUSxJQUFJLGVBQWUsQ0FBQztRQUc1QixRQUFRLElBQUksNEJBQTRCLENBQUM7UUFDekMsSUFBSSxTQUFTLElBQUksS0FBSyxFQUFFLENBQUM7WUFDckIsUUFBUSxJQUFJLFlBQVksaUJBQWlCLGtDQUFrQyxDQUFDO1lBQzVFLFFBQVEsSUFBSSxZQUFZLGlCQUFpQixzQkFBc0IsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsRUFBRSxJQUFJLGlCQUFpQixRQUFRLENBQUM7UUFFcEosQ0FBQzthQUNJLElBQUksU0FBUyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQzNCLFFBQVEsSUFBSSxZQUFZLGlCQUFpQixtQ0FBbUMsQ0FBQztZQUM3RSxRQUFRLElBQUksWUFBWSxpQkFBaUIsU0FBUyxpQkFBaUIseUJBQXlCLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxVQUFVLEVBQUUsSUFBSSxpQkFBaUIsUUFBUSxDQUFDO1FBRWpMLENBQUM7UUFFRCxRQUFRLElBQUksbURBQW1ELENBQUM7UUFFaEUsSUFBSSxTQUFTLElBQUksS0FBSyxFQUFFLENBQUM7WUFDckIsUUFBUSxJQUFJLHVEQUF1RCxDQUFDO1FBRXhFLENBQUM7YUFDSSxJQUFJLFNBQVMsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMzQixRQUFRLElBQUksMkVBQTJFLENBQUM7UUFFNUYsQ0FBQztRQUdELFFBQVEsSUFBSSxXQUFXLENBQUM7UUFDeEIsUUFBUSxJQUFJLDZCQUE2QixDQUFDO1FBQzFDLFFBQVEsSUFBSSx1REFBdUQsQ0FBQztRQUNwRSxRQUFRLElBQUksaUNBQWlDLGlCQUFpQixHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLFNBQVMsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLHFCQUFxQixDQUFDO1FBQ2xMLFFBQVEsSUFBSSw4RkFBOEYsQ0FBQztRQUMzRyxRQUFRLElBQUksMkJBQTJCLENBQUM7UUFDeEMsUUFBUSxJQUFJLHNFQUFzRSxDQUFDO1FBQ25GLFFBQVEsSUFBSSxjQUFjLENBQUM7UUFDM0IsUUFBUSxJQUFJLFVBQVUsQ0FBQztRQUN2QixRQUFRLElBQUksT0FBTyxDQUFDO1FBR3BCLElBQUksU0FBUyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ3RCLFFBQVEsSUFBSSxXQUFXLENBQUM7WUFDeEIsUUFBUSxJQUFJLHNCQUFzQixPQUFPLENBQUMsS0FBSyxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLFVBQVUsQ0FBQztZQUNqRyxRQUFRLElBQUksV0FBVyxPQUFPLENBQUMsS0FBSyxPQUFPLENBQUM7WUFDNUMsUUFBUSxJQUFJLHNEQUFzRCxDQUFDO1lBQ25FLFFBQVEsSUFBSSxXQUFXLGlCQUFpQixVQUFVLE9BQU8sQ0FBQyxLQUFLLG1CQUFtQixDQUFDO1lBQ25GLFFBQVEsSUFBSSxpRUFBaUUsQ0FBQztZQUM5RSxRQUFRLElBQUksNkJBQTZCLENBQUM7WUFDMUMsUUFBUSxJQUFJLHFGQUFxRixDQUFDO1lBQ2xHLFFBQVEsSUFBSSxjQUFjLENBQUM7WUFDM0IsUUFBUSxJQUFJLGdCQUFnQixDQUFDO1lBQzdCLFFBQVEsSUFBSSwwQkFBMEIsQ0FBQztZQUN2QyxRQUFRLElBQUksU0FBUyxDQUFDO1lBQ3RCLFFBQVEsSUFBSSxTQUFTLENBQUM7WUFFdEIsUUFBUSxJQUFJLDJCQUEyQixPQUFPLENBQUMsS0FBSyxrQkFBa0IsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxDQUFDO1FBQ2xILENBQUM7UUFFRCxRQUFRLElBQUksYUFBYSxDQUFDO1FBRTFCLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBQSxjQUFPLEVBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUN2RCxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDcEQsQ0FBQztBQUNMLENBQUM7QUFFRCxLQUFLLFVBQVUscUJBQXFCLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLFlBQTRCLEtBQUs7SUFDM0ssSUFBSSxXQUFXLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXJHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDYixXQUFXLEdBQUcsV0FBVyxHQUFHLGVBQWUsVUFBVSxJQUFJLGtCQUFrQixzQkFBc0IsU0FBUyxNQUFNLENBQUM7SUFDckgsQ0FBQztTQUFNLENBQUM7UUFDSixXQUFXLEdBQUcsV0FBVyxHQUFHLFVBQVUsVUFBVSxJQUFJLGtCQUFrQixzQkFBc0IsU0FBUyxNQUFNLENBQUM7SUFDaEgsQ0FBQztJQUdELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDOUIsTUFBTSxTQUFTLEdBQUcsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztRQUN6SSxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDaEIsS0FBSyxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMxQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNyRixTQUFTO1lBQ2IsQ0FBQztZQUVELElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLE1BQU0sSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQzNHLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxrQkFBa0IsQ0FBQztnQkFDNUgsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyx1Q0FBdUMsUUFBUSxnQkFBZ0IsVUFBVSxDQUFBLENBQUMsQ0FBQyxXQUFXLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztnQkFDcEosTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQy9ELENBQUM7aUJBQU0sSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxPQUFPLElBQUksUUFBUSxJQUFJLE9BQU8sSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksTUFBTSxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDbE4sTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLGtCQUFrQixDQUFDO2dCQUM1SCxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHVDQUF1QyxRQUFRLGdCQUFnQixVQUFVLENBQUEsQ0FBQyxDQUFDLFdBQVcsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDO2dCQUNuSixNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7WUFDL0QsQ0FBQztpQkFBTSxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxNQUFNLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUMvRyxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO2dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHlDQUF5QyxRQUFRLHdCQUF3QixLQUFLLENBQUMsT0FBTyx5QkFBeUIsQ0FBQztnQkFDdEosTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQy9ELENBQUM7aUJBQU0sSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ3RDLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxJQUFJLENBQUM7Z0JBQzlHLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsc0NBQXNDLFFBQVEscUJBQXFCLEtBQUssQ0FBQyxPQUFPLHlDQUF5QyxDQUFDO2dCQUNoSyxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7WUFDL0QsQ0FBQztpQkFBTSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDdkMsTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLElBQUksQ0FBQztnQkFDOUcsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRywrQkFBK0IsUUFBUSxzQkFBc0IsS0FBSyxDQUFDLE9BQU8sZ0JBQWdCLENBQUM7Z0JBQ2pJLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUMvRCxDQUFDO2lCQUFNLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUN0QyxJQUFJLE9BQU8sR0FBRyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxrQkFBa0IsRUFBRSxDQUFBO2dCQUVwSSxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO2dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLDJDQUEyQyxRQUFRLFVBQVUsT0FBTyxzQ0FBc0MsQ0FBQztnQkFDakosTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQy9ELENBQUM7aUJBQU0sQ0FBQztnQkFFSixRQUFRLElBQUEsZ0JBQU8sRUFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDMUIsS0FBSyxRQUFRO3dCQUVULE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxJQUFJLENBQUM7d0JBQzlHLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsc0NBQXNDLFFBQVEscUJBQXFCLEtBQUssQ0FBQyxPQUFPLHlDQUF5QyxDQUFDO3dCQUNoSyxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQzNELE1BQU07b0JBQ1YsS0FBSyxNQUFNO3dCQUVQLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxJQUFJLENBQUM7d0JBQzlHLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsZ0NBQWdDLFFBQVEscUJBQXFCLEtBQUssQ0FBQyxPQUFPLGNBQWMsQ0FBQzt3QkFDL0gsS0FBSyxJQUFJLEtBQUssSUFBSSxJQUFBLGdCQUFPLEVBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7NEJBQ3BDLE1BQU0sSUFBSSxJQUFJLEdBQUcsc0JBQXNCLEdBQUcscUJBQXFCLEtBQUssWUFBWSxLQUFLLE1BQU0sQ0FBQzt3QkFDaEcsQ0FBQzt3QkFDRCxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLGNBQWMsQ0FBQzt3QkFDckQsTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUNWLEtBQUssTUFBTTt3QkFDUCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsa0JBQWtCLENBQUM7d0JBQzVILE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsK0JBQStCLFFBQVEsc0JBQXNCLEtBQUssQ0FBQyxPQUFPLCtCQUErQixDQUFDO3dCQUNoSixNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBQzNELE1BQU07b0JBQ1YsS0FBSyxVQUFVO3dCQUNYLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxrQkFBa0IsQ0FBQzt3QkFDNUgsTUFBTSxJQUFJLElBQUksR0FBRyxrQkFBa0IsR0FBRyxxQ0FBcUMsUUFBUSxLQUFLLFVBQVUsQ0FBQSxDQUFDLENBQUMsV0FBVyxVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUM7d0JBQ3RJLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLGlCQUFpQixHQUFHLElBQUksQ0FBQzt3QkFDM0QsTUFBTTtvQkFDVixLQUFLLFlBQVk7d0JBQ2IsTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsd0JBQXdCLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssV0FBVyxRQUFRLGtCQUFrQixDQUFDO3dCQUM1SCxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHFDQUFxQyxRQUFRLEtBQUssVUFBVSxDQUFBLENBQUMsQ0FBQyxXQUFXLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQzt3QkFDdEksTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUNWLEtBQUssTUFBTTt3QkFDUCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO3dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHFDQUFxQyxRQUFRLG9CQUFvQixLQUFLLENBQUMsT0FBTywyQ0FBMkMsQ0FBQzt3QkFDaEssTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUNWLEtBQUssVUFBVTt3QkFDWCxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO3dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHFDQUFxQyxRQUFRLG9CQUFvQixLQUFLLENBQUMsT0FBTyx3REFBd0QsQ0FBQzt3QkFDN0ssTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUNWLEtBQUssV0FBVzt3QkFDWixNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyx3QkFBd0IsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsS0FBSyxXQUFXLFFBQVEsSUFBSSxDQUFDO3dCQUM5RyxNQUFNLElBQUksSUFBSSxHQUFHLGtCQUFrQixHQUFHLHFDQUFxQyxRQUFRLG9CQUFvQixLQUFLLENBQUMsT0FBTyx3REFBd0QsQ0FBQzt3QkFDN0ssTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO3dCQUMzRCxNQUFNO29CQUVWO3dCQUNJLE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLHdCQUF3QixLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLFdBQVcsUUFBUSxJQUFJLENBQUM7d0JBQzlHLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsK0JBQStCLFFBQVEsc0JBQXNCLEtBQUssQ0FBQyxPQUFPLGdCQUFnQixDQUFDO3dCQUNqSSxNQUFNLElBQUksSUFBSSxHQUFHLGNBQWMsR0FBRyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7Z0JBQ25FLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztRQUNELE1BQU0sSUFBSSxJQUFJLEdBQUcsY0FBYyxHQUFHLCtDQUErQyxDQUFDO1FBQ2xGLE1BQU0sSUFBSSxJQUFJLEdBQUcsa0JBQWtCLEdBQUcsb0dBQW9HLENBQUM7UUFDM0ksTUFBTSxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1FBRzNELElBQUksUUFBUSxHQUFHLGNBQWMsQ0FBQztRQUM5QixRQUFRLElBQUksZ0VBQWdFLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxFQUFFLE1BQU0sQ0FBQztRQUN2SSxRQUFRLElBQUksZ0VBQWdFLGlCQUFpQixHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSx5REFBeUQsU0FBUyxJQUFJLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxPQUFPLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQztRQUN4USxRQUFRLElBQUksZUFBZSxNQUFNLE1BQU0sQ0FBQztRQUN4QyxRQUFRLElBQUksMEJBQTBCLENBQUM7UUFDdkMsUUFBUSxJQUFJLDhCQUE4QixDQUFDO1FBQzNDLFFBQVEsSUFBSSxpREFBaUQsU0FBUyxJQUFJLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxPQUFPLENBQUMsS0FBSyxFQUFFLDZEQUE2RCxDQUFDO1FBQzdMLFFBQVEsSUFBSSx1QkFBdUIsQ0FBQztRQUNwQyxRQUFRLElBQUksd0JBQXdCLENBQUM7UUFDckMsUUFBUSxJQUFJLGVBQWUsQ0FBQztRQUc1QixRQUFRLElBQUksNEJBQTRCLENBQUM7UUFDekMsSUFBSSxTQUFTLElBQUksS0FBSyxFQUFFLENBQUM7WUFDckIsUUFBUSxJQUFJLFlBQVksaUJBQWlCLGtDQUFrQyxDQUFDO1lBQzVFLFFBQVEsSUFBSSxZQUFZLGlCQUFpQixzQkFBc0IsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsRUFBRSxJQUFJLGlCQUFpQixRQUFRLENBQUM7UUFFcEosQ0FBQzthQUNJLElBQUksU0FBUyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQzNCLFFBQVEsSUFBSSxZQUFZLGlCQUFpQixtQ0FBbUMsQ0FBQztZQUM3RSxRQUFRLElBQUksWUFBWSxpQkFBaUIsV0FBVyxpQkFBaUIsdUJBQXVCLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxVQUFVLEVBQUUsSUFBSSxpQkFBaUIsUUFBUSxDQUFDO1FBRWpMLENBQUM7UUFJRCxJQUFJLFNBQVMsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNyQixRQUFRLElBQUksa0pBQWtKLENBQUM7WUFDL0osUUFBUSxJQUFJLHNEQUFzRCxDQUFBO1lBQ2xFLFFBQVEsSUFBSSxPQUFPLENBQUE7UUFDdkIsQ0FBQzthQUNJLElBQUksU0FBUyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQzNCLFFBQVEsSUFBSSwySUFBMkksT0FBTyxDQUFDLEtBQUssVUFBVSxDQUFDO1lBQy9LLFFBQVEsSUFBSSw0QkFBNEIsaUJBQWlCLFVBQVUsT0FBTyxDQUFDLEtBQUssbUJBQW1CLENBQUE7WUFDbkcsUUFBUSxJQUFJLHVFQUF1RSxDQUFBO1lBQ25GLFFBQVEsSUFBSSx5QkFBeUIsQ0FBQTtZQUNyQyxRQUFRLElBQUksMENBQTBDLENBQUE7WUFDdEQsUUFBUSxJQUFJLFVBQVUsQ0FBQTtZQUN0QixRQUFRLElBQUksT0FBTyxDQUFBO1FBQ3ZCLENBQUM7UUFBQSxDQUFDO1FBR0YsUUFBUSxJQUFJLFdBQVcsQ0FBQztRQUN4QixRQUFRLElBQUksNkJBQTZCLENBQUM7UUFDMUMsUUFBUSxJQUFJLHVEQUF1RCxDQUFDO1FBQ3BFLFFBQVEsSUFBSSxpQ0FBaUMsaUJBQWlCLEdBQUcsU0FBUyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksU0FBUyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUscUJBQXFCLENBQUM7UUFDbEwsUUFBUSxJQUFJLHdIQUF3SCxDQUFDO1FBQ3JJLFFBQVEsSUFBSSwyQkFBMkIsQ0FBQztRQUN4QyxRQUFRLElBQUksc0VBQXNFLENBQUM7UUFDbkYsUUFBUSxJQUFJLGNBQWMsQ0FBQztRQUMzQixRQUFRLElBQUksVUFBVSxDQUFDO1FBQ3ZCLFFBQVEsSUFBSSxPQUFPLENBQUM7UUFFcEIsUUFBUSxJQUFJLDBCQUEwQixDQUFDO1FBQ3ZDLFFBQVEsSUFBSSxhQUFhLENBQUM7UUFFMUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFBLGNBQU8sRUFBQyxXQUFXLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBQ3ZELEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNwRCxDQUFDO0FBQ0wsQ0FBQyJ9
|