@lovrabet/cli 1.1.20 → 1.1.22

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.
Files changed (69) hide show
  1. package/lib/add-page/input-page-router.js +1 -1
  2. package/lib/add-page/main.js +1 -1
  3. package/lib/add-page/select-page-template.js +1 -1
  4. package/lib/api/api-doc-ui.js +1 -1
  5. package/lib/api/api-doc.js +1 -1
  6. package/lib/api/api-pull-ui.js +1 -1
  7. package/lib/api/fetch-model-list.js +1 -1
  8. package/lib/api/generate-api-file.js +1 -1
  9. package/lib/api/main.js +1 -1
  10. package/lib/api/pull-silent.js +1 -1
  11. package/lib/app-menu/app-menu-sync-ui.js +1 -1
  12. package/lib/app-menu/create-menu.js +1 -1
  13. package/lib/app-menu/get-local-pages.js +1 -1
  14. package/lib/app-menu/get-online-menu-list.js +1 -1
  15. package/lib/app-menu/valid-url.js +1 -1
  16. package/lib/auth/auth-server-ui.js +1 -1
  17. package/lib/auth/auth-server.js +1 -1
  18. package/lib/auth/constant.js +1 -1
  19. package/lib/auth/get-cookie.js +1 -1
  20. package/lib/auth/is-session-valid.js +1 -1
  21. package/lib/auth/logout.js +1 -1
  22. package/lib/cli.js +1 -1
  23. package/lib/cmd/build-watch.js +1 -1
  24. package/lib/cmd/build.js +1 -1
  25. package/lib/cmd/logs.js +1 -1
  26. package/lib/cmd/preview.js +1 -1
  27. package/lib/cmd/start.js +1 -1
  28. package/lib/config/config-help.js +1 -1
  29. package/lib/config/main.js +1 -1
  30. package/lib/constant/domain.js +1 -1
  31. package/lib/constant/env.js +1 -1
  32. package/lib/create-app/enhanced-guided-create.js +1 -1
  33. package/lib/create-app/format-elapsed.js +1 -1
  34. package/lib/create-app/main.js +1 -1
  35. package/lib/create-app/task-finished.js +1 -1
  36. package/lib/create-app/task-loading.js +1 -1
  37. package/lib/create-app/task-running.js +1 -1
  38. package/lib/create-app/task-time.js +1 -1
  39. package/lib/create-app/use-copy-project-template.js +1 -1
  40. package/lib/create-app/use-format-code.js +1 -1
  41. package/lib/create-app/use-install-dependencies.js +1 -1
  42. package/lib/help.js +1 -1
  43. package/lib/init/main.js +1 -1
  44. package/lib/mcp/cursor.js +1 -1
  45. package/lib/mcp/main.js +1 -1
  46. package/lib/utils/config.js +1 -1
  47. package/lib/utils/copy-directory.js +1 -1
  48. package/lib/utils/http-client.js +1 -1
  49. package/lib/utils/logger.js +1 -1
  50. package/lib/utils/router-updater.js +1 -1
  51. package/lib/utils/sleep.js +1 -1
  52. package/lib/utils/template-replacer.js +1 -1
  53. package/package.json +2 -2
  54. package/templates/README.md +28 -1
  55. package/templates/projects/sub-app-react-demo/CHANGELOG.md +16 -0
  56. package/templates/projects/sub-app-react-demo/README.md +163 -54
  57. package/templates/projects/sub-app-react-demo/package-lock.json +1347 -149
  58. package/templates/projects/sub-app-react-demo/package.json +2 -2
  59. package/templates/projects/sub-app-react-demo/src/layouts/MainLayout.tsx +286 -55
  60. package/templates/projects/sub-app-react-demo/src/pages/data-screen/index.tsx +526 -0
  61. package/templates/projects/sub-app-react-demo/src/pages/index.tsx +942 -87
  62. package/templates/projects/sub-app-react-demo/src/pages/intro/index.tsx +560 -0
  63. package/templates/projects/sub-app-react-demo/src/pages/sdk-demo/index.tsx +113 -118
  64. package/templates/projects/sub-app-react-demo/src/pages/workbench/index.tsx +469 -0
  65. package/templates/projects/sub-app-react-demo/src/style.css +39 -0
  66. package/templates/rules/README.md +178 -0
  67. package/templates/rules/example-project-setup.md +276 -0
  68. package/templates/rules/lovrabet_rules.mdc.tpl +425 -0
  69. package/templates/projects/sub-app-react-demo/bun.lock +0 -600
@@ -1 +1 @@
1
- (function(_0x29ac50,_0x3967ac){const _0x61d1aa=a0_0x5b32,_0x391b26=_0x29ac50();while(!![]){try{const _0x3be3ea=parseInt(_0x61d1aa(0x1ee))/0x1*(-parseInt(_0x61d1aa(0x1f6))/0x2)+-parseInt(_0x61d1aa(0x1fd))/0x3+-parseInt(_0x61d1aa(0x1f7))/0x4+parseInt(_0x61d1aa(0x1f3))/0x5*(-parseInt(_0x61d1aa(0x203))/0x6)+parseInt(_0x61d1aa(0x205))/0x7*(-parseInt(_0x61d1aa(0x201))/0x8)+parseInt(_0x61d1aa(0x1f5))/0x9+-parseInt(_0x61d1aa(0x1fa))/0xa*(-parseInt(_0x61d1aa(0x209))/0xb);if(_0x3be3ea===_0x3967ac)break;else _0x391b26['push'](_0x391b26['shift']());}catch(_0x3ceb3c){_0x391b26['push'](_0x391b26['shift']());}}}(a0_0x195e,0x93d46));import{jsx as a0_0x1c9ad9,jsxs as a0_0x300169}from'react/jsx-runtime';import{useState}from'react';function a0_0x5b32(_0x3809f9,_0x140d11){const _0x195ee6=a0_0x195e();return a0_0x5b32=function(_0x5b3248,_0x5b3637){_0x5b3248=_0x5b3248-0x1ed;let _0x168eae=_0x195ee6[_0x5b3248];return _0x168eae;},a0_0x5b32(_0x3809f9,_0x140d11);}import{Text,Box,useInput}from'ink';function a0_0x195e(){const _0x3f199a=['green','11wQVGaf','页面路径\x20','test','startsWith','slice','column','\x20←\x20','343324gileUa','split','return','endsWith','trim','5eLSWVm','red','9536265nSnvYY','6SLtarY','9512xYDhNt','\x20Step2:\x20','页面路径不合法','22903130ehFMTY','delete','my-page','2029323aliFoS','路径不能包含连续的\x20/','length','includes','11296wXmqgB','existsSync','3511014QhcPUL','gray','2233lvUpxJ','\x20已存在,请使用其他路径','路径中的每个段只能以字母或数字开头,且只包含字母、数字、-\x20和\x20_'];a0_0x195e=function(){return _0x3f199a;};return a0_0x195e();}import a0_0x3828e6 from'node:fs';export function InputProjectCode(_0x222abf){const _0x3262f1=a0_0x5b32,{onSubmit:_0x3eff63,pagePath:_0xd755ed}=_0x222abf,[_0x5b83ea,_0x4d2114]=useState(''),[_0x6a201c,_0x47a40d]=useState(''),_0x5c89b9=_0x3262f1(0x1fc);function _0xf7575f(_0x4d813d){const _0x22a4f9=_0x3262f1;if(_0x4d813d[_0x22a4f9(0x1ff)]>0x64)return{'valid':![],'message':'页面路径长度不能超过\x20100\x20个字符'};if(_0x4d813d[_0x22a4f9(0x20c)]('/')||_0x4d813d[_0x22a4f9(0x1f1)]('/'))return{'valid':![],'message':'路径不能以\x20/\x20开头或结尾'};if(_0x4d813d[_0x22a4f9(0x200)]('//'))return{'valid':![],'message':_0x22a4f9(0x1fe)};const _0x4099fa=_0x4d813d[_0x22a4f9(0x1ef)]('/');for(const _0x622f5f of _0x4099fa){if(!_0x622f5f)continue;const _0x5e0729=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(!_0x5e0729[_0x22a4f9(0x20b)](_0x622f5f))return{'valid':![],'message':_0x22a4f9(0x207)};}return{'valid':!![]};}return useInput((_0xa2f75f,_0x4a36d7)=>{const _0x5bcdce=_0x3262f1;if(_0x4a36d7[_0x5bcdce(0x1f0)]){const _0x2df556=_0x5b83ea[_0x5bcdce(0x1f2)]()||_0x5c89b9;if(_0x6a201c)return;const _0x4020e7=_0xd755ed+'/'+_0x2df556;if(a0_0x3828e6[_0x5bcdce(0x202)](_0x4020e7)){_0x47a40d(_0x5bcdce(0x20a)+_0x2df556+_0x5bcdce(0x206));return;}_0x3eff63(_0x2df556),_0x4d2114(''),_0x47a40d('');}else _0x4a36d7['backspace']||_0x4a36d7[_0x5bcdce(0x1fb)]?_0x4d2114(_0x2542e8=>{const _0x38329e=_0x5bcdce,_0x55fd1b=_0x2542e8[_0x38329e(0x20d)](0x0,-0x1),{valid:_0x3273f5,message:_0x5be2fb}=_0xf7575f(_0x55fd1b);return _0x47a40d(_0x3273f5?'':_0x5be2fb||_0x38329e(0x1f9)),_0x55fd1b;}):_0x4d2114(_0x22135d=>{const _0x238ef5=_0x5bcdce,_0x35b8d9=_0x22135d+_0xa2f75f,{valid:_0x382103,message:_0x450513}=_0xf7575f(_0x35b8d9);return _0x47a40d(_0x382103?'':_0x450513||_0x238ef5(0x1f9)),_0x35b8d9;});}),a0_0x300169(Box,{'flexDirection':_0x3262f1(0x20e),'children':[a0_0x300169(Box,{'children':[a0_0x1c9ad9(Text,{'color':_0x3262f1(0x204),'children':_0x3262f1(0x1f8)}),a0_0x1c9ad9(Text,{'children':'页面路由地址:\x20'}),_0x5b83ea?a0_0x1c9ad9(Text,{'color':_0x3262f1(0x208),'children':_0x5b83ea}):a0_0x1c9ad9(Text,{'color':_0x3262f1(0x204),'children':_0x5c89b9}),_0x6a201c&&a0_0x300169(Text,{'color':_0x3262f1(0x1f4),'children':[_0x3262f1(0x1ed),_0x6a201c]})]}),!_0x6a201c&&!_0x5b83ea&&a0_0x1c9ad9(Box,{'children':a0_0x1c9ad9(Text,{'color':_0x3262f1(0x204),'children':'\x20直接回车确认,或输入自定义路由地址'})})]});}
1
+ (function(_0x25eaf3,_0x35fa91){const _0x4cb01c=a0_0x18d3,_0x525969=_0x25eaf3();while(!![]){try{const _0x7d4a95=-parseInt(_0x4cb01c(0x1b3))/0x1+-parseInt(_0x4cb01c(0x19e))/0x2*(parseInt(_0x4cb01c(0x1ba))/0x3)+parseInt(_0x4cb01c(0x1ab))/0x4*(parseInt(_0x4cb01c(0x1bd))/0x5)+-parseInt(_0x4cb01c(0x1b8))/0x6+-parseInt(_0x4cb01c(0x1aa))/0x7*(-parseInt(_0x4cb01c(0x1a1))/0x8)+parseInt(_0x4cb01c(0x1bc))/0x9*(parseInt(_0x4cb01c(0x1a5))/0xa)+-parseInt(_0x4cb01c(0x1a4))/0xb;if(_0x7d4a95===_0x35fa91)break;else _0x525969['push'](_0x525969['shift']());}catch(_0x2fff04){_0x525969['push'](_0x525969['shift']());}}}(a0_0x4cc1,0xee20b));import{jsx as a0_0x51c09a,jsxs as a0_0x153f75}from'react/jsx-runtime';function a0_0x18d3(_0x30eab2,_0x3f2619){const _0x4cc11a=a0_0x4cc1();return a0_0x18d3=function(_0x18d3c8,_0x2ba532){_0x18d3c8=_0x18d3c8-0x19d;let _0x46318f=_0x4cc11a[_0x18d3c8];return _0x46318f;},a0_0x18d3(_0x30eab2,_0x3f2619);}import{useState}from'react';function a0_0x4cc1(){const _0x53f8f5=['页面路径不合法','2438194tflEqn','19125100kBHdmu','split','green','\x20已存在,请使用其他路径','slice','584017eaYXuF','12dLpzLU','\x20直接回车确认,或输入自定义路由地址','路径中的每个段只能以字母或数字开头,且只包含字母、数字、-\x20和\x20_','\x20←\x20','trim','页面路径长度不能超过\x20100\x20个字符','页面路由地址:\x20','路径不能包含连续的\x20/','137137JiXfCK','test','column','includes','delete','6261516UTwHHP','路径不能以\x20/\x20开头或结尾','14139ypBCpa','endsWith','9Vqbemd','2614965RBOszX','existsSync','610IEdRRE','gray','backspace','32wULzgu','页面路径\x20'];a0_0x4cc1=function(){return _0x53f8f5;};return a0_0x4cc1();}import{Text,Box,useInput}from'ink';import a0_0x37cfcf from'node:fs';export function InputProjectCode(_0x22f568){const _0x246bbc=a0_0x18d3,{onSubmit:_0xcf8980,pagePath:_0x3b95fe}=_0x22f568,[_0x51a166,_0x52c50d]=useState(''),[_0x6406eb,_0x51395d]=useState(''),_0x599186='my-page';function _0xdf3840(_0x40afc7){const _0x3c2190=a0_0x18d3;if(_0x40afc7['length']>0x64)return{'valid':![],'message':_0x3c2190(0x1b0)};if(_0x40afc7['startsWith']('/')||_0x40afc7[_0x3c2190(0x1bb)]('/'))return{'valid':![],'message':_0x3c2190(0x1b9)};if(_0x40afc7[_0x3c2190(0x1b6)]('//'))return{'valid':![],'message':_0x3c2190(0x1b2)};const _0x499406=_0x40afc7[_0x3c2190(0x1a6)]('/');for(const _0x399248 of _0x499406){if(!_0x399248)continue;const _0x19f91f=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(!_0x19f91f[_0x3c2190(0x1b4)](_0x399248))return{'valid':![],'message':_0x3c2190(0x1ad)};}return{'valid':!![]};}return useInput((_0x1e577c,_0x5a475e)=>{const _0x7acb48=a0_0x18d3;if(_0x5a475e['return']){const _0x138c66=_0x51a166[_0x7acb48(0x1af)]()||_0x599186;if(_0x6406eb)return;const _0x463d69=_0x3b95fe+'/'+_0x138c66;if(a0_0x37cfcf[_0x7acb48(0x19d)](_0x463d69)){_0x51395d(_0x7acb48(0x1a2)+_0x138c66+_0x7acb48(0x1a8));return;}_0xcf8980(_0x138c66),_0x52c50d(''),_0x51395d('');}else _0x5a475e[_0x7acb48(0x1a0)]||_0x5a475e[_0x7acb48(0x1b7)]?_0x52c50d(_0x210760=>{const _0x47e1da=_0x7acb48,_0x288ec2=_0x210760[_0x47e1da(0x1a9)](0x0,-0x1),{valid:_0x4d1381,message:_0x5d575c}=_0xdf3840(_0x288ec2);return _0x51395d(_0x4d1381?'':_0x5d575c||_0x47e1da(0x1a3)),_0x288ec2;}):_0x52c50d(_0x8c092d=>{const _0x5867b6=_0x8c092d+_0x1e577c,{valid:_0x3b4602,message:_0x1a4bc8}=_0xdf3840(_0x5867b6);return _0x51395d(_0x3b4602?'':_0x1a4bc8||'页面路径不合法'),_0x5867b6;});}),a0_0x153f75(Box,{'flexDirection':_0x246bbc(0x1b5),'children':[a0_0x153f75(Box,{'children':[a0_0x51c09a(Text,{'color':_0x246bbc(0x19f),'children':'\x20Step2:\x20'}),a0_0x51c09a(Text,{'children':_0x246bbc(0x1b1)}),_0x51a166?a0_0x51c09a(Text,{'color':_0x246bbc(0x1a7),'children':_0x51a166}):a0_0x51c09a(Text,{'color':_0x246bbc(0x19f),'children':_0x599186}),_0x6406eb&&a0_0x153f75(Text,{'color':'red','children':[_0x246bbc(0x1ae),_0x6406eb]})]}),!_0x6406eb&&!_0x51a166&&a0_0x51c09a(Box,{'children':a0_0x51c09a(Text,{'color':_0x246bbc(0x19f),'children':_0x246bbc(0x1ac)})})]});}
@@ -1 +1 @@
1
- const a1_0x4c1838=a1_0x1b01;function a1_0x1b01(_0x25a258,_0x3d8487){const _0x1aa816=a1_0x1aa8();return a1_0x1b01=function(_0x1b0162,_0x2f0053){_0x1b0162=_0x1b0162-0x81;let _0x4b6a50=_0x1aa816[_0x1b0162];return _0x4b6a50;},a1_0x1b01(_0x25a258,_0x3d8487);}(function(_0xe42bb3,_0x37b65d){const _0x208ea5=a1_0x1b01,_0x21addf=_0xe42bb3();while(!![]){try{const _0x2041ab=-parseInt(_0x208ea5(0x94))/0x1*(-parseInt(_0x208ea5(0x9c))/0x2)+parseInt(_0x208ea5(0x81))/0x3*(parseInt(_0x208ea5(0x85))/0x4)+-parseInt(_0x208ea5(0x98))/0x5*(parseInt(_0x208ea5(0xa4))/0x6)+parseInt(_0x208ea5(0x84))/0x7+parseInt(_0x208ea5(0x95))/0x8+-parseInt(_0x208ea5(0x91))/0x9*(-parseInt(_0x208ea5(0x97))/0xa)+parseInt(_0x208ea5(0x8b))/0xb*(-parseInt(_0x208ea5(0x89))/0xc);if(_0x2041ab===_0x37b65d)break;else _0x21addf['push'](_0x21addf['shift']());}catch(_0x247536){_0x21addf['push'](_0x21addf['shift']());}}}(a1_0x1aa8,0xb93c8));import{jsx as a1_0x176331,jsxs as a1_0x22ccfc,Fragment as a1_0x47ab8c}from'react/jsx-runtime';import{fileURLToPath}from'node:url';import a1_0x53408c from'node:path';import{useEffect,useState}from'react';import{Box,Text,useApp}from'ink';import{SelectPageTemplate}from'./select-page-template.js';import{InputProjectCode}from'./input-page-router.js';import{logger}from'../utils/logger.js';import{TemplateReplacer}from'../utils/template-replacer.js';const __dirname=a1_0x53408c['dirname'](fileURLToPath(import.meta['url'])),pageTemplateDir=a1_0x53408c[a1_0x4c1838(0x92)](__dirname,a1_0x4c1838(0x82)),projectDir=process[a1_0x4c1838(0x88)]();function a1_0x1aa8(){const _0x3f2dbd=['已输入的页面路由\x20','then','cyan','255098aqVTbM','setLogPath','processTemplate','join','now','green','\x20Step1:\x20','\x20*\x20路由地址:\x20','12xTgYRm','add-page','column','info','508449KGbNhp','../../templates/pages','\x20Step2:\x20','2548182HFvRFI','20nVFiYW','页面添加失败:\x20','pages','cwd','132CyigIq','src','406263YLvpHj','catch','\x20*\x20页面创建成功!','message','已选择页面模板\x20','error','1467ZBGvQm','resolve','gray','2pawnzP','772456BzehhU','正在创建页面,请稍候…','56210sDnfqP','3285820Dbxuez'];a1_0x1aa8=function(){return _0x3f2dbd;};return a1_0x1aa8();}export const AddPage=()=>{const _0x49c678=a1_0x4c1838,{exit:_0x139004}=useApp(),[_0x1d351d,_0x16240a]=useState(''),[_0x12066d,_0x60f86a]=useState(''),[_0x5666f3,_0x119df3]=useState(![]),[_0x3e0462,_0x58376b]=useState(![]),_0x100612=a1_0x53408c[_0x49c678(0x9f)](projectDir,_0x49c678(0x8a),_0x49c678(0x87)),_0x5060b6=a1_0x53408c[_0x49c678(0x9f)](_0x100612,_0x12066d),_0x129438=a1_0x53408c['join'](_0x49c678(0x8a),_0x49c678(0x87),_0x12066d);useEffect(()=>{const _0x5e20ee=_0x49c678,_0x41fcce=a1_0x53408c[_0x5e20ee(0x92)](pageTemplateDir,_0x1d351d);if(_0x1d351d&&_0x12066d){_0x119df3(!![]),logger[_0x5e20ee(0x9d)](process['cwd']());const _0x24730c=Date['now']();logger[_0x5e20ee(0xa7)]('add-page','开始添加页面:\x20'+_0x12066d,{'template':_0x1d351d,'targetPath':_0x129438}),TemplateReplacer[_0x5e20ee(0x9e)](_0x41fcce,a1_0x53408c[_0x5e20ee(0x9f)](_0x100612,_0x12066d),_0x12066d,_0x1d351d)[_0x5e20ee(0x9a)](()=>{const _0x384ade=_0x5e20ee,_0x5dd4ae=Date['now']()-_0x24730c;logger['success'](_0x384ade(0xa5),'页面添加成功:\x20'+_0x12066d,_0x5dd4ae,{'template':_0x1d351d,'targetPath':_0x129438,'routePath':_0x12066d}),_0x58376b(!![]);})[_0x5e20ee(0x8c)](_0x46d747=>{const _0xa02fd=_0x5e20ee,_0x537451=Date[_0xa02fd(0xa0)]()-_0x24730c;logger[_0xa02fd(0x90)](_0xa02fd(0xa5),_0xa02fd(0x86)+_0x12066d,{'template':_0x1d351d,'targetPath':_0x129438,'error':_0x46d747 instanceof Error?_0x46d747[_0xa02fd(0x8e)]:String(_0x46d747),'duration':_0x537451});})['finally'](()=>{_0x119df3(![]);});}},[_0x1d351d,_0x12066d]),useEffect(()=>{_0x3e0462&&setTimeout(()=>{_0x139004();});},[_0x3e0462]);if(_0x1d351d)return a1_0x22ccfc(Box,{'flexDirection':_0x49c678(0xa6),'paddingY':0x1,'children':[a1_0x22ccfc(Box,{'children':[a1_0x176331(Text,{'color':'gray','children':_0x49c678(0xa2)}),a1_0x176331(Text,{'children':_0x49c678(0x8f)}),a1_0x176331(Text,{'color':_0x49c678(0xa1),'children':_0x1d351d})]}),_0x12066d?a1_0x22ccfc(Box,{'children':[a1_0x176331(Text,{'color':'gray','children':_0x49c678(0x83)}),a1_0x176331(Text,{'children':_0x49c678(0x99)}),a1_0x176331(Text,{'color':_0x49c678(0xa1),'children':_0x12066d})]}):a1_0x176331(InputProjectCode,{'pagePath':_0x5060b6,'onSubmit':_0x60f86a}),_0x12066d&&_0x5666f3?a1_0x22ccfc(Box,{'marginTop':0x1,'children':[a1_0x176331(Box,{'width':'4'}),a1_0x176331(Text,{'children':_0x49c678(0x96)})]}):null,_0x3e0462?a1_0x22ccfc(a1_0x47ab8c,{'children':[a1_0x176331(Box,{'marginTop':0x1,'children':a1_0x176331(Text,{'color':'gray','children':_0x49c678(0x8d)})}),a1_0x22ccfc(Box,{'children':[a1_0x176331(Text,{'color':_0x49c678(0x93),'children':'\x20*\x20页面路径:\x20'}),a1_0x176331(Text,{'color':'green','children':_0x129438})]}),a1_0x22ccfc(Box,{'children':[a1_0x176331(Text,{'color':'gray','children':_0x49c678(0xa3)}),a1_0x22ccfc(Text,{'color':_0x49c678(0xa1),'children':['/',_0x12066d]})]}),a1_0x176331(Box,{'marginTop':0x1,'children':a1_0x176331(Text,{'color':_0x49c678(0x9b),'children':'\x20*\x20页面文件已创建,可直接通过路由访问'})})]}):null]});return a1_0x176331(SelectPageTemplate,{'onSelect':_0x16240a});};
1
+ const a1_0x4d5b10=a1_0x4740;(function(_0x303bde,_0x1b7cc8){const _0x3114e2=a1_0x4740,_0xc95ea8=_0x303bde();while(!![]){try{const _0x54e037=-parseInt(_0x3114e2(0x1f9))/0x1*(-parseInt(_0x3114e2(0x1de))/0x2)+parseInt(_0x3114e2(0x1ff))/0x3+-parseInt(_0x3114e2(0x1f0))/0x4+parseInt(_0x3114e2(0x1e9))/0x5*(parseInt(_0x3114e2(0x1fe))/0x6)+parseInt(_0x3114e2(0x1e8))/0x7*(parseInt(_0x3114e2(0x1e2))/0x8)+-parseInt(_0x3114e2(0x1f3))/0x9+-parseInt(_0x3114e2(0x1ed))/0xa*(parseInt(_0x3114e2(0x1eb))/0xb);if(_0x54e037===_0x1b7cc8)break;else _0xc95ea8['push'](_0xc95ea8['shift']());}catch(_0x3d1dd2){_0xc95ea8['push'](_0xc95ea8['shift']());}}}(a1_0x1126,0x35644));import{jsx as a1_0x48abd6,jsxs as a1_0x5cf44a,Fragment as a1_0xd73a}from'react/jsx-runtime';import{fileURLToPath}from'node:url';import a1_0x1f39fb from'node:path';import{useEffect,useState}from'react';import{Box,Text,useApp}from'ink';import{SelectPageTemplate}from'./select-page-template.js';function a1_0x4740(_0x147a1b,_0x1cc9c6){const _0x11263f=a1_0x1126();return a1_0x4740=function(_0x47409c,_0x4673a7){_0x47409c=_0x47409c-0x1de;let _0x48bb4b=_0x11263f[_0x47409c];return _0x48bb4b;},a1_0x4740(_0x147a1b,_0x1cc9c6);}import{InputProjectCode}from'./input-page-router.js';import{logger}from'../utils/logger.js';import{TemplateReplacer}from'../utils/template-replacer.js';const __dirname=a1_0x1f39fb['dirname'](fileURLToPath(import.meta[a1_0x4d5b10(0x1f5)])),pageTemplateDir=a1_0x1f39fb[a1_0x4d5b10(0x1f2)](__dirname,a1_0x4d5b10(0x200)),projectDir=process[a1_0x4d5b10(0x1ea)]();function a1_0x1126(){const _0x425b63=['正在创建页面,请稍候…','join','setLogPath','error','431431FWNHyd','170laYhES','cwd','412731wGjcfn','finally','30DQNRFS','column','开始添加页面:\x20','900728uXvVLJ','gray','resolve','1859814yytCVa','green','url','pages','页面添加失败:\x20','src','56SCdGTp','\x20*\x20页面文件已创建,可直接通过路由访问','now','\x20*\x20路由地址:\x20','catch','41466wVYhVd','224682rMqHnA','../../templates/pages','\x20Step1:\x20','已输入的页面路由\x20','\x20*\x20页面创建成功!','add-page','778GcyLxS','已选择页面模板\x20','then','\x20Step2:\x20','56BFPxbq','success'];a1_0x1126=function(){return _0x425b63;};return a1_0x1126();}export const AddPage=()=>{const _0x218702=a1_0x4d5b10,{exit:_0x39ac1d}=useApp(),[_0x268b39,_0x3693d0]=useState(''),[_0x37726a,_0x1e130f]=useState(''),[_0xd6178,_0x592c85]=useState(![]),[_0x3f3ca3,_0x4e3acd]=useState(![]),_0x3ee390=a1_0x1f39fb['join'](projectDir,_0x218702(0x1f8),_0x218702(0x1f6)),_0x3bba92=a1_0x1f39fb[_0x218702(0x1e5)](_0x3ee390,_0x37726a),_0x56b087=a1_0x1f39fb[_0x218702(0x1e5)](_0x218702(0x1f8),_0x218702(0x1f6),_0x37726a);useEffect(()=>{const _0x8251fa=_0x218702,_0x4f6ff4=a1_0x1f39fb[_0x8251fa(0x1f2)](pageTemplateDir,_0x268b39);if(_0x268b39&&_0x37726a){_0x592c85(!![]),logger[_0x8251fa(0x1e6)](process[_0x8251fa(0x1ea)]());const _0x213ee9=Date['now']();logger['info']('add-page',_0x8251fa(0x1ef)+_0x37726a,{'template':_0x268b39,'targetPath':_0x56b087}),TemplateReplacer['processTemplate'](_0x4f6ff4,a1_0x1f39fb[_0x8251fa(0x1e5)](_0x3ee390,_0x37726a),_0x37726a,_0x268b39)[_0x8251fa(0x1e0)](()=>{const _0x469984=_0x8251fa,_0x5a8224=Date[_0x469984(0x1fb)]()-_0x213ee9;logger[_0x469984(0x1e3)](_0x469984(0x204),'页面添加成功:\x20'+_0x37726a,_0x5a8224,{'template':_0x268b39,'targetPath':_0x56b087,'routePath':_0x37726a}),_0x4e3acd(!![]);})[_0x8251fa(0x1fd)](_0xa8fc69=>{const _0x229ddc=_0x8251fa,_0x546067=Date[_0x229ddc(0x1fb)]()-_0x213ee9;logger[_0x229ddc(0x1e7)](_0x229ddc(0x204),_0x229ddc(0x1f7)+_0x37726a,{'template':_0x268b39,'targetPath':_0x56b087,'error':_0xa8fc69 instanceof Error?_0xa8fc69['message']:String(_0xa8fc69),'duration':_0x546067});})[_0x8251fa(0x1ec)](()=>{_0x592c85(![]);});}},[_0x268b39,_0x37726a]),useEffect(()=>{_0x3f3ca3&&setTimeout(()=>{_0x39ac1d();});},[_0x3f3ca3]);if(_0x268b39)return a1_0x5cf44a(Box,{'flexDirection':_0x218702(0x1ee),'paddingY':0x1,'children':[a1_0x5cf44a(Box,{'children':[a1_0x48abd6(Text,{'color':'gray','children':_0x218702(0x201)}),a1_0x48abd6(Text,{'children':_0x218702(0x1df)}),a1_0x48abd6(Text,{'color':_0x218702(0x1f4),'children':_0x268b39})]}),_0x37726a?a1_0x5cf44a(Box,{'children':[a1_0x48abd6(Text,{'color':_0x218702(0x1f1),'children':_0x218702(0x1e1)}),a1_0x48abd6(Text,{'children':_0x218702(0x202)}),a1_0x48abd6(Text,{'color':_0x218702(0x1f4),'children':_0x37726a})]}):a1_0x48abd6(InputProjectCode,{'pagePath':_0x3bba92,'onSubmit':_0x1e130f}),_0x37726a&&_0xd6178?a1_0x5cf44a(Box,{'marginTop':0x1,'children':[a1_0x48abd6(Box,{'width':'4'}),a1_0x48abd6(Text,{'children':_0x218702(0x1e4)})]}):null,_0x3f3ca3?a1_0x5cf44a(a1_0xd73a,{'children':[a1_0x48abd6(Box,{'marginTop':0x1,'children':a1_0x48abd6(Text,{'color':'gray','children':_0x218702(0x203)})}),a1_0x5cf44a(Box,{'children':[a1_0x48abd6(Text,{'color':_0x218702(0x1f1),'children':'\x20*\x20页面路径:\x20'}),a1_0x48abd6(Text,{'color':_0x218702(0x1f4),'children':_0x56b087})]}),a1_0x5cf44a(Box,{'children':[a1_0x48abd6(Text,{'color':_0x218702(0x1f1),'children':_0x218702(0x1fc)}),a1_0x5cf44a(Text,{'color':_0x218702(0x1f4),'children':['/',_0x37726a]})]}),a1_0x48abd6(Box,{'marginTop':0x1,'children':a1_0x48abd6(Text,{'color':'cyan','children':_0x218702(0x1fa)})})]}):null]});return a1_0x48abd6(SelectPageTemplate,{'onSelect':_0x3693d0});};
@@ -1 +1 @@
1
- (function(_0x58ee23,_0x4bc0c7){const _0x461484=a2_0x4b13,_0x15b592=_0x58ee23();while(!![]){try{const _0x26d155=-parseInt(_0x461484(0x1f5))/0x1*(parseInt(_0x461484(0x1f7))/0x2)+-parseInt(_0x461484(0x1fe))/0x3*(-parseInt(_0x461484(0x1e6))/0x4)+-parseInt(_0x461484(0x204))/0x5*(parseInt(_0x461484(0x1f9))/0x6)+parseInt(_0x461484(0x1e9))/0x7*(-parseInt(_0x461484(0x1e4))/0x8)+-parseInt(_0x461484(0x1f6))/0x9*(parseInt(_0x461484(0x1eb))/0xa)+-parseInt(_0x461484(0x1ec))/0xb*(-parseInt(_0x461484(0x1fd))/0xc)+parseInt(_0x461484(0x1df))/0xd;if(_0x26d155===_0x4bc0c7)break;else _0x15b592['push'](_0x15b592['shift']());}catch(_0x3f3e4b){_0x15b592['push'](_0x15b592['shift']());}}}(a2_0x58a4,0xd27ac));function a2_0x4b13(_0x18af67,_0x2d7640){const _0x58a4bb=a2_0x58a4();return a2_0x4b13=function(_0x4b132b,_0x3b578f){_0x4b132b=_0x4b132b-0x1df;let _0x2798fc=_0x58a4bb[_0x4b132b];return _0x2798fc;},a2_0x4b13(_0x18af67,_0x2d7640);}import{jsx as a2_0x1bcf61,jsxs as a2_0x5e0264}from'react/jsx-runtime';import{useState,useEffect}from'react';import{Text,Box,useInput}from'ink';import{readdir}from'node:fs/promises';import a2_0xaf6c58 from'node:path';function a2_0x58a4(){const _0x15cafc=['join','请选择您要创建的页面模板','sdk-fetch','8772600XkgUjk','url','143028GhuDjA','filter','return','7XFxEOc','正在加载页面模板...','10CErlaA','9740126ceHgJj','gray','获取模板列表失败:','length','upArrow','map','column','\x20Step1:\x20','isDirectory','1544848oSfXsd','10182132XPFndZ','2eUCFob','green','594PvUsuM','\x20\x20\x20\x20\x20\x20>\x20','../..','dirname','12XhPkLb','102WTXoLT','label','downArrow','name','localeCompare','onSelect','47030bUXNxd','45043505ucBiyH','error'];a2_0x58a4=function(){return _0x15cafc;};return a2_0x58a4();}import{fileURLToPath}from'node:url';async function getTemplateList(){const _0x3828df=a2_0x4b13;try{const _0xceaeee=fileURLToPath(import.meta[_0x3828df(0x1e5)]),_0x442149=a2_0xaf6c58['resolve'](a2_0xaf6c58[_0x3828df(0x1fc)](_0xceaeee),_0x3828df(0x1fb)),_0x3ea096=a2_0xaf6c58[_0x3828df(0x1e1)](_0x442149,'templates/pages'),_0x2b5396=await readdir(_0x3ea096,{'withFileTypes':!![]}),_0x5f4707=_0x2b5396[_0x3828df(0x1e7)](_0x14739e=>_0x14739e[_0x3828df(0x1f4)]())[_0x3828df(0x1f1)](_0x199c4c=>({'label':_0x199c4c[_0x3828df(0x201)]}))['sort']((_0x5e8566,_0x5239fa)=>_0x5e8566[_0x3828df(0x1ff)][_0x3828df(0x202)](_0x5239fa[_0x3828df(0x1ff)]));return _0x5f4707;}catch(_0x48b40c){return console[_0x3828df(0x1e0)](_0x3828df(0x1ee),_0x48b40c),[{'label':'blank'},{'label':_0x3828df(0x1e3)}];}}export function SelectPageTemplate(_0x5234e0){const _0x592dfc=a2_0x4b13,[_0x2097e3,_0x14ade2]=useState(0x0),[_0x9f858f,_0x7affba]=useState([]),[_0x290e54,_0x5a6fcd]=useState(!![]);useEffect(()=>{async function _0x4ce2a5(){const _0x1ba7eb=await getTemplateList();_0x7affba(_0x1ba7eb),_0x5a6fcd(![]);}_0x4ce2a5();},[]),useInput((_0x154460,_0x461c69)=>{const _0x42a2b7=a2_0x4b13;if(_0x290e54)return;if(_0x461c69[_0x42a2b7(0x1e8)]){const _0x46aa30=_0x9f858f[_0x2097e3];_0x46aa30&&_0x5234e0[_0x42a2b7(0x203)](_0x46aa30['label']);}_0x461c69[_0x42a2b7(0x1f0)]&&_0x14ade2(_0x3917bd=>_0x3917bd===0x0?_0x9f858f['length']-0x1:_0x3917bd-0x1),_0x461c69[_0x42a2b7(0x200)]&&_0x14ade2(_0x27e6e2=>_0x27e6e2===_0x9f858f[_0x42a2b7(0x1ef)]-0x1?0x0:_0x27e6e2+0x1);});if(_0x290e54)return a2_0x1bcf61(Box,{'flexDirection':_0x592dfc(0x1f2),'paddingY':0x1,'children':a2_0x5e0264(Box,{'children':[a2_0x1bcf61(Text,{'color':_0x592dfc(0x1ed),'children':_0x592dfc(0x1f3)}),a2_0x1bcf61(Text,{'children':_0x592dfc(0x1ea)})]})});return a2_0x5e0264(Box,{'flexDirection':'column','paddingY':0x1,'children':[a2_0x5e0264(Box,{'children':[a2_0x1bcf61(Text,{'color':_0x592dfc(0x1ed),'children':_0x592dfc(0x1f3)}),a2_0x1bcf61(Text,{'children':_0x592dfc(0x1e2)})]}),_0x9f858f[_0x592dfc(0x1f1)]((_0x17cbe6,_0x32eef4)=>{const _0x5d896d=_0x592dfc,_0x238901=_0x32eef4===_0x2097e3,_0x3b04f8=_0x238901?_0x5d896d(0x1fa)+_0x17cbe6[_0x5d896d(0x1ff)]:'\x20\x20\x20\x20\x20\x20\x20\x20'+_0x17cbe6[_0x5d896d(0x1ff)];return a2_0x1bcf61(Box,{'children':a2_0x1bcf61(Text,{'color':_0x238901?_0x5d896d(0x1f8):undefined,'children':_0x3b04f8})},_0x3b04f8);})]});}
1
+ (function(_0x592dd2,_0x392a2f){const _0x46f3a9=a2_0xa248,_0x5f3c9d=_0x592dd2();while(!![]){try{const _0x3b8d1f=parseInt(_0x46f3a9(0xf0))/0x1*(-parseInt(_0x46f3a9(0xfe))/0x2)+parseInt(_0x46f3a9(0x105))/0x3+parseInt(_0x46f3a9(0x10d))/0x4+parseInt(_0x46f3a9(0x10c))/0x5*(parseInt(_0x46f3a9(0x10f))/0x6)+parseInt(_0x46f3a9(0xf9))/0x7+-parseInt(_0x46f3a9(0xfd))/0x8*(parseInt(_0x46f3a9(0xee))/0x9)+-parseInt(_0x46f3a9(0x108))/0xa;if(_0x3b8d1f===_0x392a2f)break;else _0x5f3c9d['push'](_0x5f3c9d['shift']());}catch(_0x5cf000){_0x5f3c9d['push'](_0x5f3c9d['shift']());}}}(a2_0x415b,0xc78e2));import{jsx as a2_0x51b22f,jsxs as a2_0xebab2a}from'react/jsx-runtime';import{useState,useEffect}from'react';function a2_0x415b(){const _0xb065b1=['error','templates/pages','onSelect','label','column','resolve','filter','\x20\x20\x20\x20\x20\x20>\x20','9842420bNvLFO','map','green','sort','4950032KqNXBA','17156eUimnq','正在加载页面模板...','localeCompare','return','gray','\x20\x20\x20\x20\x20\x20\x20\x20','sdk-fetch','3247212ssaMkD','length','请选择您要创建的页面模板','15913720OOGAHl','isDirectory','downArrow','\x20Step1:\x20','1243595OUYanJ','1916664ZzeAxE','blank','24uVclsJ','9OoEsAo','join','109CMFbrt'];a2_0x415b=function(){return _0xb065b1;};return a2_0x415b();}function a2_0xa248(_0x13279a,_0x532166){const _0x415bb6=a2_0x415b();return a2_0xa248=function(_0xa248b9,_0x25c90a){_0xa248b9=_0xa248b9-0xee;let _0x86c610=_0x415bb6[_0xa248b9];return _0x86c610;},a2_0xa248(_0x13279a,_0x532166);}import{Text,Box,useInput}from'ink';import{readdir}from'node:fs/promises';import a2_0xd2d4ca from'node:path';import{fileURLToPath}from'node:url';async function getTemplateList(){const _0x59ca50=a2_0xa248;try{const _0x3bab79=fileURLToPath(import.meta['url']),_0x27c3ee=a2_0xd2d4ca[_0x59ca50(0xf6)](a2_0xd2d4ca['dirname'](_0x3bab79),'../..'),_0x11a1c8=a2_0xd2d4ca[_0x59ca50(0xef)](_0x27c3ee,_0x59ca50(0xf2)),_0xdd6345=await readdir(_0x11a1c8,{'withFileTypes':!![]}),_0x20659c=_0xdd6345[_0x59ca50(0xf7)](_0x3d92d7=>_0x3d92d7[_0x59ca50(0x109)]())[_0x59ca50(0xfa)](_0x1057f4=>({'label':_0x1057f4['name']}))[_0x59ca50(0xfc)]((_0x4464be,_0xd0f9ba)=>_0x4464be['label'][_0x59ca50(0x100)](_0xd0f9ba[_0x59ca50(0xf4)]));return _0x20659c;}catch(_0x33b486){return console[_0x59ca50(0xf1)]('获取模板列表失败:',_0x33b486),[{'label':_0x59ca50(0x10e)},{'label':_0x59ca50(0x104)}];}}export function SelectPageTemplate(_0x1105d1){const _0x1a3661=a2_0xa248,[_0x24b116,_0x34942e]=useState(0x0),[_0x554198,_0x4926e8]=useState([]),[_0x36a9cb,_0x57e06d]=useState(!![]);useEffect(()=>{async function _0x3e0e89(){const _0x2f50a5=await getTemplateList();_0x4926e8(_0x2f50a5),_0x57e06d(![]);}_0x3e0e89();},[]),useInput((_0x303ec6,_0xea48ff)=>{const _0x388a23=a2_0xa248;if(_0x36a9cb)return;if(_0xea48ff[_0x388a23(0x101)]){const _0x4ed3b8=_0x554198[_0x24b116];_0x4ed3b8&&_0x1105d1[_0x388a23(0xf3)](_0x4ed3b8[_0x388a23(0xf4)]);}_0xea48ff['upArrow']&&_0x34942e(_0x5a80e6=>_0x5a80e6===0x0?_0x554198[_0x388a23(0x106)]-0x1:_0x5a80e6-0x1),_0xea48ff[_0x388a23(0x10a)]&&_0x34942e(_0x2e9cf9=>_0x2e9cf9===_0x554198[_0x388a23(0x106)]-0x1?0x0:_0x2e9cf9+0x1);});if(_0x36a9cb)return a2_0x51b22f(Box,{'flexDirection':'column','paddingY':0x1,'children':a2_0xebab2a(Box,{'children':[a2_0x51b22f(Text,{'color':_0x1a3661(0x102),'children':'\x20Step1:\x20'}),a2_0x51b22f(Text,{'children':_0x1a3661(0xff)})]})});return a2_0xebab2a(Box,{'flexDirection':_0x1a3661(0xf5),'paddingY':0x1,'children':[a2_0xebab2a(Box,{'children':[a2_0x51b22f(Text,{'color':_0x1a3661(0x102),'children':_0x1a3661(0x10b)}),a2_0x51b22f(Text,{'children':_0x1a3661(0x107)})]}),_0x554198[_0x1a3661(0xfa)]((_0x48ae1a,_0x3b14ab)=>{const _0x5314f9=_0x1a3661,_0x3c0b68=_0x3b14ab===_0x24b116,_0x286fd5=_0x3c0b68?_0x5314f9(0xf8)+_0x48ae1a['label']:_0x5314f9(0x103)+_0x48ae1a[_0x5314f9(0xf4)];return a2_0x51b22f(Box,{'children':a2_0x51b22f(Text,{'color':_0x3c0b68?_0x5314f9(0xfb):undefined,'children':_0x286fd5})},_0x286fd5);})]});}
@@ -1 +1 @@
1
- (function(_0x231e9a,_0x193ac8){const _0x147844=a3_0x1c7f,_0x4dcd8f=_0x231e9a();while(!![]){try{const _0x2b1fc4=parseInt(_0x147844(0x96))/0x1*(parseInt(_0x147844(0xb0))/0x2)+-parseInt(_0x147844(0x85))/0x3+parseInt(_0x147844(0x86))/0x4*(-parseInt(_0x147844(0x88))/0x5)+parseInt(_0x147844(0x9c))/0x6*(parseInt(_0x147844(0x93))/0x7)+parseInt(_0x147844(0xae))/0x8*(-parseInt(_0x147844(0x95))/0x9)+-parseInt(_0x147844(0x9f))/0xa+parseInt(_0x147844(0x98))/0xb*(parseInt(_0x147844(0xb7))/0xc);if(_0x2b1fc4===_0x193ac8)break;else _0x4dcd8f['push'](_0x4dcd8f['shift']());}catch(_0x1410a0){_0x4dcd8f['push'](_0x4dcd8f['shift']());}}}(a3_0x29e3,0x36677));import{jsx as a3_0x324ebd,jsxs as a3_0xc1fd1c,Fragment as a3_0x397c26}from'react/jsx-runtime';import{useEffect,useState}from'react';function a3_0x29e3(){const _0x2e5ac0=['6duuShg','文档生成完成','dim','4140170YJTSRw','\x20重新登录后再试','log','⚠️\x20以下数据集生成失败:',',\x20失败\x20','yellow','datasetCode','cwd','√\x20文档生成完成!成功\x20','\x20个数据集中筛选出\x20','error','使用配置的应用AppCode:\x20','lovrabet\x20auth','map','setLogPath','72ruKBgb','使用指定的应用AppCode:\x20','10ObCuXT','文档生成失败:\x20','\x20个匹配的数据集\x1b[0m','join','length','red','success','14027604rHWbFH','env','正在获取数据集列表...','online','*\x20输出目录:\x20','\x20个数据集的文档...','指定的数据集代码都不存在:\x20','927606jVJTdH','1101196wmxkBT','正在生成\x20','5FPExaT','gray','datasetName','\x20(环境:\x20','./docs','filePath','filter','cyan','\x1b[0m','api-doc','\x1b[90m*\x20从\x20','1258999KbbIEF','未找到任何数据集','183177hRWlIA','11142zzlVZp','column','11PcmeOj','includes','string','green'];a3_0x29e3=function(){return _0x2e5ac0;};return a3_0x29e3();}function a3_0x1c7f(_0xaf325f,_0x346c1e){const _0x29e3ae=a3_0x29e3();return a3_0x1c7f=function(_0x1c7f26,_0x1d7a3c){_0x1c7f26=_0x1c7f26-0x84;let _0x33dbf0=_0x29e3ae[_0x1c7f26];return _0x33dbf0;},a3_0x1c7f(_0xaf325f,_0x346c1e);}import{Box,Text,useApp}from'ink';import{readConfig,getConfigAppCode}from'../utils/config.js';import{initEnv}from'../constant/env.js';import{fetchModelList}from'./fetch-model-list.js';import{generateDatasetDocs}from'./api-doc.js';import{logger}from'../utils/logger.js';export const ApiDocUI=({appCode:_0x2f4721,env:_0x153818,output:_0x22a824,extraParams:_0x105758,datasetCodes:_0x552f0e})=>{const _0x10836f=a3_0x1c7f,{exit:_0x4e8154}=useApp(),[_0x689958,_0x264f74]=useState(![]),[_0x27d0b8,_0x310ba8]=useState(''),[_0xed2699,_0x33bcbd]=useState(![]),[_0x15bc1e,_0x132a35]=useState(null),[_0x3ace86,_0x21369d]=useState(null),[_0x4d667c,_0x1c94db]=useState(0x0),_0x413cb0=readConfig(),_0x199a2c=getConfigAppCode(),_0x5031c8=_0x2f4721||_0x199a2c,_0x3843e7=typeof _0x413cb0?.[_0x10836f(0xb8)]===_0x10836f(0x9a)?_0x413cb0[_0x10836f(0xb8)]:undefined,_0x491ed2=_0x153818||_0x3843e7||_0x10836f(0xba);initEnv(_0x491ed2);const _0x45519c=_0x22a824||_0x10836f(0x8c),_0x4c8be9=_0x2f4721?_0x10836f(0xaf)+_0x5031c8:_0x10836f(0xaa)+_0x5031c8;useEffect(()=>{_0x264f74(!![]),_0x3a8f1f();},[]),useEffect(()=>{(_0xed2699||_0x15bc1e)&&_0x4e8154();},[_0xed2699,_0x15bc1e,_0x4e8154]);async function _0x3a8f1f(){const _0x379e14=_0x10836f;if(!_0x5031c8){_0x132a35('未提供应用AppCode,且配置中也没有默认值');return;}try{logger[_0x379e14(0xad)](process[_0x379e14(0xa6)]()),_0x310ba8(_0x379e14(0xb9));const {configArray:_0x4023ae}=await fetchModelList(_0x5031c8);_0x1c94db(_0x4023ae[_0x379e14(0xb4)]);if(_0x4023ae[_0x379e14(0xb4)]===0x0){_0x132a35(_0x379e14(0x94));return;}let _0x27b2da=_0x4023ae;if(_0x552f0e&&_0x552f0e[_0x379e14(0xb4)]>0x0){_0x27b2da=_0x4023ae['filter'](_0x5e6af9=>_0x552f0e[_0x379e14(0x99)](_0x5e6af9[_0x379e14(0xa5)]));const _0x41800a=_0x27b2da[_0x379e14(0xac)](_0x41d92d=>_0x41d92d['datasetCode']),_0x12dec5=_0x552f0e[_0x379e14(0x8e)](_0x4ccd0c=>!_0x41800a['includes'](_0x4ccd0c));_0x12dec5['length']>0x0&&console[_0x379e14(0xa1)]('\x1b[33m!\x20以下数据集代码不存在:\x20'+_0x12dec5[_0x379e14(0xb3)](',\x20')+_0x379e14(0x90));if(_0x27b2da[_0x379e14(0xb4)]===0x0){_0x132a35(_0x379e14(0x84)+_0x552f0e[_0x379e14(0xb3)](',\x20'));return;}console[_0x379e14(0xa1)](_0x379e14(0x92)+_0x4023ae['length']+_0x379e14(0xa8)+_0x27b2da['length']+_0x379e14(0xb2));}_0x310ba8(_0x379e14(0x87)+_0x27b2da[_0x379e14(0xb4)]+_0x379e14(0xbc));const _0x5a624a=await generateDatasetDocs(_0x27b2da,_0x5031c8,_0x45519c,(_0x46365e,_0x463c8a,_0x368a89)=>{const _0x4ccaee=_0x379e14;_0x310ba8(_0x4ccaee(0x87)+_0x368a89+'.md\x20('+_0x46365e+'/'+_0x463c8a+')');},_0x105758);_0x21369d(_0x5a624a),_0x33bcbd(!![]);const _0x3765d2=_0x5a624a['filter'](_0x112214=>_0x112214[_0x379e14(0xb6)])[_0x379e14(0xb4)],_0x2e4463=_0x5a624a[_0x379e14(0x8e)](_0x27c14c=>!_0x27c14c[_0x379e14(0xb6)])[_0x379e14(0xb4)];logger[_0x379e14(0xb6)](_0x379e14(0x91),_0x379e14(0x9d),undefined,{'totalCount':_0x5a624a[_0x379e14(0xb4)],'successCount':_0x3765d2,'failCount':_0x2e4463,'outputDir':_0x45519c});}catch(_0x2d5c5a){const _0x87058f=_0x2d5c5a instanceof Error?_0x2d5c5a['message']:String(_0x2d5c5a);logger['error'](_0x379e14(0x91),_0x379e14(0xb1)+_0x87058f,{'appCode':_0x5031c8,'outputDir':_0x45519c}),_0x132a35(_0x379e14(0xb1)+_0x87058f);}finally{_0x264f74(![]);}}const _0xd7a859=_0x3ace86?.['filter'](_0x3afb3e=>_0x3afb3e[_0x10836f(0xb6)])[_0x10836f(0xb4)]||0x0,_0x4c1ee2=_0x3ace86?.[_0x10836f(0x8e)](_0x432e46=>!_0x432e46[_0x10836f(0xb6)])[_0x10836f(0xb4)]||0x0;return a3_0xc1fd1c(Box,{'flexDirection':_0x10836f(0x97),'children':[(_0x689958||_0xed2699)&&a3_0xc1fd1c(Box,{'children':[a3_0x324ebd(Text,{'color':_0x10836f(0x89),'children':'*\x20'}),a3_0x324ebd(Text,{'color':_0x2f4721?'white':_0x10836f(0x9e),'children':_0x4c8be9})]}),_0x689958&&a3_0x324ebd(Box,{'children':a3_0xc1fd1c(Text,{'children':['🚀\x20',_0x27d0b8,_0x10836f(0x8b),_0x491ed2,')']})}),_0xed2699&&_0x3ace86&&a3_0xc1fd1c(Box,{'flexDirection':_0x10836f(0x97),'children':[a3_0x324ebd(Box,{'children':a3_0xc1fd1c(Text,{'color':_0x10836f(0x9b),'children':[_0x10836f(0xa7),_0xd7a859,'\x20个',_0x4c1ee2>0x0&&_0x10836f(0xa3)+_0x4c1ee2+'\x20个']})}),a3_0x324ebd(Box,{'marginTop':0x1,'children':a3_0xc1fd1c(Text,{'color':_0x10836f(0x89),'children':['*\x20共处理\x20',_0x4d667c,'\x20个数据集']})}),a3_0xc1fd1c(Box,{'marginTop':0x1,'children':[a3_0x324ebd(Text,{'color':_0x10836f(0x89),'children':_0x10836f(0xbb)}),a3_0x324ebd(Text,{'color':_0x10836f(0x8f),'children':_0x45519c})]}),_0xd7a859>0x0&&a3_0xc1fd1c(a3_0x397c26,{'children':[a3_0x324ebd(Box,{'marginTop':0x1,'children':a3_0x324ebd(Text,{'color':_0x10836f(0x89),'children':'*\x20生成的文档文件:'})}),_0x3ace86[_0x10836f(0x8e)](_0x252df6=>_0x252df6[_0x10836f(0xb6)])[_0x10836f(0xac)]((_0x533fbb,_0x1ea0c0)=>a3_0xc1fd1c(Box,{'marginLeft':0x2,'children':[a3_0xc1fd1c(Text,{'color':_0x10836f(0x8f),'children':['•\x20',_0x533fbb[_0x10836f(0x8d)]]}),a3_0xc1fd1c(Text,{'color':_0x10836f(0x9e),'children':['\x20-\x20',_0x533fbb[_0x10836f(0x8a)]]})]},_0x1ea0c0))]}),_0x4c1ee2>0x0&&a3_0xc1fd1c(a3_0x397c26,{'children':[a3_0x324ebd(Box,{'marginTop':0x1,'children':a3_0x324ebd(Text,{'color':'yellow','children':_0x10836f(0xa2)})}),_0x3ace86['filter'](_0x2dd40e=>!_0x2dd40e[_0x10836f(0xb6)])[_0x10836f(0xac)]((_0x2be028,_0x3d5e89)=>a3_0xc1fd1c(Box,{'marginLeft':0x2,'flexDirection':'column','children':[a3_0xc1fd1c(Text,{'color':_0x10836f(0xb5),'children':['•\x20',_0x2be028['datasetName'],'\x20(',_0x2be028[_0x10836f(0xa5)],')']}),_0x2be028[_0x10836f(0xa9)]&&a3_0x324ebd(Box,{'marginLeft':0x2,'children':a3_0x324ebd(Text,{'color':_0x10836f(0x9e),'children':_0x2be028['error']})})]},_0x3d5e89))]})]}),_0x15bc1e&&a3_0xc1fd1c(Box,{'flexDirection':_0x10836f(0x97),'children':[a3_0x324ebd(Box,{'children':a3_0xc1fd1c(Text,{'color':_0x10836f(0xb5),'children':['❌\x20',_0x15bc1e]})}),_0x15bc1e['includes']('登录')&&a3_0xc1fd1c(Box,{'marginTop':0x1,'children':[a3_0x324ebd(Text,{'color':_0x10836f(0xa4),'children':'💡\x20请使用\x20'}),a3_0x324ebd(Text,{'color':'cyan','children':_0x10836f(0xab)}),a3_0x324ebd(Text,{'color':_0x10836f(0xa4),'children':_0x10836f(0xa0)})]})]})]});};
1
+ (function(_0x2ff4f9,_0x491307){const _0x31fb62=a3_0x5ca1,_0x4a7b2a=_0x2ff4f9();while(!![]){try{const _0x27977a=-parseInt(_0x31fb62(0x79))/0x1+parseInt(_0x31fb62(0x92))/0x2*(-parseInt(_0x31fb62(0x8d))/0x3)+-parseInt(_0x31fb62(0x8f))/0x4*(parseInt(_0x31fb62(0x6d))/0x5)+-parseInt(_0x31fb62(0x9d))/0x6+-parseInt(_0x31fb62(0x7f))/0x7*(-parseInt(_0x31fb62(0xa2))/0x8)+-parseInt(_0x31fb62(0x99))/0x9+parseInt(_0x31fb62(0x90))/0xa*(parseInt(_0x31fb62(0x73))/0xb);if(_0x27977a===_0x491307)break;else _0x4a7b2a['push'](_0x4a7b2a['shift']());}catch(_0x11ef8f){_0x4a7b2a['push'](_0x4a7b2a['shift']());}}}(a3_0x43b0,0x992d8));import{jsx as a3_0x1b2315,jsxs as a3_0x17e896,Fragment as a3_0x39e4d8}from'react/jsx-runtime';import{useEffect,useState}from'react';import{Box,Text,useApp}from'ink';import{readConfig,getConfigAppCode}from'../utils/config.js';import{initEnv}from'../constant/env.js';import{fetchModelList}from'./fetch-model-list.js';import{generateDatasetDocs}from'./api-doc.js';function a3_0x5ca1(_0x18c49d,_0x5b4e1d){const _0x43b0c6=a3_0x43b0();return a3_0x5ca1=function(_0x5ca1a0,_0x4181a3){_0x5ca1a0=_0x5ca1a0-0x6c;let _0x14749d=_0x43b0c6[_0x5ca1a0];return _0x14749d;},a3_0x5ca1(_0x18c49d,_0x5b4e1d);}function a3_0x43b0(){const _0x48bebc=['\x20个数据集的文档...','*\x20共处理\x20','1066014oPGukz','*\x20生成的文档文件:','dim','正在获取数据集列表...','⚠️\x20以下数据集生成失败:','\x20个数据集中筛选出\x20','56nFGKmZ','\x20-\x20','使用指定的应用AppCode:\x20','√\x20文档生成完成!成功\x20','green','💡\x20请使用\x20','map','red','gray','.md\x20(','./docs','\x20(环境:\x20','yellow','column','133995guJOiK','指定的数据集代码都不存在:\x20','8llyGup','80FLNheC','文档生成失败:\x20','12eCsJyB','string','error','filePath','includes','*\x20输出目录:\x20','message','5416857UKHvcq','\x20重新登录后再试','未找到任何数据集','datasetCode','6499482NdtICZ','\x20个匹配的数据集\x1b[0m','api-doc','online','setLogPath','537808jrfzPu','🚀\x20','正在生成\x20','datasetName','cyan','2334410HotJkD','\x1b[90m*\x20从\x20','success','filter','log','cwd','5558432lunRiD','env','\x1b[33m!\x20以下数据集代码不存在:\x20','length'];a3_0x43b0=function(){return _0x48bebc;};return a3_0x43b0();}import{logger}from'../utils/logger.js';export const ApiDocUI=({appCode:_0x55d330,env:_0x117b58,output:_0x3a2d93,extraParams:_0x1b72f1,datasetCodes:_0x4ad5c1})=>{const _0x5aadc4=a3_0x5ca1,{exit:_0x75d2ec}=useApp(),[_0x7cd7fd,_0x160c56]=useState(![]),[_0x1f0d27,_0x299b46]=useState(''),[_0x595da2,_0x1cc950]=useState(![]),[_0x4af42f,_0x48bc5c]=useState(null),[_0x527a51,_0x2fce9e]=useState(null),[_0x2dae11,_0x1e3ae7]=useState(0x0),_0x510e66=readConfig(),_0x2cc9db=getConfigAppCode(),_0x2dd49f=_0x55d330||_0x2cc9db,_0x5df51e=typeof _0x510e66?.[_0x5aadc4(0x74)]===_0x5aadc4(0x93)?_0x510e66[_0x5aadc4(0x74)]:undefined,_0x76878d=_0x117b58||_0x5df51e||_0x5aadc4(0xa0);initEnv(_0x76878d);const _0x57751e=_0x3a2d93||_0x5aadc4(0x89),_0x38b1d2=_0x55d330?_0x5aadc4(0x81)+_0x2dd49f:'使用配置的应用AppCode:\x20'+_0x2dd49f;useEffect(()=>{_0x160c56(!![]),_0x3a2011();},[]),useEffect(()=>{(_0x595da2||_0x4af42f)&&_0x75d2ec();},[_0x595da2,_0x4af42f,_0x75d2ec]);async function _0x3a2011(){const _0x344ac5=_0x5aadc4;if(!_0x2dd49f){_0x48bc5c('未提供应用AppCode,且配置中也没有默认值');return;}try{logger[_0x344ac5(0xa1)](process[_0x344ac5(0x72)]()),_0x299b46(_0x344ac5(0x7c));const {configArray:_0x3781b5}=await fetchModelList(_0x2dd49f);_0x1e3ae7(_0x3781b5[_0x344ac5(0x76)]);if(_0x3781b5[_0x344ac5(0x76)]===0x0){_0x48bc5c(_0x344ac5(0x9b));return;}let _0x468b8c=_0x3781b5;if(_0x4ad5c1&&_0x4ad5c1[_0x344ac5(0x76)]>0x0){_0x468b8c=_0x3781b5[_0x344ac5(0x70)](_0x110d4a=>_0x4ad5c1['includes'](_0x110d4a[_0x344ac5(0x9c)]));const _0x585d6f=_0x468b8c[_0x344ac5(0x85)](_0x44b812=>_0x44b812[_0x344ac5(0x9c)]),_0x2e0343=_0x4ad5c1[_0x344ac5(0x70)](_0x4c0cd6=>!_0x585d6f['includes'](_0x4c0cd6));_0x2e0343[_0x344ac5(0x76)]>0x0&&console[_0x344ac5(0x71)](_0x344ac5(0x75)+_0x2e0343['join'](',\x20')+'\x1b[0m');if(_0x468b8c[_0x344ac5(0x76)]===0x0){_0x48bc5c(_0x344ac5(0x8e)+_0x4ad5c1['join'](',\x20'));return;}console[_0x344ac5(0x71)](_0x344ac5(0x6e)+_0x3781b5['length']+_0x344ac5(0x7e)+_0x468b8c['length']+_0x344ac5(0x9e));}_0x299b46(_0x344ac5(0xa4)+_0x468b8c['length']+_0x344ac5(0x77));const _0x3eb729=await generateDatasetDocs(_0x468b8c,_0x2dd49f,_0x57751e,(_0x33b0b4,_0x4f43e1,_0x51058b)=>{const _0x3a616a=_0x344ac5;_0x299b46(_0x3a616a(0xa4)+_0x51058b+_0x3a616a(0x88)+_0x33b0b4+'/'+_0x4f43e1+')');},_0x1b72f1);_0x2fce9e(_0x3eb729),_0x1cc950(!![]);const _0x516377=_0x3eb729[_0x344ac5(0x70)](_0x2b7641=>_0x2b7641[_0x344ac5(0x6f)])[_0x344ac5(0x76)],_0x273fde=_0x3eb729[_0x344ac5(0x70)](_0x548ce6=>!_0x548ce6[_0x344ac5(0x6f)])[_0x344ac5(0x76)];logger[_0x344ac5(0x6f)](_0x344ac5(0x9f),'文档生成完成',undefined,{'totalCount':_0x3eb729['length'],'successCount':_0x516377,'failCount':_0x273fde,'outputDir':_0x57751e});}catch(_0x360cd7){const _0x9b7637=_0x360cd7 instanceof Error?_0x360cd7[_0x344ac5(0x98)]:String(_0x360cd7);logger[_0x344ac5(0x94)](_0x344ac5(0x9f),'文档生成失败:\x20'+_0x9b7637,{'appCode':_0x2dd49f,'outputDir':_0x57751e}),_0x48bc5c(_0x344ac5(0x91)+_0x9b7637);}finally{_0x160c56(![]);}}const _0x51d213=_0x527a51?.[_0x5aadc4(0x70)](_0x268b9e=>_0x268b9e[_0x5aadc4(0x6f)])[_0x5aadc4(0x76)]||0x0,_0x50f3c0=_0x527a51?.[_0x5aadc4(0x70)](_0x1b5e56=>!_0x1b5e56[_0x5aadc4(0x6f)])['length']||0x0;return a3_0x17e896(Box,{'flexDirection':_0x5aadc4(0x8c),'children':[(_0x7cd7fd||_0x595da2)&&a3_0x17e896(Box,{'children':[a3_0x1b2315(Text,{'color':_0x5aadc4(0x87),'children':'*\x20'}),a3_0x1b2315(Text,{'color':_0x55d330?'white':_0x5aadc4(0x7b),'children':_0x38b1d2})]}),_0x7cd7fd&&a3_0x1b2315(Box,{'children':a3_0x17e896(Text,{'children':[_0x5aadc4(0xa3),_0x1f0d27,_0x5aadc4(0x8a),_0x76878d,')']})}),_0x595da2&&_0x527a51&&a3_0x17e896(Box,{'flexDirection':_0x5aadc4(0x8c),'children':[a3_0x1b2315(Box,{'children':a3_0x17e896(Text,{'color':_0x5aadc4(0x83),'children':[_0x5aadc4(0x82),_0x51d213,'\x20个',_0x50f3c0>0x0&&',\x20失败\x20'+_0x50f3c0+'\x20个']})}),a3_0x1b2315(Box,{'marginTop':0x1,'children':a3_0x17e896(Text,{'color':_0x5aadc4(0x87),'children':[_0x5aadc4(0x78),_0x2dae11,'\x20个数据集']})}),a3_0x17e896(Box,{'marginTop':0x1,'children':[a3_0x1b2315(Text,{'color':_0x5aadc4(0x87),'children':_0x5aadc4(0x97)}),a3_0x1b2315(Text,{'color':_0x5aadc4(0x6c),'children':_0x57751e})]}),_0x51d213>0x0&&a3_0x17e896(a3_0x39e4d8,{'children':[a3_0x1b2315(Box,{'marginTop':0x1,'children':a3_0x1b2315(Text,{'color':_0x5aadc4(0x87),'children':_0x5aadc4(0x7a)})}),_0x527a51['filter'](_0x1d34d6=>_0x1d34d6['success'])[_0x5aadc4(0x85)]((_0x3a01d7,_0x459572)=>a3_0x17e896(Box,{'marginLeft':0x2,'children':[a3_0x17e896(Text,{'color':_0x5aadc4(0x6c),'children':['•\x20',_0x3a01d7[_0x5aadc4(0x95)]]}),a3_0x17e896(Text,{'color':_0x5aadc4(0x7b),'children':[_0x5aadc4(0x80),_0x3a01d7[_0x5aadc4(0xa5)]]})]},_0x459572))]}),_0x50f3c0>0x0&&a3_0x17e896(a3_0x39e4d8,{'children':[a3_0x1b2315(Box,{'marginTop':0x1,'children':a3_0x1b2315(Text,{'color':_0x5aadc4(0x8b),'children':_0x5aadc4(0x7d)})}),_0x527a51[_0x5aadc4(0x70)](_0x1d4c1d=>!_0x1d4c1d[_0x5aadc4(0x6f)])[_0x5aadc4(0x85)]((_0x494473,_0x5b387a)=>a3_0x17e896(Box,{'marginLeft':0x2,'flexDirection':_0x5aadc4(0x8c),'children':[a3_0x17e896(Text,{'color':_0x5aadc4(0x86),'children':['•\x20',_0x494473[_0x5aadc4(0xa5)],'\x20(',_0x494473[_0x5aadc4(0x9c)],')']}),_0x494473[_0x5aadc4(0x94)]&&a3_0x1b2315(Box,{'marginLeft':0x2,'children':a3_0x1b2315(Text,{'color':_0x5aadc4(0x7b),'children':_0x494473[_0x5aadc4(0x94)]})})]},_0x5b387a))]})]}),_0x4af42f&&a3_0x17e896(Box,{'flexDirection':'column','children':[a3_0x1b2315(Box,{'children':a3_0x17e896(Text,{'color':_0x5aadc4(0x86),'children':['❌\x20',_0x4af42f]})}),_0x4af42f[_0x5aadc4(0x96)]('登录')&&a3_0x17e896(Box,{'marginTop':0x1,'children':[a3_0x1b2315(Text,{'color':_0x5aadc4(0x8b),'children':_0x5aadc4(0x84)}),a3_0x1b2315(Text,{'color':_0x5aadc4(0x6c),'children':'lovrabet\x20auth'}),a3_0x1b2315(Text,{'color':'yellow','children':_0x5aadc4(0x9a)})]})]})]});};
@@ -1 +1 @@
1
- const a4_0x6df1ab=a4_0x2b63;(function(_0x9d74c3,_0xf923ad){const _0x314baa=a4_0x2b63,_0x65eb36=_0x9d74c3();while(!![]){try{const _0x52e718=parseInt(_0x314baa(0x72))/0x1*(parseInt(_0x314baa(0x93))/0x2)+parseInt(_0x314baa(0x6f))/0x3*(-parseInt(_0x314baa(0x87))/0x4)+-parseInt(_0x314baa(0x7e))/0x5+-parseInt(_0x314baa(0x8f))/0x6*(parseInt(_0x314baa(0x92))/0x7)+parseInt(_0x314baa(0x8b))/0x8*(-parseInt(_0x314baa(0x85))/0x9)+-parseInt(_0x314baa(0x76))/0xa+parseInt(_0x314baa(0x70))/0xb;if(_0x52e718===_0xf923ad)break;else _0x65eb36['push'](_0x65eb36['shift']());}catch(_0x24536d){_0x65eb36['push'](_0x65eb36['shift']());}}}(a4_0x413a,0x49191));import{mkdirSync,writeFileSync}from'node:fs';import a4_0x5d744b from'node:path';import{getCookie}from'../auth/get-cookie.js';import{getApiDomain}from'../constant/domain.js';function a4_0x2b63(_0x1f3ebf,_0x1de8f2){const _0x413ae5=a4_0x413a();return a4_0x2b63=function(_0x2b634e,_0x457a15){_0x2b634e=_0x2b634e-0x6d;let _0x36c174=_0x413ae5[_0x2b634e];return _0x36c174;},a4_0x2b63(_0x1f3ebf,_0x1de8f2);}function a4_0x413a(){const _0x455a56=['✗\x20失败:\x20','18kAVrhx','获取文档失败\x20(','4HvydQA','),HTTP状态码:\x20','name','join','18632DxGByZ',']\x20正在生成:\x20','./docs','push','3774RHQadi','application/json','status','5593VsiwcC','674132fsgMSP','api-doc','datasetCode','json','POST','✓\x20成功生成:\x20','markdown','1586187TDxZEe','20529476rujvHy','data','1oFmtHz','error','登录鉴权失败,登录已过期,请使用\x20lovrabet\x20auth\x20重新登录','log','5168000NErpOt','string','生成文档成功:\x20','等待\x203\x20秒...\x0a','响应数据格式错误\x20(','\x20个数据集需要生成文档\x0a','tableName','/api/node-toolbox/api-doc-generator','1756075xsADYs','.md','length','utf8','stringify','生成文档失败:\x20'];a4_0x413a=function(){return _0x455a56;};return a4_0x413a();}import{logger}from'../utils/logger.js';export async function fetchDatasetDoc(_0x4e432d){const _0x3c3820=a4_0x2b63,{appCode:_0x3aca3e,datasetCode:_0x4a1dc7,datasetId:_0x580a67,extraParams:_0x31603a}=_0x4e432d,_0x411388=getApiDomain(),_0x5c3b53=_0x411388+_0x3c3820(0x7d),_0x41bd63={'appCode':_0x3aca3e,'datasetCode':_0x4a1dc7,'datasetId':_0x580a67,..._0x31603a||{}},_0xe0afc2=await fetch(_0x5c3b53,{'method':_0x3c3820(0x97),'headers':{'Content-Type':_0x3c3820(0x90),'Cookie':getCookie()},'body':JSON[_0x3c3820(0x82)](_0x41bd63)});if(!_0xe0afc2['ok']){if(_0xe0afc2[_0x3c3820(0x91)]===0x191)throw new Error(_0x3c3820(0x74));let _0x3ebf21='';try{_0x3ebf21=await _0xe0afc2['text']();}catch(_0x5ee753){}throw new Error(_0x3c3820(0x86)+_0x4a1dc7+_0x3c3820(0x88)+_0xe0afc2['status']+(_0x3ebf21?'\x0a'+_0x3ebf21:''));}const _0x539eb2=await _0xe0afc2[_0x3c3820(0x96)]();if(!_0x539eb2[_0x3c3820(0x71)]||typeof _0x539eb2[_0x3c3820(0x71)][_0x3c3820(0x6e)]!==_0x3c3820(0x77))throw new Error(_0x3c3820(0x7a)+_0x4a1dc7+'):缺少\x20data.markdown\x20字段');return _0x539eb2[_0x3c3820(0x71)][_0x3c3820(0x6e)];}function delay(_0x803a5e){return new Promise(_0x572177=>setTimeout(_0x572177,_0x803a5e));}export async function generateDatasetDocs(_0x1922af,_0x79b1b7,_0x44528c=a4_0x6df1ab(0x8d),_0x177cd0,_0x1c0cc5){const _0x401625=a4_0x6df1ab;mkdirSync(_0x44528c,{'recursive':!![]});const _0x94f609=[],_0x37064b=_0x1922af[_0x401625(0x80)];console['log']('\x0a共有\x20'+_0x37064b+_0x401625(0x7b));for(let _0xbd717e=0x0;_0xbd717e<_0x1922af[_0x401625(0x80)];_0xbd717e++){const _0x11824c=_0x1922af[_0xbd717e],_0x302c69=_0xbd717e+0x1,_0x1b69a9=_0x11824c[_0x401625(0x7c)];try{console[_0x401625(0x75)]('['+_0x302c69+'/'+_0x37064b+_0x401625(0x8c)+_0x1b69a9+'.md\x20('+_0x11824c['name']+')');_0x177cd0&&_0x177cd0(_0x302c69,_0x37064b,_0x1b69a9);const _0x2a97cd=await fetchDatasetDoc({'appCode':_0x79b1b7,'datasetCode':_0x11824c['datasetCode'],'datasetId':_0x11824c['id'],'enableAI':![],'extraParams':_0x1c0cc5}),_0x3f13a6=a4_0x5d744b[_0x401625(0x8a)](_0x44528c,_0x1b69a9+'.md');writeFileSync(_0x3f13a6,_0x2a97cd,{'encoding':_0x401625(0x81)}),console[_0x401625(0x75)](_0x401625(0x6d)+_0x1b69a9+_0x401625(0x7f)),logger['success'](_0x401625(0x94),_0x401625(0x78)+_0x1b69a9,undefined,{'datasetCode':_0x11824c[_0x401625(0x95)],'datasetName':_0x11824c[_0x401625(0x89)],'filePath':_0x3f13a6,'progress':_0x302c69+'/'+_0x37064b}),_0x94f609[_0x401625(0x8e)]({'datasetCode':_0x11824c['datasetCode'],'datasetName':_0x11824c[_0x401625(0x89)],'filePath':_0x3f13a6,'success':!![]}),_0x302c69<_0x37064b&&await delay(0x1388);}catch(_0x436877){const _0x28a2f6=_0x436877 instanceof Error?_0x436877['message']:String(_0x436877);console[_0x401625(0x75)](_0x401625(0x84)+_0x1b69a9+'.md\x20-\x20'+_0x28a2f6+'\x0a'),logger[_0x401625(0x73)](_0x401625(0x94),_0x401625(0x83)+_0x11824c[_0x401625(0x95)],{'datasetCode':_0x11824c['datasetCode'],'datasetName':_0x11824c[_0x401625(0x89)],'error':_0x28a2f6,'progress':_0x302c69+'/'+_0x37064b}),_0x94f609['push']({'datasetCode':_0x11824c[_0x401625(0x95)],'datasetName':_0x11824c['name'],'filePath':'','success':![],'error':_0x28a2f6}),_0x302c69<_0x37064b&&(console[_0x401625(0x75)](_0x401625(0x79)),await delay(0xbb8));}}return _0x94f609;}
1
+ const a4_0x5bd74f=a4_0x527f;(function(_0x443084,_0x86a1b1){const _0x35bc0a=a4_0x527f,_0x48e003=_0x443084();while(!![]){try{const _0x5dc365=parseInt(_0x35bc0a(0x11b))/0x1+parseInt(_0x35bc0a(0x125))/0x2+parseInt(_0x35bc0a(0x124))/0x3*(parseInt(_0x35bc0a(0x12c))/0x4)+parseInt(_0x35bc0a(0x12b))/0x5*(-parseInt(_0x35bc0a(0x145))/0x6)+parseInt(_0x35bc0a(0x121))/0x7+parseInt(_0x35bc0a(0x139))/0x8*(-parseInt(_0x35bc0a(0x13e))/0x9)+-parseInt(_0x35bc0a(0x12a))/0xa*(parseInt(_0x35bc0a(0x133))/0xb);if(_0x5dc365===_0x86a1b1)break;else _0x48e003['push'](_0x48e003['shift']());}catch(_0x20ed71){_0x48e003['push'](_0x48e003['shift']());}}}(a4_0x36ef,0x55688));import{mkdirSync,writeFileSync}from'node:fs';import a4_0x1a9c47 from'node:path';import{getCookie}from'../auth/get-cookie.js';import{getApiDomain}from'../constant/domain.js';import{logger}from'../utils/logger.js';export async function fetchDatasetDoc(_0x478235){const _0x2d399c=a4_0x527f,{appCode:_0x1b6138,datasetCode:_0x55bd3b,datasetId:_0xdac093,extraParams:_0x318b5d}=_0x478235,_0x3119ff=getApiDomain(),_0xf2b82f=_0x3119ff+_0x2d399c(0x130),_0x3516e2={'appCode':_0x1b6138,'datasetCode':_0x55bd3b,'datasetId':_0xdac093,..._0x318b5d||{}},_0x49806a=await fetch(_0xf2b82f,{'method':_0x2d399c(0x123),'headers':{'Content-Type':_0x2d399c(0x11d),'Cookie':getCookie()},'body':JSON[_0x2d399c(0x13a)](_0x3516e2)});if(!_0x49806a['ok']){if(_0x49806a['status']===0x191)throw new Error(_0x2d399c(0x136));let _0x3bdf8b='';try{_0x3bdf8b=await _0x49806a['text']();}catch(_0x54b523){}throw new Error(_0x2d399c(0x132)+_0x55bd3b+_0x2d399c(0x146)+_0x49806a[_0x2d399c(0x11f)]+(_0x3bdf8b?'\x0a'+_0x3bdf8b:''));}const _0x135059=await _0x49806a[_0x2d399c(0x11e)]();if(!_0x135059[_0x2d399c(0x144)]||typeof _0x135059[_0x2d399c(0x144)][_0x2d399c(0x12d)]!=='string')throw new Error('响应数据格式错误\x20('+_0x55bd3b+_0x2d399c(0x129));return _0x135059[_0x2d399c(0x144)]['markdown'];}function delay(_0x5ebf4f){return new Promise(_0xf3ec38=>setTimeout(_0xf3ec38,_0x5ebf4f));}function a4_0x36ef(){const _0x3a9857=['./docs','2632987YSHOHA','tableName','POST','9QalUhY','628974yXXtMy','utf8','\x20个数据集需要生成文档\x0a','生成文档失败:\x20','):缺少\x20data.markdown\x20字段','252710VEczwp','219430TWqpCC','227692KUCkHf','markdown','error','name','/api/node-toolbox/api-doc-generator','log','获取文档失败\x20(','121lmIdwH','等待\x203\x20秒...\x0a','message','登录鉴权失败,登录已过期,请使用\x20lovrabet\x20auth\x20重新登录','✗\x20失败:\x20','api-doc','4200jAMNuW','stringify','\x0a共有\x20','.md\x20(','.md','6111DHpMIR','✓\x20成功生成:\x20','push','length','datasetCode','生成文档成功:\x20','data','24dsCWUt','),HTTP状态码:\x20','298435joFJfE','join','application/json','json','status'];a4_0x36ef=function(){return _0x3a9857;};return a4_0x36ef();}function a4_0x527f(_0x3ed9c7,_0x59df5d){const _0x36efa3=a4_0x36ef();return a4_0x527f=function(_0x527f03,_0x232389){_0x527f03=_0x527f03-0x11b;let _0x1e47b8=_0x36efa3[_0x527f03];return _0x1e47b8;},a4_0x527f(_0x3ed9c7,_0x59df5d);}export async function generateDatasetDocs(_0x37019c,_0x4fa2c4,_0x4754c8=a4_0x5bd74f(0x120),_0x5374cb,_0x4adfc9){const _0x257cf0=a4_0x5bd74f;mkdirSync(_0x4754c8,{'recursive':!![]});const _0x42f8ef=[],_0x292405=_0x37019c[_0x257cf0(0x141)];console[_0x257cf0(0x131)](_0x257cf0(0x13b)+_0x292405+_0x257cf0(0x127));for(let _0x2f4059=0x0;_0x2f4059<_0x37019c[_0x257cf0(0x141)];_0x2f4059++){const _0x3ec249=_0x37019c[_0x2f4059],_0x58dde5=_0x2f4059+0x1,_0x2e7e3b=_0x3ec249[_0x257cf0(0x122)];try{console[_0x257cf0(0x131)]('['+_0x58dde5+'/'+_0x292405+']\x20正在生成:\x20'+_0x2e7e3b+_0x257cf0(0x13c)+_0x3ec249[_0x257cf0(0x12f)]+')');_0x5374cb&&_0x5374cb(_0x58dde5,_0x292405,_0x2e7e3b);const _0x37ab27=await fetchDatasetDoc({'appCode':_0x4fa2c4,'datasetCode':_0x3ec249[_0x257cf0(0x142)],'datasetId':_0x3ec249['id'],'enableAI':![],'extraParams':_0x4adfc9}),_0x432abe=a4_0x1a9c47[_0x257cf0(0x11c)](_0x4754c8,_0x2e7e3b+'.md');writeFileSync(_0x432abe,_0x37ab27,{'encoding':_0x257cf0(0x126)}),console[_0x257cf0(0x131)](_0x257cf0(0x13f)+_0x2e7e3b+_0x257cf0(0x13d)),logger['success'](_0x257cf0(0x138),_0x257cf0(0x143)+_0x2e7e3b,undefined,{'datasetCode':_0x3ec249[_0x257cf0(0x142)],'datasetName':_0x3ec249[_0x257cf0(0x12f)],'filePath':_0x432abe,'progress':_0x58dde5+'/'+_0x292405}),_0x42f8ef[_0x257cf0(0x140)]({'datasetCode':_0x3ec249[_0x257cf0(0x142)],'datasetName':_0x3ec249[_0x257cf0(0x12f)],'filePath':_0x432abe,'success':!![]}),_0x58dde5<_0x292405&&await delay(0x1388);}catch(_0x521229){const _0x2955b0=_0x521229 instanceof Error?_0x521229[_0x257cf0(0x135)]:String(_0x521229);console[_0x257cf0(0x131)](_0x257cf0(0x137)+_0x2e7e3b+'.md\x20-\x20'+_0x2955b0+'\x0a'),logger[_0x257cf0(0x12e)](_0x257cf0(0x138),_0x257cf0(0x128)+_0x3ec249[_0x257cf0(0x142)],{'datasetCode':_0x3ec249[_0x257cf0(0x142)],'datasetName':_0x3ec249[_0x257cf0(0x12f)],'error':_0x2955b0,'progress':_0x58dde5+'/'+_0x292405}),_0x42f8ef[_0x257cf0(0x140)]({'datasetCode':_0x3ec249[_0x257cf0(0x142)],'datasetName':_0x3ec249[_0x257cf0(0x12f)],'filePath':'','success':![],'error':_0x2955b0}),_0x58dde5<_0x292405&&(console[_0x257cf0(0x131)](_0x257cf0(0x134)),await delay(0xbb8));}}return _0x42f8ef;}
@@ -1 +1 @@
1
- function a5_0x2e0e(_0x364301,_0x30a4eb){const _0x521a97=a5_0x521a();return a5_0x2e0e=function(_0x2e0e75,_0x599c59){_0x2e0e75=_0x2e0e75-0x1aa;let _0x1a9481=_0x521a97[_0x2e0e75];return _0x1a9481;},a5_0x2e0e(_0x364301,_0x30a4eb);}(function(_0x5869ff,_0x345a28){const _0x430fb6=a5_0x2e0e,_0x3a776a=_0x5869ff();while(!![]){try{const _0x2bfd5a=-parseInt(_0x430fb6(0x1be))/0x1*(parseInt(_0x430fb6(0x1dc))/0x2)+parseInt(_0x430fb6(0x1aa))/0x3+parseInt(_0x430fb6(0x1c8))/0x4+-parseInt(_0x430fb6(0x1d2))/0x5+-parseInt(_0x430fb6(0x1c3))/0x6+-parseInt(_0x430fb6(0x1ca))/0x7*(parseInt(_0x430fb6(0x1de))/0x8)+parseInt(_0x430fb6(0x1bd))/0x9*(parseInt(_0x430fb6(0x1d3))/0xa);if(_0x2bfd5a===_0x345a28)break;else _0x3a776a['push'](_0x3a776a['shift']());}catch(_0x3215bb){_0x3a776a['push'](_0x3a776a['shift']());}}}(a5_0x521a,0xb137a));function a5_0x521a(){const _0xe962d2=['length','8rNnKiS','dim','\x20重新登录后再试','green','2744805fefYbh','string','\x20-\x20客户端实例文件','\x20个模型)','!\x20原始数据集\x20','\x20个数据集,生成','\x20个模型','./src/api/','yellow','column','api-pull','-\x20模型配置文件\x20(','未提供应用AppCode,且配置中也没有默认值','slice','env','使用配置的应用AppCode:\x20','api','cwd','{\x20lovrabetClient\x20}','18gJVfrk','6962iAxWTq','client','duplicateCount','error','💡\x20请使用\x20','8308134jsXjWI','setLogPath','*\x20已生成文件:','cyan','*\x20导入方式:','668392hEkUvG','join','7651182nEyQci','🚀\x20正在从服务器拉取\x20API\x20配置...\x20(环境:\x20','online','message','拉取\x20API\x20配置失败:\x20','import\x20','modelCount','white','5643150Kilbjv','20254120gdpESv','使用指定的应用AppCode:\x20','replace','gray','originalCount','.ts','\x20from\x20\x27@/','includes','\x20个,过滤重复','230ohManw'];a5_0x521a=function(){return _0xe962d2;};return a5_0x521a();}import{jsx as a5_0x2c5cf9,jsxs as a5_0x46538e}from'react/jsx-runtime';import{useEffect,useState}from'react';import{Box,Text,useApp}from'ink';import{readConfig,getConfigAppCode}from'../utils/config.js';import{initEnv}from'../constant/env.js';import{generateApiFile}from'./generate-api-file.js';import{logger}from'../utils/logger.js';import{fetchModelList}from'./fetch-model-list.js';export const ApiPullUI=({appCode:_0x77e972,env:_0x4e6497,output:_0x2c95e7})=>{const _0x17bacb=a5_0x2e0e,{exit:_0x18676a}=useApp(),[_0x226911,_0x7c0c69]=useState(![]),[_0x1e3c8a,_0x2988a0]=useState(![]),[_0x207b7c,_0x1d5fd2]=useState(null),[_0x35818f,_0x1d0b7b]=useState(null),_0x5cb49a=readConfig(),_0x4688dd=getConfigAppCode(),_0xca4b9e=_0x77e972||_0x4688dd,_0x982448=typeof _0x5cb49a?.[_0x17bacb(0x1b8)]===_0x17bacb(0x1ab)?_0x5cb49a[_0x17bacb(0x1b8)]:undefined,_0x12eecc=_0x4e6497||_0x982448||_0x17bacb(0x1cc);initEnv(_0x12eecc);const _0x4862b1=_0x2c95e7||_0x17bacb(0x1b1),_0x4202b8=_0x77e972&&_0x77e972[_0x17bacb(0x1da)]('-')?_0x77e972['split']('-')[_0x17bacb(0x1b7)](0x1)[_0x17bacb(0x1c9)]('-'):'',_0xb9f867=_0x77e972?_0x17bacb(0x1d4)+_0xca4b9e:_0x17bacb(0x1b9)+_0xca4b9e,_0x21236c=_0x4202b8?_0x4202b8+'-api':_0x17bacb(0x1ba),_0x6dabed=_0x4202b8?_0x4202b8+'-client':_0x17bacb(0x1bf);useEffect(()=>{_0x7c0c69(!![]),_0xaf0420();},[]),useEffect(()=>{(_0x1e3c8a||_0x207b7c)&&_0x18676a();},[_0x1e3c8a,_0x207b7c,_0x18676a]);async function _0xaf0420(){const _0x2b03f5=_0x17bacb;if(!_0xca4b9e){_0x1d5fd2(_0x2b03f5(0x1b6));return;}try{logger[_0x2b03f5(0x1c4)](process[_0x2b03f5(0x1bb)]());const {configArray:_0x119579}=await fetchModelList(_0xca4b9e),_0x5161c6=_0x119579[_0x2b03f5(0x1dd)],_0xb0211d=!_0x77e972,_0x40e016=await generateApiFile(_0x119579,_0x4202b8,_0xca4b9e,_0xb0211d,_0x12eecc,_0x4862b1),_0x11a9ec=_0x4862b1['endsWith']('/')?_0x4862b1:_0x4862b1+'/';_0x1d0b7b({'api':''+_0x11a9ec+_0x21236c+_0x2b03f5(0x1d8),'client':''+_0x11a9ec+_0x6dabed+_0x2b03f5(0x1d8),'modelCount':_0x40e016[_0x2b03f5(0x1d0)],'datasetCount':_0x5161c6,'originalCount':_0x5161c6,'duplicateCount':0x0}),_0x2988a0(!![]);}catch(_0x5ad26b){const _0x35eeab=_0x5ad26b instanceof Error?_0x5ad26b[_0x2b03f5(0x1cd)]:String(_0x5ad26b);logger[_0x2b03f5(0x1c1)](_0x2b03f5(0x1b4),'拉取\x20API\x20配置失败:\x20'+_0x35eeab,{'appCode':_0xca4b9e,'error':_0x35eeab}),_0x1d5fd2(_0x2b03f5(0x1ce)+_0x35eeab);}finally{_0x7c0c69(![]);}}return a5_0x46538e(Box,{'flexDirection':_0x17bacb(0x1b3),'children':[(_0x226911||_0x1e3c8a)&&a5_0x46538e(Box,{'children':[a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1d6),'children':'*\x20'}),a5_0x2c5cf9(Text,{'color':_0x77e972?_0x17bacb(0x1d1):_0x17bacb(0x1df),'children':_0xb9f867})]}),_0x226911&&a5_0x2c5cf9(Box,{'children':a5_0x46538e(Text,{'children':[_0x17bacb(0x1cb),_0x12eecc,')']})}),_0x1e3c8a&&_0x35818f&&a5_0x46538e(Box,{'flexDirection':_0x17bacb(0x1b3),'children':[a5_0x2c5cf9(Box,{'children':a5_0x46538e(Text,{'color':_0x17bacb(0x1e1),'children':['√\x20成功拉取\x20',_0x35818f['datasetCount'],_0x17bacb(0x1af),'\x20',_0x35818f['modelCount'],_0x17bacb(0x1b0)]})}),_0x35818f[_0x17bacb(0x1c0)]>0x0&&a5_0x2c5cf9(Box,{'marginTop':0x1,'children':a5_0x46538e(Text,{'color':_0x17bacb(0x1b2),'children':[_0x17bacb(0x1ae),_0x35818f[_0x17bacb(0x1d7)],_0x17bacb(0x1db),'\x20',_0x35818f[_0x17bacb(0x1c0)],'\x20个']})}),a5_0x2c5cf9(Box,{'marginTop':0x1,'children':a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1d6),'children':_0x17bacb(0x1c5)})}),a5_0x46538e(Box,{'marginLeft':0x2,'children':[a5_0x46538e(Text,{'color':_0x17bacb(0x1c6),'children':['•\x20',_0x35818f['api']]}),a5_0x46538e(Text,{'color':_0x17bacb(0x1df),'children':['\x20',_0x17bacb(0x1b5),_0x35818f['modelCount'],_0x17bacb(0x1ad)]})]}),a5_0x46538e(Box,{'marginLeft':0x2,'children':[a5_0x46538e(Text,{'color':_0x17bacb(0x1c6),'children':['•\x20',_0x35818f[_0x17bacb(0x1bf)]]}),a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1df),'children':_0x17bacb(0x1ac)})]}),a5_0x2c5cf9(Box,{'marginTop':0x1,'children':a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1d6),'children':_0x17bacb(0x1c7)})}),a5_0x2c5cf9(Box,{'marginLeft':0x2,'children':a5_0x46538e(Text,{'color':_0x17bacb(0x1b2),'children':[_0x17bacb(0x1cf),_0x17bacb(0x1bc),_0x17bacb(0x1d9),_0x35818f['client'][_0x17bacb(0x1d5)](/^\.\//,'')[_0x17bacb(0x1d5)](_0x17bacb(0x1d8),''),'\x27']})})]}),_0x207b7c&&a5_0x46538e(Box,{'flexDirection':'column','children':[a5_0x2c5cf9(Box,{'children':a5_0x46538e(Text,{'color':'red','children':['❌\x20',_0x207b7c]})}),_0x207b7c[_0x17bacb(0x1da)]('登录')&&a5_0x46538e(Box,{'marginTop':0x1,'children':[a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1b2),'children':_0x17bacb(0x1c2)}),a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1c6),'children':'lovrabet\x20auth'}),a5_0x2c5cf9(Text,{'color':_0x17bacb(0x1b2),'children':_0x17bacb(0x1e0)})]})]})]});};
1
+ (function(_0x243d82,_0x270009){const _0x2088a3=a5_0x4151,_0x3814da=_0x243d82();while(!![]){try{const _0x2f1a78=-parseInt(_0x2088a3(0x155))/0x1*(-parseInt(_0x2088a3(0x12f))/0x2)+parseInt(_0x2088a3(0x144))/0x3*(parseInt(_0x2088a3(0x15a))/0x4)+-parseInt(_0x2088a3(0x130))/0x5+-parseInt(_0x2088a3(0x12b))/0x6*(-parseInt(_0x2088a3(0x135))/0x7)+parseInt(_0x2088a3(0x13a))/0x8*(parseInt(_0x2088a3(0x128))/0x9)+-parseInt(_0x2088a3(0x14f))/0xa*(-parseInt(_0x2088a3(0x141))/0xb)+parseInt(_0x2088a3(0x136))/0xc*(-parseInt(_0x2088a3(0x13f))/0xd);if(_0x2f1a78===_0x270009)break;else _0x3814da['push'](_0x3814da['shift']());}catch(_0x4bb84a){_0x3814da['push'](_0x3814da['shift']());}}}(a5_0x195e,0x4107a));import{jsx as a5_0x314ccc,jsxs as a5_0x55b09a}from'react/jsx-runtime';import{useEffect,useState}from'react';import{Box,Text,useApp}from'ink';import{readConfig,getConfigAppCode}from'../utils/config.js';function a5_0x4151(_0x34bf82,_0x284a01){const _0x195e55=a5_0x195e();return a5_0x4151=function(_0x415100,_0x17eded){_0x415100=_0x415100-0x120;let _0x5d683c=_0x195e55[_0x415100];return _0x5d683c;},a5_0x4151(_0x34bf82,_0x284a01);}import{initEnv}from'../constant/env.js';import{generateApiFile}from'./generate-api-file.js';import{logger}from'../utils/logger.js';import{fetchModelList}from'./fetch-model-list.js';function a5_0x195e(){const _0x5c7b4b=['\x20个模型)','10zGKAhj','yellow','green','使用指定的应用AppCode:\x20','*\x20导入方式:','17688gBUrPg','api-pull','originalCount','datasetCount','endsWith','!\x20原始数据集\x20','gray','√\x20成功拉取\x20','replace','31599xOVffI','split','拉取\x20API\x20配置失败:\x20','388854nKMNOd','cwd','cyan','length','76022lwavBS','2236120Qtxgvc','message','join','🚀\x20正在从服务器拉取\x20API\x20配置...\x20(环境:\x20','使用配置的应用AppCode:\x20','21KqBfer','516qlwAGi','red','\x20重新登录后再试','{\x20lovrabetClient\x20}','408POURNA','column','client','modelCount','*\x20已生成文件:','47879xKGoJJ','\x20个模型','11tRomSS','💡\x20请使用\x20','env','24VQEcUf','.ts','error','api','import\x20','\x20-\x20客户端实例文件','lovrabet\x20auth','duplicateCount','includes','slice','setLogPath','829810hwQwPP','\x20from\x20\x27@/','string','-api','white'];a5_0x195e=function(){return _0x5c7b4b;};return a5_0x195e();}export const ApiPullUI=({appCode:_0x5871f1,env:_0x428aeb,output:_0x27d8c2})=>{const _0x443bc6=a5_0x4151,{exit:_0x9ab12c}=useApp(),[_0x454784,_0x34e3ff]=useState(![]),[_0x41d2a2,_0x554b81]=useState(![]),[_0x2bd669,_0x4a4300]=useState(null),[_0xdfb96a,_0x391ce7]=useState(null),_0x55892d=readConfig(),_0x439d40=getConfigAppCode(),_0x54dbfa=_0x5871f1||_0x439d40,_0x4061e8=typeof _0x55892d?.[_0x443bc6(0x143)]===_0x443bc6(0x151)?_0x55892d[_0x443bc6(0x143)]:undefined,_0x2ef8c1=_0x428aeb||_0x4061e8||'online';initEnv(_0x2ef8c1);const _0x2481c4=_0x27d8c2||'./src/api/',_0x5eb6b0=_0x5871f1&&_0x5871f1[_0x443bc6(0x14c)]('-')?_0x5871f1[_0x443bc6(0x129)]('-')[_0x443bc6(0x14d)](0x1)[_0x443bc6(0x132)]('-'):'',_0x1c4b02=_0x5871f1?_0x443bc6(0x158)+_0x54dbfa:_0x443bc6(0x134)+_0x54dbfa,_0xf214be=_0x5eb6b0?_0x5eb6b0+_0x443bc6(0x152):_0x443bc6(0x147),_0x187cce=_0x5eb6b0?_0x5eb6b0+'-client':_0x443bc6(0x13c);useEffect(()=>{_0x34e3ff(!![]),_0x443831();},[]),useEffect(()=>{(_0x41d2a2||_0x2bd669)&&_0x9ab12c();},[_0x41d2a2,_0x2bd669,_0x9ab12c]);async function _0x443831(){const _0x2176df=_0x443bc6;if(!_0x54dbfa){_0x4a4300('未提供应用AppCode,且配置中也没有默认值');return;}try{logger[_0x2176df(0x14e)](process[_0x2176df(0x12c)]());const {configArray:_0x373c62}=await fetchModelList(_0x54dbfa),_0x5cef2c=_0x373c62[_0x2176df(0x12e)],_0x1ebbb1=!_0x5871f1,_0x50dbb9=await generateApiFile(_0x373c62,_0x5eb6b0,_0x54dbfa,_0x1ebbb1,_0x2ef8c1,_0x2481c4),_0x8bb0ed=_0x2481c4[_0x2176df(0x123)]('/')?_0x2481c4:_0x2481c4+'/';_0x391ce7({'api':''+_0x8bb0ed+_0xf214be+'.ts','client':''+_0x8bb0ed+_0x187cce+_0x2176df(0x145),'modelCount':_0x50dbb9[_0x2176df(0x13d)],'datasetCount':_0x5cef2c,'originalCount':_0x5cef2c,'duplicateCount':0x0}),_0x554b81(!![]);}catch(_0x2d481b){const _0x12a023=_0x2d481b instanceof Error?_0x2d481b[_0x2176df(0x131)]:String(_0x2d481b);logger[_0x2176df(0x146)](_0x2176df(0x120),_0x2176df(0x12a)+_0x12a023,{'appCode':_0x54dbfa,'error':_0x12a023}),_0x4a4300(_0x2176df(0x12a)+_0x12a023);}finally{_0x34e3ff(![]);}}return a5_0x55b09a(Box,{'flexDirection':_0x443bc6(0x13b),'children':[(_0x454784||_0x41d2a2)&&a5_0x55b09a(Box,{'children':[a5_0x314ccc(Text,{'color':_0x443bc6(0x125),'children':'*\x20'}),a5_0x314ccc(Text,{'color':_0x5871f1?_0x443bc6(0x153):'dim','children':_0x1c4b02})]}),_0x454784&&a5_0x314ccc(Box,{'children':a5_0x55b09a(Text,{'children':[_0x443bc6(0x133),_0x2ef8c1,')']})}),_0x41d2a2&&_0xdfb96a&&a5_0x55b09a(Box,{'flexDirection':_0x443bc6(0x13b),'children':[a5_0x314ccc(Box,{'children':a5_0x55b09a(Text,{'color':_0x443bc6(0x157),'children':[_0x443bc6(0x126),_0xdfb96a[_0x443bc6(0x122)],'\x20个数据集,生成','\x20',_0xdfb96a[_0x443bc6(0x13d)],_0x443bc6(0x140)]})}),_0xdfb96a[_0x443bc6(0x14b)]>0x0&&a5_0x314ccc(Box,{'marginTop':0x1,'children':a5_0x55b09a(Text,{'color':'yellow','children':[_0x443bc6(0x124),_0xdfb96a[_0x443bc6(0x121)],'\x20个,过滤重复','\x20',_0xdfb96a[_0x443bc6(0x14b)],'\x20个']})}),a5_0x314ccc(Box,{'marginTop':0x1,'children':a5_0x314ccc(Text,{'color':_0x443bc6(0x125),'children':_0x443bc6(0x13e)})}),a5_0x55b09a(Box,{'marginLeft':0x2,'children':[a5_0x55b09a(Text,{'color':_0x443bc6(0x12d),'children':['•\x20',_0xdfb96a[_0x443bc6(0x147)]]}),a5_0x55b09a(Text,{'color':'dim','children':['\x20','-\x20模型配置文件\x20(',_0xdfb96a[_0x443bc6(0x13d)],_0x443bc6(0x154)]})]}),a5_0x55b09a(Box,{'marginLeft':0x2,'children':[a5_0x55b09a(Text,{'color':_0x443bc6(0x12d),'children':['•\x20',_0xdfb96a[_0x443bc6(0x13c)]]}),a5_0x314ccc(Text,{'color':'dim','children':_0x443bc6(0x149)})]}),a5_0x314ccc(Box,{'marginTop':0x1,'children':a5_0x314ccc(Text,{'color':_0x443bc6(0x125),'children':_0x443bc6(0x159)})}),a5_0x314ccc(Box,{'marginLeft':0x2,'children':a5_0x55b09a(Text,{'color':_0x443bc6(0x156),'children':[_0x443bc6(0x148),_0x443bc6(0x139),_0x443bc6(0x150),_0xdfb96a[_0x443bc6(0x13c)][_0x443bc6(0x127)](/^\.\//,'')[_0x443bc6(0x127)](_0x443bc6(0x145),''),'\x27']})})]}),_0x2bd669&&a5_0x55b09a(Box,{'flexDirection':'column','children':[a5_0x314ccc(Box,{'children':a5_0x55b09a(Text,{'color':_0x443bc6(0x137),'children':['❌\x20',_0x2bd669]})}),_0x2bd669['includes']('登录')&&a5_0x55b09a(Box,{'marginTop':0x1,'children':[a5_0x314ccc(Text,{'color':_0x443bc6(0x156),'children':_0x443bc6(0x142)}),a5_0x314ccc(Text,{'color':_0x443bc6(0x12d),'children':_0x443bc6(0x14a)}),a5_0x314ccc(Text,{'color':'yellow','children':_0x443bc6(0x138)})]})]})]});};
@@ -1 +1 @@
1
- (function(_0x4dcd98,_0x243b64){const _0x517669=a6_0x2cf2,_0xcc83a6=_0x4dcd98();while(!![]){try{const _0x29fb7c=parseInt(_0x517669(0x1fa))/0x1*(-parseInt(_0x517669(0x1f7))/0x2)+-parseInt(_0x517669(0x1f6))/0x3*(parseInt(_0x517669(0x1f8))/0x4)+-parseInt(_0x517669(0x1f5))/0x5*(-parseInt(_0x517669(0x1ef))/0x6)+-parseInt(_0x517669(0x1fc))/0x7+-parseInt(_0x517669(0x1f4))/0x8+-parseInt(_0x517669(0x1ee))/0x9*(parseInt(_0x517669(0x1ed))/0xa)+parseInt(_0x517669(0x1f0))/0xb;if(_0x29fb7c===_0x243b64)break;else _0xcc83a6['push'](_0xcc83a6['shift']());}catch(_0x250216){_0xcc83a6['push'](_0xcc83a6['shift']());}}}(a6_0xf251,0xe0f0c));import{getCookie}from'../auth/get-cookie.js';import{getApiDomain}from'../constant/domain.js';function a6_0xf251(){const _0x55f4ae=['71891358zFXRPV','data','&otype=array','/api/node-toolbox/dataset/model-list?appcode=','10560072jCylLh','150ELpUdh','18Jsrhwr','2xxPosf','1063460LjXZfO','登录鉴权失败,登录已过期,请使用\x20lovrabet\x20auth\x20重新登录','1830128CalQRv','json','6522285MMVYqK','获取数据集失败:\x20','未知错误','message','3680rNYjPZ','37890iwfoJb','322428CCLzBB'];a6_0xf251=function(){return _0x55f4ae;};return a6_0xf251();}import{logger}from'../utils/logger.js';import{getEnv}from'../constant/env.js';function a6_0x2cf2(_0x1341a4,_0x52af5b){const _0xf251c9=a6_0xf251();return a6_0x2cf2=function(_0x2cf281,_0x4d18d1){_0x2cf281=_0x2cf281-0x1ea;let _0x7375bf=_0xf251c9[_0x2cf281];return _0x7375bf;},a6_0x2cf2(_0x1341a4,_0x52af5b);}export async function fetchModelList(_0x419f6e){const _0x384f0c=a6_0x2cf2,_0x29f3bd=getEnv(),_0x467ac5=getApiDomain()+_0x384f0c(0x1f3)+_0x419f6e+_0x384f0c(0x1f2);logger['info']('fetch-model-list','正在从服务器拉取模型列表...\x20(环境:\x20'+_0x29f3bd+')',{'apiUrl':_0x467ac5});const _0x5534e0=await fetch(_0x467ac5,{'headers':{'Cookie':getCookie()}});if(!_0x5534e0['ok']){if(_0x5534e0['status']===0x191)throw new Error(_0x384f0c(0x1f9));throw new Error('获取数据集失败,HTTP状态码:\x20'+_0x5534e0['status']);}const _0xfe213d=await _0x5534e0[_0x384f0c(0x1fb)]();if(!_0xfe213d['success'])throw new Error(_0x384f0c(0x1ea)+(_0xfe213d[_0x384f0c(0x1ec)]||_0x384f0c(0x1eb)));return{'configArray':_0xfe213d[_0x384f0c(0x1f1)]['configArray'],'count':_0xfe213d[_0x384f0c(0x1f1)]['count']};}
1
+ (function(_0x449dcf,_0x1ac3a1){const _0x49279b=a6_0x13dc,_0x1425e7=_0x449dcf();while(!![]){try{const _0x5463e2=parseInt(_0x49279b(0x8b))/0x1*(parseInt(_0x49279b(0x84))/0x2)+parseInt(_0x49279b(0x8d))/0x3*(-parseInt(_0x49279b(0x96))/0x4)+parseInt(_0x49279b(0x86))/0x5*(parseInt(_0x49279b(0x85))/0x6)+parseInt(_0x49279b(0x94))/0x7+parseInt(_0x49279b(0x87))/0x8*(parseInt(_0x49279b(0x8c))/0x9)+parseInt(_0x49279b(0x9a))/0xa+-parseInt(_0x49279b(0x8e))/0xb;if(_0x5463e2===_0x1ac3a1)break;else _0x1425e7['push'](_0x1425e7['shift']());}catch(_0x22db25){_0x1425e7['push'](_0x1425e7['shift']());}}}(a6_0x29e5,0x7290b));import{getCookie}from'../auth/get-cookie.js';import{getApiDomain}from'../constant/domain.js';import{logger}from'../utils/logger.js';function a6_0x13dc(_0x1a76a9,_0x15a70c){const _0x29e5ef=a6_0x29e5();return a6_0x13dc=function(_0x13dc94,_0x592130){_0x13dc94=_0x13dc94-0x83;let _0x1787fd=_0x29e5ef[_0x13dc94];return _0x1787fd;},a6_0x13dc(_0x1a76a9,_0x15a70c);}import{getEnv}from'../constant/env.js';function a6_0x29e5(){const _0x4f7522=['登录鉴权失败,登录已过期,请使用\x20lovrabet\x20auth\x20重新登录','/api/node-toolbox/dataset/model-list?appcode=','json','正在从服务器拉取模型列表...\x20(环境:\x20','data','110488VBEbQc','count','3678556oZEVxg','fetch-model-list','info','&otype=array','6504200ytwfbH','status','44GmbUdN','1634982bhtGMD','5wBeexu','30552EZJlyf','获取数据集失败,HTTP状态码:\x20','未知错误','获取数据集失败:\x20','20067hMIfXv','900XPSsHr','3zXLQvn','4104947WSGCyR'];a6_0x29e5=function(){return _0x4f7522;};return a6_0x29e5();}export async function fetchModelList(_0x7eeb3a){const _0x2ad290=a6_0x13dc,_0x5d2dce=getEnv(),_0x24ecee=getApiDomain()+_0x2ad290(0x90)+_0x7eeb3a+_0x2ad290(0x99);logger[_0x2ad290(0x98)](_0x2ad290(0x97),_0x2ad290(0x92)+_0x5d2dce+')',{'apiUrl':_0x24ecee});const _0x40f54b=await fetch(_0x24ecee,{'headers':{'Cookie':getCookie()}});if(!_0x40f54b['ok']){if(_0x40f54b[_0x2ad290(0x83)]===0x191)throw new Error(_0x2ad290(0x8f));throw new Error(_0x2ad290(0x88)+_0x40f54b[_0x2ad290(0x83)]);}const _0x381e72=await _0x40f54b[_0x2ad290(0x91)]();if(!_0x381e72['success'])throw new Error(_0x2ad290(0x8a)+(_0x381e72['message']||_0x2ad290(0x89)));return{'configArray':_0x381e72['data']['configArray'],'count':_0x381e72[_0x2ad290(0x93)][_0x2ad290(0x95)]};}
@@ -1 +1 @@
1
- const a7_0x355004=a7_0x1cc3;(function(_0x40af61,_0x2fbb91){const _0x18520=a7_0x1cc3,_0x4d2479=_0x40af61();while(!![]){try{const _0xd7920f=parseInt(_0x18520(0xc3))/0x1+-parseInt(_0x18520(0xbd))/0x2*(parseInt(_0x18520(0xc6))/0x3)+parseInt(_0x18520(0xba))/0x4*(-parseInt(_0x18520(0xb9))/0x5)+parseInt(_0x18520(0xc2))/0x6+-parseInt(_0x18520(0xb0))/0x7+-parseInt(_0x18520(0xa7))/0x8+-parseInt(_0x18520(0xc7))/0x9*(-parseInt(_0x18520(0xb8))/0xa);if(_0xd7920f===_0x2fbb91)break;else _0x4d2479['push'](_0x4d2479['shift']());}catch(_0x49bf60){_0x4d2479['push'](_0x4d2479['shift']());}}}(a7_0x4ef8,0x9903f));function a7_0x1cc3(_0x190d7d,_0x3a5518){const _0x4ef8c3=a7_0x4ef8();return a7_0x1cc3=function(_0x1cc300,_0x4164d4){_0x1cc300=_0x1cc300-0xa6;let _0x2ef4e4=_0x4ef8c3[_0x1cc300];return _0x2ef4e4;},a7_0x1cc3(_0x190d7d,_0x3a5518);}import a7_0x43f918 from'prettier';import{mkdirSync,writeFileSync,readFileSync}from'node:fs';import a7_0x18593a from'node:path';import{fileURLToPath}from'node:url';import{readConfig}from'../utils/config.js';function a7_0x4ef8(){const _0x262729=['dirname','2oKraie','keys','请先通过\x20`lovrabet\x20config\x20set\x20app\x20<value>`\x20配置应用\x20Code','format','.ts','5050182NRBctT','30715YoVTBA','API\x20文件生成成功!','./src/api/','2805375xpwkII','243342MXPwjA','tableName','typescript','success','app','join','resolve','online',',\x20env:\x20\x22','env','8241528XlZfUt','string','length','replaceApiContent','api.ts.tpl','CONFIG_NAMES.DEFAULT','name','datasetCode','-api','3772979ivAjmJ','forEach','templates/generate-api','utf8','endsWith','client','api','slice','1070JbDZYt','55FUsaWj','230696HvLuqW','url'];a7_0x4ef8=function(){return _0x262729;};return a7_0x4ef8();}import{TemplateReplacer}from'../utils/template-replacer.js';import{logger}from'../utils/logger.js';export async function generateApiFile(_0x4b1e7b,_0x4a3142='',_0x16b9f3,_0x238f81=![],_0x1dd830,_0x51e33d=a7_0x355004(0xc5)){const _0x172a64=a7_0x355004,_0x3326bd=readConfig(),_0x231e20=_0x16b9f3||_0x3326bd?.[_0x172a64(0xcb)];if(typeof _0x231e20!==_0x172a64(0xa8)||!_0x231e20)throw new Error(_0x172a64(0xbf));const _0x37b43c=_0x238f81?_0x172a64(0xac):'\x22'+_0x231e20+'\x22',_0x18bf64=typeof _0x3326bd[_0x172a64(0xa6)]==='string'?_0x3326bd[_0x172a64(0xa6)]:undefined,_0x4c476d=_0x1dd830||_0x18bf64||_0x172a64(0xce),_0x4905e4=_0x4c476d!==_0x172a64(0xce);let _0x31a464;if(_0x238f81)_0x4905e4?_0x31a464='{\x20apiConfigName:\x20'+_0x37b43c+_0x172a64(0xcf)+_0x4c476d+'\x22\x20}':_0x31a464='';else{const _0x204cac=_0x4905e4?_0x172a64(0xcf)+_0x4c476d+'\x22':'';_0x31a464='{\x20apiConfigName:\x20\x22'+_0x231e20+'\x22'+_0x204cac+'\x20}';}const _0x89b1f5=_0x4a3142?_0x4a3142+_0x172a64(0xaf):_0x172a64(0xb6),_0x4431a7=_0x4a3142?_0x4a3142+'-client':_0x172a64(0xb5),_0x5034ba={};_0x4b1e7b[_0x172a64(0xb1)](_0x59d3a1=>{const _0x550a1a=_0x172a64;_0x5034ba[_0x59d3a1['key']]={'tableName':_0x59d3a1[_0x550a1a(0xc8)],'datasetCode':_0x59d3a1[_0x550a1a(0xae)],'name':_0x59d3a1[_0x550a1a(0xad)]||''};});const _0x16d50f=fileURLToPath(import.meta[_0x172a64(0xbb)]),_0x1bce9f=a7_0x18593a[_0x172a64(0xcd)](a7_0x18593a[_0x172a64(0xbc)](_0x16d50f),'../..'),_0x8c18d5=a7_0x18593a[_0x172a64(0xcc)](_0x1bce9f,_0x172a64(0xb2)),_0x4588c6=a7_0x18593a[_0x172a64(0xcc)](_0x8c18d5,_0x172a64(0xab)),_0x35271a=a7_0x18593a[_0x172a64(0xcc)](_0x8c18d5,'client.ts.tpl'),_0x15bbf0=_0x51e33d[_0x172a64(0xb4)]('/')?_0x51e33d[_0x172a64(0xb7)](0x0,-0x1):_0x51e33d;mkdirSync(_0x15bbf0,{'recursive':!![]});const _0x541f36=readFileSync(_0x4588c6,_0x172a64(0xb3)),_0x14a729=TemplateReplacer[_0x172a64(0xaa)](_0x541f36,_0x231e20,_0x5034ba,Object[_0x172a64(0xbe)](_0x5034ba)[0x0],_0x89b1f5,_0x37b43c),_0x53ecb3=await a7_0x43f918[_0x172a64(0xc0)](_0x14a729,{'parser':_0x172a64(0xc9)}),_0x1f45d=_0x15bbf0+'/'+_0x89b1f5+_0x172a64(0xc1);writeFileSync(_0x1f45d,_0x53ecb3,{'encoding':'utf8'});const _0x33c669=readFileSync(_0x35271a,_0x172a64(0xb3)),_0x4cf1cd=TemplateReplacer['replaceApiContent'](_0x33c669,_0x231e20,_0x5034ba,Object[_0x172a64(0xbe)](_0x5034ba)[0x0],_0x89b1f5,_0x37b43c,_0x31a464),_0x123608=await a7_0x43f918[_0x172a64(0xc0)](_0x4cf1cd,{'parser':_0x172a64(0xc9)}),_0x2cb15e=_0x15bbf0+'/'+_0x4431a7+_0x172a64(0xc1);writeFileSync(_0x2cb15e,_0x123608,{'encoding':'utf8'});const _0x3cea16=Object['keys'](_0x5034ba)[_0x172a64(0xa9)];return logger[_0x172a64(0xca)]('init-api',_0x172a64(0xc4),undefined,{'apiFile':_0x1f45d,'clientFile':_0x2cb15e,'modelCount':_0x3cea16,'configName':_0x37b43c}),{'modelCount':_0x3cea16,'apiFilePath':_0x1f45d,'clientFilePath':_0x2cb15e,'configName':_0x37b43c};}
1
+ const a7_0x13d324=a7_0x31c6;(function(_0x274ad2,_0x1b649b){const _0x2e5f65=a7_0x31c6,_0x20062f=_0x274ad2();while(!![]){try{const _0x5c2726=-parseInt(_0x2e5f65(0xc2))/0x1+parseInt(_0x2e5f65(0xb2))/0x2*(parseInt(_0x2e5f65(0xae))/0x3)+parseInt(_0x2e5f65(0xa9))/0x4*(-parseInt(_0x2e5f65(0xa8))/0x5)+parseInt(_0x2e5f65(0xc7))/0x6*(parseInt(_0x2e5f65(0xaf))/0x7)+-parseInt(_0x2e5f65(0xbb))/0x8*(parseInt(_0x2e5f65(0x9c))/0x9)+-parseInt(_0x2e5f65(0xa0))/0xa+parseInt(_0x2e5f65(0xa2))/0xb;if(_0x5c2726===_0x1b649b)break;else _0x20062f['push'](_0x20062f['shift']());}catch(_0xca9b9e){_0x20062f['push'](_0x20062f['shift']());}}}(a7_0x38fe,0xd7780));function a7_0x31c6(_0x542318,_0x136bdd){const _0x38fecc=a7_0x38fe();return a7_0x31c6=function(_0x31c6db,_0x42c83e){_0x31c6db=_0x31c6db-0x9a;let _0x4df552=_0x38fecc[_0x31c6db];return _0x4df552;},a7_0x31c6(_0x542318,_0x136bdd);}import a7_0x40c6d0 from'prettier';import{mkdirSync,writeFileSync,readFileSync}from'node:fs';import a7_0x6bca5d from'node:path';function a7_0x38fe(){const _0x2e8a26=['195688lIjagM','app','{\x20apiConfigName:\x20\x22','../..','utf8','datasetCode','key','1194171zVRmWT','-api','typescript',',\x20env:\x20\x22','keys','3083604UfunzG','请先通过\x20`lovrabet\x20config\x20set\x20app\x20<value>`\x20配置应用\x20Code','replaceApiContent','603UTKIfL','join','dirname','-client','9704160icfUxm','name','37422594csFrDB','./src/api/','CONFIG_NAMES.DEFAULT','url','forEach','api','1025CcBAjv','6128qiaDUD','{\x20apiConfigName:\x20','format','resolve','success','12978qyDqtc','21kQjEuy','client','string','26gtVTlW','\x22\x20}','length','online','slice','.ts','env','client.ts.tpl','templates/generate-api'];a7_0x38fe=function(){return _0x2e8a26;};return a7_0x38fe();}import{fileURLToPath}from'node:url';import{readConfig}from'../utils/config.js';import{TemplateReplacer}from'../utils/template-replacer.js';import{logger}from'../utils/logger.js';export async function generateApiFile(_0x4212a8,_0x3c1d47='',_0xd8f85f,_0x14f7c7=![],_0x1c11d1,_0x266f58=a7_0x13d324(0xa3)){const _0x325a64=a7_0x13d324,_0x103f2b=readConfig(),_0x322a80=_0xd8f85f||_0x103f2b?.[_0x325a64(0xbc)];if(typeof _0x322a80!=='string'||!_0x322a80)throw new Error(_0x325a64(0x9a));const _0x2db36d=_0x14f7c7?_0x325a64(0xa4):'\x22'+_0x322a80+'\x22',_0x186470=typeof _0x103f2b['env']===_0x325a64(0xb1)?_0x103f2b[_0x325a64(0xb8)]:undefined,_0x1c2690=_0x1c11d1||_0x186470||_0x325a64(0xb5),_0x2a9bd9=_0x1c2690!==_0x325a64(0xb5);let _0x53d8a1;if(_0x14f7c7)_0x2a9bd9?_0x53d8a1=_0x325a64(0xaa)+_0x2db36d+_0x325a64(0xc5)+_0x1c2690+_0x325a64(0xb3):_0x53d8a1='';else{const _0x4972cd=_0x2a9bd9?',\x20env:\x20\x22'+_0x1c2690+'\x22':'';_0x53d8a1=_0x325a64(0xbd)+_0x322a80+'\x22'+_0x4972cd+'\x20}';}const _0x5f3e86=_0x3c1d47?_0x3c1d47+_0x325a64(0xc3):_0x325a64(0xa7),_0x1cf260=_0x3c1d47?_0x3c1d47+_0x325a64(0x9f):_0x325a64(0xb0),_0x1baec6={};_0x4212a8[_0x325a64(0xa6)](_0x130763=>{const _0x3bc47f=_0x325a64;_0x1baec6[_0x130763[_0x3bc47f(0xc1)]]={'tableName':_0x130763['tableName'],'datasetCode':_0x130763[_0x3bc47f(0xc0)],'name':_0x130763[_0x3bc47f(0xa1)]||''};});const _0x1e74d5=fileURLToPath(import.meta[_0x325a64(0xa5)]),_0x5eb7d4=a7_0x6bca5d[_0x325a64(0xac)](a7_0x6bca5d[_0x325a64(0x9e)](_0x1e74d5),_0x325a64(0xbe)),_0x3ac53d=a7_0x6bca5d['join'](_0x5eb7d4,_0x325a64(0xba)),_0x4c3284=a7_0x6bca5d['join'](_0x3ac53d,'api.ts.tpl'),_0x39ace5=a7_0x6bca5d[_0x325a64(0x9d)](_0x3ac53d,_0x325a64(0xb9)),_0x2b7f23=_0x266f58['endsWith']('/')?_0x266f58[_0x325a64(0xb6)](0x0,-0x1):_0x266f58;mkdirSync(_0x2b7f23,{'recursive':!![]});const _0x156c75=readFileSync(_0x4c3284,_0x325a64(0xbf)),_0x32b01c=TemplateReplacer[_0x325a64(0x9b)](_0x156c75,_0x322a80,_0x1baec6,Object[_0x325a64(0xc6)](_0x1baec6)[0x0],_0x5f3e86,_0x2db36d),_0x3ced2f=await a7_0x40c6d0[_0x325a64(0xab)](_0x32b01c,{'parser':_0x325a64(0xc4)}),_0xd7534=_0x2b7f23+'/'+_0x5f3e86+'.ts';writeFileSync(_0xd7534,_0x3ced2f,{'encoding':_0x325a64(0xbf)});const _0x12ae2b=readFileSync(_0x39ace5,'utf8'),_0x2945af=TemplateReplacer[_0x325a64(0x9b)](_0x12ae2b,_0x322a80,_0x1baec6,Object['keys'](_0x1baec6)[0x0],_0x5f3e86,_0x2db36d,_0x53d8a1),_0x2a1dcb=await a7_0x40c6d0['format'](_0x2945af,{'parser':_0x325a64(0xc4)}),_0x3227bd=_0x2b7f23+'/'+_0x1cf260+_0x325a64(0xb7);writeFileSync(_0x3227bd,_0x2a1dcb,{'encoding':_0x325a64(0xbf)});const _0x5926e3=Object[_0x325a64(0xc6)](_0x1baec6)[_0x325a64(0xb4)];return logger[_0x325a64(0xad)]('init-api','API\x20文件生成成功!',undefined,{'apiFile':_0xd7534,'clientFile':_0x3227bd,'modelCount':_0x5926e3,'configName':_0x2db36d}),{'modelCount':_0x5926e3,'apiFilePath':_0xd7534,'clientFilePath':_0x3227bd,'configName':_0x2db36d};}
package/lib/api/main.js CHANGED
@@ -1 +1 @@
1
- (function(_0x8f4c99,_0x31b0c7){const _0x2ea20e=a8_0x2091,_0x332e61=_0x8f4c99();while(!![]){try{const _0x241337=-parseInt(_0x2ea20e(0x196))/0x1*(-parseInt(_0x2ea20e(0x1b9))/0x2)+parseInt(_0x2ea20e(0x1c6))/0x3+-parseInt(_0x2ea20e(0x1c0))/0x4*(-parseInt(_0x2ea20e(0x1c7))/0x5)+-parseInt(_0x2ea20e(0x1b1))/0x6*(parseInt(_0x2ea20e(0x1c1))/0x7)+-parseInt(_0x2ea20e(0x1a4))/0x8*(parseInt(_0x2ea20e(0x1b0))/0x9)+-parseInt(_0x2ea20e(0x1c2))/0xa+-parseInt(_0x2ea20e(0x1bb))/0xb;if(_0x241337===_0x31b0c7)break;else _0x332e61['push'](_0x332e61['shift']());}catch(_0x460e7e){_0x332e61['push'](_0x332e61['shift']());}}}(a8_0x4352,0xd9c82));import{jsx as a8_0x5edc5b}from'react/jsx-runtime';function a8_0x2091(_0x384c26,_0x43882b){const _0x435227=a8_0x4352();return a8_0x2091=function(_0x209187,_0x11ca4d){_0x209187=_0x209187-0x195;let _0x86b41c=_0x435227[_0x209187];return _0x86b41c;},a8_0x2091(_0x384c26,_0x43882b);}import{render}from'ink';import{ApiPullUI}from'./api-pull-ui.js';import{ApiDocUI}from'./api-doc-ui.js';import{getConfigAppCode}from'../utils/config.js';export async function apiCli(_0x727de4){const _0x454fe1=a8_0x2091,_0xef0897=_0x727de4[_0x454fe1(0x1b5)][0x1];if(_0x727de4[_0x454fe1(0x1b4)]['help']){console[_0x454fe1(0x1b3)]('\x0alovrabet\x20api\x20-\x20API\x20相关操作\x0a\x0a用法:\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20[options]\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20[options]\x0a\x0a选项:\x0a\x20\x20--appcode\x20<code>\x20\x20\x20\x20\x20\x20指定应用代码\x0a\x20\x20--output\x20<dir>\x20\x20\x20\x20\x20\x20\x20\x20指定输出目录(pull:\x20./src/api/,doc:\x20./docs)\x0a\x20\x20--env\x20<env>\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20指定环境(如:daily、online)\x0a\x20\x20--datasetcode\x20<codes>\x20指定要生成文档的数据集代码(多个用逗号分隔,仅\x20doc\x20命令)\x0a\x20\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20显示此帮助信息\x0a\x0a示例:\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20拉取并生成\x20API\x20配置文件\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20--appcode\x20myapp\x20\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20--output\x20./api\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定输出目录\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20--env\x20daily\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定环境拉取\x20API\x0a\x0a\x20\x20$\x20lovrabet\x20api\x20doc\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生成所有数据集的文档\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--appcode\x20myapp\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--output\x20./docs\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定文档输出目录\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--env\x20daily\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$\x20lovrabet\x20api\x20doc\x20--datasetcode\x20ds_001\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20只生成指定数据集的文档\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--datasetcode\x20ds_001,ds_002\x20\x20\x20\x20\x20\x20//\x20生成多个数据集的文档\x0a');return;}if(_0xef0897===_0x454fe1(0x1a9)){_0x727de4[_0x454fe1(0x1b5)][0x2]&&(console[_0x454fe1(0x1af)](_0x454fe1(0x1ba)),console[_0x454fe1(0x1b3)](_0x454fe1(0x1ae)),console[_0x454fe1(0x1b3)](_0x454fe1(0x1ac)+_0x727de4[_0x454fe1(0x1b5)][0x2]),process[_0x454fe1(0x1b2)](0x1));const _0x4775e9=getConfigAppCode();let _0x5b0697=_0x727de4[_0x454fe1(0x1b4)][_0x454fe1(0x19d)];const _0x35d5d0=typeof _0x727de4['flags'][_0x454fe1(0x1bd)]===_0x454fe1(0x1a6)?_0x727de4['flags']['env']:undefined,_0x338131=_0x727de4['flags'][_0x454fe1(0x1a8)];!_0x5b0697&&!_0x4775e9&&(console[_0x454fe1(0x1af)](_0x454fe1(0x1bc)),console[_0x454fe1(0x1b3)]('!\x20请使用以下方式之一:'),console[_0x454fe1(0x1b3)]('\x20\x20\x201.\x20配置默认值:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>'),console['log'](_0x454fe1(0x1ab)),process[_0x454fe1(0x1b2)](0x1)),_0x5b0697&&_0x4775e9&&_0x5b0697===_0x4775e9&&(console[_0x454fe1(0x1b3)](_0x454fe1(0x1b6)+_0x5b0697+_0x454fe1(0x1b7)),console[_0x454fe1(0x1b3)]('\x1b[90m\x20\x20(注:\x20--appcode\x20参数与配置一致,将使用默认配置)\x1b[0m'),_0x5b0697=undefined),render(a8_0x5edc5b(ApiPullUI,{'appCode':_0x5b0697,'env':_0x35d5d0,'output':_0x338131}));}else{if(_0xef0897===_0x454fe1(0x19c)){_0x727de4[_0x454fe1(0x1b5)][0x2]&&(console[_0x454fe1(0x1af)](_0x454fe1(0x1ba)),console[_0x454fe1(0x1b3)]('请使用\x20--appcode\x20参数,例如:'),console[_0x454fe1(0x1b3)](_0x454fe1(0x1aa)+_0x727de4[_0x454fe1(0x1b5)][0x2]),process[_0x454fe1(0x1b2)](0x1));const _0x50a9c8=getConfigAppCode();let _0x9169a0=_0x727de4[_0x454fe1(0x1b4)][_0x454fe1(0x19d)];const _0x4f2bd6=typeof _0x727de4[_0x454fe1(0x1b4)][_0x454fe1(0x1bd)]===_0x454fe1(0x1a6)?_0x727de4[_0x454fe1(0x1b4)]['env']:undefined,_0x15e229=_0x727de4['flags'][_0x454fe1(0x1a8)],_0x4e7705=_0x727de4[_0x454fe1(0x1b4)][_0x454fe1(0x1a1)],_0x4dcb43=_0x727de4[_0x454fe1(0x1b4)][_0x454fe1(0x19a)];!_0x9169a0&&!_0x50a9c8&&(console[_0x454fe1(0x1af)](_0x454fe1(0x1bc)),console[_0x454fe1(0x1b3)]('!\x20请使用以下方式之一:'),console[_0x454fe1(0x1b3)](_0x454fe1(0x1a0)),console[_0x454fe1(0x1b3)]('\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20doc\x20--appcode\x20<app-code>'),process[_0x454fe1(0x1b2)](0x1));_0x9169a0&&_0x50a9c8&&_0x9169a0===_0x50a9c8&&(console[_0x454fe1(0x1b3)](_0x454fe1(0x1b6)+_0x9169a0+_0x454fe1(0x1b7)),_0x9169a0=undefined);let _0x309155;if(_0x4e7705)try{_0x309155=JSON[_0x454fe1(0x1be)](_0x4e7705),(typeof _0x309155!==_0x454fe1(0x1c4)||_0x309155===null||Array['isArray'](_0x309155))&&(console[_0x454fe1(0x1af)]('×\x20--params\x20参数必须是一个有效的\x20JSON\x20对象'),process[_0x454fe1(0x1b2)](0x1));}catch(_0x15e7d9){console[_0x454fe1(0x1af)](_0x454fe1(0x197)),console[_0x454fe1(0x1af)]('\x20\x20错误:\x20'+(_0x15e7d9 instanceof Error?_0x15e7d9[_0x454fe1(0x199)]:String(_0x15e7d9))),process[_0x454fe1(0x1b2)](0x1);}let _0x2b1897;_0x4dcb43&&(_0x2b1897=_0x4dcb43[_0x454fe1(0x1a3)](',')[_0x454fe1(0x198)](_0x31f6bb=>_0x31f6bb['trim']())['filter'](_0x323171=>_0x323171[_0x454fe1(0x19f)]>0x0),_0x2b1897[_0x454fe1(0x19f)]===0x0&&(console[_0x454fe1(0x1af)](_0x454fe1(0x1a5)),process[_0x454fe1(0x1b2)](0x1)),console[_0x454fe1(0x1b3)](_0x454fe1(0x19e)+_0x2b1897[_0x454fe1(0x1ad)](',\x20')+_0x454fe1(0x1b7))),render(a8_0x5edc5b(ApiDocUI,{'appCode':_0x9169a0,'env':_0x4f2bd6,'output':_0x15e229,'extraParams':_0x309155,'datasetCodes':_0x2b1897}));}else console[_0x454fe1(0x1af)](_0x454fe1(0x1c3)+_0xef0897),console[_0x454fe1(0x1b3)](_0x454fe1(0x1b8)),console['log'](_0x454fe1(0x19b)),console[_0x454fe1(0x1b3)](_0x454fe1(0x195)),console[_0x454fe1(0x1b3)]('\x20\x20lovrabet\x20api\x20pull\x20--output\x20<dir>\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定输出目录(默认:\x20./src/api/)'),console[_0x454fe1(0x1b3)](_0x454fe1(0x1bf)),console[_0x454fe1(0x1b3)](''),console[_0x454fe1(0x1b3)]('\x20\x20lovrabet\x20api\x20doc\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生成\x20API\x20文档'),console['log'](_0x454fe1(0x1c5)),console['log'](_0x454fe1(0x1a7)),console[_0x454fe1(0x1b3)](_0x454fe1(0x1a2)),process[_0x454fe1(0x1b2)](0x1);}}function a8_0x4352(){const _0x46cebc=['pull','\x20\x20lovrabet\x20api\x20doc\x20--appcode\x20','\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20pull\x20--appcode\x20<app-code>','\x20\x20lovrabet\x20api\x20pull\x20--appcode\x20','join','请使用\x20--appcode\x20参数,例如:','error','1154124VDSDnb','12sikqiX','exit','log','flags','input','\x1b[90m*\x20使用配置的应用AppCode:\x20','\x1b[0m','Available\x20commands:','4kNXoGm','❌\x20错误:不再支持位置参数方式','17654274iTKhud','×\x20未配置\x20AppCode','env','parse','\x20\x20lovrabet\x20api\x20pull\x20--env\x20<env>\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定环境(如:\x20daily,\x20online)','8opDqDr','2681ynLqsG','9222580nWtchi','Unknown\x20api\x20command:\x20','object','\x20\x20lovrabet\x20api\x20doc\x20--appcode\x20<code>\x20\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode','5075760CzKJxp','2511935gZloRD','\x20\x20lovrabet\x20api\x20pull\x20--appcode\x20<code>\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode','554003nfRlfS','×\x20--params\x20参数不是有效的\x20JSON\x20格式','map','message','datasetcode','\x20\x20lovrabet\x20api\x20pull\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20拉取并生成\x20API\x20配置文件','doc','appcode','\x1b[90m*\x20仅生成指定数据集的文档:\x20','length','\x20\x20\x201.\x20配置默认值:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>','params','\x20\x20lovrabet\x20api\x20doc\x20--env\x20<env>\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定环境(如:\x20daily,\x20online)','split','24Zazzyx','×\x20--datasetcode\x20参数不能为空','string','\x20\x20lovrabet\x20api\x20doc\x20--output\x20<dir>\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定文档输出目录(默认:\x20./docs)','output'];a8_0x4352=function(){return _0x46cebc;};return a8_0x4352();}
1
+ (function(_0x4ec264,_0x589fa3){const _0x38f173=a8_0x92b0,_0x195b37=_0x4ec264();while(!![]){try{const _0x561000=parseInt(_0x38f173(0xf5))/0x1*(parseInt(_0x38f173(0xe9))/0x2)+parseInt(_0x38f173(0x10a))/0x3*(-parseInt(_0x38f173(0xf2))/0x4)+parseInt(_0x38f173(0x10b))/0x5*(-parseInt(_0x38f173(0xe3))/0x6)+-parseInt(_0x38f173(0x113))/0x7+-parseInt(_0x38f173(0x10d))/0x8*(-parseInt(_0x38f173(0xf9))/0x9)+parseInt(_0x38f173(0xf4))/0xa*(-parseInt(_0x38f173(0x10c))/0xb)+-parseInt(_0x38f173(0x106))/0xc*(-parseInt(_0x38f173(0x115))/0xd);if(_0x561000===_0x589fa3)break;else _0x195b37['push'](_0x195b37['shift']());}catch(_0x56d27e){_0x195b37['push'](_0x195b37['shift']());}}}(a8_0x112f,0x82d2e));import{jsx as a8_0x447a46}from'react/jsx-runtime';function a8_0x92b0(_0x48ff4a,_0x44a008){const _0x112fa9=a8_0x112f();return a8_0x92b0=function(_0x92b0e0,_0x3ac0eb){_0x92b0e0=_0x92b0e0-0xe3;let _0x5e71ab=_0x112fa9[_0x92b0e0];return _0x5e71ab;},a8_0x92b0(_0x48ff4a,_0x44a008);}import{render}from'ink';import{ApiPullUI}from'./api-pull-ui.js';import{ApiDocUI}from'./api-doc-ui.js';function a8_0x112f(){const _0x21a365=['join','string','\x20\x20lovrabet\x20api\x20pull\x20--appcode\x20','!\x20请使用以下方式之一:','Unknown\x20api\x20command:\x20','×\x20未配置\x20AppCode','help','×\x20--params\x20参数必须是一个有效的\x20JSON\x20对象','131556TxVLYE','\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20pull\x20--appcode\x20<app-code>','5049380ZEPpOn','56063vVBMov','log','split','Available\x20commands:','9QcuVSd','exit','trim','❌\x20错误:不再支持位置参数方式','请使用\x20--appcode\x20参数,例如:','\x1b[90m*\x20使用配置的应用AppCode:\x20','\x20\x20lovrabet\x20api\x20doc\x20--env\x20<env>\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定环境(如:\x20daily,\x20online)','\x20\x20lovrabet\x20api\x20doc\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生成\x20API\x20文档','length','env','flags','appcode','params','216iIhUiX','filter','\x20\x20lovrabet\x20api\x20pull\x20--env\x20<env>\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定环境(如:\x20daily,\x20online)','input','87xUcqSl','476810USVwnR','11ZEJCJG','1192264LMzvvF','\x20\x20\x201.\x20配置默认值:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>','\x20\x20lovrabet\x20api\x20pull\x20--output\x20<dir>\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定输出目录(默认:\x20./src/api/)','\x20\x20lovrabet\x20api\x20pull\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20拉取并生成\x20API\x20配置文件','datasetcode','error','71603zBcVdc','\x20\x20lovrabet\x20api\x20doc\x20--output\x20<dir>\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定文档输出目录(默认:\x20./docs)','1713023tacpFk','36RSnGzI','×\x20--params\x20参数不是有效的\x20JSON\x20格式','\x1b[0m','isArray','\x20\x20lovrabet\x20api\x20pull\x20--appcode\x20<code>\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode','\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20doc\x20--appcode\x20<app-code>','2YUoBOA'];a8_0x112f=function(){return _0x21a365;};return a8_0x112f();}import{getConfigAppCode}from'../utils/config.js';export async function apiCli(_0xd28b47){const _0x1c1971=a8_0x92b0,_0x887189=_0xd28b47['input'][0x1];if(_0xd28b47['flags'][_0x1c1971(0xf0)]){console[_0x1c1971(0xf6)]('\x0alovrabet\x20api\x20-\x20API\x20相关操作\x0a\x0a用法:\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20[options]\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20[options]\x0a\x0a选项:\x0a\x20\x20--appcode\x20<code>\x20\x20\x20\x20\x20\x20指定应用代码\x0a\x20\x20--output\x20<dir>\x20\x20\x20\x20\x20\x20\x20\x20指定输出目录(pull:\x20./src/api/,doc:\x20./docs)\x0a\x20\x20--env\x20<env>\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20指定环境(如:daily、online)\x0a\x20\x20--datasetcode\x20<codes>\x20指定要生成文档的数据集代码(多个用逗号分隔,仅\x20doc\x20命令)\x0a\x20\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20显示此帮助信息\x0a\x0a示例:\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20拉取并生成\x20API\x20配置文件\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20--appcode\x20myapp\x20\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20--output\x20./api\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定输出目录\x0a\x20\x20$\x20lovrabet\x20api\x20pull\x20--env\x20daily\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定环境拉取\x20API\x0a\x0a\x20\x20$\x20lovrabet\x20api\x20doc\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生成所有数据集的文档\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--appcode\x20myapp\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--output\x20./docs\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20指定文档输出目录\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--env\x20daily\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$\x20lovrabet\x20api\x20doc\x20--datasetcode\x20ds_001\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20只生成指定数据集的文档\x0a\x20\x20$\x20lovrabet\x20api\x20doc\x20--datasetcode\x20ds_001,ds_002\x20\x20\x20\x20\x20\x20//\x20生成多个数据集的文档\x0a');return;}if(_0x887189==='pull'){_0xd28b47[_0x1c1971(0x109)][0x2]&&(console['error']('❌\x20错误:不再支持位置参数方式'),console[_0x1c1971(0xf6)](_0x1c1971(0xfd)),console[_0x1c1971(0xf6)](_0x1c1971(0xec)+_0xd28b47['input'][0x2]),process['exit'](0x1));const _0x49eae4=getConfigAppCode();let _0x365046=_0xd28b47['flags'][_0x1c1971(0x104)];const _0x532e3a=typeof _0xd28b47[_0x1c1971(0x103)][_0x1c1971(0x102)]==='string'?_0xd28b47[_0x1c1971(0x103)][_0x1c1971(0x102)]:undefined,_0x492e51=_0xd28b47[_0x1c1971(0x103)]['output'];!_0x365046&&!_0x49eae4&&(console[_0x1c1971(0x112)](_0x1c1971(0xef)),console[_0x1c1971(0xf6)](_0x1c1971(0xed)),console['log'](_0x1c1971(0x10e)),console['log'](_0x1c1971(0xf3)),process[_0x1c1971(0xfa)](0x1)),_0x365046&&_0x49eae4&&_0x365046===_0x49eae4&&(console[_0x1c1971(0xf6)]('\x1b[90m*\x20使用配置的应用AppCode:\x20'+_0x365046+'\x1b[0m'),console['log']('\x1b[90m\x20\x20(注:\x20--appcode\x20参数与配置一致,将使用默认配置)\x1b[0m'),_0x365046=undefined),render(a8_0x447a46(ApiPullUI,{'appCode':_0x365046,'env':_0x532e3a,'output':_0x492e51}));}else{if(_0x887189==='doc'){_0xd28b47['input'][0x2]&&(console[_0x1c1971(0x112)](_0x1c1971(0xfc)),console[_0x1c1971(0xf6)](_0x1c1971(0xfd)),console['log']('\x20\x20lovrabet\x20api\x20doc\x20--appcode\x20'+_0xd28b47[_0x1c1971(0x109)][0x2]),process[_0x1c1971(0xfa)](0x1));const _0x28c3ba=getConfigAppCode();let _0x50307e=_0xd28b47['flags'][_0x1c1971(0x104)];const _0x25859c=typeof _0xd28b47[_0x1c1971(0x103)][_0x1c1971(0x102)]===_0x1c1971(0xeb)?_0xd28b47[_0x1c1971(0x103)][_0x1c1971(0x102)]:undefined,_0x15baf9=_0xd28b47[_0x1c1971(0x103)]['output'],_0x331de6=_0xd28b47[_0x1c1971(0x103)][_0x1c1971(0x105)],_0x5d9dd5=_0xd28b47['flags'][_0x1c1971(0x111)];!_0x50307e&&!_0x28c3ba&&(console[_0x1c1971(0x112)]('×\x20未配置\x20AppCode'),console[_0x1c1971(0xf6)](_0x1c1971(0xed)),console['log']('\x20\x20\x201.\x20配置默认值:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>'),console[_0x1c1971(0xf6)](_0x1c1971(0xe8)),process[_0x1c1971(0xfa)](0x1));_0x50307e&&_0x28c3ba&&_0x50307e===_0x28c3ba&&(console[_0x1c1971(0xf6)](_0x1c1971(0xfe)+_0x50307e+_0x1c1971(0xe5)),_0x50307e=undefined);let _0x188309;if(_0x331de6)try{_0x188309=JSON['parse'](_0x331de6),(typeof _0x188309!=='object'||_0x188309===null||Array[_0x1c1971(0xe6)](_0x188309))&&(console['error'](_0x1c1971(0xf1)),process['exit'](0x1));}catch(_0x29f661){console[_0x1c1971(0x112)](_0x1c1971(0xe4)),console[_0x1c1971(0x112)]('\x20\x20错误:\x20'+(_0x29f661 instanceof Error?_0x29f661['message']:String(_0x29f661))),process[_0x1c1971(0xfa)](0x1);}let _0x53020f;_0x5d9dd5&&(_0x53020f=_0x5d9dd5[_0x1c1971(0xf7)](',')['map'](_0x23b024=>_0x23b024[_0x1c1971(0xfb)]())[_0x1c1971(0x107)](_0x1c7abc=>_0x1c7abc[_0x1c1971(0x101)]>0x0),_0x53020f['length']===0x0&&(console[_0x1c1971(0x112)]('×\x20--datasetcode\x20参数不能为空'),process['exit'](0x1)),console['log']('\x1b[90m*\x20仅生成指定数据集的文档:\x20'+_0x53020f[_0x1c1971(0xea)](',\x20')+_0x1c1971(0xe5))),render(a8_0x447a46(ApiDocUI,{'appCode':_0x50307e,'env':_0x25859c,'output':_0x15baf9,'extraParams':_0x188309,'datasetCodes':_0x53020f}));}else console[_0x1c1971(0x112)](_0x1c1971(0xee)+_0x887189),console[_0x1c1971(0xf6)](_0x1c1971(0xf8)),console[_0x1c1971(0xf6)](_0x1c1971(0x110)),console[_0x1c1971(0xf6)](_0x1c1971(0xe7)),console[_0x1c1971(0xf6)](_0x1c1971(0x10f)),console[_0x1c1971(0xf6)](_0x1c1971(0x108)),console[_0x1c1971(0xf6)](''),console[_0x1c1971(0xf6)](_0x1c1971(0x100)),console['log']('\x20\x20lovrabet\x20api\x20doc\x20--appcode\x20<code>\x20\x20\x20\x20\x20\x20\x20//\x20使用指定的\x20appcode'),console['log'](_0x1c1971(0x114)),console[_0x1c1971(0xf6)](_0x1c1971(0xff)),process['exit'](0x1);}}
@@ -1 +1 @@
1
- (function(_0x3135e1,_0x5637cc){const _0x2fa643=a9_0x6979,_0xf41723=_0x3135e1();while(!![]){try{const _0xc495b8=parseInt(_0x2fa643(0x162))/0x1+parseInt(_0x2fa643(0x16e))/0x2+-parseInt(_0x2fa643(0x16b))/0x3*(parseInt(_0x2fa643(0x159))/0x4)+-parseInt(_0x2fa643(0x15d))/0x5+parseInt(_0x2fa643(0x178))/0x6*(parseInt(_0x2fa643(0x166))/0x7)+-parseInt(_0x2fa643(0x170))/0x8+parseInt(_0x2fa643(0x168))/0x9;if(_0xc495b8===_0x5637cc)break;else _0xf41723['push'](_0xf41723['shift']());}catch(_0xb434cf){_0xf41723['push'](_0xf41723['shift']());}}}(a9_0x3e7d,0xabfcc));import{readConfig}from'../utils/config.js';import{initEnv}from'../constant/env.js';function a9_0x6979(_0x33b130,_0x7e00f0){const _0x3e7dc8=a9_0x3e7d();return a9_0x6979=function(_0x6979ec,_0x514539){_0x6979ec=_0x6979ec-0x158;let _0x39e7fd=_0x3e7dc8[_0x6979ec];return _0x39e7fd;},a9_0x6979(_0x33b130,_0x7e00f0);}function a9_0x3e7d(){const _0x4a6f65=['API\x20配置拉取成功:\x20','chdir','log','API\x20配置拉取异常:\x20','\x20个数据集,生成\x20','163020mmMNLk','error','9964eTDQlt','√\x20成功拉取\x20','info','-api','1845175MmlecS','client','.ts\x20-\x20客户端实例文件','\x20个数据集...','create-api-pull','896687rFZLeI','cwd','*\x20正在处理\x20','\x20个模型','105COCJkF','length','7676523wfkCvb','*\x20正在从服务器拉取\x20API\x20配置...\x20(环境:\x20','message','1329Zbvbyc','env','-client','1979704PqnLUS','*\x20开始生成\x20API\x20配置文件:','7760224qbVKbS','.ts\x20-\x20模型配置文件','\x20\x20\x20•\x20'];a9_0x3e7d=function(){return _0x4a6f65;};return a9_0x3e7d();}import{generateApiFile}from'./generate-api-file.js';import{logger}from'../utils/logger.js';import{fetchModelList}from'./fetch-model-list.js';export async function pullApiSilent(_0x3b0b8d,_0x497a2e,_0x149afa,_0x220c2d){const _0x260b73=a9_0x6979;let _0x1b0fbf;try{const _0x53c09a=_0x497a2e?.['trim']()||'';if(_0x53c09a){const _0x30df2a=/^[a-zA-Z][a-zA-Z0-9_-]*$/;if(!_0x30df2a['test'](_0x53c09a))return console[_0x260b73(0x158)]('×\x20文件前缀格式不正确。只能包含字母、数字、连字符和下划线,且必须以字母开头。'),![];}_0x149afa&&(_0x1b0fbf=process[_0x260b73(0x163)](),process[_0x260b73(0x174)](_0x149afa));const _0x2adc7d=readConfig(),_0x95dfae=typeof _0x2adc7d[_0x260b73(0x16c)]==='string'?_0x2adc7d[_0x260b73(0x16c)]:undefined,_0x2b072c=_0x220c2d||_0x95dfae||'online';initEnv(_0x2b072c),console[_0x260b73(0x175)](_0x260b73(0x169)+_0x2b072c+')');const {configArray:_0x173b89}=await fetchModelList(_0x3b0b8d),_0x546c21=_0x53c09a?_0x53c09a+_0x260b73(0x15c):'api',_0x188773=_0x53c09a?_0x53c09a+_0x260b73(0x16d):_0x260b73(0x15e);console[_0x260b73(0x175)](_0x260b73(0x16f)),console[_0x260b73(0x175)](_0x260b73(0x172)+_0x546c21+_0x260b73(0x171)),console[_0x260b73(0x175)](_0x260b73(0x172)+_0x188773+_0x260b73(0x15f)),console[_0x260b73(0x175)](_0x260b73(0x164)+_0x173b89[_0x260b73(0x167)]+_0x260b73(0x160));const _0x5a6889=await generateApiFile(_0x173b89,_0x53c09a,_0x3b0b8d,!![],_0x2b072c);return console[_0x260b73(0x175)](_0x260b73(0x15a)+_0x173b89[_0x260b73(0x167)]+_0x260b73(0x177)+_0x5a6889['modelCount']+_0x260b73(0x165)),_0x149afa&&logger[_0x260b73(0x15b)](_0x260b73(0x161),_0x260b73(0x173)+_0x3b0b8d,{'projectPath':_0x149afa,'appCode':_0x3b0b8d,'datasetCount':_0x173b89['length'],'filePrefix':_0x53c09a}),!![];}catch(_0x51314e){const _0x531327=_0x51314e instanceof Error?_0x51314e[_0x260b73(0x16a)]:String(_0x51314e);return console[_0x260b73(0x158)]('×\x20API\x20配置拉取异常:',_0x531327),_0x149afa&&logger['error']('create-api-pull',_0x260b73(0x176)+_0x531327,{'appCode':_0x3b0b8d,'projectPath':_0x149afa}),![];}finally{_0x1b0fbf&&process['chdir'](_0x1b0fbf);}}
1
+ (function(_0x1a6377,_0x21b25c){const _0x12a8b8=a9_0x2d20,_0x32968c=_0x1a6377();while(!![]){try{const _0x475232=-parseInt(_0x12a8b8(0x171))/0x1*(-parseInt(_0x12a8b8(0x172))/0x2)+parseInt(_0x12a8b8(0x166))/0x3+-parseInt(_0x12a8b8(0x164))/0x4+parseInt(_0x12a8b8(0x159))/0x5+parseInt(_0x12a8b8(0x16a))/0x6*(parseInt(_0x12a8b8(0x16e))/0x7)+parseInt(_0x12a8b8(0x165))/0x8*(parseInt(_0x12a8b8(0x168))/0x9)+-parseInt(_0x12a8b8(0x170))/0xa*(parseInt(_0x12a8b8(0x16b))/0xb);if(_0x475232===_0x21b25c)break;else _0x32968c['push'](_0x32968c['shift']());}catch(_0x5af4d0){_0x32968c['push'](_0x32968c['shift']());}}}(a9_0xa2ea,0x29aca));import{readConfig}from'../utils/config.js';import{initEnv}from'../constant/env.js';function a9_0x2d20(_0x44b2e5,_0x47437c){const _0xa2ea93=a9_0xa2ea();return a9_0x2d20=function(_0x2d2018,_0x3c3fab){_0x2d2018=_0x2d2018-0x153;let _0x47520d=_0xa2ea93[_0x2d2018];return _0x47520d;},a9_0x2d20(_0x44b2e5,_0x47437c);}import{generateApiFile}from'./generate-api-file.js';import{logger}from'../utils/logger.js';import{fetchModelList}from'./fetch-model-list.js';export async function pullApiSilent(_0x4fe8f8,_0x4dbfb4,_0x550159,_0x3c2d4e){const _0x400036=a9_0x2d20;let _0x2c616c;try{const _0x37c408=_0x4dbfb4?.[_0x400036(0x16d)]()||'';if(_0x37c408){const _0x356209=/^[a-zA-Z][a-zA-Z0-9_-]*$/;if(!_0x356209[_0x400036(0x174)](_0x37c408))return console[_0x400036(0x161)](_0x400036(0x15a)),![];}_0x550159&&(_0x2c616c=process['cwd'](),process[_0x400036(0x162)](_0x550159));const _0x5996d6=readConfig(),_0x583c5=typeof _0x5996d6['env']==='string'?_0x5996d6[_0x400036(0x158)]:undefined,_0x109693=_0x3c2d4e||_0x583c5||_0x400036(0x15b);initEnv(_0x109693),console['log']('*\x20正在从服务器拉取\x20API\x20配置...\x20(环境:\x20'+_0x109693+')');const {configArray:_0x17f211}=await fetchModelList(_0x4fe8f8),_0x15dadb=_0x37c408?_0x37c408+_0x400036(0x173):_0x400036(0x154),_0x5750b3=_0x37c408?_0x37c408+_0x400036(0x156):_0x400036(0x15c);console[_0x400036(0x15f)](_0x400036(0x15d)),console[_0x400036(0x15f)]('\x20\x20\x20•\x20'+_0x15dadb+'.ts\x20-\x20模型配置文件'),console[_0x400036(0x15f)](_0x400036(0x167)+_0x5750b3+_0x400036(0x160)),console['log'](_0x400036(0x169)+_0x17f211['length']+'\x20个数据集...');const _0x46fe20=await generateApiFile(_0x17f211,_0x37c408,_0x4fe8f8,!![],_0x109693);return console['log']('√\x20成功拉取\x20'+_0x17f211[_0x400036(0x16c)]+_0x400036(0x153)+_0x46fe20['modelCount']+'\x20个模型'),_0x550159&&logger['info'](_0x400036(0x155),_0x400036(0x16f)+_0x4fe8f8,{'projectPath':_0x550159,'appCode':_0x4fe8f8,'datasetCount':_0x17f211[_0x400036(0x16c)],'filePrefix':_0x37c408}),!![];}catch(_0x3d3127){const _0x4bea6a=_0x3d3127 instanceof Error?_0x3d3127[_0x400036(0x15e)]:String(_0x3d3127);return console[_0x400036(0x161)](_0x400036(0x157),_0x4bea6a),_0x550159&&logger['error'](_0x400036(0x155),_0x400036(0x163)+_0x4bea6a,{'appCode':_0x4fe8f8,'projectPath':_0x550159}),![];}finally{_0x2c616c&&process[_0x400036(0x162)](_0x2c616c);}}function a9_0xa2ea(){const _0x1d5dfe=['log','.ts\x20-\x20客户端实例文件','error','chdir','API\x20配置拉取异常:\x20','1202648eGDhUv','278976zzrUjX','46260erfjWA','\x20\x20\x20•\x20','81dccXMu','*\x20正在处理\x20','29448AcaWVt','183821ZesJNC','length','trim','189LfyQEF','API\x20配置拉取成功:\x20','210QuYSas','3391SUBhNU','168koGwfo','-api','test','\x20个数据集,生成\x20','api','create-api-pull','-client','×\x20API\x20配置拉取异常:','env','378315EKuWXg','×\x20文件前缀格式不正确。只能包含字母、数字、连字符和下划线,且必须以字母开头。','online','client','*\x20开始生成\x20API\x20配置文件:','message'];a9_0xa2ea=function(){return _0x1d5dfe;};return a9_0xa2ea();}
@@ -1 +1 @@
1
- function a10_0xcc48(_0x51fbbf,_0xe025a0){const _0x455836=a10_0x4558();return a10_0xcc48=function(_0xcc48f4,_0x5d7d43){_0xcc48f4=_0xcc48f4-0x186;let _0xb7d811=_0x455836[_0xcc48f4];return _0xb7d811;},a10_0xcc48(_0x51fbbf,_0xe025a0);}(function(_0x31e04d,_0x3499c0){const _0x13f9c1=a10_0xcc48,_0x453d0b=_0x31e04d();while(!![]){try{const _0x4e40fd=-parseInt(_0x13f9c1(0x1be))/0x1*(-parseInt(_0x13f9c1(0x1c7))/0x2)+parseInt(_0x13f9c1(0x1ca))/0x3*(parseInt(_0x13f9c1(0x1b7))/0x4)+parseInt(_0x13f9c1(0x1c1))/0x5+-parseInt(_0x13f9c1(0x1a2))/0x6*(-parseInt(_0x13f9c1(0x191))/0x7)+parseInt(_0x13f9c1(0x1c9))/0x8+parseInt(_0x13f9c1(0x1c5))/0x9+-parseInt(_0x13f9c1(0x190))/0xa*(parseInt(_0x13f9c1(0x1b3))/0xb);if(_0x4e40fd===_0x3499c0)break;else _0x453d0b['push'](_0x453d0b['shift']());}catch(_0x379a97){_0x453d0b['push'](_0x453d0b['shift']());}}}(a10_0x4558,0xc50df));import{jsx as a10_0x512322,jsxs as a10_0x5966d1,Fragment as a10_0x243571}from'react/jsx-runtime';import{Text,Box,useInput,useApp,render}from'ink';import{useEffect,useState}from'react';import a10_0x45eab2 from'ink-spinner';import{useGetOnlineMenuList}from'./get-online-menu-list.js';import{getLocalPages}from'./get-local-pages.js';import{createMenus}from'./create-menu.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'./valid-url.js';import.meta['main']&&render(a10_0x512322(AppMenuSyncUI,{}));export function AppMenuSyncUI(){const _0x3595fc=a10_0xcc48,{exit:_0x2f4251}=useApp(),{loading:_0x5a5794,menuList:_0x4d4a60,error:_0x111d55}=useGetOnlineMenuList(),_0x1f24ab=getLocalPages(),_0x11ee13=_0x4d4a60[_0x3595fc(0x1a7)](_0x41efc0=>_0x41efc0[_0x3595fc(0x1a1)]),_0xacba20=['菜单名称',..._0x1f24ab[_0x3595fc(0x1a7)](_0x12b83d=>_0x12b83d[_0x3595fc(0x18e)])],_0x3176e4=getStringWidth(getMaxWidth(_0xacba20,0x4)),_0x204d4d=getStringWidth(getMaxWidth([_0x3595fc(0x19c)])),[_0x4beb6d,_0x226a9d]=useState(_0x3595fc(0x1a3)),[_0x2e8954,_0x1f5e5b]=useState(new Set()),[_0x50dc5c,_0x5d0002]=useState(0x0),[_0xa1e224,_0x53aa77]=useState(''),[_0x190afd,_0xe37871]=useState(''),[_0x322791,_0x2569ca]=useState(''),[_0x5de83b,_0x3c5069]=useState(''),[_0x36bedb,_0x40c5fe]=useState([]),_0x559b78=_0x1f24ab['map'](_0x56617e=>({'label':_0x56617e[_0x3595fc(0x18e)],'path':_0x56617e[_0x3595fc(0x1a1)],'local':!![],'online':_0x11ee13[_0x3595fc(0x1b9)](_0x56617e['path'])})),_0x4b52ce=_0x1f24ab[_0x3595fc(0x1c6)](_0x1fed42=>{const _0x3d6ad4=_0x3595fc;return!_0x11ee13[_0x3d6ad4(0x1b9)](_0x1fed42[_0x3d6ad4(0x1a1)]);});useEffect(()=>{const _0x6def2c=_0x3595fc;if(!_0x5a5794&&_0x1f24ab[_0x6def2c(0x1ae)]>0x0&&_0x2e8954[_0x6def2c(0x1a9)]===0x0){const _0x42b0a2=new Set(_0x1f24ab[_0x6def2c(0x1a7)]((_0x164a00,_0x5d2167)=>({'page':_0x164a00,'index':_0x5d2167}))['filter'](({page:_0x2b75d9})=>!_0x11ee13[_0x6def2c(0x1b9)](_0x2b75d9[_0x6def2c(0x1a1)]))[_0x6def2c(0x1a7)](({index:_0x3a04ab})=>_0x3a04ab));_0x1f5e5b(_0x42b0a2);}},[_0x5a5794,_0x1f24ab[_0x3595fc(0x1ae)],_0x11ee13['length']]),useInput(async(_0x43dad6,_0x1f65b8)=>{const _0x406fe0=_0x3595fc;if(_0x4beb6d===_0x406fe0(0x1a3)){if(_0x1f65b8[_0x406fe0(0x1a8)]){_0x5d0002(_0x2e396c=>_0x2e396c>0x0?_0x2e396c-0x1:_0x1f24ab['length']-0x1);return;}if(_0x1f65b8[_0x406fe0(0x192)]){_0x5d0002(_0x1f876d=>_0x1f876d<_0x1f24ab[_0x406fe0(0x1ae)]-0x1?_0x1f876d+0x1:0x0);return;}if(_0x43dad6==='\x20'){_0x1f5e5b(_0x42aecf=>{const _0x219ba4=_0x406fe0,_0xfd6377=new Set(_0x42aecf);return _0xfd6377[_0x219ba4(0x187)](_0x50dc5c)?_0xfd6377[_0x219ba4(0x1b0)](_0x50dc5c):_0xfd6377[_0x219ba4(0x19e)](_0x50dc5c),_0xfd6377;});return;}if(_0x43dad6==='a'||_0x43dad6==='A'){const _0x3e9eb9=new Set(_0x1f24ab[_0x406fe0(0x1a7)]((_0x509388,_0x51cc49)=>_0x51cc49));_0x1f5e5b(_0x3e9eb9);return;}if(_0x43dad6==='i'||_0x43dad6==='I'||_0x43dad6==='r'||_0x43dad6==='R'){_0x1f5e5b(_0x23ecf6=>{const _0x44f624=_0x406fe0,_0x4c952d=new Set();for(let _0x47cef5=0x0;_0x47cef5<_0x1f24ab[_0x44f624(0x1ae)];_0x47cef5++){!_0x23ecf6['has'](_0x47cef5)&&_0x4c952d[_0x44f624(0x19e)](_0x47cef5);}return _0x4c952d;});return;}if(_0x43dad6==='q'||_0x43dad6==='Q'){_0x2f4251();return;}if(_0x1f65b8[_0x406fe0(0x1b2)]){if(_0x2e8954[_0x406fe0(0x1a9)]===0x0){_0x3c5069(_0x406fe0(0x1cc));return;}const _0x1e0db8=_0x1f24ab[_0x406fe0(0x1c6)]((_0x2f5858,_0x106ee0)=>_0x2e8954[_0x406fe0(0x187)](_0x106ee0)),_0x664794=_0x1e0db8[_0x406fe0(0x1a7)](_0x19648c=>_0x19648c['label'])['join'](',\x20');_0x40c5fe([{'label':_0x406fe0(0x1bc),'value':_0x2e8954['size']+'\x20个'}]),_0x3c5069(''),_0x226a9d(_0x406fe0(0x1c2));return;}return;}if(_0x4beb6d==='input-js'){if(_0x1f65b8[_0x406fe0(0x1b2)]){const _0x2896b7=_0x322791[_0x406fe0(0x1c8)]();if(_0x2896b7==='')return;if(!isValidJsHttpsUrl(_0x2896b7)){_0x3c5069(_0x406fe0(0x1af));return;}if(!await isUrlReachable(_0x2896b7)){_0x3c5069(_0x406fe0(0x194));return;}_0x53aa77(_0x2896b7),_0x40c5fe(_0x576b6c=>[..._0x576b6c,{'label':_0x406fe0(0x193),'value':_0x2896b7}]),_0x2569ca(''),_0x3c5069(''),_0x226a9d(_0x406fe0(0x1b4));return;}if(_0x1f65b8[_0x406fe0(0x196)]||_0x1f65b8[_0x406fe0(0x1b0)]){_0x2569ca(_0x39e3ba=>_0x39e3ba[_0x406fe0(0x1ac)](0x0,-0x1)),_0x3c5069('');return;}_0x2569ca(_0x6e91b4=>_0x6e91b4+_0x43dad6);return;}if(_0x4beb6d==='input-css'){if(_0x1f65b8[_0x406fe0(0x1b2)]){const _0x219863=_0x322791[_0x406fe0(0x1c8)]();if(_0x219863==='')return;if(!isValidCssHttpsUrl(_0x219863)){_0x3c5069(_0x406fe0(0x1cb));return;}if(!await isUrlReachable(_0x219863)){_0x3c5069('CSS\x20链接无法访问');return;}_0xe37871(_0x219863),_0x40c5fe(_0xcaa1d2=>[..._0xcaa1d2,{'label':_0x406fe0(0x1b6),'value':_0x219863}]),_0x2569ca(''),_0x3c5069(''),_0x226a9d(_0x406fe0(0x1ba));const _0x13ec66=_0x1f24ab[_0x406fe0(0x1c6)]((_0x53320f,_0x1c9017)=>_0x2e8954['has'](_0x1c9017));createMenus(_0x13ec66,[_0xa1e224,_0x219863])[_0x406fe0(0x1a6)](()=>{const _0x41f431=_0x406fe0;_0x226a9d(_0x41f431(0x19a)),setTimeout(()=>{_0x2f4251();},0x3e8);})[_0x406fe0(0x1a5)](_0x4617db=>{const _0x437552=_0x406fe0;_0x3c5069(_0x4617db[_0x437552(0x1a0)]||_0x437552(0x1a4)),_0x226a9d(_0x437552(0x1a3));});return;}if(_0x1f65b8['backspace']||_0x1f65b8[_0x406fe0(0x1b0)]){_0x2569ca(_0x33c082=>_0x33c082[_0x406fe0(0x1ac)](0x0,-0x1)),_0x3c5069('');return;}_0x2569ca(_0x5dace2=>_0x5dace2+_0x43dad6);return;}});if(_0x5a5794)return a10_0x5966d1(Box,{'marginTop':0x1,'marginBottom':0x1,'children':[a10_0x512322(Text,{'children':'\x20\x20'}),a10_0x512322(a10_0x45eab2,{'type':_0x3595fc(0x18d)}),a10_0x512322(Text,{'children':'\x20正在获取线上菜单列表...'})]});if(_0x111d55)return a10_0x5966d1(Box,{'flexDirection':_0x3595fc(0x18b),'marginTop':0x1,'marginBottom':0x1,'children':[a10_0x5966d1(Text,{'color':'red','children':['✗\x20',_0x111d55]}),a10_0x5966d1(Box,{'marginTop':0x1,'children':[a10_0x512322(Text,{'color':_0x3595fc(0x186),'children':'提示:使用\x20'}),a10_0x512322(Text,{'color':'cyan','children':'lovrabet\x20auth'}),a10_0x512322(Text,{'color':_0x3595fc(0x186),'children':_0x3595fc(0x1b5)})]})]});if(_0x1f24ab[_0x3595fc(0x1ae)]===0x0)return a10_0x512322(Box,{'marginTop':0x1,'marginBottom':0x1,'children':a10_0x512322(Text,{'color':_0x3595fc(0x199),'children':_0x3595fc(0x1aa)})});return a10_0x5966d1(Box,{'flexDirection':_0x3595fc(0x18b),'marginTop':0x1,'marginBottom':0x1,'children':[_0x4beb6d==='selecting'&&a10_0x5966d1(a10_0x243571,{'children':[a10_0x5966d1(Box,{'children':[a10_0x5966d1(Text,{'bold':!![],'children':['\x20\x20',_0x3595fc(0x19c),getRemainingSpaces(_0x3176e4,'菜单名称')]}),a10_0x5966d1(Text,{'bold':!![],'children':['本地',getRemainingSpaces(_0x204d4d,'菜单名称')]}),a10_0x5966d1(Text,{'bold':!![],'children':[_0x3595fc(0x19d),getRemainingSpaces(_0x204d4d,'菜单名称')]})]}),_0x559b78[_0x3595fc(0x1a7)](_0x38debe=>a10_0x5966d1(Box,{'children':[a10_0x5966d1(Text,{'children':['\x20\x20',_0x38debe[_0x3595fc(0x18e)],getRemainingSpaces(_0x3176e4,_0x38debe[_0x3595fc(0x18e)])]}),a10_0x5966d1(Text,{'color':_0x3595fc(0x188),'children':[_0x38debe[_0x3595fc(0x1bb)]?'✓':'✗',getRemainingSpaces(_0x204d4d,'✓')]}),a10_0x5966d1(Text,{'color':_0x38debe[_0x3595fc(0x18a)]?'green':_0x3595fc(0x1c3),'children':[_0x38debe[_0x3595fc(0x18a)]?'✓':'✗',getRemainingSpaces(_0x204d4d,'✓')]})]},_0x38debe[_0x3595fc(0x1a1)]))]}),_0x4beb6d===_0x3595fc(0x1a3)&&_0x36bedb[_0x3595fc(0x1ae)]===0x0&&a10_0x512322(Box,{'marginTop':0x1,'children':a10_0x512322(Text,{'color':_0x3595fc(0x1b1),'children':_0x3595fc(0x18f)})}),_0x36bedb[_0x3595fc(0x1a7)]((_0x40dff4,_0x3ec1ca)=>a10_0x5966d1(Box,{'children':[a10_0x5966d1(Text,{'color':_0x3595fc(0x188),'children':['√\x20',_0x40dff4['label'],':\x20']}),a10_0x512322(Text,{'color':_0x3595fc(0x1b1),'children':_0x40dff4[_0x3595fc(0x19f)]})]},_0x3ec1ca)),_0x5de83b&&_0x4beb6d===_0x3595fc(0x1a3)&&a10_0x512322(Box,{'marginTop':0x1,'children':a10_0x5966d1(Text,{'color':_0x3595fc(0x1c3),'children':['✗\x20',_0x5de83b]})}),_0x4beb6d===_0x3595fc(0x1a3)&&a10_0x512322(a10_0x243571,{'children':a10_0x5966d1(Box,{'marginTop':_0x36bedb[_0x3595fc(0x1ae)]>0x0||_0x5de83b?0x1:0x0,'flexDirection':_0x3595fc(0x18b),'children':[a10_0x512322(Text,{'bold':!![],'children':_0x3595fc(0x198)}),_0x1f24ab[_0x3595fc(0x1a7)]((_0x3d5d70,_0x16c424)=>{const _0x3d5514=_0x3595fc,_0x12b46a=_0x50dc5c===_0x16c424,_0x14cacf=_0x2e8954[_0x3d5514(0x187)](_0x16c424),_0x3dbc74=_0x11ee13[_0x3d5514(0x1b9)](_0x3d5d70[_0x3d5514(0x1a1)]),_0x33db76=_0x3dbc74?'更新':'新建';return a10_0x512322(Box,{'children':a10_0x5966d1(Text,{'backgroundColor':_0x12b46a?_0x3d5514(0x18c):undefined,'color':_0x12b46a?_0x3d5514(0x1ad):undefined,'children':['\x20\x20',_0x14cacf?_0x3d5514(0x195):_0x3d5514(0x1ab),'\x20',_0x3d5d70['label']]})},_0x3d5d70[_0x3d5514(0x1a1)]);}),a10_0x512322(Box,{'marginTop':0x1,'children':a10_0x5966d1(Text,{'color':_0x3595fc(0x186),'children':['\x20',_0x3595fc(0x19b)]})})]})}),_0x4beb6d===_0x3595fc(0x1c2)&&a10_0x5966d1(a10_0x243571,{'children':[a10_0x5966d1(Box,{'children':[a10_0x512322(Text,{'children':'*\x20JS\x20链接:\x20'}),a10_0x512322(Text,{'color':_0x3595fc(0x188),'children':_0x322791}),_0x5de83b&&a10_0x5966d1(Text,{'color':_0x3595fc(0x1c3),'children':[_0x3595fc(0x1c0),_0x5de83b]})]}),!_0x5de83b&&a10_0x512322(Box,{'children':a10_0x512322(Text,{'color':_0x3595fc(0x186),'children':'\x20输入项目的\x20JS\x20资源链接(https://...)'})})]}),_0x4beb6d===_0x3595fc(0x1b4)&&a10_0x5966d1(a10_0x243571,{'children':[a10_0x5966d1(Box,{'children':[a10_0x512322(Text,{'children':_0x3595fc(0x1b8)}),a10_0x512322(Text,{'color':'green','children':_0x322791}),_0x5de83b&&a10_0x5966d1(Text,{'color':_0x3595fc(0x1c3),'children':[_0x3595fc(0x1c0),_0x5de83b]})]}),!_0x5de83b&&a10_0x512322(Box,{'children':a10_0x512322(Text,{'color':_0x3595fc(0x186),'children':_0x3595fc(0x189)})})]}),_0x4beb6d===_0x3595fc(0x1ba)&&a10_0x512322(Box,{'children':a10_0x512322(Text,{'children':_0x3595fc(0x197)})}),_0x4beb6d===_0x3595fc(0x19a)&&a10_0x512322(Box,{'children':a10_0x512322(Text,{'color':_0x3595fc(0x188),'children':_0x3595fc(0x1bd)})})]});}function getStringWidth(_0x58e85a){let _0x5782a0=0x0;for(const _0x53aba1 of _0x58e85a){/[\u4e00-\u9fa5]/['test'](_0x53aba1)?_0x5782a0+=0x2:_0x5782a0+=0x1;}return _0x5782a0;}function getRemainingSpaces(_0x38cee9,_0x585d4c){const _0x337b27=a10_0xcc48,_0x393897=getStringWidth(_0x585d4c);return Array(Math['max'](0x0,_0x38cee9-_0x393897))[_0x337b27(0x1bf)]('\x20')[_0x337b27(0x1c4)]('');}function getMaxWidth(_0x3ce67a,_0x4dba67=0x2){let _0x57b6e4='',_0x34d133=0x0;for(const _0x100f65 of _0x3ce67a){const _0x48b272=getStringWidth(_0x100f65);_0x48b272>_0x34d133&&(_0x34d133=_0x48b272,_0x57b6e4=_0x100f65);}return _0x57b6e4+'\x20'['repeat'](_0x4dba67);}function a10_0x4558(){const _0x369591=['请输入有效的\x20JS\x20https\x20链接','delete','cyan','return','11lSRXop','input-css','\x20命令重新登录','CSS\x20链接','17580vvbICS','*\x20CSS\x20链接:\x20','includes','creating','local','已选择菜单','√\x20菜单创建完成','1075967ygHIVM','fill','\x20←\x20','1686395ZDpwSR','input-js','red','join','14492916miwfYe','filter','2KuCSYU','trim','11647784LbNNTN','366KpytVw','请输入有效的\x20CSS\x20https\x20链接','请至少选择一个菜单','gray','has','green','\x20输入项目的\x20CSS\x20资源链接(https://...)','online','column','blue','dots','label','*\x20同步菜单到\x20Lovrabet\x20平台','51905010JLnMxt','1547aPmLjq','downArrow','JS\x20链接','JS\x20链接无法访问','[✓]','backspace','*\x20正在创建菜单...','*\x20请选择要同步的菜单:','yellow','done','↑/↓:\x20移动光标\x20空格:\x20切换选中\x20a:\x20全选\x20i/r:\x20反选\x20Enter:\x20确认','菜单名称','Lovrabet平台','add','value','message','path','26658LJBPSN','selecting','创建菜单失败','catch','then','map','upArrow','size','!\x20未找到本地页面,请先创建页面','[\x20]','slice','white','length'];a10_0x4558=function(){return _0x369591;};return a10_0x4558();}
1
+ const a10_0x1dd982=a10_0x1cf9;(function(_0x1408de,_0x147ff5){const _0xed800=a10_0x1cf9,_0x121c9d=_0x1408de();while(!![]){try{const _0x18b030=-parseInt(_0xed800(0xbf))/0x1+-parseInt(_0xed800(0xe5))/0x2*(-parseInt(_0xed800(0xd2))/0x3)+-parseInt(_0xed800(0xbe))/0x4+parseInt(_0xed800(0xf3))/0x5+parseInt(_0xed800(0xb6))/0x6+-parseInt(_0xed800(0xd0))/0x7+parseInt(_0xed800(0xfc))/0x8;if(_0x18b030===_0x147ff5)break;else _0x121c9d['push'](_0x121c9d['shift']());}catch(_0x3d301e){_0x121c9d['push'](_0x121c9d['shift']());}}}(a10_0x1ae3,0x1a961));import{jsx as a10_0x3ed4a4,jsxs as a10_0x1c6962,Fragment as a10_0x42d9cd}from'react/jsx-runtime';import{Text,Box,useInput,useApp,render}from'ink';function a10_0x1ae3(){const _0x38b268=['green','CSS\x20链接无法访问','[\x20]','test','slice','online','创建菜单失败','*\x20同步菜单到\x20Lovrabet\x20平台','join','√\x20菜单创建完成','white','selecting','then','27642GxPRvv','fill','return','[✓]','请输入有效的\x20CSS\x20https\x20链接','input-js','cyan','请至少选择一个菜单','*\x20正在创建菜单...','已选择菜单','CSS\x20链接','delete','Lovrabet平台','done','898520mNiQXD','\x20正在获取线上菜单列表...','includes','column','lovrabet\x20auth','creating','downArrow','has','提示:使用\x20','1087232CfVCcL','yellow','input-css','644406LHImgA','\x20输入项目的\x20CSS\x20资源链接(https://...)','backspace','trim','value','\x20输入项目的\x20JS\x20资源链接(https://...)','length','max','500424tneGcB','208517djLbnR','*\x20CSS\x20链接:\x20','red','*\x20请选择要同步的菜单:','add','upArrow','filter','path','gray','label','catch','!\x20未找到本地页面,请先创建页面','size','菜单名称','blue','请输入有效的\x20JS\x20https\x20链接','message','443905hRKXUY','JS\x20链接','18JULmdm','\x20命令重新登录','main','map','dots','\x20←\x20'];a10_0x1ae3=function(){return _0x38b268;};return a10_0x1ae3();}import{useEffect,useState}from'react';import a10_0x1cb42e from'ink-spinner';function a10_0x1cf9(_0x4a1e70,_0x70e7b5){const _0x1ae3eb=a10_0x1ae3();return a10_0x1cf9=function(_0x1cf94a,_0xa0785e){_0x1cf94a=_0x1cf94a-0xb4;let _0x1ea02b=_0x1ae3eb[_0x1cf94a];return _0x1ea02b;},a10_0x1cf9(_0x4a1e70,_0x70e7b5);}import{useGetOnlineMenuList}from'./get-online-menu-list.js';import{getLocalPages}from'./get-local-pages.js';import{createMenus}from'./create-menu.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'./valid-url.js';import.meta[a10_0x1dd982(0xd4)]&&render(a10_0x3ed4a4(AppMenuSyncUI,{}));export function AppMenuSyncUI(){const _0x551a7a=a10_0x1dd982,{exit:_0x48b9d4}=useApp(),{loading:_0x492cfb,menuList:_0xf34d31,error:_0x25fcc8}=useGetOnlineMenuList(),_0x2b64bc=getLocalPages(),_0x3ee8b0=_0xf34d31['map'](_0x5360b6=>_0x5360b6[_0x551a7a(0xc6)]),_0x5bb26e=['菜单名称',..._0x2b64bc[_0x551a7a(0xd5)](_0x1099f5=>_0x1099f5[_0x551a7a(0xc8)])],_0x4ed6f4=getStringWidth(getMaxWidth(_0x5bb26e,0x4)),_0x525c9c=getStringWidth(getMaxWidth([_0x551a7a(0xcc)])),[_0xbeb295,_0x5aba0b]=useState('selecting'),[_0x39d6ec,_0x2b7779]=useState(new Set()),[_0x22f7d4,_0x2ac4e0]=useState(0x0),[_0x59185c,_0x2cddea]=useState(''),[_0x445ce4,_0x1f54d3]=useState(''),[_0x58875e,_0x3925ce]=useState(''),[_0xff7e98,_0x873963]=useState(''),[_0xcfa06c,_0x2eedb9]=useState([]),_0x3db8ed=_0x2b64bc['map'](_0x55b4dc=>({'label':_0x55b4dc['label'],'path':_0x55b4dc[_0x551a7a(0xc6)],'local':!![],'online':_0x3ee8b0[_0x551a7a(0xf5)](_0x55b4dc[_0x551a7a(0xc6)])})),_0x3d05de=_0x2b64bc[_0x551a7a(0xc5)](_0x1a6837=>{const _0xee5223=_0x551a7a;return!_0x3ee8b0['includes'](_0x1a6837[_0xee5223(0xc6)]);});useEffect(()=>{const _0x1fb798=_0x551a7a;if(!_0x492cfb&&_0x2b64bc[_0x1fb798(0xbc)]>0x0&&_0x39d6ec[_0x1fb798(0xcb)]===0x0){const _0x12df03=new Set(_0x2b64bc[_0x1fb798(0xd5)]((_0x1d74a2,_0x4ddaa1)=>({'page':_0x1d74a2,'index':_0x4ddaa1}))[_0x1fb798(0xc5)](({page:_0x305586})=>!_0x3ee8b0[_0x1fb798(0xf5)](_0x305586[_0x1fb798(0xc6)]))['map'](({index:_0xc2adf1})=>_0xc2adf1));_0x2b7779(_0x12df03);}},[_0x492cfb,_0x2b64bc[_0x551a7a(0xbc)],_0x3ee8b0[_0x551a7a(0xbc)]]),useInput(async(_0x29acfa,_0x30e4ee)=>{const _0x5e7669=_0x551a7a;if(_0xbeb295===_0x5e7669(0xe3)){if(_0x30e4ee[_0x5e7669(0xc4)]){_0x2ac4e0(_0x566d8f=>_0x566d8f>0x0?_0x566d8f-0x1:_0x2b64bc[_0x5e7669(0xbc)]-0x1);return;}if(_0x30e4ee[_0x5e7669(0xf9)]){_0x2ac4e0(_0x3074d3=>_0x3074d3<_0x2b64bc[_0x5e7669(0xbc)]-0x1?_0x3074d3+0x1:0x0);return;}if(_0x29acfa==='\x20'){_0x2b7779(_0x3628bd=>{const _0x530937=_0x5e7669,_0x25e295=new Set(_0x3628bd);return _0x25e295['has'](_0x22f7d4)?_0x25e295[_0x530937(0xf0)](_0x22f7d4):_0x25e295['add'](_0x22f7d4),_0x25e295;});return;}if(_0x29acfa==='a'||_0x29acfa==='A'){const _0x1813b7=new Set(_0x2b64bc['map']((_0x1832da,_0x345bd6)=>_0x345bd6));_0x2b7779(_0x1813b7);return;}if(_0x29acfa==='i'||_0x29acfa==='I'||_0x29acfa==='r'||_0x29acfa==='R'){_0x2b7779(_0x1c5cb7=>{const _0x3043fb=_0x5e7669,_0x5b4adb=new Set();for(let _0x10a142=0x0;_0x10a142<_0x2b64bc['length'];_0x10a142++){!_0x1c5cb7[_0x3043fb(0xfa)](_0x10a142)&&_0x5b4adb[_0x3043fb(0xc3)](_0x10a142);}return _0x5b4adb;});return;}if(_0x29acfa==='q'||_0x29acfa==='Q'){_0x48b9d4();return;}if(_0x30e4ee[_0x5e7669(0xe7)]){if(_0x39d6ec[_0x5e7669(0xcb)]===0x0){_0x873963(_0x5e7669(0xec));return;}const _0x15bb3f=_0x2b64bc['filter']((_0x1b9b1a,_0x4a1cab)=>_0x39d6ec['has'](_0x4a1cab)),_0x47f200=_0x15bb3f[_0x5e7669(0xd5)](_0x48a313=>_0x48a313[_0x5e7669(0xc8)])['join'](',\x20');_0x2eedb9([{'label':_0x5e7669(0xee),'value':_0x39d6ec['size']+'\x20个'}]),_0x873963(''),_0x5aba0b(_0x5e7669(0xea));return;}return;}if(_0xbeb295===_0x5e7669(0xea)){if(_0x30e4ee[_0x5e7669(0xe7)]){const _0x49c428=_0x58875e[_0x5e7669(0xb9)]();if(_0x49c428==='')return;if(!isValidJsHttpsUrl(_0x49c428)){_0x873963(_0x5e7669(0xce));return;}if(!await isUrlReachable(_0x49c428)){_0x873963('JS\x20链接无法访问');return;}_0x2cddea(_0x49c428),_0x2eedb9(_0x3d8be5=>[..._0x3d8be5,{'label':_0x5e7669(0xd1),'value':_0x49c428}]),_0x3925ce(''),_0x873963(''),_0x5aba0b(_0x5e7669(0xb5));return;}if(_0x30e4ee[_0x5e7669(0xb8)]||_0x30e4ee[_0x5e7669(0xf0)]){_0x3925ce(_0x252b8d=>_0x252b8d[_0x5e7669(0xdc)](0x0,-0x1)),_0x873963('');return;}_0x3925ce(_0x387132=>_0x387132+_0x29acfa);return;}if(_0xbeb295===_0x5e7669(0xb5)){if(_0x30e4ee['return']){const _0x5b81d6=_0x58875e[_0x5e7669(0xb9)]();if(_0x5b81d6==='')return;if(!isValidCssHttpsUrl(_0x5b81d6)){_0x873963(_0x5e7669(0xe9));return;}if(!await isUrlReachable(_0x5b81d6)){_0x873963(_0x5e7669(0xd9));return;}_0x1f54d3(_0x5b81d6),_0x2eedb9(_0x2b99e9=>[..._0x2b99e9,{'label':_0x5e7669(0xef),'value':_0x5b81d6}]),_0x3925ce(''),_0x873963(''),_0x5aba0b(_0x5e7669(0xf8));const _0x4d10a6=_0x2b64bc[_0x5e7669(0xc5)]((_0xd33864,_0x48cc69)=>_0x39d6ec[_0x5e7669(0xfa)](_0x48cc69));createMenus(_0x4d10a6,[_0x59185c,_0x5b81d6])[_0x5e7669(0xe4)](()=>{_0x5aba0b('done'),setTimeout(()=>{_0x48b9d4();},0x3e8);})[_0x5e7669(0xc9)](_0x40ec09=>{const _0x1338fc=_0x5e7669;_0x873963(_0x40ec09[_0x1338fc(0xcf)]||_0x1338fc(0xde)),_0x5aba0b(_0x1338fc(0xe3));});return;}if(_0x30e4ee['backspace']||_0x30e4ee[_0x5e7669(0xf0)]){_0x3925ce(_0x2655c3=>_0x2655c3[_0x5e7669(0xdc)](0x0,-0x1)),_0x873963('');return;}_0x3925ce(_0x50b08d=>_0x50b08d+_0x29acfa);return;}});if(_0x492cfb)return a10_0x1c6962(Box,{'marginTop':0x1,'marginBottom':0x1,'children':[a10_0x3ed4a4(Text,{'children':'\x20\x20'}),a10_0x3ed4a4(a10_0x1cb42e,{'type':_0x551a7a(0xd6)}),a10_0x3ed4a4(Text,{'children':_0x551a7a(0xf4)})]});if(_0x25fcc8)return a10_0x1c6962(Box,{'flexDirection':_0x551a7a(0xf6),'marginTop':0x1,'marginBottom':0x1,'children':[a10_0x1c6962(Text,{'color':_0x551a7a(0xc1),'children':['✗\x20',_0x25fcc8]}),a10_0x1c6962(Box,{'marginTop':0x1,'children':[a10_0x3ed4a4(Text,{'color':_0x551a7a(0xc7),'children':_0x551a7a(0xfb)}),a10_0x3ed4a4(Text,{'color':_0x551a7a(0xeb),'children':_0x551a7a(0xf7)}),a10_0x3ed4a4(Text,{'color':_0x551a7a(0xc7),'children':_0x551a7a(0xd3)})]})]});if(_0x2b64bc[_0x551a7a(0xbc)]===0x0)return a10_0x3ed4a4(Box,{'marginTop':0x1,'marginBottom':0x1,'children':a10_0x3ed4a4(Text,{'color':_0x551a7a(0xb4),'children':_0x551a7a(0xca)})});return a10_0x1c6962(Box,{'flexDirection':_0x551a7a(0xf6),'marginTop':0x1,'marginBottom':0x1,'children':[_0xbeb295===_0x551a7a(0xe3)&&a10_0x1c6962(a10_0x42d9cd,{'children':[a10_0x1c6962(Box,{'children':[a10_0x1c6962(Text,{'bold':!![],'children':['\x20\x20','菜单名称',getRemainingSpaces(_0x4ed6f4,_0x551a7a(0xcc))]}),a10_0x1c6962(Text,{'bold':!![],'children':['本地',getRemainingSpaces(_0x525c9c,_0x551a7a(0xcc))]}),a10_0x1c6962(Text,{'bold':!![],'children':[_0x551a7a(0xf1),getRemainingSpaces(_0x525c9c,_0x551a7a(0xcc))]})]}),_0x3db8ed[_0x551a7a(0xd5)](_0x44401b=>a10_0x1c6962(Box,{'children':[a10_0x1c6962(Text,{'children':['\x20\x20',_0x44401b[_0x551a7a(0xc8)],getRemainingSpaces(_0x4ed6f4,_0x44401b['label'])]}),a10_0x1c6962(Text,{'color':_0x551a7a(0xd8),'children':[_0x44401b['local']?'✓':'✗',getRemainingSpaces(_0x525c9c,'✓')]}),a10_0x1c6962(Text,{'color':_0x44401b[_0x551a7a(0xdd)]?'green':'red','children':[_0x44401b[_0x551a7a(0xdd)]?'✓':'✗',getRemainingSpaces(_0x525c9c,'✓')]})]},_0x44401b['path']))]}),_0xbeb295===_0x551a7a(0xe3)&&_0xcfa06c[_0x551a7a(0xbc)]===0x0&&a10_0x3ed4a4(Box,{'marginTop':0x1,'children':a10_0x3ed4a4(Text,{'color':_0x551a7a(0xeb),'children':_0x551a7a(0xdf)})}),_0xcfa06c['map']((_0x35cc44,_0x4bc6a2)=>a10_0x1c6962(Box,{'children':[a10_0x1c6962(Text,{'color':_0x551a7a(0xd8),'children':['√\x20',_0x35cc44[_0x551a7a(0xc8)],':\x20']}),a10_0x3ed4a4(Text,{'color':'cyan','children':_0x35cc44[_0x551a7a(0xba)]})]},_0x4bc6a2)),_0xff7e98&&_0xbeb295==='selecting'&&a10_0x3ed4a4(Box,{'marginTop':0x1,'children':a10_0x1c6962(Text,{'color':_0x551a7a(0xc1),'children':['✗\x20',_0xff7e98]})}),_0xbeb295===_0x551a7a(0xe3)&&a10_0x3ed4a4(a10_0x42d9cd,{'children':a10_0x1c6962(Box,{'marginTop':_0xcfa06c['length']>0x0||_0xff7e98?0x1:0x0,'flexDirection':'column','children':[a10_0x3ed4a4(Text,{'bold':!![],'children':_0x551a7a(0xc2)}),_0x2b64bc[_0x551a7a(0xd5)]((_0x247204,_0x346716)=>{const _0x419a01=_0x551a7a,_0x894fdb=_0x22f7d4===_0x346716,_0x54fa7=_0x39d6ec[_0x419a01(0xfa)](_0x346716),_0x566fc1=_0x3ee8b0[_0x419a01(0xf5)](_0x247204[_0x419a01(0xc6)]),_0x5a9005=_0x566fc1?'更新':'新建';return a10_0x3ed4a4(Box,{'children':a10_0x1c6962(Text,{'backgroundColor':_0x894fdb?_0x419a01(0xcd):undefined,'color':_0x894fdb?_0x419a01(0xe2):undefined,'children':['\x20\x20',_0x54fa7?_0x419a01(0xe8):_0x419a01(0xda),'\x20',_0x247204[_0x419a01(0xc8)]]})},_0x247204[_0x419a01(0xc6)]);}),a10_0x3ed4a4(Box,{'marginTop':0x1,'children':a10_0x1c6962(Text,{'color':_0x551a7a(0xc7),'children':['\x20','↑/↓:\x20移动光标\x20空格:\x20切换选中\x20a:\x20全选\x20i/r:\x20反选\x20Enter:\x20确认']})})]})}),_0xbeb295===_0x551a7a(0xea)&&a10_0x1c6962(a10_0x42d9cd,{'children':[a10_0x1c6962(Box,{'children':[a10_0x3ed4a4(Text,{'children':'*\x20JS\x20链接:\x20'}),a10_0x3ed4a4(Text,{'color':'green','children':_0x58875e}),_0xff7e98&&a10_0x1c6962(Text,{'color':'red','children':[_0x551a7a(0xd7),_0xff7e98]})]}),!_0xff7e98&&a10_0x3ed4a4(Box,{'children':a10_0x3ed4a4(Text,{'color':_0x551a7a(0xc7),'children':_0x551a7a(0xbb)})})]}),_0xbeb295===_0x551a7a(0xb5)&&a10_0x1c6962(a10_0x42d9cd,{'children':[a10_0x1c6962(Box,{'children':[a10_0x3ed4a4(Text,{'children':_0x551a7a(0xc0)}),a10_0x3ed4a4(Text,{'color':'green','children':_0x58875e}),_0xff7e98&&a10_0x1c6962(Text,{'color':'red','children':[_0x551a7a(0xd7),_0xff7e98]})]}),!_0xff7e98&&a10_0x3ed4a4(Box,{'children':a10_0x3ed4a4(Text,{'color':_0x551a7a(0xc7),'children':_0x551a7a(0xb7)})})]}),_0xbeb295===_0x551a7a(0xf8)&&a10_0x3ed4a4(Box,{'children':a10_0x3ed4a4(Text,{'children':_0x551a7a(0xed)})}),_0xbeb295===_0x551a7a(0xf2)&&a10_0x3ed4a4(Box,{'children':a10_0x3ed4a4(Text,{'color':_0x551a7a(0xd8),'children':_0x551a7a(0xe1)})})]});}function getStringWidth(_0x10864b){const _0x557384=a10_0x1dd982;let _0x1acfd3=0x0;for(const _0x2bacde of _0x10864b){/[\u4e00-\u9fa5]/[_0x557384(0xdb)](_0x2bacde)?_0x1acfd3+=0x2:_0x1acfd3+=0x1;}return _0x1acfd3;}function getRemainingSpaces(_0x32d918,_0x794526){const _0x51eb1b=a10_0x1dd982,_0x4800a9=getStringWidth(_0x794526);return Array(Math[_0x51eb1b(0xbd)](0x0,_0x32d918-_0x4800a9))[_0x51eb1b(0xe6)]('\x20')[_0x51eb1b(0xe0)]('');}function getMaxWidth(_0x58aa70,_0x55128b=0x2){let _0x40758a='',_0x1da045=0x0;for(const _0x578e42 of _0x58aa70){const _0x30ed7e=getStringWidth(_0x578e42);_0x30ed7e>_0x1da045&&(_0x1da045=_0x30ed7e,_0x40758a=_0x578e42);}return _0x40758a+'\x20'['repeat'](_0x55128b);}