@lovrabet/cli 1.3.3 → 1.3.4-beta.0

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 (89) hide show
  1. package/lib/ai-setup/AISetupUI.js +1 -1
  2. package/lib/ai-setup/config.js +1 -1
  3. package/lib/api/api-doc-ui.js +1 -1
  4. package/lib/api/api-doc.js +1 -1
  5. package/lib/api/api-pull-ui.js +1 -1
  6. package/lib/api/fetch-model-list.js +1 -1
  7. package/lib/api/generate-api-file.js +1 -1
  8. package/lib/api/main.js +1 -1
  9. package/lib/api/pull-silent.js +1 -1
  10. package/lib/app-menu/app-menu-sync-ui.js +1 -1
  11. package/lib/app-menu/create-menu.js +1 -1
  12. package/lib/app-menu/get-local-pages.js +1 -1
  13. package/lib/app-menu/get-online-menu-list.js +1 -1
  14. package/lib/app-menu/use-get-online-menu-list.js +1 -1
  15. package/lib/app-menu/utils.js +1 -1
  16. package/lib/app-menu/valid-url.js +1 -1
  17. package/lib/app-menu-update-cdn/current-content.js +1 -1
  18. package/lib/app-menu-update-cdn/input-cdn-asset.js +1 -1
  19. package/lib/app-menu-update-cdn/main.js +1 -1
  20. package/lib/app-menu-update-cdn/update-menu-cdn-url.js +1 -1
  21. package/lib/auth/auth-server-ui.js +1 -1
  22. package/lib/auth/auth-server.js +1 -1
  23. package/lib/auth/constant.js +1 -1
  24. package/lib/auth/get-cookie.js +1 -1
  25. package/lib/auth/is-session-valid.js +1 -1
  26. package/lib/auth/logout.js +1 -1
  27. package/lib/cli-flags.js +1 -1
  28. package/lib/cli.js +1 -1
  29. package/lib/cmd/build-watch.js +1 -1
  30. package/lib/cmd/build.js +1 -1
  31. package/lib/cmd/logs.js +1 -1
  32. package/lib/cmd/preview.js +1 -1
  33. package/lib/cmd/start-execa.js +1 -0
  34. package/lib/cmd/start.js +1 -1
  35. package/lib/config/config-help.js +1 -1
  36. package/lib/config/main.js +1 -1
  37. package/lib/constant/domain.js +1 -1
  38. package/lib/constant/env.js +1 -1
  39. package/lib/create-app/enhanced-guided-create.js +1 -1
  40. package/lib/create-app/format-elapsed.js +1 -1
  41. package/lib/create-app/main.js +1 -1
  42. package/lib/create-app/non-interactive.js +1 -1
  43. package/lib/create-app/task-finished.js +1 -1
  44. package/lib/create-app/task-loading.js +1 -1
  45. package/lib/create-app/task-running.js +1 -1
  46. package/lib/create-app/task-time.js +1 -1
  47. package/lib/create-app/use-copy-project-template.js +1 -1
  48. package/lib/create-app/use-format-code.js +1 -1
  49. package/lib/create-app/use-install-dependencies.js +1 -1
  50. package/lib/help.js +1 -1
  51. package/lib/i18n/I18nProvider.js +1 -1
  52. package/lib/i18n/hooks.js +1 -1
  53. package/lib/i18n/index.js +1 -1
  54. package/lib/i18n/locales/en-US.js +1 -1
  55. package/lib/i18n/locales/zh-CN.js +1 -1
  56. package/lib/init/main.js +1 -1
  57. package/lib/mcp/McpInstallUI.js +1 -1
  58. package/lib/mcp/claude.js +1 -1
  59. package/lib/mcp/cursor.js +1 -1
  60. package/lib/mcp/main.js +1 -1
  61. package/lib/mcp/mcp-install-non-interactive.js +1 -1
  62. package/lib/mcp/mcp-installer.js +1 -1
  63. package/lib/skills/SkillInstallUI.js +1 -1
  64. package/lib/skills/main.js +1 -1
  65. package/lib/skills/skill-install-non-interactive.js +1 -1
  66. package/lib/skills/skill-installer.js +1 -1
  67. package/lib/ui/IDESelector.js +1 -1
  68. package/lib/ui/useIDESelection.js +1 -1
  69. package/lib/utils/ai_config.js +1 -1
  70. package/lib/utils/cdn-config.js +1 -1
  71. package/lib/utils/check-sdk-version.js +1 -1
  72. package/lib/utils/cli-version-check.js +1 -1
  73. package/lib/utils/config.js +1 -1
  74. package/lib/utils/copy-directory.js +1 -1
  75. package/lib/utils/file-utils.js +1 -1
  76. package/lib/utils/guides-cdn.js +1 -1
  77. package/lib/utils/http-client.js +1 -1
  78. package/lib/utils/logger.js +1 -1
  79. package/lib/utils/rules-cdn.js +1 -1
  80. package/lib/utils/sleep.js +1 -1
  81. package/lib/utils/template-replacer.js +1 -1
  82. package/package.json +4 -1
  83. package/templates/README.md +10 -55
  84. package/lib/add-page/input-page-router.js +0 -1
  85. package/lib/add-page/main.js +0 -1
  86. package/lib/add-page/select-page-template.js +0 -1
  87. package/lib/utils/router-updater.js +0 -1
  88. package/templates/pages/blank/index.tsx.tpl +0 -13
  89. package/templates/pages/sdk-fetch/index.tsx.tpl +0 -80
@@ -1 +1 @@
1
- (function(_0x128d34,_0x1af416){const _0x3ba500=a60_0x5027,_0x5e1d8b=_0x128d34();while(!![]){try{const _0x2297fb=parseInt(_0x3ba500(0xb6))/0x1*(parseInt(_0x3ba500(0xd2))/0x2)+-parseInt(_0x3ba500(0xd4))/0x3+parseInt(_0x3ba500(0xc4))/0x4+parseInt(_0x3ba500(0xaf))/0x5*(parseInt(_0x3ba500(0xbf))/0x6)+-parseInt(_0x3ba500(0xd3))/0x7+-parseInt(_0x3ba500(0xcc))/0x8*(-parseInt(_0x3ba500(0xd8))/0x9)+parseInt(_0x3ba500(0xa7))/0xa*(parseInt(_0x3ba500(0xc7))/0xb);if(_0x2297fb===_0x1af416)break;else _0x5e1d8b['push'](_0x5e1d8b['shift']());}catch(_0xad8fcb){_0x5e1d8b['push'](_0x5e1d8b['shift']());}}}(a60_0x2859,0xc90b3));import{jsx as a60_0x2e31a7,jsxs as a60_0x15c12c,Fragment as a60_0x2dfb33}from'react/jsx-runtime';import{useState,useEffect,useMemo}from'react';import{Text,Box,useInput,useApp}from'ink';import{MCP_IDES,IDE_CONFIGS}from'../utils/ai_config.js';import{IDESelector,useIDESelection}from'../ui/IDESelector.js';function a60_0x5027(_0x4772d2,_0x2eee12){_0x4772d2=_0x4772d2-0xa2;const _0x2859fe=a60_0x2859();let _0x50274b=_0x2859fe[_0x4772d2];return _0x50274b;}import{configureCursorMcp,configureClaudeMcp,showOtherMcpGuide}from'./mcp-installer.js';import{useI18n}from'../i18n/hooks.js';import a60_0x19ab1d from'../i18n/index.js';function a60_0x2859(){const _0x690d97=['241925QBlsfV','mcp.ui.count','\x20\x20✓','length','push','cursor','green','1PecUHD','handleKeyDown','key','\x20\x20✗','red','selecting','setErrorMsg','needsManualAction','mcp.ui.failed','72YYuIDZ','from','done','map','mcp.ui.pressAnyKeyToExit','1763696AWuqBh','manual','error','2639747eoBbpn','mcp.ui.unsupportedIDE','some','mcp.ui.otherIDE','message','6310904LnwQth','yellow','status','gray','column','selectedIndexes','141914vhVikR','5842396LFTswP','2829576IQVBxs','cyan','\x20\x20⚠️','ide','9pjcXHf','white','claude','description','getSelectedIDEs','name','other','30hzkWtO','success','label','configuring','mcp.ui.title','size','find','mcp.ui.configuring'];a60_0x2859=function(){return _0x690d97;};return a60_0x2859();}export function McpInstallUI({preselectedIDEs:preselectedIDEs=[]}){const _0xe9de2e=a60_0x5027,{t:_0x27dc12}=useI18n(),{exit:_0x4fd9f9}=useApp(),[_0x392a52,_0x4bbfe5]=useState(_0xe9de2e(0xbb)),[_0x2389de,_0x542065]=useState([]),[_0x5e81f7,_0x211a14]=useState([]),_0x138ec0=useMemo(()=>[...Array[_0xe9de2e(0xc0)](MCP_IDES)[_0xe9de2e(0xc2)](_0x46b3ba=>({'key':_0x46b3ba,'name':IDE_CONFIGS[_0x46b3ba]['name'],'description':IDE_CONFIGS[_0x46b3ba][_0xe9de2e(0xa3)]})),{'key':_0xe9de2e(0xa6),'name':_0x27dc12(_0xe9de2e(0xca)),'description':_0x27dc12('mcp.ui.otherIDEDescription')}],[_0x27dc12]),_0x114d46=useIDESelection({'ideList':_0x138ec0,'preselectedIDEs':preselectedIDEs,'multiSelect':!![]});useEffect(()=>{const _0x5be60f=_0xe9de2e;preselectedIDEs[_0x5be60f(0xb2)]>0x0&&_0x114d46[_0x5be60f(0xd1)][_0x5be60f(0xac)]>0x0&&_0x165f79();},[]),useInput((_0x35cd90,_0x32ce18)=>{const _0x54ce42=_0xe9de2e;if(_0x392a52===_0x54ce42(0xbb)){if(_0x35cd90==='q'||_0x35cd90==='Q'){_0x4fd9f9();return;}if(_0x32ce18['return']){if(_0x114d46[_0x54ce42(0xd1)]['size']===0x0){_0x114d46[_0x54ce42(0xbc)](_0x27dc12('mcp.ui.selectAtLeastOne'));return;}_0x165f79();return;}_0x114d46[_0x54ce42(0xb7)](_0x35cd90,_0x32ce18);}_0x392a52===_0x54ce42(0xc1)&&_0x4fd9f9();});async function _0x165f79(){const _0xab4216=_0xe9de2e,_0x12be02=_0x114d46[_0xab4216(0xa4)]();_0x542065([{'label':_0x27dc12('mcp.ui.selectedIDE'),'value':_0x27dc12(_0xab4216(0xb0),{'count':_0x114d46[_0xab4216(0xd1)]['size']})}]),_0x4bbfe5('configuring');const _0x3ae035=[];for(const _0x337f8e of _0x12be02){try{const _0x1461f7=await configureMcp(_0x337f8e);_0x3ae035[_0xab4216(0xb3)]({'ide':_0x138ec0[_0xab4216(0xad)](_0x52e9eb=>_0x52e9eb[_0xab4216(0xb8)]===_0x337f8e)?.[_0xab4216(0xa5)]||_0x337f8e,'status':_0x1461f7[_0xab4216(0xbd)]?_0xab4216(0xc5):_0x1461f7[_0xab4216(0xa8)]?_0xab4216(0xa8):_0xab4216(0xc6),'message':_0x1461f7[_0xab4216(0xcb)]});}catch(_0x34f9cd){_0x3ae035[_0xab4216(0xb3)]({'ide':_0x138ec0['find'](_0x4ddd7d=>_0x4ddd7d[_0xab4216(0xb8)]===_0x337f8e)?.[_0xab4216(0xa5)]||_0x337f8e,'status':'error','message':_0x34f9cd instanceof Error?_0x34f9cd[_0xab4216(0xcb)]:String(_0x34f9cd)});}}_0x211a14(_0x3ae035),_0x4bbfe5(_0xab4216(0xc1)),setTimeout(()=>{_0x4fd9f9();},0x1388);}return a60_0x15c12c(Box,{'flexDirection':_0xe9de2e(0xd0),'marginTop':0x1,'children':[_0x392a52===_0xe9de2e(0xbb)&&a60_0x2e31a7(IDESelector,{'ideList':_0x138ec0,'title':_0x27dc12(_0xe9de2e(0xab)),'selection':_0x114d46}),_0x392a52===_0xe9de2e(0xaa)&&a60_0x15c12c(a60_0x2dfb33,{'children':[_0x2389de['map']((_0x50b4c0,_0x33928c)=>a60_0x15c12c(Box,{'children':[a60_0x15c12c(Text,{'color':_0xe9de2e(0xb5),'children':['√\x20',_0x50b4c0[_0xe9de2e(0xa9)],':\x20']}),a60_0x2e31a7(Text,{'color':_0xe9de2e(0xd5),'children':_0x50b4c0['value']})]},_0x33928c)),a60_0x2e31a7(Box,{'marginTop':0x1,'children':a60_0x2e31a7(Text,{'children':_0x27dc12(_0xe9de2e(0xae))})})]}),_0x392a52===_0xe9de2e(0xc1)&&a60_0x2e31a7(DoneStep,{'configResults':_0x5e81f7})]});}function DoneStep({configResults:_0x1fafcd}){const _0x4ff6ff=a60_0x5027,{t:_0x28a6a1}=useI18n(),_0x2a8310=_0x1fafcd['every'](_0x3b0b52=>_0x3b0b52[_0x4ff6ff(0xce)]===_0x4ff6ff(0xa8)),_0xd62e2=_0x1fafcd[_0x4ff6ff(0xc9)](_0x3aa88c=>_0x3aa88c['status']==='manual'),_0x384400=_0x1fafcd[_0x4ff6ff(0xc9)](_0x3eb98a=>_0x3eb98a[_0x4ff6ff(0xce)]===_0x4ff6ff(0xc6));return a60_0x15c12c(a60_0x2dfb33,{'children':[a60_0x2e31a7(Box,{'children':_0x2a8310?a60_0x2e31a7(Text,{'color':_0x4ff6ff(0xb5),'children':_0x28a6a1('mcp.ui.completed')}):_0xd62e2?a60_0x2e31a7(Text,{'color':_0x4ff6ff(0xcd),'children':_0x28a6a1('mcp.ui.partialManual')}):_0x384400?a60_0x2e31a7(Text,{'color':'red','children':_0x28a6a1(_0x4ff6ff(0xbe))}):a60_0x2e31a7(Text,{'color':_0x4ff6ff(0xcd),'children':_0x28a6a1('mcp.ui.manualRequired')})}),_0x1fafcd[_0x4ff6ff(0xc2)]((_0x19f57f,_0x5d660a)=>a60_0x15c12c(Box,{'flexDirection':'column','children':[a60_0x15c12c(Text,{'color':_0x19f57f[_0x4ff6ff(0xce)]==='success'?'green':_0x19f57f[_0x4ff6ff(0xce)]==='manual'?_0x4ff6ff(0xcd):_0x4ff6ff(0xba),'children':[_0x19f57f[_0x4ff6ff(0xce)]===_0x4ff6ff(0xa8)?_0x4ff6ff(0xb1):_0x19f57f[_0x4ff6ff(0xce)]===_0x4ff6ff(0xc5)?_0x4ff6ff(0xd6):_0x4ff6ff(0xb9),'\x20',_0x19f57f[_0x4ff6ff(0xd7)],':']}),a60_0x2e31a7(Text,{'color':_0x19f57f[_0x4ff6ff(0xce)]===_0x4ff6ff(0xa8)?_0x4ff6ff(0xd9):_0x19f57f['status']===_0x4ff6ff(0xc5)?_0x4ff6ff(0xcd):_0x4ff6ff(0xba),'children':_0x19f57f[_0x4ff6ff(0xcb)]})]},_0x5d660a)),a60_0x2e31a7(Box,{'marginTop':0x1,'children':a60_0x2e31a7(Text,{'color':_0x4ff6ff(0xcf),'children':_0x28a6a1(_0x4ff6ff(0xc3))})})]});}async function configureMcp(_0x38da84){const _0x2b268a=a60_0x5027,_0x3eeaab=process['cwd']();switch(_0x38da84){case _0x2b268a(0xb4):return configureCursorMcp(_0x3eeaab);case _0x2b268a(0xa2):return configureClaudeMcp(_0x3eeaab);case'other':return showOtherMcpGuide(_0x3eeaab);default:throw new Error(a60_0x19ab1d['t'](_0x2b268a(0xc8),{'ide':_0x38da84}));}}
1
+ (function(_0x45452b,_0x1afb90){const _0xdd148=a58_0x3b6a,_0x331321=_0x45452b();while(!![]){try{const _0x3e2345=parseInt(_0xdd148(0x14e))/0x1*(parseInt(_0xdd148(0x135))/0x2)+-parseInt(_0xdd148(0x15c))/0x3*(-parseInt(_0xdd148(0x151))/0x4)+-parseInt(_0xdd148(0x13d))/0x5+-parseInt(_0xdd148(0x14c))/0x6+parseInt(_0xdd148(0x152))/0x7+parseInt(_0xdd148(0x13e))/0x8*(parseInt(_0xdd148(0x14a))/0x9)+parseInt(_0xdd148(0x154))/0xa*(-parseInt(_0xdd148(0x14f))/0xb);if(_0x3e2345===_0x1afb90)break;else _0x331321['push'](_0x331321['shift']());}catch(_0x55386f){_0x331321['push'](_0x331321['shift']());}}}(a58_0x5081,0x8e8a5));import{jsx as a58_0x2f18c8,jsxs as a58_0x4a5d70,Fragment as a58_0x374f57}from'react/jsx-runtime';function a58_0x3b6a(_0x115c83,_0x48d4dc){_0x115c83=_0x115c83-0x131;const _0x508179=a58_0x5081();let _0x3b6a08=_0x508179[_0x115c83];return _0x3b6a08;}import{useState,useEffect,useMemo}from'react';import{Text,Box,useInput,useApp}from'ink';import{MCP_IDES,IDE_CONFIGS}from'../utils/ai_config.js';import{IDESelector,useIDESelection}from'../ui/IDESelector.js';import{configureCursorMcp,configureClaudeMcp,showOtherMcpGuide}from'./mcp-installer.js';import{useI18n}from'../i18n/hooks.js';import a58_0x4331e8 from'../i18n/index.js';export function McpInstallUI({preselectedIDEs:preselectedIDEs=[]}){const _0x1122bc=a58_0x3b6a,{t:_0x2e11b2}=useI18n(),{exit:_0x3a01f1}=useApp(),[_0x27dec0,_0x2c23db]=useState(_0x1122bc(0x162)),[_0xa732e3,_0x385b2d]=useState([]),[_0x50df5e,_0x17337a]=useState([]),_0x4c08f4=useMemo(()=>[...Array['from'](MCP_IDES)[_0x1122bc(0x13b)](_0x112edd=>({'key':_0x112edd,'name':IDE_CONFIGS[_0x112edd][_0x1122bc(0x148)],'description':IDE_CONFIGS[_0x112edd][_0x1122bc(0x145)]})),{'key':_0x1122bc(0x141),'name':_0x2e11b2(_0x1122bc(0x131)),'description':_0x2e11b2(_0x1122bc(0x143))}],[_0x2e11b2]),_0x3a00ec=useIDESelection({'ideList':_0x4c08f4,'preselectedIDEs':preselectedIDEs,'multiSelect':!![]});useEffect(()=>{const _0x24bd5b=_0x1122bc;preselectedIDEs[_0x24bd5b(0x13c)]>0x0&&_0x3a00ec['selectedIndexes']['size']>0x0&&_0xf41e24();},[]),useInput((_0x1d3b70,_0x21e3fc)=>{const _0x553655=_0x1122bc;if(_0x27dec0===_0x553655(0x162)){if(_0x1d3b70==='q'||_0x1d3b70==='Q'){_0x3a01f1();return;}if(_0x21e3fc[_0x553655(0x133)]){if(_0x3a00ec[_0x553655(0x165)][_0x553655(0x153)]===0x0){_0x3a00ec['setErrorMsg'](_0x2e11b2(_0x553655(0x13a)));return;}_0xf41e24();return;}_0x3a00ec[_0x553655(0x134)](_0x1d3b70,_0x21e3fc);}_0x27dec0===_0x553655(0x15d)&&_0x3a01f1();});async function _0xf41e24(){const _0x32416b=_0x1122bc,_0x1f7731=_0x3a00ec['getSelectedIDEs']();_0x385b2d([{'label':_0x2e11b2(_0x32416b(0x13f)),'value':_0x2e11b2(_0x32416b(0x157),{'count':_0x3a00ec[_0x32416b(0x165)]['size']})}]),_0x2c23db(_0x32416b(0x159));const _0x14a640=[];for(const _0x29e2bf of _0x1f7731){try{const _0x354158=await configureMcp(_0x29e2bf);_0x14a640[_0x32416b(0x15f)]({'ide':_0x4c08f4[_0x32416b(0x14d)](_0x3465c2=>_0x3465c2['key']===_0x29e2bf)?.[_0x32416b(0x148)]||_0x29e2bf,'status':_0x354158[_0x32416b(0x139)]?_0x32416b(0x167):_0x354158[_0x32416b(0x138)]?_0x32416b(0x138):'error','message':_0x354158['message']});}catch(_0x10df87){_0x14a640[_0x32416b(0x15f)]({'ide':_0x4c08f4[_0x32416b(0x14d)](_0x439153=>_0x439153[_0x32416b(0x163)]===_0x29e2bf)?.['name']||_0x29e2bf,'status':'error','message':_0x10df87 instanceof Error?_0x10df87[_0x32416b(0x158)]:String(_0x10df87)});}}_0x17337a(_0x14a640),_0x2c23db(_0x32416b(0x15d)),setTimeout(()=>{_0x3a01f1();},0x1388);}return a58_0x4a5d70(Box,{'flexDirection':'column','marginTop':0x1,'children':[_0x27dec0===_0x1122bc(0x162)&&a58_0x2f18c8(IDESelector,{'ideList':_0x4c08f4,'title':_0x2e11b2(_0x1122bc(0x160)),'selection':_0x3a00ec}),_0x27dec0===_0x1122bc(0x159)&&a58_0x4a5d70(a58_0x374f57,{'children':[_0xa732e3[_0x1122bc(0x13b)]((_0x4edf2d,_0x57d9a3)=>a58_0x4a5d70(Box,{'children':[a58_0x4a5d70(Text,{'color':_0x1122bc(0x147),'children':['√\x20',_0x4edf2d[_0x1122bc(0x144)],':\x20']}),a58_0x2f18c8(Text,{'color':_0x1122bc(0x164),'children':_0x4edf2d[_0x1122bc(0x156)]})]},_0x57d9a3)),a58_0x2f18c8(Box,{'marginTop':0x1,'children':a58_0x2f18c8(Text,{'children':_0x2e11b2('mcp.ui.configuring')})})]}),_0x27dec0===_0x1122bc(0x15d)&&a58_0x2f18c8(DoneStep,{'configResults':_0x50df5e})]});}function DoneStep({configResults:_0x99d5a3}){const _0x3ae246=a58_0x3b6a,{t:_0x231acc}=useI18n(),_0x2aac29=_0x99d5a3[_0x3ae246(0x15a)](_0xbb67eb=>_0xbb67eb[_0x3ae246(0x142)]===_0x3ae246(0x138)),_0x50d8a1=_0x99d5a3['some'](_0x12e70d=>_0x12e70d[_0x3ae246(0x142)]==='manual'),_0x25fe08=_0x99d5a3[_0x3ae246(0x149)](_0x5f0759=>_0x5f0759[_0x3ae246(0x142)]==='error');return a58_0x4a5d70(a58_0x374f57,{'children':[a58_0x2f18c8(Box,{'children':_0x2aac29?a58_0x2f18c8(Text,{'color':_0x3ae246(0x147),'children':_0x231acc('mcp.ui.completed')}):_0x50d8a1?a58_0x2f18c8(Text,{'color':'yellow','children':_0x231acc(_0x3ae246(0x132))}):_0x25fe08?a58_0x2f18c8(Text,{'color':'red','children':_0x231acc(_0x3ae246(0x150))}):a58_0x2f18c8(Text,{'color':_0x3ae246(0x161),'children':_0x231acc(_0x3ae246(0x155))})}),_0x99d5a3[_0x3ae246(0x13b)]((_0x7bf2e8,_0x4b376d)=>a58_0x4a5d70(Box,{'flexDirection':_0x3ae246(0x166),'children':[a58_0x4a5d70(Text,{'color':_0x7bf2e8[_0x3ae246(0x142)]===_0x3ae246(0x138)?_0x3ae246(0x147):_0x7bf2e8[_0x3ae246(0x142)]===_0x3ae246(0x167)?_0x3ae246(0x161):_0x3ae246(0x137),'children':[_0x7bf2e8[_0x3ae246(0x142)]==='success'?_0x3ae246(0x168):_0x7bf2e8[_0x3ae246(0x142)]===_0x3ae246(0x167)?'\x20\x20⚠️':_0x3ae246(0x15e),'\x20',_0x7bf2e8['ide'],':']}),a58_0x2f18c8(Text,{'color':_0x7bf2e8[_0x3ae246(0x142)]===_0x3ae246(0x138)?_0x3ae246(0x140):_0x7bf2e8['status']==='manual'?_0x3ae246(0x161):'red','children':_0x7bf2e8['message']})]},_0x4b376d)),a58_0x2f18c8(Box,{'marginTop':0x1,'children':a58_0x2f18c8(Text,{'color':_0x3ae246(0x146),'children':_0x231acc(_0x3ae246(0x136))})})]});}async function configureMcp(_0x5d567a){const _0x5c5cb7=a58_0x3b6a,_0x31aa56=process[_0x5c5cb7(0x15b)]();switch(_0x5d567a){case _0x5c5cb7(0x14b):return configureCursorMcp(_0x31aa56);case'claude':return configureClaudeMcp(_0x31aa56);case'other':return showOtherMcpGuide(_0x31aa56);default:throw new Error(a58_0x4331e8['t']('mcp.ui.unsupportedIDE',{'ide':_0x5d567a}));}}function a58_0x5081(){const _0x25fdc6=['gray','green','name','some','38079HeAlno','cursor','2714040rIYQFS','find','346837gsIfcv','1562429VhSeRT','mcp.ui.failed','1396cuJlus','1087555tyjScN','size','70QVFmZx','mcp.ui.manualRequired','value','mcp.ui.count','message','configuring','every','cwd','3369IegoEc','done','\x20\x20✗','push','mcp.ui.title','yellow','selecting','key','cyan','selectedIndexes','column','manual','\x20\x20✓','mcp.ui.otherIDE','mcp.ui.partialManual','return','handleKeyDown','6bQtVBy','mcp.ui.pressAnyKeyToExit','red','success','needsManualAction','mcp.ui.selectAtLeastOne','map','length','938820WfdiNP','1192PjSWHy','mcp.ui.selectedIDE','white','other','status','mcp.ui.otherIDEDescription','label','description'];a58_0x5081=function(){return _0x25fdc6;};return a58_0x5081();}
package/lib/mcp/claude.js CHANGED
@@ -1 +1 @@
1
- (function(_0x47e56c,_0x2e2c4a){const _0x15c890=a61_0xf4c0,_0x195a35=_0x47e56c();while(!![]){try{const _0x23db63=parseInt(_0x15c890(0x111))/0x1+-parseInt(_0x15c890(0x10d))/0x2*(-parseInt(_0x15c890(0x114))/0x3)+-parseInt(_0x15c890(0x113))/0x4+-parseInt(_0x15c890(0x10e))/0x5+parseInt(_0x15c890(0x115))/0x6+parseInt(_0x15c890(0x112))/0x7*(parseInt(_0x15c890(0x10a))/0x8)+-parseInt(_0x15c890(0x110))/0x9;if(_0x23db63===_0x2e2c4a)break;else _0x195a35['push'](_0x195a35['shift']());}catch(_0x254167){_0x195a35['push'](_0x195a35['shift']());}}}(a61_0xcfa0,0x8c42a));import{configureClaudeMcp as a61_0x4ca991}from'./mcp-installer.js';import a61_0x25ae93 from'../i18n/index.js';export async function configureClaudeMcp(){const _0x148338=a61_0xf4c0,_0x5b37e4=process[_0x148338(0x106)](),_0x1ef42e=a61_0x4ca991(_0x5b37e4);_0x1ef42e[_0x148338(0x10f)]?(console[_0x148338(0x10b)]('\x0a📋\x20'+_0x1ef42e[_0x148338(0x108)]+'\x0a'),process[_0x148338(0x10c)](0x0)):(console[_0x148338(0x109)](a61_0x25ae93['t'](_0x148338(0x107),{'error':_0x1ef42e['message']})),process['exit'](0x1));}function a61_0xf4c0(_0x5ccf61,_0x5e828c){_0x5ccf61=_0x5ccf61-0x106;const _0xcfa05f=a61_0xcfa0();let _0xf4c0ff=_0xcfa05f[_0x5ccf61];return _0xf4c0ff;}function a61_0xcfa0(){const _0x29f2e5=['13407372XXezWT','1121204jYhJAa','47705ryyfLU','46700zkvHPO','5853Vaeoyq','2242650lAOyLt','cwd','mcp.claudeConfig.error','message','error','648yYqIxi','log','exit','982HTDkmz','4645230ItGrQa','success'];a61_0xcfa0=function(){return _0x29f2e5;};return a61_0xcfa0();}
1
+ function a59_0xc931(_0x5de158,_0x5c175b){_0x5de158=_0x5de158-0x1b2;const _0xa87c8a=a59_0xa87c();let _0xc9312b=_0xa87c8a[_0x5de158];return _0xc9312b;}(function(_0x57491b,_0x13b060){const _0x3d13f3=a59_0xc931,_0x58b9f2=_0x57491b();while(!![]){try{const _0x4020bb=-parseInt(_0x3d13f3(0x1bc))/0x1+-parseInt(_0x3d13f3(0x1ba))/0x2+-parseInt(_0x3d13f3(0x1c0))/0x3+-parseInt(_0x3d13f3(0x1be))/0x4*(parseInt(_0x3d13f3(0x1bf))/0x5)+-parseInt(_0x3d13f3(0x1b5))/0x6*(parseInt(_0x3d13f3(0x1b9))/0x7)+parseInt(_0x3d13f3(0x1b3))/0x8+parseInt(_0x3d13f3(0x1bb))/0x9;if(_0x4020bb===_0x13b060)break;else _0x58b9f2['push'](_0x58b9f2['shift']());}catch(_0xbcf229){_0x58b9f2['push'](_0x58b9f2['shift']());}}}(a59_0xa87c,0x21663));import{configureClaudeMcp as a59_0x5f3721}from'./mcp-installer.js';import a59_0x5a9743 from'../i18n/index.js';function a59_0xa87c(){const _0x304f44=['log','exit','\x0a📋\x20','7WfYjBC','79528bqmFxB','7900803epAtLK','3651qQIXSY','cwd','4PuMDjp','1172450ioMdbH','668127pCVfpc','mcp.claudeConfig.error','success','158096YGTxMO','message','1561272QXIwMh'];a59_0xa87c=function(){return _0x304f44;};return a59_0xa87c();}export async function configureClaudeMcp(){const _0x2efdfe=a59_0xc931,_0x4f3441=process[_0x2efdfe(0x1bd)](),_0xe597b5=a59_0x5f3721(_0x4f3441);_0xe597b5[_0x2efdfe(0x1b2)]?(console[_0x2efdfe(0x1b6)](_0x2efdfe(0x1b8)+_0xe597b5[_0x2efdfe(0x1b4)]+'\x0a'),process[_0x2efdfe(0x1b7)](0x0)):(console['error'](a59_0x5a9743['t'](_0x2efdfe(0x1c1),{'error':_0xe597b5['message']})),process[_0x2efdfe(0x1b7)](0x1));}
package/lib/mcp/cursor.js CHANGED
@@ -1 +1 @@
1
- function a62_0x415d(_0xdaa75d,_0x307030){_0xdaa75d=_0xdaa75d-0x10f;const _0x991ab3=a62_0x991a();let _0x415dfb=_0x991ab3[_0xdaa75d];return _0x415dfb;}(function(_0x3a232,_0x7a3f14){const _0x606c5a=a62_0x415d,_0x59086e=_0x3a232();while(!![]){try{const _0x32d0f7=parseInt(_0x606c5a(0x113))/0x1+-parseInt(_0x606c5a(0x115))/0x2*(-parseInt(_0x606c5a(0x11b))/0x3)+-parseInt(_0x606c5a(0x111))/0x4*(-parseInt(_0x606c5a(0x116))/0x5)+-parseInt(_0x606c5a(0x114))/0x6+-parseInt(_0x606c5a(0x11d))/0x7+-parseInt(_0x606c5a(0x11e))/0x8*(-parseInt(_0x606c5a(0x119))/0x9)+-parseInt(_0x606c5a(0x11a))/0xa;if(_0x32d0f7===_0x7a3f14)break;else _0x59086e['push'](_0x59086e['shift']());}catch(_0x27148a){_0x59086e['push'](_0x59086e['shift']());}}}(a62_0x991a,0xacf6c));function a62_0x991a(){const _0xb0ae02=['mcp.cursorConfig.configInfo','cwd','message','297472jaeKmC','log','217443CAbPxR','3207012txRYUa','88670OqdTyA','10aXvugJ','mcp.cursorConfig.success','error','198eMHiqL','3735290VofafI','15UERuec','exit','1513939xuAjWI','452696cxVXPh'];a62_0x991a=function(){return _0xb0ae02;};return a62_0x991a();}import{configureCursorMcp as a62_0x1dd540}from'./mcp-installer.js';import a62_0xb5e884 from'../i18n/index.js';export async function configureCursorMcp(){const _0x4428ad=a62_0x415d,_0x12c25d=process[_0x4428ad(0x10f)](),_0x19699a=await a62_0x1dd540(_0x12c25d);_0x19699a['success']?(console[_0x4428ad(0x112)](a62_0xb5e884['t'](_0x4428ad(0x117))),console[_0x4428ad(0x112)](a62_0xb5e884['t'](_0x4428ad(0x11f))),console[_0x4428ad(0x112)]('\x20\x20'+_0x19699a[_0x4428ad(0x110)]+'\x0a'),console['log'](a62_0xb5e884['t']('mcp.cursorConfig.usageHint')),console[_0x4428ad(0x112)](a62_0xb5e884['t']('mcp.cursorConfig.restartRequired')),process[_0x4428ad(0x11c)](0x0)):(console[_0x4428ad(0x118)](a62_0xb5e884['t']('mcp.cursorConfig.error',{'error':_0x19699a['message']})),process['exit'](0x1));}
1
+ (function(_0x73d82d,_0x22863a){const _0x26685a=a60_0x5836,_0x2418b1=_0x73d82d();while(!![]){try{const _0x1c465f=parseInt(_0x26685a(0x134))/0x1+-parseInt(_0x26685a(0x12f))/0x2*(-parseInt(_0x26685a(0x12b))/0x3)+parseInt(_0x26685a(0x131))/0x4+-parseInt(_0x26685a(0x12e))/0x5*(parseInt(_0x26685a(0x12c))/0x6)+-parseInt(_0x26685a(0x12d))/0x7*(-parseInt(_0x26685a(0x132))/0x8)+parseInt(_0x26685a(0x133))/0x9+parseInt(_0x26685a(0x130))/0xa*(-parseInt(_0x26685a(0x127))/0xb);if(_0x1c465f===_0x22863a)break;else _0x2418b1['push'](_0x2418b1['shift']());}catch(_0x5686b1){_0x2418b1['push'](_0x2418b1['shift']());}}}(a60_0x5c8f,0x6d1ea));function a60_0x5836(_0x35711e,_0x5c4793){_0x35711e=_0x35711e-0x127;const _0x5c8f38=a60_0x5c8f();let _0x5836a6=_0x5c8f38[_0x35711e];return _0x5836a6;}import{configureCursorMcp as a60_0x2424ff}from'./mcp-installer.js';import a60_0x3afeee from'../i18n/index.js';function a60_0x5c8f(){const _0x9a6bf0=['3486yNKXnx','25iMitch','1466jBTzhW','10nqQXUu','165884YKVNnD','10232WTyjIW','7060077avCJYo','186801nmXZQe','mcp.cursorConfig.restartRequired','cwd','exit','message','mcp.cursorConfig.success','mcp.cursorConfig.configInfo','21842579NFXPqd','log','success','error','3561oSqTDI','104514AhBIrC'];a60_0x5c8f=function(){return _0x9a6bf0;};return a60_0x5c8f();}export async function configureCursorMcp(){const _0x158a6a=a60_0x5836,_0x236b3c=process[_0x158a6a(0x136)](),_0x14e79e=await a60_0x2424ff(_0x236b3c);_0x14e79e[_0x158a6a(0x129)]?(console[_0x158a6a(0x128)](a60_0x3afeee['t'](_0x158a6a(0x139))),console[_0x158a6a(0x128)](a60_0x3afeee['t'](_0x158a6a(0x13a))),console['log']('\x20\x20'+_0x14e79e['message']+'\x0a'),console[_0x158a6a(0x128)](a60_0x3afeee['t']('mcp.cursorConfig.usageHint')),console[_0x158a6a(0x128)](a60_0x3afeee['t'](_0x158a6a(0x135))),process[_0x158a6a(0x137)](0x0)):(console[_0x158a6a(0x12a)](a60_0x3afeee['t']('mcp.cursorConfig.error',{'error':_0x14e79e[_0x158a6a(0x138)]})),process['exit'](0x1));}
package/lib/mcp/main.js CHANGED
@@ -1 +1 @@
1
- (function(_0x4cabcc,_0x33721){const _0x1b8ead=a63_0x5440,_0x30b71f=_0x4cabcc();while(!![]){try{const _0x4150cb=parseInt(_0x1b8ead(0xc3))/0x1+-parseInt(_0x1b8ead(0xab))/0x2+parseInt(_0x1b8ead(0xc6))/0x3*(-parseInt(_0x1b8ead(0xaf))/0x4)+parseInt(_0x1b8ead(0x8e))/0x5+-parseInt(_0x1b8ead(0xb6))/0x6*(-parseInt(_0x1b8ead(0x92))/0x7)+-parseInt(_0x1b8ead(0x93))/0x8*(-parseInt(_0x1b8ead(0xa4))/0x9)+parseInt(_0x1b8ead(0xb0))/0xa*(-parseInt(_0x1b8ead(0xbe))/0xb);if(_0x4150cb===_0x33721)break;else _0x30b71f['push'](_0x30b71f['shift']());}catch(_0x373b){_0x30b71f['push'](_0x30b71f['shift']());}}}(a63_0x5d28,0x750cb));import{configureCursorMcp}from'./cursor.js';import{configureClaudeMcp}from'./claude.js';import{logger}from'../utils/logger.js';import{createInterface}from'node:readline';import{MCP_IDES,IDE_CONFIGS}from'../utils/ai_config.js';import a63_0x42ab86 from'../i18n/index.js';export async function mcpCommand(_0x536bf1,_0x3f5101,_0x2100bc){const _0x12429f=a63_0x5440;logger[_0x12429f(0x8b)](process[_0x12429f(0xa7)]());if(_0x2100bc?.[_0x12429f(0xc7)]||_0x536bf1===_0x12429f(0xa3)){showHelp();return;}_0x536bf1!==_0x12429f(0xb9)&&(console[_0x12429f(0xb7)](a63_0x42ab86['t'](_0x12429f(0xc1),{'cmd':_0x536bf1||'-'})),console[_0x12429f(0x9d)](a63_0x42ab86['t'](_0x12429f(0xbb))),console['log'](a63_0x42ab86['t'](_0x12429f(0xb4))),console[_0x12429f(0x9d)](a63_0x42ab86['t'](_0x12429f(0xbd))),logger[_0x12429f(0xb7)](_0x12429f(0x9e),a63_0x42ab86['t']('mcp.error.unsupportedCommand',{'cmd':_0x536bf1||'-'})),process[_0x12429f(0xb1)](0x1));let _0x46758c;if(_0x2100bc?.['mcpCursor'])_0x46758c=_0x12429f(0x87);else{if(_0x2100bc?.[_0x12429f(0xc8)])_0x46758c=_0x12429f(0x8d);else{if(_0x3f5101?.[0x0]){const _0x29099e=_0x3f5101[0x0][_0x12429f(0xa1)]();MCP_IDES[_0x12429f(0x95)](_0x29099e)&&(_0x46758c=_0x29099e);}}}await installMcp(_0x46758c);}function a63_0x5440(_0x326ef8,_0x318242){_0x326ef8=_0x326ef8-0x86;const _0x5d28ad=a63_0x5d28();let _0x54408a=_0x5d28ad[_0x326ef8];return _0x54408a;}function showHelp(){const _0x50b3a0=a63_0x5440;console[_0x50b3a0(0x9d)]('\x0a'+a63_0x42ab86['t']('mcp.help.title')+'\x0a\x0a'+a63_0x42ab86['t']('mcp.help.usage.help')+'\x0a'+a63_0x42ab86['t']('mcp.help.usage.install')+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xa6))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0x8f))+'\x0a\x0a'+a63_0x42ab86['t'](_0x50b3a0(0x96))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xb3))+_0x50b3a0(0xa2)+a63_0x42ab86['t']('mcp.help.configMethodsInteractiveHint')+'\x0a\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xad))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0x8c))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xae))+'\x0a\x0a'+a63_0x42ab86['t'](_0x50b3a0(0x94))+'\x0a'+Array[_0x50b3a0(0xa5)](MCP_IDES)[_0x50b3a0(0x9a)]((_0x4af04d,_0x214ecc)=>'\x20\x20'+(_0x214ecc+0x1)+'.\x20'+IDE_CONFIGS[_0x4af04d]['name']+_0x50b3a0(0xc2)+IDE_CONFIGS[_0x4af04d][_0x50b3a0(0x9c)])[_0x50b3a0(0xb8)]('\x0a')+'\x0a\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xc0))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0x89))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xaa))+'\x0a\x0a'+a63_0x42ab86['t'](_0x50b3a0(0xbf))+'\x0a'+a63_0x42ab86['t'](_0x50b3a0(0x8a))+'\x0a\x0a'+a63_0x42ab86['t']('mcp.help.configGuide')+_0x50b3a0(0x97));}async function selectIDE(){const _0x2c932c=a63_0x5440;console['log'](a63_0x42ab86['t']('mcp.select.chooseIDE'));const _0x3ce2be=Array[_0x2c932c(0xa5)](MCP_IDES);return _0x3ce2be[_0x2c932c(0x91)]((_0x63ab80,_0x2e29ee)=>{const _0x4e1358=_0x2c932c;console['log']('\x20\x20'+(_0x2e29ee+0x1)+'.\x20'+IDE_CONFIGS[_0x63ab80]['name']+'\x20-\x20'+IDE_CONFIGS[_0x63ab80][_0x4e1358(0x9c)]);}),console[_0x2c932c(0x9d)](a63_0x42ab86['t'](_0x2c932c(0xa0))),console['log'](a63_0x42ab86['t'](_0x2c932c(0xa9))),new Promise(_0x4f0c35=>{const _0x28a45f=_0x2c932c,_0x4ea6d9=createInterface({'input':process[_0x28a45f(0xbc)],'output':process[_0x28a45f(0xba)]});_0x4ea6d9[_0x28a45f(0x86)](a63_0x42ab86['t'](_0x28a45f(0xb2)),_0xdad3a3=>{const _0x2e7dc6=_0x28a45f;_0x4ea6d9[_0x2e7dc6(0xac)]();const _0x335578=_0xdad3a3[_0x2e7dc6(0x9b)]()[_0x2e7dc6(0xa1)]();(_0x335578==='q'||_0x335578===_0x2e7dc6(0x88)||_0x335578===_0x2e7dc6(0xb1))&&(console[_0x2e7dc6(0x9d)](a63_0x42ab86['t'](_0x2e7dc6(0xb5))),process[_0x2e7dc6(0xb1)](0x0));const _0x433c0c=parseInt(_0x335578,0xa);if(!isNaN(_0x433c0c)&&_0x433c0c>=0x1&&_0x433c0c<=_0x3ce2be[_0x2e7dc6(0x9f)]){const _0x2a75f1=_0x3ce2be[_0x433c0c-0x1];_0x2a75f1&&_0x4f0c35(_0x2a75f1);return;}console[_0x2e7dc6(0x9d)](a63_0x42ab86['t'](_0x2e7dc6(0x98),{'count':_0x3ce2be[_0x2e7dc6(0x9f)]})),process[_0x2e7dc6(0xb1)](0x1);});});}async function installMcp(_0x17ba3b){const _0x250a51=a63_0x5440;let _0x1095a6;!_0x17ba3b?_0x1095a6=await selectIDE():_0x1095a6=_0x17ba3b;try{const _0x20c016=IDE_CONFIGS[_0x1095a6];console[_0x250a51(0x9d)](a63_0x42ab86['t'](_0x250a51(0xc4),{'name':_0x20c016[_0x250a51(0x99)]}));switch(_0x1095a6){case _0x250a51(0x87):await configureCursorMcp();break;case'claude':await configureClaudeMcp();break;}}catch(_0x3fde3e){logger[_0x250a51(0xb7)](_0x250a51(0xa8),a63_0x42ab86['t'](_0x250a51(0xc5),{'error':_0x3fde3e instanceof Error?_0x3fde3e[_0x250a51(0x90)]:String(_0x3fde3e)}),{'error':_0x3fde3e instanceof Error?_0x3fde3e[_0x250a51(0x90)]:String(_0x3fde3e)}),console[_0x250a51(0xb7)](a63_0x42ab86['t'](_0x250a51(0xc5),{'error':_0x3fde3e instanceof Error?_0x3fde3e[_0x250a51(0x90)]:String(_0x3fde3e)})),process[_0x250a51(0xb1)](0x1);}}function a63_0x5d28(){const _0x5a1b4e=['toLowerCase','\x0a\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x0a','--help','1513611ijgTRo','from','mcp.help.usage.installCursor','cwd','mcp-install','mcp.select.enterNumber','mcp.help.exampleInstallHint','1237514TutowF','close','mcp.help.configMethodsDirect','mcp.help.configMethodsDirectClaude','1380SqVYmE','10YkHJDh','exit','mcp.select.prompt','mcp.help.configMethodsInteractive','mcp.help.command.install','mcp.select.cancelled','294JTfbyL','error','join','install','stdout','mcp.help.availableCommands','stdin','mcp.help.command.help','2694054LtLAmN','mcp.help.exampleInstallCursor','mcp.help.examples','mcp.error.unsupportedCommand','\x20-\x20','625626xZjaJn','mcp.installFlow.configuring','mcp.installFlow.error','5145pgLHBJ','help','mcpClaude','question','cursor','quit','mcp.help.exampleInstall','mcp.help.exampleInstallCursorHint','setLogPath','mcp.help.configMethodsDirectCursor','claude','3748555VngTwD','mcp.help.usage.installClaude','message','forEach','55895COtTPn','8zIRwce','mcp.help.supportedIDEs','has','mcp.help.configMethods','\x0a\x20\x20https://help.yuntoo.com/mcp/config-guide\x0a','mcp.select.invalidChoice','name','map','trim','description','log','mcp','length','mcp.select.cancel'];a63_0x5d28=function(){return _0x5a1b4e;};return a63_0x5d28();}
1
+ (function(_0x1cf7f4,_0x1766dc){const _0x34e680=a61_0x564f,_0x55767c=_0x1cf7f4();while(!![]){try{const _0x35483e=-parseInt(_0x34e680(0x127))/0x1*(-parseInt(_0x34e680(0x10c))/0x2)+parseInt(_0x34e680(0x123))/0x3*(-parseInt(_0x34e680(0x112))/0x4)+parseInt(_0x34e680(0x11f))/0x5+parseInt(_0x34e680(0x11c))/0x6+-parseInt(_0x34e680(0xfe))/0x7+-parseInt(_0x34e680(0x120))/0x8+parseInt(_0x34e680(0xfb))/0x9;if(_0x35483e===_0x1766dc)break;else _0x55767c['push'](_0x55767c['shift']());}catch(_0x209606){_0x55767c['push'](_0x55767c['shift']());}}}(a61_0x5e67,0x46b3e));function a61_0x564f(_0x37078e,_0x188286){_0x37078e=_0x37078e-0xfa;const _0x5e6725=a61_0x5e67();let _0x564fe0=_0x5e6725[_0x37078e];return _0x564fe0;}import{configureCursorMcp}from'./cursor.js';import{configureClaudeMcp}from'./claude.js';import{logger}from'../utils/logger.js';import{createInterface}from'node:readline';import{MCP_IDES,IDE_CONFIGS}from'../utils/ai_config.js';function a61_0x5e67(){const _0x8285f8=['mcp.help.command.help','mcp-install','3iibGXa','quit','mcp.help.exampleInstallCursor','mcp.help.configMethodsDirect','202667cmFymj','close','description','mcp.help.examples','message','mcp.help.configMethodsDirectCursor','mcp.select.prompt','mcp.help.availableCommands','name','mcp.help.exampleInstallHint','mcp.help.usage.install','\x0a\x20\x20https://help.yuntoo.com/mcp/config-guide\x0a','setLogPath','mcp.help.command.install','claude','mcp.help.usage.installClaude','stdout','from','4493889mMfLnt','--help','mcp.help.configMethods','3251353ZOIyde','map','has','cursor','mcp.help.configGuide','mcp.help.title','mcp.installFlow.configuring','trim','mcp.help.configMethodsInteractiveHint','mcp.select.cancelled','log','install','help','mcp.help.usage.installCursor','2fhKpcd','mcp.help.exampleInstallCursorHint','mcp.help.exampleInstall','error','mcpClaude','mcp.help.supportedIDEs','550980LlEVvo','exit','mcp.help.configMethodsDirectClaude','length','\x20-\x20','mcpCursor','question','mcp.error.unsupportedCommand','\x0a\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x0a','mcp.help.configMethodsInteractive','1125750mbwVAA','toLowerCase','mcp.select.chooseIDE','2618830UaknKS','4172456cRcjsT'];a61_0x5e67=function(){return _0x8285f8;};return a61_0x5e67();}import a61_0x4e7020 from'../i18n/index.js';export async function mcpCommand(_0x5ad899,_0x1ed12b,_0x3c06ed){const _0x5add2d=a61_0x564f;logger[_0x5add2d(0x133)](process['cwd']());if(_0x3c06ed?.[_0x5add2d(0x10a)]||_0x5ad899===_0x5add2d(0xfc)){showHelp();return;}_0x5ad899!==_0x5add2d(0x109)&&(console['error'](a61_0x4e7020['t']('mcp.error.unsupportedCommand',{'cmd':_0x5ad899||'-'})),console['log'](a61_0x4e7020['t'](_0x5add2d(0x12e))),console[_0x5add2d(0x108)](a61_0x4e7020['t'](_0x5add2d(0x134))),console['log'](a61_0x4e7020['t'](_0x5add2d(0x121))),logger[_0x5add2d(0x10f)]('mcp',a61_0x4e7020['t'](_0x5add2d(0x119),{'cmd':_0x5ad899||'-'})),process[_0x5add2d(0x113)](0x1));let _0x4c983b;if(_0x3c06ed?.[_0x5add2d(0x117)])_0x4c983b=_0x5add2d(0x101);else{if(_0x3c06ed?.[_0x5add2d(0x110)])_0x4c983b=_0x5add2d(0x135);else{if(_0x1ed12b?.[0x0]){const _0x49ba37=_0x1ed12b[0x0][_0x5add2d(0x11d)]();MCP_IDES[_0x5add2d(0x100)](_0x49ba37)&&(_0x4c983b=_0x49ba37);}}}await installMcp(_0x4c983b);}function showHelp(){const _0x1101da=a61_0x564f;console[_0x1101da(0x108)]('\x0a'+a61_0x4e7020['t'](_0x1101da(0x103))+'\x0a\x0a'+a61_0x4e7020['t']('mcp.help.usage.help')+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x131))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x10b))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x136))+'\x0a\x0a'+a61_0x4e7020['t'](_0x1101da(0xfd))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x11b))+_0x1101da(0x11a)+a61_0x4e7020['t'](_0x1101da(0x106))+'\x0a\x0a'+a61_0x4e7020['t'](_0x1101da(0x126))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x12c))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x114))+'\x0a\x0a'+a61_0x4e7020['t'](_0x1101da(0x111))+'\x0a'+Array['from'](MCP_IDES)[_0x1101da(0xff)]((_0x5dff2e,_0x23d281)=>'\x20\x20'+(_0x23d281+0x1)+'.\x20'+IDE_CONFIGS[_0x5dff2e]['name']+_0x1101da(0x116)+IDE_CONFIGS[_0x5dff2e][_0x1101da(0x129)])['join']('\x0a')+'\x0a\x0a'+a61_0x4e7020['t'](_0x1101da(0x12a))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x10e))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x130))+'\x0a\x0a'+a61_0x4e7020['t'](_0x1101da(0x125))+'\x0a'+a61_0x4e7020['t'](_0x1101da(0x10d))+'\x0a\x0a'+a61_0x4e7020['t'](_0x1101da(0x102))+_0x1101da(0x132));}async function selectIDE(){const _0x28e3b5=a61_0x564f;console['log'](a61_0x4e7020['t'](_0x28e3b5(0x11e)));const _0x47f706=Array[_0x28e3b5(0xfa)](MCP_IDES);return _0x47f706['forEach']((_0x5cfc13,_0x42065c)=>{const _0xed3a08=_0x28e3b5;console[_0xed3a08(0x108)]('\x20\x20'+(_0x42065c+0x1)+'.\x20'+IDE_CONFIGS[_0x5cfc13][_0xed3a08(0x12f)]+_0xed3a08(0x116)+IDE_CONFIGS[_0x5cfc13][_0xed3a08(0x129)]);}),console[_0x28e3b5(0x108)](a61_0x4e7020['t']('mcp.select.cancel')),console['log'](a61_0x4e7020['t']('mcp.select.enterNumber')),new Promise(_0x1067b2=>{const _0x9b38c7=_0x28e3b5,_0x13deb7=createInterface({'input':process['stdin'],'output':process[_0x9b38c7(0x137)]});_0x13deb7[_0x9b38c7(0x118)](a61_0x4e7020['t'](_0x9b38c7(0x12d)),_0x2a51c7=>{const _0x380662=_0x9b38c7;_0x13deb7[_0x380662(0x128)]();const _0x12fe89=_0x2a51c7[_0x380662(0x105)]()[_0x380662(0x11d)]();(_0x12fe89==='q'||_0x12fe89===_0x380662(0x124)||_0x12fe89===_0x380662(0x113))&&(console[_0x380662(0x108)](a61_0x4e7020['t'](_0x380662(0x107))),process[_0x380662(0x113)](0x0));const _0xa5d735=parseInt(_0x12fe89,0xa);if(!isNaN(_0xa5d735)&&_0xa5d735>=0x1&&_0xa5d735<=_0x47f706[_0x380662(0x115)]){const _0x4598af=_0x47f706[_0xa5d735-0x1];_0x4598af&&_0x1067b2(_0x4598af);return;}console['log'](a61_0x4e7020['t']('mcp.select.invalidChoice',{'count':_0x47f706[_0x380662(0x115)]})),process[_0x380662(0x113)](0x1);});});}async function installMcp(_0x52156e){const _0x3c097f=a61_0x564f;let _0x5cb8c0;!_0x52156e?_0x5cb8c0=await selectIDE():_0x5cb8c0=_0x52156e;try{const _0x5dad71=IDE_CONFIGS[_0x5cb8c0];console['log'](a61_0x4e7020['t'](_0x3c097f(0x104),{'name':_0x5dad71[_0x3c097f(0x12f)]}));switch(_0x5cb8c0){case _0x3c097f(0x101):await configureCursorMcp();break;case _0x3c097f(0x135):await configureClaudeMcp();break;}}catch(_0x59e515){logger['error'](_0x3c097f(0x122),a61_0x4e7020['t']('mcp.installFlow.error',{'error':_0x59e515 instanceof Error?_0x59e515[_0x3c097f(0x12b)]:String(_0x59e515)}),{'error':_0x59e515 instanceof Error?_0x59e515[_0x3c097f(0x12b)]:String(_0x59e515)}),console[_0x3c097f(0x10f)](a61_0x4e7020['t']('mcp.installFlow.error',{'error':_0x59e515 instanceof Error?_0x59e515[_0x3c097f(0x12b)]:String(_0x59e515)})),process[_0x3c097f(0x113)](0x1);}}
@@ -1 +1 @@
1
- const a64_0x266d90=a64_0x220b;(function(_0x143a1b,_0x54d964){const _0x5b09e4=a64_0x220b,_0x1473aa=_0x143a1b();while(!![]){try{const _0x49abb0=-parseInt(_0x5b09e4(0x1e1))/0x1+parseInt(_0x5b09e4(0x1d5))/0x2+parseInt(_0x5b09e4(0x1d7))/0x3*(parseInt(_0x5b09e4(0x1eb))/0x4)+-parseInt(_0x5b09e4(0x1e8))/0x5*(-parseInt(_0x5b09e4(0x1d3))/0x6)+-parseInt(_0x5b09e4(0x1d9))/0x7*(-parseInt(_0x5b09e4(0x1de))/0x8)+-parseInt(_0x5b09e4(0x1e9))/0x9+parseInt(_0x5b09e4(0x1d6))/0xa;if(_0x49abb0===_0x54d964)break;else _0x1473aa['push'](_0x1473aa['shift']());}catch(_0x304e19){_0x1473aa['push'](_0x1473aa['shift']());}}}(a64_0x26e4,0x1e02a));import{configureCursorMcp,configureClaudeMcp,showOtherMcpGuide}from'./mcp-installer.js';import{logger}from'../utils/logger.js';function a64_0x26e4(){const _0x1e2e8b=['69pThyDD','success','126ogRQgb','claude','log','mcp.install.otherIDE','cwd','13016oAIFTC','mcp-install-non-interactive','length','232296QRpTcB','mcp.claude','filter','mcp.install.success','message','error','mcp.cursor','350VRBria','1860480NLCpbd','mcp.install.failed','18412wblLPt','info','needsManualAction','mcp.install.manualActionRequired','mcp.install.unknownIDE','other','mcp.install.completed','setLogPath','1128EbzgOX','cursor','130044EFiYIh','3486010JAqblW'];a64_0x26e4=function(){return _0x1e2e8b;};return a64_0x26e4();}function a64_0x220b(_0x59516d,_0x46135e){_0x59516d=_0x59516d-0x1cd;const _0x26e47d=a64_0x26e4();let _0x220b61=_0x26e47d[_0x59516d];return _0x220b61;}import a64_0x472424 from'../i18n/index.js';export async function installMcpNonInteractive(_0x82a139,_0x51cc2f=process[a64_0x266d90(0x1dd)]()){const _0x271644=a64_0x266d90;logger[_0x271644(0x1d2)](_0x51cc2f),logger[_0x271644(0x1ec)](_0x271644(0x1df),a64_0x472424['t']('mcp.install.starting'),{'ides':_0x82a139});const _0x2800a2=[];for(const _0xd0392c of _0x82a139){try{let _0x4a934d;switch(_0xd0392c){case _0x271644(0x1d4):_0x4a934d=await configureCursorMcp(_0x51cc2f);break;case'claude':_0x4a934d=configureClaudeMcp(_0x51cc2f);break;case _0x271644(0x1d0):_0x4a934d=showOtherMcpGuide(_0x51cc2f);break;default:_0x4a934d={'success':![],'message':a64_0x472424['t'](_0x271644(0x1cf),{'ide':_0xd0392c})};}_0x2800a2['push'](_0x4a934d);if(_0x4a934d[_0x271644(0x1d8)]){const _0x5831fa=_0xd0392c==='cursor'?a64_0x472424['t'](_0x271644(0x1e7)):_0xd0392c===_0x271644(0x1da)?a64_0x472424['t'](_0x271644(0x1e2)):a64_0x472424['t'](_0x271644(0x1dc));console[_0x271644(0x1db)](a64_0x472424['t'](_0x271644(0x1e4),{'ide':_0x5831fa})),console[_0x271644(0x1db)]('\x20\x20'+_0x4a934d[_0x271644(0x1e5)]);}else console[_0x271644(0x1e6)](a64_0x472424['t']('mcp.install.failed',{'ide':_0xd0392c===_0x271644(0x1d4)?a64_0x472424['t'](_0x271644(0x1e7)):_0xd0392c===_0x271644(0x1da)?a64_0x472424['t']('mcp.claude'):a64_0x472424['t'](_0x271644(0x1dc)),'error':_0x4a934d[_0x271644(0x1e5)]}));}catch(_0x294dd6){console[_0x271644(0x1e6)](a64_0x472424['t'](_0x271644(0x1ea),{'ide':_0xd0392c==='cursor'?a64_0x472424['t'](_0x271644(0x1e7)):_0xd0392c==='claude'?a64_0x472424['t'](_0x271644(0x1e2)):a64_0x472424['t'](_0x271644(0x1dc)),'error':_0x294dd6 instanceof Error?_0x294dd6[_0x271644(0x1e5)]:String(_0x294dd6)}));}}const _0x59b43e=_0x2800a2[_0x271644(0x1e3)](_0x42901e=>_0x42901e[_0x271644(0x1d8)])['length'],_0x3f61c3=_0x2800a2[_0x271644(0x1e0)];console['log'](a64_0x472424['t'](_0x271644(0x1d1),{'successCount':_0x59b43e,'totalCount':_0x3f61c3}));const _0xb5fbf1=_0x2800a2['some'](_0x1f3d00=>_0x1f3d00[_0x271644(0x1cd)]);_0xb5fbf1&&console[_0x271644(0x1db)](a64_0x472424['t'](_0x271644(0x1ce)));}
1
+ const a62_0x23132a=a62_0x5716;(function(_0x78de52,_0x57df87){const _0x50a44e=a62_0x5716,_0x26f164=_0x78de52();while(!![]){try{const _0x1b752d=-parseInt(_0x50a44e(0xa2))/0x1+-parseInt(_0x50a44e(0xa5))/0x2+-parseInt(_0x50a44e(0x96))/0x3*(parseInt(_0x50a44e(0x95))/0x4)+parseInt(_0x50a44e(0xa1))/0x5*(parseInt(_0x50a44e(0x94))/0x6)+parseInt(_0x50a44e(0x9d))/0x7+parseInt(_0x50a44e(0x9a))/0x8*(parseInt(_0x50a44e(0x8d))/0x9)+parseInt(_0x50a44e(0x8a))/0xa*(-parseInt(_0x50a44e(0x93))/0xb);if(_0x1b752d===_0x57df87)break;else _0x26f164['push'](_0x26f164['shift']());}catch(_0xf20495){_0x26f164['push'](_0x26f164['shift']());}}}(a62_0x39aa,0xd7946));import{configureCursorMcp,configureClaudeMcp,showOtherMcpGuide}from'./mcp-installer.js';function a62_0x5716(_0x23f4c5,_0x30a2cc){_0x23f4c5=_0x23f4c5-0x87;const _0x39aa15=a62_0x39aa();let _0x571637=_0x39aa15[_0x23f4c5];return _0x571637;}import{logger}from'../utils/logger.js';function a62_0x39aa(){const _0xfd2b72=['mcp.claude','1128638tIVflR','mcp.install.manualActionRequired','mcp.install.success','claude','3668815JlDgnI','463843DBtGof','error','push','840454sogVRa','mcp.install.unknownIDE','mcp.cursor','mcp.install.failed','mcp.install.starting','log','735890VLNApt','message','some','136341bXiPza','length','filter','needsManualAction','success','other','33CnKtww','6vpityq','220768pTdbqY','18OCOedj','cwd','mcp.install.otherIDE','cursor','752BJsSnk','setLogPath'];a62_0x39aa=function(){return _0xfd2b72;};return a62_0x39aa();}import a62_0x5778c2 from'../i18n/index.js';export async function installMcpNonInteractive(_0xf5023f,_0x5088c7=process[a62_0x23132a(0x97)]()){const _0x3f883c=a62_0x23132a;logger[_0x3f883c(0x9b)](_0x5088c7),logger['info']('mcp-install-non-interactive',a62_0x5778c2['t'](_0x3f883c(0x88)),{'ides':_0xf5023f});const _0x3487aa=[];for(const _0x44dcc0 of _0xf5023f){try{let _0x50b6c9;switch(_0x44dcc0){case _0x3f883c(0x99):_0x50b6c9=await configureCursorMcp(_0x5088c7);break;case _0x3f883c(0xa0):_0x50b6c9=configureClaudeMcp(_0x5088c7);break;case _0x3f883c(0x92):_0x50b6c9=showOtherMcpGuide(_0x5088c7);break;default:_0x50b6c9={'success':![],'message':a62_0x5778c2['t'](_0x3f883c(0xa6),{'ide':_0x44dcc0})};}_0x3487aa[_0x3f883c(0xa4)](_0x50b6c9);if(_0x50b6c9['success']){const _0x37e4f8=_0x44dcc0===_0x3f883c(0x99)?a62_0x5778c2['t'](_0x3f883c(0xa7)):_0x44dcc0===_0x3f883c(0xa0)?a62_0x5778c2['t'](_0x3f883c(0x9c)):a62_0x5778c2['t']('mcp.install.otherIDE');console[_0x3f883c(0x89)](a62_0x5778c2['t'](_0x3f883c(0x9f),{'ide':_0x37e4f8})),console[_0x3f883c(0x89)]('\x20\x20'+_0x50b6c9[_0x3f883c(0x8b)]);}else console[_0x3f883c(0xa3)](a62_0x5778c2['t'](_0x3f883c(0x87),{'ide':_0x44dcc0===_0x3f883c(0x99)?a62_0x5778c2['t']('mcp.cursor'):_0x44dcc0==='claude'?a62_0x5778c2['t'](_0x3f883c(0x9c)):a62_0x5778c2['t'](_0x3f883c(0x98)),'error':_0x50b6c9[_0x3f883c(0x8b)]}));}catch(_0x506010){console[_0x3f883c(0xa3)](a62_0x5778c2['t'](_0x3f883c(0x87),{'ide':_0x44dcc0===_0x3f883c(0x99)?a62_0x5778c2['t']('mcp.cursor'):_0x44dcc0===_0x3f883c(0xa0)?a62_0x5778c2['t'](_0x3f883c(0x9c)):a62_0x5778c2['t']('mcp.install.otherIDE'),'error':_0x506010 instanceof Error?_0x506010[_0x3f883c(0x8b)]:String(_0x506010)}));}}const _0x5c0858=_0x3487aa[_0x3f883c(0x8f)](_0x37caed=>_0x37caed[_0x3f883c(0x91)])[_0x3f883c(0x8e)],_0xe73c77=_0x3487aa['length'];console[_0x3f883c(0x89)](a62_0x5778c2['t']('mcp.install.completed',{'successCount':_0x5c0858,'totalCount':_0xe73c77}));const _0x3e15c2=_0x3487aa[_0x3f883c(0x8c)](_0x25591e=>_0x25591e[_0x3f883c(0x90)]);_0x3e15c2&&console['log'](a62_0x5778c2['t'](_0x3f883c(0x9e)));}
@@ -1 +1 @@
1
- (function(_0x23a76b,_0x36f445){const _0x2ebc84=a65_0x2daf,_0x163311=_0x23a76b();while(!![]){try{const _0x56e36d=-parseInt(_0x2ebc84(0x14f))/0x1*(parseInt(_0x2ebc84(0x162))/0x2)+parseInt(_0x2ebc84(0x174))/0x3+parseInt(_0x2ebc84(0x145))/0x4+parseInt(_0x2ebc84(0x152))/0x5*(parseInt(_0x2ebc84(0x15a))/0x6)+parseInt(_0x2ebc84(0x170))/0x7+parseInt(_0x2ebc84(0x159))/0x8*(-parseInt(_0x2ebc84(0x144))/0x9)+parseInt(_0x2ebc84(0x149))/0xa*(-parseInt(_0x2ebc84(0x175))/0xb);if(_0x56e36d===_0x36f445)break;else _0x163311['push'](_0x163311['shift']());}catch(_0x10eae2){_0x163311['push'](_0x163311['shift']());}}}(a65_0x314d,0xe0b9d));import{existsSync,mkdirSync,writeFileSync,readFileSync}from'node:fs';import{join,dirname}from'node:path';import{fileURLToPath}from'node:url';import{readConfig}from'../utils/config.js';import{logger}from'../utils/logger.js';import{getRulesContent}from'../utils/rules-cdn.js';import a65_0x5d59df from'../i18n/index.js';const __dirname=dirname(fileURLToPath(import.meta.url));export const MCP_SERVER_NAME='lovrabet-dataset';export const MCP_COMMAND='npx';export const MCP_ARGS=['@lovrabet/dataset-mcp-server@latest'];export function getAppConfig(){const _0x567682=a65_0x2daf,_0x38d722=readConfig(),_0x4953b0=_0x38d722[_0x567682(0x155)]||_0x38d722[_0x567682(0x13c)],_0x432b34=_0x38d722[_0x567682(0x143)]||_0x567682(0x15d);if(!_0x4953b0)throw new Error(a65_0x5d59df['t'](_0x567682(0x16e)));return{'appcode':String(_0x4953b0),'env':_0x432b34};}export function buildMcpEnv(_0x54f39d,_0x317963){const _0x37fd21=a65_0x2daf,_0x25c7db={'LOVRABET_APP_CODE':_0x54f39d};return _0x317963!=='online'&&(_0x25c7db[_0x37fd21(0x14c)]=_0x317963),_0x25c7db;}export function buildMcpServerConfig(_0x3ae782,_0x42403b){return{'command':MCP_COMMAND,'args':MCP_ARGS,'env':buildMcpEnv(_0x3ae782,_0x42403b)};}export function buildClaudeMcpCommand(_0x2bee73,_0x144cee){const _0x495ccd=a65_0x2daf,_0x25654d=_0x495ccd(0x134)+MCP_SERVER_NAME+'\x20'+MCP_COMMAND+'\x20'+MCP_ARGS[_0x495ccd(0x169)]('\x20')+_0x495ccd(0x135)+_0x2bee73,_0x3bfe2a=_0x144cee!==_0x495ccd(0x15d)?_0x495ccd(0x140)+_0x144cee:'';return''+_0x25654d+_0x3bfe2a;}export async function copyCursorRules(_0x3c15a7){const _0x4c1cae=a65_0x2daf,_0x417c2b=join(_0x3c15a7,_0x4c1cae(0x14d)),_0x48de9c=join(_0x417c2b,_0x4c1cae(0x153)),_0x53a87d=join(_0x48de9c,_0x4c1cae(0x171));if(existsSync(_0x53a87d))return logger[_0x4c1cae(0x13f)](_0x4c1cae(0x13e),a65_0x5d59df['t']('mcp.cursorConfig.rules.exists'),{'path':_0x53a87d}),![];try{ensureDir(_0x48de9c);const _0x20b466=await getRulesContent();return writeFileSync(_0x53a87d,_0x20b466,_0x4c1cae(0x168)),logger['info'](_0x4c1cae(0x13e),a65_0x5d59df['t']('mcp.cursorConfig.rules.created'),{'to':_0x53a87d}),!![];}catch(_0x1412a2){return logger[_0x4c1cae(0x157)](_0x4c1cae(0x13e),a65_0x5d59df['t'](_0x4c1cae(0x156)),{'error':_0x1412a2 instanceof Error?_0x1412a2[_0x4c1cae(0x15e)]:String(_0x1412a2)}),![];}}export async function copyAgentsMd(_0x37536f){const _0x255d04=a65_0x2daf,_0x374d2c=join(_0x37536f,_0x255d04(0x142));if(existsSync(_0x374d2c))return logger['info'](_0x255d04(0x13e),a65_0x5d59df['t'](_0x255d04(0x137)),{'path':_0x374d2c}),![];try{const _0x5a11c2=await getRulesContent();return writeFileSync(_0x374d2c,_0x5a11c2,'utf-8'),logger[_0x255d04(0x13f)](_0x255d04(0x13e),a65_0x5d59df['t'](_0x255d04(0x167)),{'to':_0x374d2c}),!![];}catch(_0x596d0a){return logger[_0x255d04(0x157)]('mcp-install',a65_0x5d59df['t'](_0x255d04(0x16a)),{'error':_0x596d0a instanceof Error?_0x596d0a[_0x255d04(0x15e)]:String(_0x596d0a)}),![];}}function a65_0x2daf(_0x45c406,_0xf52861){_0x45c406=_0x45c406-0x134;const _0x314d7c=a65_0x314d();let _0x2daf72=_0x314d7c[_0x45c406];return _0x2daf72;}export async function configureCursorMcp(_0x41e3a2){const _0x266f5a=a65_0x2daf;try{const {appcode:_0x5414cd,env:_0x5051e7}=getAppConfig(),_0x3ea29e=join(_0x41e3a2,'.cursor'),_0x55b44d=join(_0x3ea29e,_0x266f5a(0x151));ensureDir(_0x3ea29e);const _0x325579=buildMcpServerConfig(_0x5414cd,_0x5051e7);let _0x2c009b;if(existsSync(_0x55b44d)){const _0x2ea81a=readFileSync(_0x55b44d,_0x266f5a(0x16f));_0x2c009b=JSON[_0x266f5a(0x158)](_0x2ea81a),!_0x2c009b[_0x266f5a(0x16b)]&&(_0x2c009b[_0x266f5a(0x16b)]={}),logger['info']('mcp-cursor',a65_0x5d59df['t'](_0x266f5a(0x146)),{'path':_0x55b44d,'appcode':_0x5414cd,'env':_0x5051e7});}else _0x2c009b={'mcpServers':{}},logger[_0x266f5a(0x13f)](_0x266f5a(0x161),a65_0x5d59df['t'](_0x266f5a(0x163)),{'path':_0x55b44d,'appcode':_0x5414cd,'env':_0x5051e7});_0x2c009b[_0x266f5a(0x16b)][MCP_SERVER_NAME]=_0x325579,writeFileSync(_0x55b44d,JSON[_0x266f5a(0x16d)](_0x2c009b,null,0x2),{'encoding':'utf8'});const _0x4039e9=await copyCursorRules(_0x41e3a2),_0x35dd79=[a65_0x5d59df['t'](_0x266f5a(0x172)),_0x266f5a(0x13b)+_0x5414cd];return _0x5051e7!==_0x266f5a(0x15d)&&_0x35dd79[_0x266f5a(0x166)](a65_0x5d59df['t'](_0x266f5a(0x173),{'env':_0x5051e7})),_0x35dd79['push'](a65_0x5d59df['t'](_0x266f5a(0x160))),_0x4039e9&&_0x35dd79[_0x266f5a(0x166)](a65_0x5d59df['t'](_0x266f5a(0x15b))),logger['info'](_0x266f5a(0x161),a65_0x5d59df['t'](_0x266f5a(0x139)),{'appcode':_0x5414cd,'env':_0x5051e7,'configPath':_0x55b44d}),{'success':!![],'message':_0x35dd79[_0x266f5a(0x169)](_0x266f5a(0x16c))};}catch(_0x3975ed){return logger[_0x266f5a(0x157)](_0x266f5a(0x161),a65_0x5d59df['t']('mcp.cursorConfig.error',{'error':_0x3975ed instanceof Error?_0x3975ed['message']:String(_0x3975ed)}),{'error':_0x3975ed instanceof Error?_0x3975ed['message']:String(_0x3975ed)}),{'success':![],'message':_0x3975ed instanceof Error?_0x3975ed[_0x266f5a(0x15e)]:String(_0x3975ed)};}}export function configureClaudeMcp(_0x18c563){const _0x139125=a65_0x2daf;try{const {appcode:_0x5cca93,env:_0x5f55b0}=getAppConfig();copyAgentsMd(_0x18c563);const _0x144170=buildClaudeMcpCommand(_0x5cca93,_0x5f55b0),_0x27de32=[a65_0x5d59df['t'](_0x139125(0x14a)),''+_0x144170,a65_0x5d59df['t'](_0x139125(0x13a)),_0x139125(0x13b)+_0x5cca93];return _0x5f55b0!==_0x139125(0x15d)&&_0x27de32[_0x139125(0x166)](a65_0x5d59df['t']('mcp.config.env',{'env':_0x5f55b0})),_0x27de32['push'](a65_0x5d59df['t'](_0x139125(0x164))),logger[_0x139125(0x13f)](_0x139125(0x141),a65_0x5d59df['t'](_0x139125(0x154)),{'appcode':_0x5cca93,'env':_0x5f55b0,'command':_0x144170}),{'success':!![],'message':_0x27de32[_0x139125(0x169)]('\x0a\x20\x20'),'needsManualAction':!![]};}catch(_0x210499){return logger[_0x139125(0x157)](_0x139125(0x141),a65_0x5d59df['t'](_0x139125(0x15f),{'error':_0x210499 instanceof Error?_0x210499[_0x139125(0x15e)]:String(_0x210499)}),{'error':_0x210499 instanceof Error?_0x210499[_0x139125(0x15e)]:String(_0x210499)}),{'success':![],'message':_0x210499 instanceof Error?_0x210499['message']:String(_0x210499)};}}function a65_0x314d(){const _0x54420c=['push','mcp.claudeConfig.agents.created','utf-8','join','mcp.claudeConfig.agents.copyFailed','mcpServers','\x0a\x20\x20','stringify','mcp.error.missingAppcode','utf8','9937893pMyJio','lovrabet_rules.mdc','mcp.cursorConfig.written','mcp.config.env','4936950cizKwv','20603FAAsjD','claude\x20mcp\x20add\x20','\x20-e\x20LOVRABET_APP_CODE=','\x20\x20\x20\x20\x20\x20\x22env\x22:\x20{','mcp.claudeConfig.agents.exists','\x20\x20\x20\x20\x20\x20\x22command\x22:\x20\x22npx\x22,','mcp.cursorConfig.success','mcp.claudeConfig.configInfo','AppCode:\x20','app','mcp.other.configInfo','mcp-install','info','\x20-e\x20LOVRABET_ENV=','mcp-claude','agents.md','env','697482ozeyYt','2729408rwvtzT','mcp.cursorConfig.updateExisting','mcp.other.configGuide','\x22LOVRABET_ENV\x22:\x20\x22','19230KslaBP','mcp.claudeConfig.manualCommand','map','LOVRABET_ENV','.cursor','\x20\x20\x20\x20\x20\x20\x22args\x22:\x20[\x22@lovrabet/dataset-mcp-server@latest\x22],','410819XhWODh','\x20\x20}','mcp.json','130autJYb','rules','mcp.claudeConfig.commandGenerated','appcode','mcp.cursorConfig.rules.copyFailed','error','parse','8nohdLt','291432btSCJx','mcp.cursorConfig.rules.created','mcp.other.guideShown','online','message','mcp.claudeConfig.error','mcp.cursorConfig.restartRequired','mcp-cursor','2fuzYHp','mcp.cursorConfig.createNew','mcp.claudeConfig.restartRequired','\x20\x20\x20\x20\x20\x20}'];a65_0x314d=function(){return _0x54420c;};return a65_0x314d();}export function showOtherMcpGuide(_0x1e2170){const _0x198a98=a65_0x2daf;try{const {appcode:_0x59b6eb,env:_0x2da441}=getAppConfig(),_0x41df22=buildMcpServerConfig(_0x59b6eb,_0x2da441),_0x6fd14a=['\x22LOVRABET_APP_CODE\x22:\x20\x22'+_0x59b6eb+'\x22'];_0x2da441!==_0x198a98(0x15d)&&_0x6fd14a[_0x198a98(0x166)](_0x198a98(0x148)+_0x2da441+'\x22');const _0x1cb281=[a65_0x5d59df['t'](_0x198a98(0x13d),{'appcode':_0x59b6eb,'env':_0x2da441}),'{','\x20\x20\x22mcpServers\x22:\x20{','\x20\x20\x20\x20\x22lovrabet-dataset\x22:\x20{',_0x198a98(0x138),_0x198a98(0x14e),_0x198a98(0x136),..._0x6fd14a[_0x198a98(0x14b)](_0x497f3c=>'\x20\x20\x20\x20\x20\x20\x20\x20'+_0x497f3c+','),_0x198a98(0x165),'\x20\x20\x20\x20}',_0x198a98(0x150),'}',a65_0x5d59df['t'](_0x198a98(0x147))];return logger[_0x198a98(0x13f)](_0x198a98(0x13e),a65_0x5d59df['t'](_0x198a98(0x15c)),{'appcode':_0x59b6eb,'env':_0x2da441}),{'success':!![],'message':_0x1cb281[_0x198a98(0x169)]('\x0a'),'needsManualAction':!![]};}catch(_0x1a78ab){return{'success':![],'message':_0x1a78ab instanceof Error?_0x1a78ab[_0x198a98(0x15e)]:String(_0x1a78ab)};}}function ensureDir(_0x45cadd){!existsSync(_0x45cadd)&&mkdirSync(_0x45cadd,{'recursive':!![]});}
1
+ const a63_0x38c251=a63_0x5bad;(function(_0x128dbe,_0x9db07d){const _0x4f88a2=a63_0x5bad,_0x56537c=_0x128dbe();while(!![]){try{const _0x30ec64=parseInt(_0x4f88a2(0x19a))/0x1*(-parseInt(_0x4f88a2(0x19e))/0x2)+parseInt(_0x4f88a2(0x1b2))/0x3+-parseInt(_0x4f88a2(0x188))/0x4+-parseInt(_0x4f88a2(0x18b))/0x5+parseInt(_0x4f88a2(0x18c))/0x6*(-parseInt(_0x4f88a2(0x1a2))/0x7)+-parseInt(_0x4f88a2(0x18a))/0x8*(parseInt(_0x4f88a2(0x1a7))/0x9)+parseInt(_0x4f88a2(0x1b0))/0xa*(parseInt(_0x4f88a2(0x190))/0xb);if(_0x30ec64===_0x9db07d)break;else _0x56537c['push'](_0x56537c['shift']());}catch(_0x58ff43){_0x56537c['push'](_0x56537c['shift']());}}}(a63_0x1ab9,0x9a5b3));import{existsSync,mkdirSync,writeFileSync,readFileSync}from'node:fs';import{join,dirname}from'node:path';import{fileURLToPath}from'node:url';import{readConfig}from'../utils/config.js';import{logger}from'../utils/logger.js';import{getRulesContent}from'../utils/rules-cdn.js';import a63_0x40f47f from'../i18n/index.js';const __dirname=dirname(fileURLToPath(import.meta.url));export const MCP_SERVER_NAME=a63_0x38c251(0x193);export const MCP_COMMAND=a63_0x38c251(0x19b);export const MCP_ARGS=[a63_0x38c251(0x192)];function a63_0x5bad(_0x5f5930,_0x20ce68){_0x5f5930=_0x5f5930-0x187;const _0x1ab903=a63_0x1ab9();let _0x5badac=_0x1ab903[_0x5f5930];return _0x5badac;}export function getAppConfig(){const _0x365f18=a63_0x38c251,_0x2f4da7=readConfig(),_0x4b1fca=_0x2f4da7['appcode']||_0x2f4da7['app'],_0x1b5ee3=_0x2f4da7['env']||_0x365f18(0x1a8);if(!_0x4b1fca)throw new Error(a63_0x40f47f['t'](_0x365f18(0x197)));return{'appcode':String(_0x4b1fca),'env':_0x1b5ee3};}export function buildMcpEnv(_0x2b0414,_0x327fe8){const _0x3c2f25=a63_0x38c251,_0x2f9433={'LOVRABET_APP_CODE':_0x2b0414};return _0x327fe8!==_0x3c2f25(0x1a8)&&(_0x2f9433[_0x3c2f25(0x1b1)]=_0x327fe8),_0x2f9433;}function a63_0x1ab9(){const _0x24bb75=['mcp.cursorConfig.success','mcp.claudeConfig.commandGenerated','mcp.error.missingAppcode','push','mcp.cursorConfig.rules.copyFailed','599ZGgCvB','npx','\x20-e\x20LOVRABET_ENV=','mcp-install','2222jqppwY','info','rules','.cursor','7NwkBEn','mcp.other.configInfo','error','mcp.cursorConfig.rules.created','parse','27vywLpH','online','\x20\x20\x20\x20\x20\x20\x20\x20','lovrabet_rules.mdc','\x0a\x20\x20','mcp.claudeConfig.error','\x22LOVRABET_ENV\x22:\x20\x22','mcp.cursorConfig.updateExisting','mcp-claude','30ILXXTx','LOVRABET_ENV','3535434vWehQo','message','mcp.cursorConfig.written','agents.md','utf8','AppCode:\x20','mcp.cursorConfig.rules.exists','mcp.cursorConfig.error','mcp-cursor','\x20-e\x20LOVRABET_APP_CODE=','mcp.claudeConfig.restartRequired','mcp.claudeConfig.agents.copyFailed','mcp.claudeConfig.manualCommand','\x20\x20\x20\x20\x20\x20\x22args\x22:\x20[\x22@lovrabet/dataset-mcp-server@latest\x22],','mcp.cursorConfig.restartRequired','mcpServers','stringify','2344120HWUZqm','\x22LOVRABET_APP_CODE\x22:\x20\x22','1057768MxwOSR','3068495TSfclB','510426KfdtZm','join','claude\x20mcp\x20add\x20','\x20\x20\x20\x20\x22lovrabet-dataset\x22:\x20{','6602629ewvyQC','mcp.claudeConfig.agents.created','@lovrabet/dataset-mcp-server@latest','lovrabet-dataset','mcp.config.env'];a63_0x1ab9=function(){return _0x24bb75;};return a63_0x1ab9();}export function buildMcpServerConfig(_0x793a13,_0x7ac3f6){return{'command':MCP_COMMAND,'args':MCP_ARGS,'env':buildMcpEnv(_0x793a13,_0x7ac3f6)};}export function buildClaudeMcpCommand(_0x23c1f2,_0x2d8990){const _0x5162ac=a63_0x38c251,_0x5d974f=_0x5162ac(0x18e)+MCP_SERVER_NAME+'\x20'+MCP_COMMAND+'\x20'+MCP_ARGS[_0x5162ac(0x18d)]('\x20')+_0x5162ac(0x1bb)+_0x23c1f2,_0x330628=_0x2d8990!==_0x5162ac(0x1a8)?_0x5162ac(0x19c)+_0x2d8990:'';return''+_0x5d974f+_0x330628;}export async function copyCursorRules(_0x1aa43b){const _0xb35a79=a63_0x38c251,_0x12683c=join(_0x1aa43b,_0xb35a79(0x1a1)),_0x140fa4=join(_0x12683c,_0xb35a79(0x1a0)),_0x3b27ee=join(_0x140fa4,_0xb35a79(0x1aa));if(existsSync(_0x3b27ee))return logger[_0xb35a79(0x19f)](_0xb35a79(0x19d),a63_0x40f47f['t'](_0xb35a79(0x1b8)),{'path':_0x3b27ee}),![];try{ensureDir(_0x140fa4);const _0x294bf1=await getRulesContent();return writeFileSync(_0x3b27ee,_0x294bf1,'utf-8'),logger['info'](_0xb35a79(0x19d),a63_0x40f47f['t'](_0xb35a79(0x1a5)),{'to':_0x3b27ee}),!![];}catch(_0x56daf2){return logger[_0xb35a79(0x1a4)](_0xb35a79(0x19d),a63_0x40f47f['t'](_0xb35a79(0x199)),{'error':_0x56daf2 instanceof Error?_0x56daf2[_0xb35a79(0x1b3)]:String(_0x56daf2)}),![];}}export async function copyAgentsMd(_0x35d3d0){const _0x5a6fa7=a63_0x38c251,_0x235121=join(_0x35d3d0,_0x5a6fa7(0x1b5));if(existsSync(_0x235121))return logger[_0x5a6fa7(0x19f)](_0x5a6fa7(0x19d),a63_0x40f47f['t']('mcp.claudeConfig.agents.exists'),{'path':_0x235121}),![];try{const _0x3973fb=await getRulesContent();return writeFileSync(_0x235121,_0x3973fb,'utf-8'),logger['info'](_0x5a6fa7(0x19d),a63_0x40f47f['t'](_0x5a6fa7(0x191)),{'to':_0x235121}),!![];}catch(_0x5e9c2c){return logger[_0x5a6fa7(0x1a4)]('mcp-install',a63_0x40f47f['t'](_0x5a6fa7(0x1bd)),{'error':_0x5e9c2c instanceof Error?_0x5e9c2c[_0x5a6fa7(0x1b3)]:String(_0x5e9c2c)}),![];}}export async function configureCursorMcp(_0x2d18e0){const _0x1d3af3=a63_0x38c251;try{const {appcode:_0x570a05,env:_0x39aaa0}=getAppConfig(),_0x3f9884=join(_0x2d18e0,_0x1d3af3(0x1a1)),_0x3b40ea=join(_0x3f9884,'mcp.json');ensureDir(_0x3f9884);const _0x3ed614=buildMcpServerConfig(_0x570a05,_0x39aaa0);let _0x309ba9;if(existsSync(_0x3b40ea)){const _0x26cff5=readFileSync(_0x3b40ea,_0x1d3af3(0x1b6));_0x309ba9=JSON[_0x1d3af3(0x1a6)](_0x26cff5),!_0x309ba9[_0x1d3af3(0x1c1)]&&(_0x309ba9[_0x1d3af3(0x1c1)]={}),logger['info']('mcp-cursor',a63_0x40f47f['t'](_0x1d3af3(0x1ae)),{'path':_0x3b40ea,'appcode':_0x570a05,'env':_0x39aaa0});}else _0x309ba9={'mcpServers':{}},logger[_0x1d3af3(0x19f)](_0x1d3af3(0x1ba),a63_0x40f47f['t']('mcp.cursorConfig.createNew'),{'path':_0x3b40ea,'appcode':_0x570a05,'env':_0x39aaa0});_0x309ba9['mcpServers'][MCP_SERVER_NAME]=_0x3ed614,writeFileSync(_0x3b40ea,JSON[_0x1d3af3(0x187)](_0x309ba9,null,0x2),{'encoding':'utf8'});const _0x6b33c4=await copyCursorRules(_0x2d18e0),_0x4c7479=[a63_0x40f47f['t'](_0x1d3af3(0x1b4)),'AppCode:\x20'+_0x570a05];return _0x39aaa0!==_0x1d3af3(0x1a8)&&_0x4c7479[_0x1d3af3(0x198)](a63_0x40f47f['t'](_0x1d3af3(0x194),{'env':_0x39aaa0})),_0x4c7479['push'](a63_0x40f47f['t'](_0x1d3af3(0x1c0))),_0x6b33c4&&_0x4c7479[_0x1d3af3(0x198)](a63_0x40f47f['t']('mcp.cursorConfig.rules.created')),logger[_0x1d3af3(0x19f)](_0x1d3af3(0x1ba),a63_0x40f47f['t'](_0x1d3af3(0x195)),{'appcode':_0x570a05,'env':_0x39aaa0,'configPath':_0x3b40ea}),{'success':!![],'message':_0x4c7479[_0x1d3af3(0x18d)](_0x1d3af3(0x1ab))};}catch(_0x5b231b){return logger[_0x1d3af3(0x1a4)](_0x1d3af3(0x1ba),a63_0x40f47f['t'](_0x1d3af3(0x1b9),{'error':_0x5b231b instanceof Error?_0x5b231b['message']:String(_0x5b231b)}),{'error':_0x5b231b instanceof Error?_0x5b231b[_0x1d3af3(0x1b3)]:String(_0x5b231b)}),{'success':![],'message':_0x5b231b instanceof Error?_0x5b231b[_0x1d3af3(0x1b3)]:String(_0x5b231b)};}}export function configureClaudeMcp(_0x55fc2e){const _0x344bf8=a63_0x38c251;try{const {appcode:_0x45e70e,env:_0x58d939}=getAppConfig();copyAgentsMd(_0x55fc2e);const _0x2a5e9e=buildClaudeMcpCommand(_0x45e70e,_0x58d939),_0x216372=[a63_0x40f47f['t'](_0x344bf8(0x1be)),''+_0x2a5e9e,a63_0x40f47f['t']('mcp.claudeConfig.configInfo'),_0x344bf8(0x1b7)+_0x45e70e];return _0x58d939!==_0x344bf8(0x1a8)&&_0x216372[_0x344bf8(0x198)](a63_0x40f47f['t']('mcp.config.env',{'env':_0x58d939})),_0x216372['push'](a63_0x40f47f['t'](_0x344bf8(0x1bc))),logger[_0x344bf8(0x19f)](_0x344bf8(0x1af),a63_0x40f47f['t'](_0x344bf8(0x196)),{'appcode':_0x45e70e,'env':_0x58d939,'command':_0x2a5e9e}),{'success':!![],'message':_0x216372[_0x344bf8(0x18d)]('\x0a\x20\x20'),'needsManualAction':!![]};}catch(_0x5c0089){return logger[_0x344bf8(0x1a4)](_0x344bf8(0x1af),a63_0x40f47f['t'](_0x344bf8(0x1ac),{'error':_0x5c0089 instanceof Error?_0x5c0089[_0x344bf8(0x1b3)]:String(_0x5c0089)}),{'error':_0x5c0089 instanceof Error?_0x5c0089['message']:String(_0x5c0089)}),{'success':![],'message':_0x5c0089 instanceof Error?_0x5c0089[_0x344bf8(0x1b3)]:String(_0x5c0089)};}}export function showOtherMcpGuide(_0x119979){const _0xd4fcf0=a63_0x38c251;try{const {appcode:_0x3e8ccc,env:_0x25432a}=getAppConfig(),_0x14ff6c=buildMcpServerConfig(_0x3e8ccc,_0x25432a),_0x3802f6=[_0xd4fcf0(0x189)+_0x3e8ccc+'\x22'];_0x25432a!==_0xd4fcf0(0x1a8)&&_0x3802f6[_0xd4fcf0(0x198)](_0xd4fcf0(0x1ad)+_0x25432a+'\x22');const _0x192005=[a63_0x40f47f['t'](_0xd4fcf0(0x1a3),{'appcode':_0x3e8ccc,'env':_0x25432a}),'{','\x20\x20\x22mcpServers\x22:\x20{',_0xd4fcf0(0x18f),'\x20\x20\x20\x20\x20\x20\x22command\x22:\x20\x22npx\x22,',_0xd4fcf0(0x1bf),'\x20\x20\x20\x20\x20\x20\x22env\x22:\x20{',..._0x3802f6['map'](_0x85433d=>_0xd4fcf0(0x1a9)+_0x85433d+','),'\x20\x20\x20\x20\x20\x20}','\x20\x20\x20\x20}','\x20\x20}','}',a63_0x40f47f['t']('mcp.other.configGuide')];return logger[_0xd4fcf0(0x19f)](_0xd4fcf0(0x19d),a63_0x40f47f['t']('mcp.other.guideShown'),{'appcode':_0x3e8ccc,'env':_0x25432a}),{'success':!![],'message':_0x192005['join']('\x0a'),'needsManualAction':!![]};}catch(_0x3bcf27){return{'success':![],'message':_0x3bcf27 instanceof Error?_0x3bcf27[_0xd4fcf0(0x1b3)]:String(_0x3bcf27)};}}function ensureDir(_0x3c0eb4){!existsSync(_0x3c0eb4)&&mkdirSync(_0x3c0eb4,{'recursive':!![]});}
@@ -1 +1 @@
1
- const a66_0x2ded27=a66_0x3daa;(function(_0x2e10de,_0x4270c8){const _0x503a71=a66_0x3daa,_0x586ca8=_0x2e10de();while(!![]){try{const _0x2829d5=parseInt(_0x503a71(0x13a))/0x1+parseInt(_0x503a71(0x14c))/0x2*(-parseInt(_0x503a71(0x144))/0x3)+-parseInt(_0x503a71(0x127))/0x4+-parseInt(_0x503a71(0x14b))/0x5+parseInt(_0x503a71(0x149))/0x6+-parseInt(_0x503a71(0x123))/0x7*(parseInt(_0x503a71(0x153))/0x8)+parseInt(_0x503a71(0x139))/0x9;if(_0x2829d5===_0x4270c8)break;else _0x586ca8['push'](_0x586ca8['shift']());}catch(_0xd907a){_0x586ca8['push'](_0x586ca8['shift']());}}}(a66_0x40bb,0x1d68b));import{jsx as a66_0x4ac8b1,jsxs as a66_0x2bd856,Fragment as a66_0x537357}from'react/jsx-runtime';import{useState,useEffect}from'react';import{Text,Box,useInput,useApp}from'ink';function a66_0x40bb(){const _0x17db68=['.lovrabet/skill-manifest.json','cyan','setErrorMsg','skill-install','toISOString','warn','installing','64377ocaGbS','skill.error.installFailed','skill.done.pressAnyKey','info','skill.cdn.fetching','730620KVDCXn','skill.cdn.fetchingExtend','729930xMtfzq','2tWsPhP','\x20✓\x20','error','keys','length','selecting','size','48ENUFYO','name','map','log','column','gray','cwd','47348UETReD','.lovrabet/skill/.shared/guides','utf-8','description','326048hemjxK','skill.cdn.fetchFailed','label','value','selectedIndexes','skill.installing.installed','setLogPath','skill.done.successInline','stringify','安装成功','.lovrabet','green','handleKeyDown','skill.select.selectedIDE','message','return','skill.select.count','../../cdn-source/skills','1305279VCtTWm','143199gAPSOj','done','skill.installing.progress'];a66_0x40bb=function(){return _0x17db68;};return a66_0x40bb();}import{writeFileSync}from'node:fs';import{resolve,join}from'node:path';import{fileURLToPath}from'node:url';import{dirname}from'node:path';function a66_0x3daa(_0x540431,_0x514ce6){_0x540431=_0x540431-0x11e;const _0x40bbe3=a66_0x40bb();let _0x3daaae=_0x40bbe3[_0x540431];return _0x3daaae;}import{logger}from'../utils/logger.js';import{copyDir}from'../utils/file-utils.js';import{IDE_CONFIGS,IDE_LIST}from'../utils/ai_config.js';import{installSingleIDE}from'./skill-installer.js';import{fetchGuidesFromCDN,writeGuidesToProject}from'../utils/guides-cdn.js';import{IDESelector,useIDESelection}from'../ui/IDESelector.js';import{useI18n}from'../i18n/hooks.js';const __dirname=dirname(fileURLToPath(import.meta.url)),UI_IDE_LIST=IDE_LIST['map'](_0x6a3e4=>({'key':_0x6a3e4,'name':IDE_CONFIGS[_0x6a3e4][a66_0x2ded27(0x154)],'description':IDE_CONFIGS[_0x6a3e4][a66_0x2ded27(0x126)]}));export function SkillInstallUI({preselectedIDEs:preselectedIDEs=[],providedFlags:_0x5ced06}){const _0x28dbb9=a66_0x2ded27,{exit:_0x263251}=useApp(),{t:_0x36b8ef}=useI18n(),[_0x3a3ba9,_0x4ee461]=useState('selecting'),[_0x5b5101,_0x27df14]=useState([]),[_0x33feda,_0x3b9851]=useState([]),[_0x273a72,_0x39eb44]=useState(0x0),_0x2854e0=useIDESelection({'ideList':UI_IDE_LIST,'preselectedIDEs':preselectedIDEs,'multiSelect':!![]});useEffect(()=>{const _0x4f7be9=a66_0x3daa;preselectedIDEs[_0x4f7be9(0x150)]>0x0&&_0x2854e0[_0x4f7be9(0x12b)][_0x4f7be9(0x152)]>0x0&&_0x26db0d();},[]),useInput((_0x4e5908,_0x3bf577)=>{const _0x6c2d0e=a66_0x3daa;if(_0x3a3ba9===_0x6c2d0e(0x151)){if(_0x4e5908==='q'||_0x4e5908==='Q'){_0x263251();return;}if(_0x3bf577[_0x6c2d0e(0x136)]){if(_0x2854e0[_0x6c2d0e(0x12b)]['size']===0x0){_0x2854e0[_0x6c2d0e(0x13f)](_0x36b8ef('skill.error.selectAtLeastOne'));return;}_0x26db0d();return;}_0x2854e0[_0x6c2d0e(0x133)](_0x4e5908,_0x3bf577);}_0x3a3ba9===_0x6c2d0e(0x13b)&&_0x263251();});async function _0x26db0d(){const _0xac8b4f=a66_0x3daa,_0x2eb09e=_0x2854e0['getSelectedIDEs']();_0x3b9851(_0x2eb09e),_0x27df14([{'label':_0x36b8ef(_0xac8b4f(0x134)),'value':_0x36b8ef(_0xac8b4f(0x137),{'count':_0x2854e0[_0xac8b4f(0x12b)][_0xac8b4f(0x152)]})}]),_0x4ee461(_0xac8b4f(0x143)),await _0x5068cb(_0x2eb09e);}async function _0x5068cb(_0x1896ea){const _0xfe6bff=a66_0x3daa,_0x23b082=process[_0xfe6bff(0x122)](),_0x4708ea=resolve(__dirname,_0xfe6bff(0x138));logger[_0xfe6bff(0x12d)](_0x23b082);const _0x2511fc=_0x5ced06&&_0x5ced06[_0xfe6bff(0x150)]>0x0;console[_0xfe6bff(0x11f)](_0x2511fc?_0x36b8ef(_0xfe6bff(0x14a)):_0x36b8ef(_0xfe6bff(0x148)));let _0x4bc72d;try{_0x4bc72d=await fetchGuidesFromCDN(_0x2511fc),console[_0xfe6bff(0x11f)](_0x36b8ef('skill.cdn.fetchSuccess',{'count':Object[_0xfe6bff(0x14f)](_0x4bc72d['guides'])[_0xfe6bff(0x150)]}));}catch(_0x562888){console[_0xfe6bff(0x142)](_0x36b8ef(_0xfe6bff(0x128),{'error':_0x562888 instanceof Error?_0x562888[_0xfe6bff(0x135)]:String(_0x562888)}));}let _0xc1e6f6=0x0;for(const _0x317e21 of _0x1896ea){try{const _0x554884=IDE_CONFIGS[_0x317e21],_0x12648b=await installSingleIDE(_0x317e21,_0x554884,_0x23b082,_0x4708ea,_0x4bc72d,_0x5ced06);_0xc1e6f6+=_0x12648b,_0x39eb44(_0xc1e6f6);}catch(_0x20f446){console[_0xfe6bff(0x14e)](_0x36b8ef(_0xfe6bff(0x145),{'ide':_0x317e21,'error':_0x20f446 instanceof Error?_0x20f446[_0xfe6bff(0x135)]:String(_0x20f446)}));}}_0x4bc72d&&writeGuidesToProject(_0x4bc72d,_0x23b082,_0xfe6bff(0x124),_0x5ced06);const _0x38da2e={'version':'2.0.0','installedAt':new Date()[_0xfe6bff(0x141)](),'platforms':_0x1896ea},_0x45ddcc=join(_0x23b082,_0xfe6bff(0x13d)),_0x14f007=join(_0x23b082,_0xfe6bff(0x131));await copyDir(_0x14f007,_0x14f007),writeFileSync(_0x45ddcc,JSON[_0xfe6bff(0x12f)](_0x38da2e,null,0x2),_0xfe6bff(0x125)),logger[_0xfe6bff(0x147)](_0xfe6bff(0x140),_0xfe6bff(0x130),{'projectRoot':_0x23b082,'ides':_0x1896ea,'foldersCount':_0xc1e6f6}),_0x4ee461(_0xfe6bff(0x13b)),setTimeout(()=>{_0x263251();},0x3e8);}return a66_0x2bd856(Box,{'flexDirection':_0x28dbb9(0x120),'marginTop':0x1,'children':[_0x3a3ba9===_0x28dbb9(0x151)&&a66_0x4ac8b1(IDESelector,{'ideList':UI_IDE_LIST,'title':_0x36b8ef('skill.installing.title'),'selection':_0x2854e0}),_0x3a3ba9===_0x28dbb9(0x143)&&a66_0x4ac8b1(InstallingStep,{'completedSteps':_0x5b5101,'installingIDEs':_0x33feda,'installedCount':_0x273a72}),_0x3a3ba9===_0x28dbb9(0x13b)&&a66_0x4ac8b1(DoneStep,{'installedCount':_0x273a72})]});}function InstallingStep({completedSteps:_0xb2fdbd,installingIDEs:_0x2348c1,installedCount:_0x974294}){const _0x553302=a66_0x2ded27,{t:_0x43d206}=useI18n();return a66_0x2bd856(a66_0x537357,{'children':[_0xb2fdbd['map']((_0x3c189a,_0x4fecf0)=>a66_0x2bd856(Box,{'children':[a66_0x2bd856(Text,{'color':_0x553302(0x132),'children':['√\x20',_0x3c189a[_0x553302(0x129)],':\x20']}),a66_0x4ac8b1(Text,{'color':_0x553302(0x13e),'children':_0x3c189a[_0x553302(0x12a)]})]},_0x4fecf0)),a66_0x4ac8b1(Box,{'marginTop':0x1,'children':a66_0x4ac8b1(Text,{'children':_0x43d206(_0x553302(0x13c))})}),_0x2348c1[_0x553302(0x11e)](_0x329e97=>a66_0x2bd856(Box,{'children':[a66_0x4ac8b1(Text,{'color':_0x553302(0x132),'children':_0x553302(0x14d)}),a66_0x4ac8b1(Text,{'children':IDE_CONFIGS[_0x329e97]?.[_0x553302(0x154)]||_0x329e97})]},_0x329e97)),a66_0x4ac8b1(Box,{'marginTop':0x1,'children':a66_0x4ac8b1(Text,{'color':_0x553302(0x121),'children':_0x43d206(_0x553302(0x12c),{'count':_0x974294})})})]});}function DoneStep({installedCount:_0x30b23b}){const _0x386b52=a66_0x2ded27,{t:_0x46b9d9}=useI18n();return a66_0x2bd856(a66_0x537357,{'children':[a66_0x4ac8b1(Box,{'children':a66_0x4ac8b1(Text,{'color':'green','children':_0x46b9d9(_0x386b52(0x12e),{'count':_0x30b23b})})}),a66_0x4ac8b1(Box,{'marginTop':0x1,'children':a66_0x4ac8b1(Text,{'color':'gray','children':_0x46b9d9('skill.done.guidesPathInline')})}),a66_0x4ac8b1(Box,{'marginTop':0x1,'children':a66_0x4ac8b1(Text,{'color':_0x386b52(0x121),'children':_0x46b9d9(_0x386b52(0x146))})})]});}async function copyDirIfNeeded(_0xc3f736,_0x55f456){try{return await copyDir(_0xc3f736,_0x55f456),!![];}catch{return![];}}
1
+ const a64_0x4cd267=a64_0x2583;(function(_0x7ff148,_0xfd296b){const _0xa103b6=a64_0x2583,_0x546e4f=_0x7ff148();while(!![]){try{const _0x24e0bb=parseInt(_0xa103b6(0x1d8))/0x1+parseInt(_0xa103b6(0x1bc))/0x2+parseInt(_0xa103b6(0x1e2))/0x3+-parseInt(_0xa103b6(0x1d0))/0x4*(parseInt(_0xa103b6(0x1be))/0x5)+parseInt(_0xa103b6(0x1d5))/0x6+parseInt(_0xa103b6(0x1ba))/0x7*(-parseInt(_0xa103b6(0x1b6))/0x8)+parseInt(_0xa103b6(0x1bf))/0x9;if(_0x24e0bb===_0xfd296b)break;else _0x546e4f['push'](_0x546e4f['shift']());}catch(_0x318a9a){_0x546e4f['push'](_0x546e4f['shift']());}}}(a64_0x3426,0xc0770));function a64_0x3426(){const _0x4b6b57=['log','.lovrabet/skill-manifest.json','gray','安装成功','../../cdn-source/skills','8943568jzcscM','length','selectedIndexes','cwd','7OYsxhz','description','415134gWmyXd','skill.installing.progress','770405DmJlLf','984528LUdBlE','skill.error.selectAtLeastOne','setErrorMsg','skill.installing.title','.lovrabet','installing','\x20✓\x20','getSelectedIDEs','skill.done.pressAnyKey','info','map','selecting','skill.error.installFailed','done','skill.cdn.fetchingExtend','column','value','4lTDzHX','green','skill.done.successInline','handleKeyDown','2.0.0','1368540auyWSx','message','skill.select.selectedIDE','561391jACyOb','skill.cdn.fetchFailed','stringify','warn','setLogPath','return','size','keys','skill.installing.installed','skill.cdn.fetching','2861769ArlEqV','toISOString','utf-8','label','skill.done.guidesPathInline','skill.select.count'];a64_0x3426=function(){return _0x4b6b57;};return a64_0x3426();}import{jsx as a64_0x46bfa0,jsxs as a64_0x3815cc,Fragment as a64_0x2ff17f}from'react/jsx-runtime';import{useState,useEffect}from'react';import{Text,Box,useInput,useApp}from'ink';import{writeFileSync}from'node:fs';import{resolve,join}from'node:path';import{fileURLToPath}from'node:url';import{dirname}from'node:path';import{logger}from'../utils/logger.js';import{copyDir}from'../utils/file-utils.js';import{IDE_CONFIGS,IDE_LIST}from'../utils/ai_config.js';import{installSingleIDE}from'./skill-installer.js';import{fetchGuidesFromCDN,writeGuidesToProject}from'../utils/guides-cdn.js';import{IDESelector,useIDESelection}from'../ui/IDESelector.js';import{useI18n}from'../i18n/hooks.js';function a64_0x2583(_0x37c89a,_0x2d065d){_0x37c89a=_0x37c89a-0x1ad;const _0x34263d=a64_0x3426();let _0x2583a4=_0x34263d[_0x37c89a];return _0x2583a4;}const __dirname=dirname(fileURLToPath(import.meta.url)),UI_IDE_LIST=IDE_LIST[a64_0x4cd267(0x1c9)](_0x37ecdf=>({'key':_0x37ecdf,'name':IDE_CONFIGS[_0x37ecdf]['name'],'description':IDE_CONFIGS[_0x37ecdf][a64_0x4cd267(0x1bb)]}));export function SkillInstallUI({preselectedIDEs:preselectedIDEs=[],providedFlags:_0x12da60}){const _0x12e5ae=a64_0x4cd267,{exit:_0x3b6d19}=useApp(),{t:_0x4562ec}=useI18n(),[_0x5ee1b8,_0x4fbe05]=useState(_0x12e5ae(0x1ca)),[_0x2534f3,_0x153d66]=useState([]),[_0x5f2951,_0x5df356]=useState([]),[_0x3e5469,_0x20c7b6]=useState(0x0),_0x4ff374=useIDESelection({'ideList':UI_IDE_LIST,'preselectedIDEs':preselectedIDEs,'multiSelect':!![]});useEffect(()=>{const _0xd9457a=_0x12e5ae;preselectedIDEs[_0xd9457a(0x1b7)]>0x0&&_0x4ff374['selectedIndexes'][_0xd9457a(0x1de)]>0x0&&_0x33e818();},[]),useInput((_0x50c524,_0xe98a8b)=>{const _0x2f0d75=_0x12e5ae;if(_0x5ee1b8===_0x2f0d75(0x1ca)){if(_0x50c524==='q'||_0x50c524==='Q'){_0x3b6d19();return;}if(_0xe98a8b[_0x2f0d75(0x1dd)]){if(_0x4ff374[_0x2f0d75(0x1b8)][_0x2f0d75(0x1de)]===0x0){_0x4ff374[_0x2f0d75(0x1c1)](_0x4562ec(_0x2f0d75(0x1c0)));return;}_0x33e818();return;}_0x4ff374[_0x2f0d75(0x1d3)](_0x50c524,_0xe98a8b);}_0x5ee1b8===_0x2f0d75(0x1cc)&&_0x3b6d19();});async function _0x33e818(){const _0xbc2bff=_0x12e5ae,_0x401067=_0x4ff374[_0xbc2bff(0x1c6)]();_0x5df356(_0x401067),_0x153d66([{'label':_0x4562ec(_0xbc2bff(0x1d7)),'value':_0x4562ec(_0xbc2bff(0x1b0),{'count':_0x4ff374[_0xbc2bff(0x1b8)]['size']})}]),_0x4fbe05(_0xbc2bff(0x1c4)),await _0x504533(_0x401067);}async function _0x504533(_0x3071ac){const _0x4a1223=_0x12e5ae,_0x336c8e=process[_0x4a1223(0x1b9)](),_0x2bdafb=resolve(__dirname,_0x4a1223(0x1b5));logger[_0x4a1223(0x1dc)](_0x336c8e);const _0x17ef42=_0x12da60&&_0x12da60[_0x4a1223(0x1b7)]>0x0;console['log'](_0x17ef42?_0x4562ec(_0x4a1223(0x1cd)):_0x4562ec(_0x4a1223(0x1e1)));let _0x44177;try{_0x44177=await fetchGuidesFromCDN(_0x17ef42),console[_0x4a1223(0x1b1)](_0x4562ec('skill.cdn.fetchSuccess',{'count':Object[_0x4a1223(0x1df)](_0x44177['guides'])[_0x4a1223(0x1b7)]}));}catch(_0x7a4ef1){console[_0x4a1223(0x1db)](_0x4562ec(_0x4a1223(0x1d9),{'error':_0x7a4ef1 instanceof Error?_0x7a4ef1['message']:String(_0x7a4ef1)}));}let _0x1ce675=0x0;for(const _0x33b622 of _0x3071ac){try{const _0x36493e=IDE_CONFIGS[_0x33b622],_0x1b0b7b=await installSingleIDE(_0x33b622,_0x36493e,_0x336c8e,_0x2bdafb,_0x44177,_0x12da60);_0x1ce675+=_0x1b0b7b,_0x20c7b6(_0x1ce675);}catch(_0x3e0747){console['error'](_0x4562ec(_0x4a1223(0x1cb),{'ide':_0x33b622,'error':_0x3e0747 instanceof Error?_0x3e0747[_0x4a1223(0x1d6)]:String(_0x3e0747)}));}}_0x44177&&writeGuidesToProject(_0x44177,_0x336c8e,'.lovrabet/skill/.shared/guides',_0x12da60);const _0x4b0aae={'version':_0x4a1223(0x1d4),'installedAt':new Date()[_0x4a1223(0x1e3)](),'platforms':_0x3071ac},_0x4e2bec=join(_0x336c8e,_0x4a1223(0x1b2)),_0x5c116b=join(_0x336c8e,_0x4a1223(0x1c3));await copyDir(_0x5c116b,_0x5c116b),writeFileSync(_0x4e2bec,JSON[_0x4a1223(0x1da)](_0x4b0aae,null,0x2),_0x4a1223(0x1ad)),logger[_0x4a1223(0x1c8)]('skill-install',_0x4a1223(0x1b4),{'projectRoot':_0x336c8e,'ides':_0x3071ac,'foldersCount':_0x1ce675}),_0x4fbe05(_0x4a1223(0x1cc)),setTimeout(()=>{_0x3b6d19();},0x3e8);}return a64_0x3815cc(Box,{'flexDirection':_0x12e5ae(0x1ce),'marginTop':0x1,'children':[_0x5ee1b8===_0x12e5ae(0x1ca)&&a64_0x46bfa0(IDESelector,{'ideList':UI_IDE_LIST,'title':_0x4562ec(_0x12e5ae(0x1c2)),'selection':_0x4ff374}),_0x5ee1b8==='installing'&&a64_0x46bfa0(InstallingStep,{'completedSteps':_0x2534f3,'installingIDEs':_0x5f2951,'installedCount':_0x3e5469}),_0x5ee1b8===_0x12e5ae(0x1cc)&&a64_0x46bfa0(DoneStep,{'installedCount':_0x3e5469})]});}function InstallingStep({completedSteps:_0x37db61,installingIDEs:_0x21f6e8,installedCount:_0x1ff7c2}){const _0x2e17ad=a64_0x4cd267,{t:_0x117ccf}=useI18n();return a64_0x3815cc(a64_0x2ff17f,{'children':[_0x37db61[_0x2e17ad(0x1c9)]((_0x16bdf3,_0x2f1c58)=>a64_0x3815cc(Box,{'children':[a64_0x3815cc(Text,{'color':_0x2e17ad(0x1d1),'children':['√\x20',_0x16bdf3[_0x2e17ad(0x1ae)],':\x20']}),a64_0x46bfa0(Text,{'color':'cyan','children':_0x16bdf3[_0x2e17ad(0x1cf)]})]},_0x2f1c58)),a64_0x46bfa0(Box,{'marginTop':0x1,'children':a64_0x46bfa0(Text,{'children':_0x117ccf(_0x2e17ad(0x1bd))})}),_0x21f6e8[_0x2e17ad(0x1c9)](_0x3744fe=>a64_0x3815cc(Box,{'children':[a64_0x46bfa0(Text,{'color':_0x2e17ad(0x1d1),'children':_0x2e17ad(0x1c5)}),a64_0x46bfa0(Text,{'children':IDE_CONFIGS[_0x3744fe]?.['name']||_0x3744fe})]},_0x3744fe)),a64_0x46bfa0(Box,{'marginTop':0x1,'children':a64_0x46bfa0(Text,{'color':'gray','children':_0x117ccf(_0x2e17ad(0x1e0),{'count':_0x1ff7c2})})})]});}function DoneStep({installedCount:_0x4cf0f9}){const _0x4d6681=a64_0x4cd267,{t:_0x1bec5b}=useI18n();return a64_0x3815cc(a64_0x2ff17f,{'children':[a64_0x46bfa0(Box,{'children':a64_0x46bfa0(Text,{'color':_0x4d6681(0x1d1),'children':_0x1bec5b(_0x4d6681(0x1d2),{'count':_0x4cf0f9})})}),a64_0x46bfa0(Box,{'marginTop':0x1,'children':a64_0x46bfa0(Text,{'color':_0x4d6681(0x1b3),'children':_0x1bec5b(_0x4d6681(0x1af))})}),a64_0x46bfa0(Box,{'marginTop':0x1,'children':a64_0x46bfa0(Text,{'color':_0x4d6681(0x1b3),'children':_0x1bec5b(_0x4d6681(0x1c7))})})]});}async function copyDirIfNeeded(_0x2d4115,_0x360d05){try{return await copyDir(_0x2d4115,_0x360d05),!![];}catch{return![];}}
@@ -1 +1 @@
1
- (function(_0x182307,_0x5c1f31){const _0x28f8f0=a67_0x4572,_0x2b7e44=_0x182307();while(!![]){try{const _0x61fe80=parseInt(_0x28f8f0(0x246))/0x1*(parseInt(_0x28f8f0(0x207))/0x2)+parseInt(_0x28f8f0(0x1ea))/0x3*(parseInt(_0x28f8f0(0x22c))/0x4)+-parseInt(_0x28f8f0(0x200))/0x5*(parseInt(_0x28f8f0(0x256))/0x6)+parseInt(_0x28f8f0(0x1fe))/0x7+parseInt(_0x28f8f0(0x241))/0x8*(-parseInt(_0x28f8f0(0x1fd))/0x9)+-parseInt(_0x28f8f0(0x1ed))/0xa+parseInt(_0x28f8f0(0x1ef))/0xb;if(_0x61fe80===_0x5c1f31)break;else _0x2b7e44['push'](_0x2b7e44['shift']());}catch(_0x21f00a){_0x2b7e44['push'](_0x2b7e44['shift']());}}}(a67_0x3e68,0x5fa88));import{writeFileSync}from'node:fs';import{resolve,join}from'node:path';import{fileURLToPath}from'node:url';import{dirname}from'node:path';import{createInterface}from'node:readline';import{logger}from'../utils/logger.js';import{copyDir}from'../utils/file-utils.js';import{IDE_CONFIGS,CORE_IDE_LIST,ALL_CORE_IDES}from'../utils/ai_config.js';function a67_0x3e68(){const _0x18611b=['skill.help.exampleBffDesc','skill.help.bffWorkflow','toLowerCase','question','trim','\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--all\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20','name','split','skill.generic','path','30MZolqg','skill.help.options','\x20-\x20','skill.select.title','agent','\x0a\x20\x20lovrabet\x20skill\x20install\x20--all\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','skill.installing.createdDir','969taUyJF','skill.help.installAll','skill.error.noValidIDE','2707660ygpMlp','skill.help.interactiveKeys','2398561TcExUl','-$1','skill.error.unsupportedCommand','skill.select.cancelled','includes','\x0a\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','\x20\x20q.\x20','skill.help.skillContentsList','skill-install','skill.help.installMethods','skill.select.cancel','\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20','some','skill.installing.createdManifest','1198413QwFIFc','1464190jyRfwS','skill.help.title','130745bVeeoU','--help','stdin','skill.select.inputFormat','\x20\x200.\x20','from','error','1160MGfLUD','skill.cdn.fetchSuccess','\x0a\x20\x20lovrabet\x20skill\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','log','utf-8','\x0a\x20\x20lovrabet\x20skill\x20install\x20--dangerously-bff-save\x20\x20','skill.select.prompt','skill.help.interactiveSelect','length','folders','filter','skill.help.supportedIDEs','cwd','\x0a\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x20--cursor\x20--claude\x0a','skill.errorHint.installDirect','skill.done.success','stringify','skill.errorHint.exampleInteractive','skill.help.allDesc','\x0a\x20\x20--antigravity\x20\x20Antigravity\x20IDE\x20(.agent/skills/)\x0a\x20\x20--all\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','(empty)','\x0a\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x20--dangerously-bff-save\x0a','../../cdn-source/skills','2.0.0','skill.errorHint.usageExamples','skill.error.unknownPlatform','help','close','skill.help.exampleInteractive','skill.help.installDirect','安装成功','setLogPath','skill.cdn.fetching','\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x0a','toISOString','skill.cdn.fetchFailed','skill.help.examples','7988oRNFzO','startsWith','skill.cdn.fetchingExtend','skill.errorHint.availableCommands','skill.done.guidesLocation','all','skill.select.installAll','push','exit','guides','skill.help.exampleAllDesc','skill.help.afterInstall','skill.select.inputHint','skill.help.directInstall','skill.help.guidesLocationTitle','skill.help.bffOption','skill.help.skillContents','skill.help.afterInstallList','message','skill.installing.ide','stdout','40dnhOhl','skill.help.showHelp','forEach','replace','keys','667iXRqRC','files','.lovrabet','不支持的命令:\x20','skill.help.usage','\x0a\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x20--all\x0a'];a67_0x3e68=function(){return _0x18611b;};return a67_0x3e68();}import{installSingleIDE}from'./skill-installer.js';import{fetchGuidesFromCDN,writeGuidesToProject}from'../utils/guides-cdn.js';import a67_0x4a68b5 from'../i18n/index.js';const t=a67_0x4a68b5['t']['bind'](a67_0x4a68b5),__dirname=dirname(fileURLToPath(import.meta.url));export function camelCaseFlagsToKebab(_0x3aeb88){const _0x47c707=a67_0x4572,_0x4f60a0=[];for(const [_0x16b7a1,_0x52507c]of Object['entries'](_0x3aeb88)){if(_0x52507c===!![]){const _0x1dccc6=_0x16b7a1[_0x47c707(0x244)](/([A-Z])/g,_0x47c707(0x1f0))[_0x47c707(0x24e)]();_0x4f60a0[_0x47c707(0x233)](_0x1dccc6);}}return _0x4f60a0;}export function parseDynamicFlags(){const _0x68a713=a67_0x4572,_0x1ee975=[];for(let _0x11530f=0x3;_0x11530f<process['argv']['length'];_0x11530f++){const _0xd67f71=process['argv'][_0x11530f];if(_0xd67f71&&_0xd67f71[_0x68a713(0x22d)]('--')){const _0x5d613a=_0xd67f71['slice'](0x2);_0x5d613a&&!_0x5d613a['includes']('=')&&_0x1ee975[_0x68a713(0x233)](_0x5d613a);}}return _0x1ee975;}function a67_0x4572(_0x23fb40,_0x5f2f55){_0x23fb40=_0x23fb40-0x1e7;const _0x3e68f5=a67_0x3e68();let _0x45727a=_0x3e68f5[_0x23fb40];return _0x45727a;}export function getAllProvidedFlags(_0x181cf5){const _0xb19c40=a67_0x4572,_0xf1b880=camelCaseFlagsToKebab(_0x181cf5),_0x3d3055=parseDynamicFlags(),_0x47b7c4=new Set([..._0xf1b880,..._0x3d3055]);return Array[_0xb19c40(0x205)](_0x47b7c4);}export async function skillsCommand(_0x4f6179,_0x1cb7ce,_0x33c41e){const _0xce33f6=a67_0x4572;logger[_0xce33f6(0x226)](process[_0xce33f6(0x213)]());if(_0x33c41e?.[_0xce33f6(0x221)]||_0x4f6179===_0xce33f6(0x201)){showHelp();return;}_0x4f6179!=='install'&&(console[_0xce33f6(0x206)](t(_0xce33f6(0x1f1),{'cmd':_0x4f6179||_0xce33f6(0x21b)})),console[_0xce33f6(0x20a)](t(_0xce33f6(0x22f))),console[_0xce33f6(0x20a)](t('skill.errorHint.installInteractive')),console['log'](t(_0xce33f6(0x215))),console[_0xce33f6(0x20a)](t('skill.errorHint.showHelp')),console[_0xce33f6(0x20a)](t(_0xce33f6(0x21f))),console['log'](t(_0xce33f6(0x218))),console['log'](t('skill.errorHint.exampleDirect')),logger[_0xce33f6(0x206)]('skill',_0xce33f6(0x249)+_0x4f6179),process[_0xce33f6(0x234)](0x1));let _0x2f4b2b=_0x1cb7ce?.[0x0];const _0x33b780=getAllProvidedFlags(_0x33c41e??{});_0x2f4b2b?.[_0xce33f6(0x22d)]('--')&&(_0x2f4b2b=undefined),await installSkill(_0x2f4b2b??'agent',_0x33b780);}async function selectIDEs(){const _0x5b1b85=a67_0x4572;return console[_0x5b1b85(0x20a)](t(_0x5b1b85(0x259))),CORE_IDE_LIST[_0x5b1b85(0x243)]((_0x70d0db,_0x65c938)=>{const _0x1b9daf=_0x5b1b85;console['log']('\x20\x20'+(_0x65c938+0x1)+'.\x20'+IDE_CONFIGS[_0x70d0db]['name']+_0x1b9daf(0x258)+IDE_CONFIGS[_0x70d0db]['description']);}),console['log'](_0x5b1b85(0x204)+t(_0x5b1b85(0x232))),console[_0x5b1b85(0x20a)](_0x5b1b85(0x1f5)+t(_0x5b1b85(0x1f9))+'\x0a'),console[_0x5b1b85(0x20a)](t(_0x5b1b85(0x203))),console[_0x5b1b85(0x20a)](t(_0x5b1b85(0x238))),new Promise(_0x2527cb=>{const _0x3069ae=_0x5b1b85,_0x411cf7=createInterface({'input':process[_0x3069ae(0x202)],'output':process[_0x3069ae(0x240)]});_0x411cf7[_0x3069ae(0x24f)](t(_0x3069ae(0x20d)),_0xc2264d=>{const _0xd8c1db=_0x3069ae;_0x411cf7[_0xd8c1db(0x222)]();const _0x1f315a=_0xc2264d[_0xd8c1db(0x250)]()[_0xd8c1db(0x24e)]();(_0x1f315a==='q'||_0x1f315a==='quit'||_0x1f315a==='exit')&&(console['log'](t(_0xd8c1db(0x1f2))),process[_0xd8c1db(0x234)](0x0));if(_0x1f315a==='0'||_0x1f315a===_0xd8c1db(0x231)){_0x2527cb(['all']);return;}const _0x1bd212=_0x1f315a[_0xd8c1db(0x253)](/\s+/)[_0xd8c1db(0x211)](Boolean),_0x1e6870=[];for(const _0x3bc25d of _0x1bd212){const _0x3fdfca=parseInt(_0x3bc25d,0xa);if(!isNaN(_0x3fdfca)&&_0x3fdfca>=0x1&&_0x3fdfca<=CORE_IDE_LIST['length']){const _0x4342c7=CORE_IDE_LIST[_0x3fdfca-0x1];_0x4342c7&&!_0x1e6870[_0xd8c1db(0x1f3)](_0x4342c7)&&_0x1e6870[_0xd8c1db(0x233)](_0x4342c7);}}_0x1e6870['length']===0x0&&(console['log'](t('skill.select.noneSelected')),process[_0xd8c1db(0x234)](0x0)),_0x2527cb(_0x1e6870);});});}function showHelp(){const _0x5a255b=a67_0x4572;console[_0x5a255b(0x20a)]('\x0a'+t(_0x5a255b(0x1ff))+'\x0a\x0a'+t(_0x5a255b(0x24a))+'\x0a\x20\x20lovrabet\x20skill\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+t(_0x5a255b(0x242))+_0x5a255b(0x1f4)+t('skill.help.installInteractive')+_0x5a255b(0x209)+t(_0x5a255b(0x224))+_0x5a255b(0x1e8)+t(_0x5a255b(0x1eb))+_0x5a255b(0x20c)+t('skill.help.installWithBff')+'\x0a\x0a'+t(_0x5a255b(0x1f8))+'\x0a'+t(_0x5a255b(0x20e))+'\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x0a'+t(_0x5a255b(0x1ee))+'\x0a\x0a'+t(_0x5a255b(0x239))+_0x5a255b(0x1fa)+t(_0x5a255b(0x224))+'\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--cursor\x20--claude\x20\x20#\x20'+t('skill.help.installAll')+_0x5a255b(0x251)+t('skill.help.installAll')+'\x0a\x0a'+t(_0x5a255b(0x24d))+'\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--dangerously-bff-save\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20cursor\x20--dangerously-bff-save\x0a\x0a'+t(_0x5a255b(0x212))+'\x0a\x20\x20--cursor\x20\x20\x20\x20\x20\x20\x20Cursor\x20IDE\x20(.cursorrules\x20+\x20.cursor/commands/)\x0a\x20\x20--windsurf\x20\x20\x20\x20\x20Windsurf\x20IDE\x20(.windsurf/workflows/)\x0a\x20\x20--claude\x20\x20\x20\x20\x20\x20\x20Claude\x20Code\x20(.claude/skills/)\x0a\x20\x20--cline\x20\x20\x20\x20\x20\x20\x20\x20Cline\x20IDE\x20(.cline/skills/)\x0a\x20\x20--codex\x20\x20\x20\x20\x20\x20\x20\x20Codex\x20IDE\x20(.codex/skills/)\x0a\x20\x20--opencode\x20\x20\x20\x20\x20OpenCode\x20IDE\x20(.opencode/skills/)\x0a\x20\x20--qoder\x20\x20\x20\x20\x20\x20\x20\x20Qoder\x20IDE\x20(.qoder/rules/\x20+\x20.qoder/skills/)\x0a\x20\x20--codebuddy\x20\x20\x20\x20CodeBuddy\x20IDE\x20(.codebuddy/skills/)\x0a\x20\x20--trae\x20\x20\x20\x20\x20\x20\x20\x20\x20Trae\x20IDE\x20(.trae/skills/)\x0a\x20\x20--agent\x20\x20\x20\x20\x20\x20\x20\x20'+t('skill.help.agentDesc')+_0x5a255b(0x21a)+t(_0x5a255b(0x219))+'\x0a\x0a'+t(_0x5a255b(0x257))+'\x0a'+t(_0x5a255b(0x23b))+'\x0a\x0a'+t(_0x5a255b(0x23c))+'\x0a'+t(_0x5a255b(0x1f6))+'\x0a\x0a'+t(_0x5a255b(0x22b))+_0x5a255b(0x228)+t(_0x5a255b(0x223))+_0x5a255b(0x214)+t('skill.help.exampleDirectDesc')+_0x5a255b(0x21c)+t(_0x5a255b(0x24c))+_0x5a255b(0x24b)+t(_0x5a255b(0x236))+'\x0a\x0a'+t(_0x5a255b(0x237))+'\x0a'+t(_0x5a255b(0x23d))+'\x0a\x0a'+t(_0x5a255b(0x23a))+'\x0a\x20\x20.lovrabet/skill/.shared/guides/01-typescript-sdk/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/02-mcp-sql-workflow/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/03-antd-style/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/04-troubleshooting/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/05-api-integration/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/06-menu-management/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/07-backend-function/guide.md\x0a\x20\x20');}async function installSkill(_0x365166,_0x3fd79b){const _0x14d77e=a67_0x4572,_0x5724ea=process['cwd'](),_0x313282=resolve(__dirname,_0x14d77e(0x21d));let _0xf74c28=[];!_0x365166?_0xf74c28=await selectIDEs():_0xf74c28=[_0x365166];_0xf74c28[_0x14d77e(0x1f3)](_0x14d77e(0x231))&&(_0xf74c28=[...ALL_CORE_IDES,_0x14d77e(0x1e7)]);const _0x10aeb0=[];for(const _0x2bc55e of _0xf74c28){if(_0x2bc55e===_0x14d77e(0x1e7))_0x10aeb0[_0x14d77e(0x233)]('agent');else{if(_0x2bc55e==='all')continue;else IDE_CONFIGS[_0x2bc55e]?_0x10aeb0['push'](_0x2bc55e):(console[_0x14d77e(0x20a)](t(_0x14d77e(0x220),{'ide':_0x2bc55e})),_0x10aeb0[_0x14d77e(0x233)](_0x14d77e(0x1e7)));}}_0x10aeb0[_0x14d77e(0x20f)]===0x0&&(console['log'](t(_0x14d77e(0x1ec))),process[_0x14d77e(0x234)](0x0));const _0xb3eb60=_0x3fd79b&&_0x3fd79b[_0x14d77e(0x20f)]>0x0;console[_0x14d77e(0x20a)](_0xb3eb60?t(_0x14d77e(0x22e)):t(_0x14d77e(0x227)));let _0x4da2d6;try{_0x4da2d6=await fetchGuidesFromCDN(_0xb3eb60),console[_0x14d77e(0x20a)](t(_0x14d77e(0x208),{'count':Object[_0x14d77e(0x245)](_0x4da2d6[_0x14d77e(0x235)])[_0x14d77e(0x20f)]}));}catch(_0x101772){console['warn'](t(_0x14d77e(0x22a),{'error':_0x101772 instanceof Error?_0x101772[_0x14d77e(0x23e)]:String(_0x101772)}));}let _0x16a04e=0x0;for(const _0x446805 of _0x10aeb0){try{const _0x381c1b=_0x446805===_0x14d77e(0x1e7)?t(_0x14d77e(0x254)):IDE_CONFIGS[_0x446805]?.[_0x14d77e(0x252)]||_0x446805;console[_0x14d77e(0x20a)](t(_0x14d77e(0x23f),{'name':_0x381c1b}));const _0xf35e5e=_0x446805===_0x14d77e(0x1e7)?undefined:IDE_CONFIGS[_0x446805],_0x2615e2=await installSingleIDE(_0x446805,_0xf35e5e,_0x5724ea,_0x313282,_0x4da2d6,_0x3fd79b);_0x16a04e+=_0x2615e2;if(_0xf35e5e?.[_0x14d77e(0x210)])for(const _0x3b123e of _0xf35e5e[_0x14d77e(0x210)]){const _0x15a417=_0xf35e5e[_0x14d77e(0x247)]?.[_0x14d77e(0x1fb)](_0x3b8a2c=>_0x3b8a2c[_0x14d77e(0x255)][_0x14d77e(0x22d)](_0x3b123e+'/'))??![];_0x15a417?console['log'](t(_0x14d77e(0x1e9),{'path':_0x3b123e})):console[_0x14d77e(0x20a)](t('skill.installing.created',{'path':_0x3b123e}));}if(_0xf35e5e?.[_0x14d77e(0x247)])for(const _0x5b7e0b of _0xf35e5e['files']){console['log'](t('skill.installing.created',{'path':_0x5b7e0b[_0x14d77e(0x255)]}));}}catch(_0x429215){console[_0x14d77e(0x206)](t('skill.error.installFailed',{'ide':_0x446805,'error':_0x429215 instanceof Error?_0x429215['message']:String(_0x429215)}));}}_0x4da2d6&&writeGuidesToProject(_0x4da2d6,_0x5724ea,'.lovrabet/skill/.shared/guides',_0x3fd79b);const _0x542256={'version':_0x14d77e(0x21e),'installedAt':new Date()[_0x14d77e(0x229)](),'platforms':_0x10aeb0},_0x2df489=join(_0x5724ea,'.lovrabet/skill-manifest.json'),_0x6544f4=join(_0x5724ea,_0x14d77e(0x248));await copyDir(_0x6544f4,_0x6544f4),writeFileSync(_0x2df489,JSON[_0x14d77e(0x217)](_0x542256,null,0x2),_0x14d77e(0x20b)),console[_0x14d77e(0x20a)](t(_0x14d77e(0x1fc))),console[_0x14d77e(0x20a)](t(_0x14d77e(0x216),{'count':_0x16a04e})),console[_0x14d77e(0x20a)](t(_0x14d77e(0x230))),console['log'](t('skill.done.guidesPath')),logger['info'](_0x14d77e(0x1f7),_0x14d77e(0x225),{'projectRoot':_0x5724ea,'ides':_0x10aeb0,'foldersCount':_0x16a04e});}
1
+ const a65_0x5a5c0d=a65_0x2f81;(function(_0x110200,_0x16a7b8){const _0x4ec2bc=a65_0x2f81,_0x33ac09=_0x110200();while(!![]){try{const _0x4bb4c0=-parseInt(_0x4ec2bc(0xfd))/0x1+parseInt(_0x4ec2bc(0x107))/0x2*(parseInt(_0x4ec2bc(0x10d))/0x3)+-parseInt(_0x4ec2bc(0xf5))/0x4+-parseInt(_0x4ec2bc(0x117))/0x5*(-parseInt(_0x4ec2bc(0xe5))/0x6)+-parseInt(_0x4ec2bc(0xbd))/0x7*(parseInt(_0x4ec2bc(0xfa))/0x8)+parseInt(_0x4ec2bc(0x106))/0x9+parseInt(_0x4ec2bc(0xcc))/0xa*(parseInt(_0x4ec2bc(0x120))/0xb);if(_0x4bb4c0===_0x16a7b8)break;else _0x33ac09['push'](_0x33ac09['shift']());}catch(_0x21d525){_0x33ac09['push'](_0x33ac09['shift']());}}}(a65_0x2e8d,0x84cf9));import{writeFileSync}from'node:fs';import{resolve,join}from'node:path';import{fileURLToPath}from'node:url';function a65_0x2e8d(){const _0x2dc67b=['all','--help','14680aqcUUu','skill.errorHint.installDirect','argv','434440AnKZcQ','split','toLowerCase','skill.help.bffOption','stdin','skill.error.unsupportedCommand','startsWith','skill.help.title','skill.done.guidesLocation','2461455TecPcI','44LYGStB','不支持的命令:\x20','exit','skill.help.installInteractive','question','\x0a\x20\x20--cursor\x20\x20\x20\x20\x20\x20\x20Cursor\x20IDE\x20(.cursorrules\x20+\x20.cursor/commands/)\x0a\x20\x20--windsurf\x20\x20\x20\x20\x20Windsurf\x20IDE\x20(.windsurf/workflows/)\x0a\x20\x20--claude\x20\x20\x20\x20\x20\x20\x20Claude\x20Code\x20(.claude/skills/)\x0a\x20\x20--cline\x20\x20\x20\x20\x20\x20\x20\x20Cline\x20IDE\x20(.cline/skills/)\x0a\x20\x20--codex\x20\x20\x20\x20\x20\x20\x20\x20Codex\x20IDE\x20(.codex/skills/)\x0a\x20\x20--opencode\x20\x20\x20\x20\x20OpenCode\x20IDE\x20(.opencode/skills/)\x0a\x20\x20--qoder\x20\x20\x20\x20\x20\x20\x20\x20Qoder\x20IDE\x20(.qoder/rules/\x20+\x20.qoder/skills/)\x0a\x20\x20--codebuddy\x20\x20\x20\x20CodeBuddy\x20IDE\x20(.codebuddy/skills/)\x0a\x20\x20--trae\x20\x20\x20\x20\x20\x20\x20\x20\x20Trae\x20IDE\x20(.trae/skills/)\x0a\x20\x20--agent\x20\x20\x20\x20\x20\x20\x20\x20','105177WQUWbu','error','skill.help.showHelp','.lovrabet','\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--dangerously-bff-save\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20cursor\x20--dangerously-bff-save\x0a\x0a','trim','replace','skill.select.inputFormat','\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x0a','skill.help.afterInstallList','5406955POHrrY','\x20\x20q.\x20','skill.help.installDirect','cwd','skill.help.exampleInteractive','name','skill.help.guidesLocationTitle','.lovrabet/skill/.shared/guides','skill.help.options','319cJQPJo','skill.error.installFailed','stringify','skill.error.unknownPlatform','message','skill.select.inputHint','path','安装成功','bind','\x0a\x20\x20lovrabet\x20skill\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','skill.installing.created','skill.generic','\x0a\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x20--cursor\x20--claude\x0a','skill.cdn.fetchSuccess','files','forEach','\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20','../../cdn-source/skills','3143MbZzzV','skill.select.cancel','skill.help.exampleAllDesc','skill.errorHint.showHelp','\x20\x200.\x20','warn','skill.help.usage','skill.help.installAll','skill.help.skillContentsList','skill.select.title','skill.cdn.fetchFailed','skill.done.guidesPath','skill-install','setLogPath','\x0a\x20\x20.lovrabet/skill/.shared/guides/01-typescript-sdk/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/02-mcp-sql-workflow/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/03-antd-style/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/04-troubleshooting/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/05-api-integration/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/06-menu-management/guide.md\x0a\x20\x20.lovrabet/skill/.shared/guides/07-backend-function/guide.md\x0a\x20\x20','12350iDbtbv','help','(empty)','includes','skill.help.skillContents','skill.errorHint.exampleDirect','guides','skill.help.exampleBffDesc','skill.help.interactiveKeys','skill.help.exampleDirectDesc','-$1','skill.help.examples','\x0a\x20\x20lovrabet\x20skill\x20install\x20--all\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','skill.installing.createdManifest','skill.cdn.fetching','info','\x0a\x20\x20lovrabet\x20skill\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','skill.errorHint.installInteractive','skill.installing.ide','\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--cursor\x20--claude\x20\x20#\x20','length','skill.errorHint.usageExamples','push','install','skill.help.afterInstall','6XIoTBY','skill.help.directInstall','close','folders','skill.help.installMethods','skill','entries','filter','skill.installing.createdDir','utf-8','\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x20--all\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20','agent','skill.help.agentDesc','stdout','\x20-\x20','.lovrabet/skill-manifest.json','1438604uMPUVx','slice','log'];a65_0x2e8d=function(){return _0x2dc67b;};return a65_0x2e8d();}import{dirname}from'node:path';import{createInterface}from'node:readline';import{logger}from'../utils/logger.js';import{copyDir}from'../utils/file-utils.js';import{IDE_CONFIGS,CORE_IDE_LIST,ALL_CORE_IDES}from'../utils/ai_config.js';import{installSingleIDE}from'./skill-installer.js';import{fetchGuidesFromCDN,writeGuidesToProject}from'../utils/guides-cdn.js';import a65_0x213355 from'../i18n/index.js';const t=a65_0x213355['t'][a65_0x5a5c0d(0x128)](a65_0x213355),__dirname=dirname(fileURLToPath(import.meta.url));export function camelCaseFlagsToKebab(_0x2ac50b){const _0x2563db=a65_0x5a5c0d,_0x438fd2=[];for(const [_0xd000f9,_0x384482]of Object[_0x2563db(0xeb)](_0x2ac50b)){if(_0x384482===!![]){const _0x221d89=_0xd000f9[_0x2563db(0x113)](/([A-Z])/g,_0x2563db(0xd6))[_0x2563db(0xff)]();_0x438fd2[_0x2563db(0xe2)](_0x221d89);}}return _0x438fd2;}export function parseDynamicFlags(){const _0x50d73b=a65_0x5a5c0d,_0x5a65e1=[];for(let _0xe199bf=0x3;_0xe199bf<process['argv'][_0x50d73b(0xe0)];_0xe199bf++){const _0x130cf9=process[_0x50d73b(0xfc)][_0xe199bf];if(_0x130cf9&&_0x130cf9['startsWith']('--')){const _0x49a73b=_0x130cf9[_0x50d73b(0xf6)](0x2);_0x49a73b&&!_0x49a73b[_0x50d73b(0xcf)]('=')&&_0x5a65e1[_0x50d73b(0xe2)](_0x49a73b);}}return _0x5a65e1;}function a65_0x2f81(_0x2a80c1,_0x172fcb){_0x2a80c1=_0x2a80c1-0xbd;const _0x2e8d6d=a65_0x2e8d();let _0x2f8113=_0x2e8d6d[_0x2a80c1];return _0x2f8113;}export function getAllProvidedFlags(_0x523eb6){const _0x3e3252=camelCaseFlagsToKebab(_0x523eb6),_0x3c6db3=parseDynamicFlags(),_0x37e135=new Set([..._0x3e3252,..._0x3c6db3]);return Array['from'](_0x37e135);}export async function skillsCommand(_0x34aeed,_0x368392,_0x230f2b){const _0x37ed33=a65_0x5a5c0d;logger[_0x37ed33(0xca)](process[_0x37ed33(0x11a)]());if(_0x230f2b?.[_0x37ed33(0xcd)]||_0x34aeed===_0x37ed33(0xf9)){showHelp();return;}_0x34aeed!==_0x37ed33(0xe3)&&(console[_0x37ed33(0x10e)](t(_0x37ed33(0x102),{'cmd':_0x34aeed||_0x37ed33(0xce)})),console[_0x37ed33(0xf7)](t('skill.errorHint.availableCommands')),console[_0x37ed33(0xf7)](t(_0x37ed33(0xdd))),console[_0x37ed33(0xf7)](t(_0x37ed33(0xfb))),console[_0x37ed33(0xf7)](t(_0x37ed33(0xc0))),console[_0x37ed33(0xf7)](t(_0x37ed33(0xe1))),console[_0x37ed33(0xf7)](t('skill.errorHint.exampleInteractive')),console[_0x37ed33(0xf7)](t(_0x37ed33(0xd1))),logger['error'](_0x37ed33(0xea),_0x37ed33(0x108)+_0x34aeed),process[_0x37ed33(0x109)](0x1));let _0x4fc536=_0x368392?.[0x0];const _0x313af2=getAllProvidedFlags(_0x230f2b??{});_0x4fc536?.[_0x37ed33(0x103)]('--')&&(_0x4fc536=undefined),await installSkill(_0x4fc536??_0x37ed33(0xf0),_0x313af2);}async function selectIDEs(){const _0x5d9c1c=a65_0x5a5c0d;return console[_0x5d9c1c(0xf7)](t(_0x5d9c1c(0xc6))),CORE_IDE_LIST[_0x5d9c1c(0x12f)]((_0x1d79a5,_0x44135e)=>{const _0x71c6db=_0x5d9c1c;console[_0x71c6db(0xf7)]('\x20\x20'+(_0x44135e+0x1)+'.\x20'+IDE_CONFIGS[_0x1d79a5]['name']+_0x71c6db(0xf3)+IDE_CONFIGS[_0x1d79a5]['description']);}),console[_0x5d9c1c(0xf7)](_0x5d9c1c(0xc1)+t('skill.select.installAll')),console[_0x5d9c1c(0xf7)](_0x5d9c1c(0x118)+t(_0x5d9c1c(0xbe))+'\x0a'),console[_0x5d9c1c(0xf7)](t(_0x5d9c1c(0x114))),console[_0x5d9c1c(0xf7)](t(_0x5d9c1c(0x125))),new Promise(_0x287e33=>{const _0x1b2a38=_0x5d9c1c,_0x2a0bad=createInterface({'input':process[_0x1b2a38(0x101)],'output':process[_0x1b2a38(0xf2)]});_0x2a0bad[_0x1b2a38(0x10b)](t('skill.select.prompt'),_0x22285c=>{const _0x57ad2f=_0x1b2a38;_0x2a0bad[_0x57ad2f(0xe7)]();const _0x3c4b84=_0x22285c[_0x57ad2f(0x112)]()[_0x57ad2f(0xff)]();(_0x3c4b84==='q'||_0x3c4b84==='quit'||_0x3c4b84===_0x57ad2f(0x109))&&(console[_0x57ad2f(0xf7)](t('skill.select.cancelled')),process[_0x57ad2f(0x109)](0x0));if(_0x3c4b84==='0'||_0x3c4b84===_0x57ad2f(0xf8)){_0x287e33([_0x57ad2f(0xf8)]);return;}const _0x34875c=_0x3c4b84[_0x57ad2f(0xfe)](/\s+/)[_0x57ad2f(0xec)](Boolean),_0x3dcfd7=[];for(const _0x3c632e of _0x34875c){const _0x3308c1=parseInt(_0x3c632e,0xa);if(!isNaN(_0x3308c1)&&_0x3308c1>=0x1&&_0x3308c1<=CORE_IDE_LIST['length']){const _0x238c2=CORE_IDE_LIST[_0x3308c1-0x1];_0x238c2&&!_0x3dcfd7[_0x57ad2f(0xcf)](_0x238c2)&&_0x3dcfd7[_0x57ad2f(0xe2)](_0x238c2);}}_0x3dcfd7[_0x57ad2f(0xe0)]===0x0&&(console[_0x57ad2f(0xf7)](t('skill.select.noneSelected')),process[_0x57ad2f(0x109)](0x0)),_0x287e33(_0x3dcfd7);});});}function showHelp(){const _0x18d4fc=a65_0x5a5c0d;console[_0x18d4fc(0xf7)]('\x0a'+t(_0x18d4fc(0x104))+'\x0a\x0a'+t(_0x18d4fc(0xc3))+_0x18d4fc(0xdc)+t(_0x18d4fc(0x10f))+'\x0a\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+t(_0x18d4fc(0x10a))+_0x18d4fc(0x129)+t(_0x18d4fc(0x119))+_0x18d4fc(0xd8)+t(_0x18d4fc(0xc4))+'\x0a\x20\x20lovrabet\x20skill\x20install\x20--dangerously-bff-save\x20\x20'+t('skill.help.installWithBff')+'\x0a\x0a'+t(_0x18d4fc(0xe9))+'\x0a'+t('skill.help.interactiveSelect')+'\x0a\x20\x20\x20\x20$\x20lovrabet\x20skill\x20install\x0a'+t(_0x18d4fc(0xd4))+'\x0a\x0a'+t(_0x18d4fc(0xe6))+_0x18d4fc(0x130)+t('skill.help.installDirect')+_0x18d4fc(0xdf)+t(_0x18d4fc(0xc4))+_0x18d4fc(0xef)+t(_0x18d4fc(0xc4))+'\x0a\x0a'+t('skill.help.bffWorkflow')+_0x18d4fc(0x111)+t('skill.help.supportedIDEs')+_0x18d4fc(0x10c)+t(_0x18d4fc(0xf1))+'\x0a\x20\x20--antigravity\x20\x20Antigravity\x20IDE\x20(.agent/skills/)\x0a\x20\x20--all\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+t('skill.help.allDesc')+'\x0a\x0a'+t(_0x18d4fc(0x11f))+'\x0a'+t(_0x18d4fc(0x100))+'\x0a\x0a'+t(_0x18d4fc(0xd0))+'\x0a'+t(_0x18d4fc(0xc5))+'\x0a\x0a'+t(_0x18d4fc(0xd7))+_0x18d4fc(0x115)+t(_0x18d4fc(0x11b))+_0x18d4fc(0x12c)+t(_0x18d4fc(0xd5))+'\x0a\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x20--dangerously-bff-save\x0a'+t(_0x18d4fc(0xd3))+'\x0a\x0a\x20\x20$\x20lovrabet\x20skill\x20install\x20--all\x0a'+t(_0x18d4fc(0xbf))+'\x0a\x0a'+t(_0x18d4fc(0xe4))+'\x0a'+t(_0x18d4fc(0x116))+'\x0a\x0a'+t(_0x18d4fc(0x11d))+_0x18d4fc(0xcb));}async function installSkill(_0x51f979,_0x2d09dc){const _0x511045=a65_0x5a5c0d,_0x55b853=process['cwd'](),_0x130f7e=resolve(__dirname,_0x511045(0x131));let _0x48dd10=[];!_0x51f979?_0x48dd10=await selectIDEs():_0x48dd10=[_0x51f979];_0x48dd10[_0x511045(0xcf)](_0x511045(0xf8))&&(_0x48dd10=[...ALL_CORE_IDES,_0x511045(0xf0)]);const _0x3788e5=[];for(const _0x592e5e of _0x48dd10){if(_0x592e5e==='agent')_0x3788e5[_0x511045(0xe2)](_0x511045(0xf0));else{if(_0x592e5e===_0x511045(0xf8))continue;else IDE_CONFIGS[_0x592e5e]?_0x3788e5[_0x511045(0xe2)](_0x592e5e):(console[_0x511045(0xf7)](t(_0x511045(0x123),{'ide':_0x592e5e})),_0x3788e5[_0x511045(0xe2)](_0x511045(0xf0)));}}_0x3788e5['length']===0x0&&(console[_0x511045(0xf7)](t('skill.error.noValidIDE')),process[_0x511045(0x109)](0x0));const _0xb2f7d4=_0x2d09dc&&_0x2d09dc[_0x511045(0xe0)]>0x0;console['log'](_0xb2f7d4?t('skill.cdn.fetchingExtend'):t(_0x511045(0xda)));let _0x41a741;try{_0x41a741=await fetchGuidesFromCDN(_0xb2f7d4),console[_0x511045(0xf7)](t(_0x511045(0x12d),{'count':Object['keys'](_0x41a741[_0x511045(0xd2)])[_0x511045(0xe0)]}));}catch(_0x26dcd0){console[_0x511045(0xc2)](t(_0x511045(0xc7),{'error':_0x26dcd0 instanceof Error?_0x26dcd0[_0x511045(0x124)]:String(_0x26dcd0)}));}let _0x5290be=0x0;for(const _0x554160 of _0x3788e5){try{const _0x838e5c=_0x554160===_0x511045(0xf0)?t(_0x511045(0x12b)):IDE_CONFIGS[_0x554160]?.[_0x511045(0x11c)]||_0x554160;console['log'](t(_0x511045(0xde),{'name':_0x838e5c}));const _0x44414a=_0x554160===_0x511045(0xf0)?undefined:IDE_CONFIGS[_0x554160],_0x351c85=await installSingleIDE(_0x554160,_0x44414a,_0x55b853,_0x130f7e,_0x41a741,_0x2d09dc);_0x5290be+=_0x351c85;if(_0x44414a?.[_0x511045(0xe8)])for(const _0x11e89e of _0x44414a['folders']){const _0x1fef50=_0x44414a[_0x511045(0x12e)]?.['some'](_0x2a26cf=>_0x2a26cf['path'][_0x511045(0x103)](_0x11e89e+'/'))??![];_0x1fef50?console[_0x511045(0xf7)](t(_0x511045(0xed),{'path':_0x11e89e})):console[_0x511045(0xf7)](t(_0x511045(0x12a),{'path':_0x11e89e}));}if(_0x44414a?.[_0x511045(0x12e)])for(const _0x39d599 of _0x44414a['files']){console[_0x511045(0xf7)](t(_0x511045(0x12a),{'path':_0x39d599[_0x511045(0x126)]}));}}catch(_0x5a9b8e){console[_0x511045(0x10e)](t(_0x511045(0x121),{'ide':_0x554160,'error':_0x5a9b8e instanceof Error?_0x5a9b8e[_0x511045(0x124)]:String(_0x5a9b8e)}));}}_0x41a741&&writeGuidesToProject(_0x41a741,_0x55b853,_0x511045(0x11e),_0x2d09dc);const _0x1bde02={'version':'2.0.0','installedAt':new Date()['toISOString'](),'platforms':_0x3788e5},_0x168736=join(_0x55b853,_0x511045(0xf4)),_0x31f1da=join(_0x55b853,_0x511045(0x110));await copyDir(_0x31f1da,_0x31f1da),writeFileSync(_0x168736,JSON[_0x511045(0x122)](_0x1bde02,null,0x2),_0x511045(0xee)),console[_0x511045(0xf7)](t(_0x511045(0xd9))),console['log'](t('skill.done.success',{'count':_0x5290be})),console[_0x511045(0xf7)](t(_0x511045(0x105))),console[_0x511045(0xf7)](t(_0x511045(0xc8))),logger[_0x511045(0xdb)](_0x511045(0xc9),_0x511045(0x127),{'projectRoot':_0x55b853,'ides':_0x3788e5,'foldersCount':_0x5290be});}
@@ -1 +1 @@
1
- const a68_0x14b76b=a68_0x2ee9;(function(_0x1e1f0b,_0x260229){const _0x14bc51=a68_0x2ee9,_0x181c3c=_0x1e1f0b();while(!![]){try{const _0x4a10=-parseInt(_0x14bc51(0x97))/0x1+-parseInt(_0x14bc51(0x91))/0x2*(-parseInt(_0x14bc51(0x8d))/0x3)+-parseInt(_0x14bc51(0x8a))/0x4*(parseInt(_0x14bc51(0x8b))/0x5)+parseInt(_0x14bc51(0x99))/0x6*(parseInt(_0x14bc51(0x7d))/0x7)+-parseInt(_0x14bc51(0x7f))/0x8*(-parseInt(_0x14bc51(0x81))/0x9)+-parseInt(_0x14bc51(0x77))/0xa*(-parseInt(_0x14bc51(0x98))/0xb)+-parseInt(_0x14bc51(0x89))/0xc;if(_0x4a10===_0x260229)break;else _0x181c3c['push'](_0x181c3c['shift']());}catch(_0x5138cf){_0x181c3c['push'](_0x181c3c['shift']());}}}(a68_0xc2f6,0x45905));import{writeFileSync,existsSync,mkdirSync}from'node:fs';import{resolve,join}from'node:path';import{fileURLToPath}from'node:url';import{dirname}from'node:path';function a68_0xc2f6(){const _0x3c2cf8=['../../cdn-source/skills','skill.cdn.fetchFailed','keys','guides','.lovrabet/skill-manifest.json','191290LtFmqV','3043931kyAFlI','202854hhdNmX','toISOString','log','setLogPath','2.0.0','10ZYotdn','skill.cdn.fetchSuccess','length','开始安装技能包','安装成功','info','14lBaVFE','skill.error.unknownIDE','1950632cIuvVd','error','18rzATSI','skill-install-non-interactive','name','skill.done.guidesPathInline','.lovrabet/skill/.shared/guides','\x20\x20✓\x20','.lovrabet','bind','9119484zAojoy','463724lnbhwO','5dgPcja','skill.cdn.fetchingExtend','4074jkFvhb','utf-8','stringify','skill.error.installFailed','766YGRLee'];a68_0xc2f6=function(){return _0x3c2cf8;};return a68_0xc2f6();}import{logger}from'../utils/logger.js';import{IDE_CONFIGS}from'../utils/ai_config.js';function a68_0x2ee9(_0x5846bf,_0x55400e){_0x5846bf=_0x5846bf-0x76;const _0xc2f611=a68_0xc2f6();let _0x2ee9ca=_0xc2f611[_0x5846bf];return _0x2ee9ca;}import{installSingleIDE}from'./skill-installer.js';import{fetchGuidesFromCDN,writeGuidesToProject}from'../utils/guides-cdn.js';import a68_0x1a3fc4 from'../i18n/index.js';const t=a68_0x1a3fc4['t'][a68_0x14b76b(0x88)](a68_0x1a3fc4),__dirname=dirname(fileURLToPath(import.meta.url));export async function installSkillsNonInteractive(_0x29f00d,_0x19b87f,_0x5a1fa3=process['cwd']()){const _0x581c75=a68_0x14b76b,_0x4c8fac=resolve(__dirname,_0x581c75(0x92));logger[_0x581c75(0x9c)](_0x5a1fa3),logger[_0x581c75(0x7c)](_0x581c75(0x82),_0x581c75(0x7a),{'ides':_0x29f00d});const _0x5b34a0=join(_0x5a1fa3,_0x581c75(0x87));!existsSync(_0x5b34a0)&&mkdirSync(_0x5b34a0,{'recursive':!![]});const _0x1c8ab7=_0x19b87f&&_0x19b87f[_0x581c75(0x79)]>0x0;console[_0x581c75(0x9b)](_0x1c8ab7?t(_0x581c75(0x8c)):t('skill.cdn.fetching'));let _0x54788f;try{_0x54788f=await fetchGuidesFromCDN(_0x1c8ab7),console['log'](t(_0x581c75(0x78),{'count':Object[_0x581c75(0x94)](_0x54788f[_0x581c75(0x95)])[_0x581c75(0x79)]}));}catch(_0x5b1eae){console['warn'](t(_0x581c75(0x93),{'error':_0x5b1eae instanceof Error?_0x5b1eae['message']:String(_0x5b1eae)}));}let _0xde99e2=0x0;for(const _0xb955a2 of _0x29f00d){try{const _0x454de9=IDE_CONFIGS[_0xb955a2];if(!_0x454de9){console['warn'](t(_0x581c75(0x7e),{'ide':_0xb955a2}));continue;}const _0x38041d=await installSingleIDE(_0xb955a2,_0x454de9,_0x5a1fa3,_0x4c8fac,_0x54788f,_0x19b87f);_0xde99e2+=_0x38041d,console[_0x581c75(0x9b)](_0x581c75(0x86)+(_0x454de9[_0x581c75(0x83)]||_0xb955a2));}catch(_0x3d6f63){console[_0x581c75(0x80)](t(_0x581c75(0x90),{'ide':_0xb955a2,'error':_0x3d6f63 instanceof Error?_0x3d6f63['message']:String(_0x3d6f63)}));}}_0x54788f&&writeGuidesToProject(_0x54788f,_0x5a1fa3,_0x581c75(0x85),_0x19b87f);const _0x4c65ca={'version':_0x581c75(0x76),'installedAt':new Date()[_0x581c75(0x9a)](),'platforms':_0x29f00d},_0x179005=join(_0x5a1fa3,_0x581c75(0x96));writeFileSync(_0x179005,JSON[_0x581c75(0x8f)](_0x4c65ca,null,0x2),_0x581c75(0x8e)),logger[_0x581c75(0x7c)]('skill-install-non-interactive',_0x581c75(0x7b),{'projectRoot':_0x5a1fa3,'ides':_0x29f00d,'foldersCount':_0xde99e2}),console[_0x581c75(0x9b)](t('skill.done.success',{'count':_0xde99e2})),console[_0x581c75(0x9b)](t(_0x581c75(0x84)));}
1
+ const a66_0x50ff57=a66_0x34e4;(function(_0x1dfbcb,_0x460aae){const _0x3c4957=a66_0x34e4,_0x4399c6=_0x1dfbcb();while(!![]){try{const _0x1990f5=-parseInt(_0x3c4957(0xd1))/0x1+-parseInt(_0x3c4957(0xef))/0x2*(-parseInt(_0x3c4957(0xec))/0x3)+parseInt(_0x3c4957(0xf7))/0x4*(-parseInt(_0x3c4957(0xd2))/0x5)+parseInt(_0x3c4957(0xf3))/0x6*(-parseInt(_0x3c4957(0xe3))/0x7)+-parseInt(_0x3c4957(0xe2))/0x8+-parseInt(_0x3c4957(0xd8))/0x9*(parseInt(_0x3c4957(0xf1))/0xa)+-parseInt(_0x3c4957(0xda))/0xb*(-parseInt(_0x3c4957(0xd5))/0xc);if(_0x1990f5===_0x460aae)break;else _0x4399c6['push'](_0x4399c6['shift']());}catch(_0x39fc36){_0x4399c6['push'](_0x4399c6['shift']());}}}(a66_0x305f,0xa0983));import{writeFileSync,existsSync,mkdirSync}from'node:fs';import{resolve,join}from'node:path';import{fileURLToPath}from'node:url';import{dirname}from'node:path';function a66_0x305f(){const _0x97f72b=['skill.cdn.fetchSuccess','28579804fAHwiv','skill.cdn.fetching','skill.error.unknownIDE','setLogPath','stringify','info','skill-install-non-interactive','guides','4183352BnlOaZ','35IQDGvf','skill.cdn.fetchingExtend','keys','log','skill.error.installFailed','安装成功','../../cdn-source/skills','.lovrabet/skill-manifest.json','.lovrabet','386898PuqOow','toISOString','skill.done.guidesPathInline','12xjsudJ','name','100970XlApei','\x20\x20✓\x20','304224crEfWB','length','skill.cdn.fetchFailed','cwd','196036ItXgCO','226369zIgPXL','120RZOqEq','message','skill.done.success','12CsefJN','warn','error','477nnVQcY'];a66_0x305f=function(){return _0x97f72b;};return a66_0x305f();}import{logger}from'../utils/logger.js';function a66_0x34e4(_0x4e59ec,_0x56cfd9){_0x4e59ec=_0x4e59ec-0xd1;const _0x305f50=a66_0x305f();let _0x34e4e0=_0x305f50[_0x4e59ec];return _0x34e4e0;}import{IDE_CONFIGS}from'../utils/ai_config.js';import{installSingleIDE}from'./skill-installer.js';import{fetchGuidesFromCDN,writeGuidesToProject}from'../utils/guides-cdn.js';import a66_0x38203c from'../i18n/index.js';const t=a66_0x38203c['t']['bind'](a66_0x38203c),__dirname=dirname(fileURLToPath(import.meta.url));export async function installSkillsNonInteractive(_0x3e0ef6,_0xabb323,_0x1a253a=process[a66_0x50ff57(0xf6)]()){const _0x1cf6aa=a66_0x50ff57,_0x1775bc=resolve(__dirname,_0x1cf6aa(0xe9));logger[_0x1cf6aa(0xdd)](_0x1a253a),logger[_0x1cf6aa(0xdf)](_0x1cf6aa(0xe0),'开始安装技能包',{'ides':_0x3e0ef6});const _0x5317a8=join(_0x1a253a,_0x1cf6aa(0xeb));!existsSync(_0x5317a8)&&mkdirSync(_0x5317a8,{'recursive':!![]});const _0x4f07c8=_0xabb323&&_0xabb323[_0x1cf6aa(0xf4)]>0x0;console['log'](_0x4f07c8?t(_0x1cf6aa(0xe4)):t(_0x1cf6aa(0xdb)));let _0x4a3f57;try{_0x4a3f57=await fetchGuidesFromCDN(_0x4f07c8),console[_0x1cf6aa(0xe6)](t(_0x1cf6aa(0xd9),{'count':Object[_0x1cf6aa(0xe5)](_0x4a3f57[_0x1cf6aa(0xe1)])[_0x1cf6aa(0xf4)]}));}catch(_0x1053b7){console[_0x1cf6aa(0xd6)](t(_0x1cf6aa(0xf5),{'error':_0x1053b7 instanceof Error?_0x1053b7[_0x1cf6aa(0xd3)]:String(_0x1053b7)}));}let _0x1bd994=0x0;for(const _0x54423e of _0x3e0ef6){try{const _0x3b5d31=IDE_CONFIGS[_0x54423e];if(!_0x3b5d31){console[_0x1cf6aa(0xd6)](t(_0x1cf6aa(0xdc),{'ide':_0x54423e}));continue;}const _0x2c8576=await installSingleIDE(_0x54423e,_0x3b5d31,_0x1a253a,_0x1775bc,_0x4a3f57,_0xabb323);_0x1bd994+=_0x2c8576,console['log'](_0x1cf6aa(0xf2)+(_0x3b5d31[_0x1cf6aa(0xf0)]||_0x54423e));}catch(_0x45a5f8){console[_0x1cf6aa(0xd7)](t(_0x1cf6aa(0xe7),{'ide':_0x54423e,'error':_0x45a5f8 instanceof Error?_0x45a5f8[_0x1cf6aa(0xd3)]:String(_0x45a5f8)}));}}_0x4a3f57&&writeGuidesToProject(_0x4a3f57,_0x1a253a,'.lovrabet/skill/.shared/guides',_0xabb323);const _0x241d21={'version':'2.0.0','installedAt':new Date()[_0x1cf6aa(0xed)](),'platforms':_0x3e0ef6},_0x3f4861=join(_0x1a253a,_0x1cf6aa(0xea));writeFileSync(_0x3f4861,JSON[_0x1cf6aa(0xde)](_0x241d21,null,0x2),'utf-8'),logger[_0x1cf6aa(0xdf)]('skill-install-non-interactive',_0x1cf6aa(0xe8),{'projectRoot':_0x1a253a,'ides':_0x3e0ef6,'foldersCount':_0x1bd994}),console['log'](t(_0x1cf6aa(0xd4),{'count':_0x1bd994})),console['log'](t(_0x1cf6aa(0xee)));}
@@ -1 +1 @@
1
- (function(_0x24bb5a,_0x21570f){const _0x7b6e72=a69_0x3127,_0x16e877=_0x24bb5a();while(!![]){try{const _0x4c2e29=-parseInt(_0x7b6e72(0x96))/0x1+-parseInt(_0x7b6e72(0x94))/0x2*(parseInt(_0x7b6e72(0x95))/0x3)+-parseInt(_0x7b6e72(0xa6))/0x4+parseInt(_0x7b6e72(0x9e))/0x5*(-parseInt(_0x7b6e72(0xa8))/0x6)+-parseInt(_0x7b6e72(0x8d))/0x7+parseInt(_0x7b6e72(0x99))/0x8*(parseInt(_0x7b6e72(0x9d))/0x9)+parseInt(_0x7b6e72(0x9a))/0xa;if(_0x4c2e29===_0x21570f)break;else _0x16e877['push'](_0x16e877['shift']());}catch(_0x53566c){_0x16e877['push'](_0x16e877['shift']());}}}(a69_0x4969,0x37d7b));function a69_0x3127(_0x3ef171,_0x16077f){_0x3ef171=_0x3ef171-0x8d;const _0x496929=a69_0x4969();let _0x312796=_0x496929[_0x3ef171];return _0x312796;}import{existsSync,mkdirSync,writeFileSync,readFileSync}from'node:fs';import{dirname,join}from'node:path';function a69_0x4969(){const _0x59993b=['keys','<!--\x20GUIDES_APPEND\x20-->','guides','path','1739048jFdndk','requireFlags','6rNiHuW','name','1647933JkShmA','length','utf-8','push','template','|\x20`','`\x20|\x20','2XHMRfp','1015743woCSeH','263560gVVSit','some','join','270304WAeWdF','18019480gcIxsp','files','folders','18xlBHVI','1842355AgkPyn','sort','title','replace'];a69_0x4969=function(){return _0x59993b;};return a69_0x4969();}import{writeSkillFile,appendExtendContents}from'../utils/guides-cdn.js';export async function installSingleIDE(_0x488cb8,_0xb1c6e6,_0x46b8ac,_0x3696e7,_0x5b02f1,_0x3d192f){const _0x54fdfc=a69_0x3127;let _0x2d254f=0x0;const _0x3e6bec=_0xb1c6e6?.[_0x54fdfc(0x9c)]??['.'+_0x488cb8];for(const _0x392cc8 of _0x3e6bec){const _0x45bb5e=join(_0x46b8ac,_0x392cc8),_0x298f51=_0xb1c6e6?.['files']?.[_0x54fdfc(0x97)](_0x5e21a6=>_0x5e21a6[_0x54fdfc(0xa5)]['startsWith'](_0x392cc8+'/'))??![];_0x298f51?!existsSync(_0x45bb5e)&&(mkdirSync(_0x45bb5e,{'recursive':!![]}),_0x2d254f++):!existsSync(_0x45bb5e)&&(writeFileSync(_0x45bb5e,'',_0x54fdfc(0x8f)),_0x2d254f++);}if(_0xb1c6e6?.[_0x54fdfc(0x9b)]){const _0x16704d=_0xb1c6e6[_0x54fdfc(0xa9)]||_0x488cb8;for(const _0x18873b of _0xb1c6e6[_0x54fdfc(0x9b)]){const _0x209550=join(_0x46b8ac,_0x18873b[_0x54fdfc(0xa5)]);await createFileFromTemplate(_0x18873b,_0x209550,_0x16704d,_0x3696e7,_0x5b02f1,_0x3d192f),_0x2d254f++;}}return _0x2d254f;}export async function createFileFromTemplate(_0xd78de5,_0xf87701,_0x28c63e,_0x27ec15,_0x56dfd2,_0x796b8f){const _0x527bf4=a69_0x3127,_0x1549f3=dirname(_0xf87701);!existsSync(_0x1549f3)&&mkdirSync(_0x1549f3,{'recursive':!![]});const _0x503895=_0xd78de5['template']==='SKILL.md.tpl';if(existsSync(_0xf87701)&&!_0x503895)return;if(_0xd78de5[_0x527bf4(0x91)]){const _0x272206=join(_0x27ec15,_0xd78de5[_0x527bf4(0x91)]);if(existsSync(_0x272206)){let _0x2e2a36=readFileSync(_0x272206,_0x527bf4(0x8f));_0x2e2a36=_0x2e2a36['replace'](/\{\{IDE_NAME\}\}/g,_0x28c63e);_0x56dfd2&&_0x503895&&(_0x2e2a36=insertGuidesSection(_0x2e2a36,_0x56dfd2,_0x796b8f),_0x2e2a36=appendExtendContents(_0x2e2a36,_0x56dfd2,_0x796b8f));writeFileSync(_0xf87701,_0x2e2a36,_0x527bf4(0x8f));return;}if(_0x56dfd2&&_0x503895)try{writeSkillFile(_0x56dfd2,_0xf87701,_0x28c63e,_0x796b8f);return;}catch{}}writeFileSync(_0xf87701,'',_0x527bf4(0x8f));}function insertGuidesSection(_0x167e2f,_0x35d970,_0x31a288){const _0x31e186=a69_0x3127,_0x5ad7d2=_0x31e186(0xa3),_0x4c88d4=_0x167e2f['indexOf'](_0x5ad7d2);if(_0x4c88d4===-0x1)return _0x167e2f;const _0x2cf774=[],_0x6e4c3c=Object[_0x31e186(0xa2)](_0x35d970[_0x31e186(0xa4)])[_0x31e186(0x9f)]();for(const _0x1c7e45 of _0x6e4c3c){const _0x1c2dda=_0x35d970['guides'][_0x1c7e45];if(!_0x1c2dda)continue;if(/^0[1-6]-/['test'](_0x1c7e45))continue;if(_0x1c2dda[_0x31e186(0xa7)]&&_0x1c2dda[_0x31e186(0xa7)][_0x31e186(0x8e)]>0x0){const _0x36c60a=_0x1c2dda[_0x31e186(0xa7)][_0x31e186(0x97)](_0x428dee=>_0x31a288?.['includes'](_0x428dee));if(!_0x36c60a)continue;}const _0x4ece2a=_0x1c2dda['path'][_0x31e186(0xa1)](/^\.lovrabet\/skill\/\.shared\/guides\//,'');_0x2cf774[_0x31e186(0x90)](_0x31e186(0x92)+_0x4ece2a+_0x31e186(0x93)+_0x1c2dda[_0x31e186(0xa0)]+'\x20|');}if(_0x2cf774[_0x31e186(0x8e)]===0x0)return _0x167e2f[_0x31e186(0xa1)](_0x5ad7d2,_0x31e186(0xa3));const _0x59e61b=_0x2cf774[_0x31e186(0x98)]('\x0a');return _0x167e2f[_0x31e186(0xa1)](_0x5ad7d2,_0x59e61b+'\x0a<!--\x20GUIDES_APPEND\x20-->');}
1
+ function a67_0x5afd(_0xc385d1,_0x58a828){_0xc385d1=_0xc385d1-0x1ac;const _0x2a8461=a67_0x2a84();let _0x5afd1e=_0x2a8461[_0xc385d1];return _0x5afd1e;}(function(_0x22f880,_0x166e16){const _0x4e2ba4=a67_0x5afd,_0x2b1cb3=_0x22f880();while(!![]){try{const _0x2e4532=-parseInt(_0x4e2ba4(0x1b1))/0x1+-parseInt(_0x4e2ba4(0x1ac))/0x2*(-parseInt(_0x4e2ba4(0x1b4))/0x3)+-parseInt(_0x4e2ba4(0x1bd))/0x4+-parseInt(_0x4e2ba4(0x1b5))/0x5*(-parseInt(_0x4e2ba4(0x1c2))/0x6)+-parseInt(_0x4e2ba4(0x1ca))/0x7*(-parseInt(_0x4e2ba4(0x1c7))/0x8)+-parseInt(_0x4e2ba4(0x1b9))/0x9*(parseInt(_0x4e2ba4(0x1b7))/0xa)+parseInt(_0x4e2ba4(0x1c9))/0xb;if(_0x2e4532===_0x166e16)break;else _0x2b1cb3['push'](_0x2b1cb3['shift']());}catch(_0xf48b27){_0x2b1cb3['push'](_0x2b1cb3['shift']());}}}(a67_0x2a84,0xb0600));function a67_0x2a84(){const _0x3df326=['\x0a<!--\x20GUIDES_APPEND\x20-->','`\x20|\x20','name','710915lYvicH','requireFlags','push','3351IFpScQ','220655iQWefg','path','1074440zxrXPX','includes','81DPWlan','files','title','test','3746876WZIMPn','SKILL.md.tpl','keys','some','indexOf','54RBmCUr','template','<!--\x20GUIDES_APPEND\x20-->','guides','length','8aeawBz','startsWith','15147407cBHDWx','8703688eKGVNO','sort','utf-8','572xPVrCf','replace'];a67_0x2a84=function(){return _0x3df326;};return a67_0x2a84();}import{existsSync,mkdirSync,writeFileSync,readFileSync}from'node:fs';import{dirname,join}from'node:path';import{writeSkillFile,appendExtendContents}from'../utils/guides-cdn.js';export async function installSingleIDE(_0x50a502,_0x11ec5c,_0x181c94,_0xccdd2d,_0x5f0995,_0x248df3){const _0x5a2902=a67_0x5afd;let _0x5152b8=0x0;const _0x4c9097=_0x11ec5c?.['folders']??['.'+_0x50a502];for(const _0x269b31 of _0x4c9097){const _0x47cf7c=join(_0x181c94,_0x269b31),_0x2b7ffa=_0x11ec5c?.[_0x5a2902(0x1ba)]?.[_0x5a2902(0x1c0)](_0x1932fb=>_0x1932fb['path'][_0x5a2902(0x1c8)](_0x269b31+'/'))??![];_0x2b7ffa?!existsSync(_0x47cf7c)&&(mkdirSync(_0x47cf7c,{'recursive':!![]}),_0x5152b8++):!existsSync(_0x47cf7c)&&(writeFileSync(_0x47cf7c,'',_0x5a2902(0x1cc)),_0x5152b8++);}if(_0x11ec5c?.[_0x5a2902(0x1ba)]){const _0x581a7b=_0x11ec5c[_0x5a2902(0x1b0)]||_0x50a502;for(const _0x4f7e6c of _0x11ec5c[_0x5a2902(0x1ba)]){const _0x5a4981=join(_0x181c94,_0x4f7e6c[_0x5a2902(0x1b6)]);await createFileFromTemplate(_0x4f7e6c,_0x5a4981,_0x581a7b,_0xccdd2d,_0x5f0995,_0x248df3),_0x5152b8++;}}return _0x5152b8;}export async function createFileFromTemplate(_0x11f582,_0x5300a2,_0x52a4f7,_0x59172b,_0x6ec6ad,_0x55666d){const _0x4aa271=a67_0x5afd,_0xf1a1a4=dirname(_0x5300a2);!existsSync(_0xf1a1a4)&&mkdirSync(_0xf1a1a4,{'recursive':!![]});const _0x10d190=_0x11f582[_0x4aa271(0x1c3)]===_0x4aa271(0x1be);if(existsSync(_0x5300a2)&&!_0x10d190)return;if(_0x11f582[_0x4aa271(0x1c3)]){const _0x130f82=join(_0x59172b,_0x11f582[_0x4aa271(0x1c3)]);if(existsSync(_0x130f82)){let _0x43a718=readFileSync(_0x130f82,_0x4aa271(0x1cc));_0x43a718=_0x43a718[_0x4aa271(0x1ad)](/\{\{IDE_NAME\}\}/g,_0x52a4f7);_0x6ec6ad&&_0x10d190&&(_0x43a718=insertGuidesSection(_0x43a718,_0x6ec6ad,_0x55666d),_0x43a718=appendExtendContents(_0x43a718,_0x6ec6ad,_0x55666d));writeFileSync(_0x5300a2,_0x43a718,'utf-8');return;}if(_0x6ec6ad&&_0x10d190)try{writeSkillFile(_0x6ec6ad,_0x5300a2,_0x52a4f7,_0x55666d);return;}catch{}}writeFileSync(_0x5300a2,'',_0x4aa271(0x1cc));}function insertGuidesSection(_0x40ffe9,_0x3d0fd7,_0x52ed5b){const _0x4d4f02=a67_0x5afd,_0x294faf='<!--\x20GUIDES_APPEND\x20-->',_0x69d706=_0x40ffe9[_0x4d4f02(0x1c1)](_0x294faf);if(_0x69d706===-0x1)return _0x40ffe9;const _0x46bfe7=[],_0x5c6f44=Object[_0x4d4f02(0x1bf)](_0x3d0fd7[_0x4d4f02(0x1c5)])[_0x4d4f02(0x1cb)]();for(const _0x4390fd of _0x5c6f44){const _0x3ea54b=_0x3d0fd7['guides'][_0x4390fd];if(!_0x3ea54b)continue;if(/^0[1-6]-/[_0x4d4f02(0x1bc)](_0x4390fd))continue;if(_0x3ea54b['requireFlags']&&_0x3ea54b[_0x4d4f02(0x1b2)][_0x4d4f02(0x1c6)]>0x0){const _0x5f157b=_0x3ea54b[_0x4d4f02(0x1b2)]['some'](_0x4d6f35=>_0x52ed5b?.[_0x4d4f02(0x1b8)](_0x4d6f35));if(!_0x5f157b)continue;}const _0x133c85=_0x3ea54b[_0x4d4f02(0x1b6)][_0x4d4f02(0x1ad)](/^\.lovrabet\/skill\/\.shared\/guides\//,'');_0x46bfe7[_0x4d4f02(0x1b3)]('|\x20`'+_0x133c85+_0x4d4f02(0x1af)+_0x3ea54b[_0x4d4f02(0x1bb)]+'\x20|');}if(_0x46bfe7['length']===0x0)return _0x40ffe9[_0x4d4f02(0x1ad)](_0x294faf,_0x4d4f02(0x1c4));const _0x48b3b5=_0x46bfe7['join']('\x0a');return _0x40ffe9[_0x4d4f02(0x1ad)](_0x294faf,_0x48b3b5+_0x4d4f02(0x1ae));}
@@ -1 +1 @@
1
- (function(_0x5bb3,_0x3e4266){const _0x459e94=a71_0x422e,_0x4b3e4e=_0x5bb3();while(!![]){try{const _0x145208=-parseInt(_0x459e94(0x1a5))/0x1+-parseInt(_0x459e94(0x1a8))/0x2*(parseInt(_0x459e94(0x19b))/0x3)+parseInt(_0x459e94(0x1a1))/0x4*(parseInt(_0x459e94(0x1a4))/0x5)+parseInt(_0x459e94(0x19f))/0x6*(parseInt(_0x459e94(0x19e))/0x7)+-parseInt(_0x459e94(0x1a6))/0x8*(parseInt(_0x459e94(0x1a0))/0x9)+parseInt(_0x459e94(0x1aa))/0xa+parseInt(_0x459e94(0x19d))/0xb*(parseInt(_0x459e94(0x196))/0xc);if(_0x145208===_0x3e4266)break;else _0x4b3e4e['push'](_0x4b3e4e['shift']());}catch(_0x302d30){_0x4b3e4e['push'](_0x4b3e4e['shift']());}}}(a71_0x17d4,0x80452));function a71_0x422e(_0x5b66ec,_0x22e597){_0x5b66ec=_0x5b66ec-0x194;const _0x17d476=a71_0x17d4();let _0x422e64=_0x17d476[_0x5b66ec];return _0x422e64;}import{jsxs as a71_0x119afc,jsx as a71_0x55780e}from'react/jsx-runtime';import{Text,Box}from'ink';function a71_0x17d4(){const _0x1be828=['column','[✓]','red','ui.ideSelector.hotkeys','864192qaemid','name','gray','white','has','33CzbaHa','ui.ideSelector.title','22mLPwqc','13118THEPNg','3174aGMLoc','45BBeluH','4pviLoe','[\x20]','description','3035735zADHpO','461077GyMEDO','1157960itUyMd','blue','181282jgbEGM','cyan','9647220dAccdL'];a71_0x17d4=function(){return _0x1be828;};return a71_0x17d4();}import{useI18n}from'../i18n/hooks.js';export function IDESelector({ideList:_0x378a11,title:_0x1d2096,selection:_0x247f1d}){const _0x51ceeb=a71_0x422e,{t:_0x30ebf9}=useI18n(),{selectedIndexes:_0x1d3860,highlightIndex:_0x2ea2da,errorMsg:_0x26b069}=_0x247f1d;return a71_0x119afc(Box,{'flexDirection':_0x51ceeb(0x1ab),'marginTop':0x1,'children':[a71_0x55780e(Box,{'children':a71_0x119afc(Text,{'color':_0x51ceeb(0x1a9),'children':['*\x20',_0x1d2096]})}),_0x26b069&&a71_0x55780e(Box,{'marginTop':0x1,'children':a71_0x119afc(Text,{'color':_0x51ceeb(0x194),'children':['✗\x20',_0x26b069]})}),a71_0x119afc(Box,{'marginTop':0x1,'flexDirection':_0x51ceeb(0x1ab),'children':[a71_0x119afc(Text,{'bold':!![],'children':['*\x20',_0x30ebf9(_0x51ceeb(0x19c))]}),_0x378a11['map']((_0x4caf54,_0x2649eb)=>{const _0xff9ae=_0x51ceeb,_0x35d66f=_0x2ea2da===_0x2649eb,_0x2ab22f=_0x1d3860[_0xff9ae(0x19a)](_0x2649eb);return a71_0x55780e(Box,{'children':a71_0x119afc(Text,{'backgroundColor':_0x35d66f?_0xff9ae(0x1a7):undefined,'color':_0x35d66f?_0xff9ae(0x199):undefined,'children':['\x20\x20',_0x2ab22f?_0xff9ae(0x1ac):_0xff9ae(0x1a2),'\x20',_0x4caf54[_0xff9ae(0x197)],'\x20',a71_0x119afc(Text,{'color':_0x35d66f?'white':_0xff9ae(0x198),'dimColor':!_0x35d66f,'children':['-\x20',_0x4caf54[_0xff9ae(0x1a3)]]})]})},_0x4caf54['key']);}),a71_0x55780e(Box,{'marginTop':0x1,'children':a71_0x119afc(Text,{'color':_0x51ceeb(0x198),'children':['\x20',_0x30ebf9(_0x51ceeb(0x195))]})})]})]});}export{useIDESelection}from'./useIDESelection.js';
1
+ (function(_0x36c524,_0x29099d){const _0x2da573=a69_0x23b4,_0x29cc39=_0x36c524();while(!![]){try{const _0x45a589=parseInt(_0x2da573(0x1b5))/0x1*(-parseInt(_0x2da573(0x1bd))/0x2)+parseInt(_0x2da573(0x1b8))/0x3*(-parseInt(_0x2da573(0x1b6))/0x4)+-parseInt(_0x2da573(0x1c7))/0x5+-parseInt(_0x2da573(0x1c2))/0x6+parseInt(_0x2da573(0x1c4))/0x7+-parseInt(_0x2da573(0x1b4))/0x8*(-parseInt(_0x2da573(0x1c0))/0x9)+parseInt(_0x2da573(0x1bb))/0xa;if(_0x45a589===_0x29099d)break;else _0x29cc39['push'](_0x29cc39['shift']());}catch(_0x594e67){_0x29cc39['push'](_0x29cc39['shift']());}}}(a69_0x26e1,0x65950));function a69_0x23b4(_0x248744,_0xdb16c9){_0x248744=_0x248744-0x1b4;const _0x26e1d8=a69_0x26e1();let _0x23b458=_0x26e1d8[_0x248744];return _0x23b458;}import{jsxs as a69_0x2c076a,jsx as a69_0x4d8f9a}from'react/jsx-runtime';import{Text,Box}from'ink';import{useI18n}from'../i18n/hooks.js';export function IDESelector({ideList:_0x46cdd4,title:_0x1f7b5d,selection:_0x405974}){const _0x10b6d0=a69_0x23b4,{t:_0x4f15a9}=useI18n(),{selectedIndexes:_0x47f703,highlightIndex:_0xdec414,errorMsg:_0x2579ac}=_0x405974;return a69_0x2c076a(Box,{'flexDirection':_0x10b6d0(0x1bf),'marginTop':0x1,'children':[a69_0x4d8f9a(Box,{'children':a69_0x2c076a(Text,{'color':_0x10b6d0(0x1bc),'children':['*\x20',_0x1f7b5d]})}),_0x2579ac&&a69_0x4d8f9a(Box,{'marginTop':0x1,'children':a69_0x2c076a(Text,{'color':'red','children':['✗\x20',_0x2579ac]})}),a69_0x2c076a(Box,{'marginTop':0x1,'flexDirection':_0x10b6d0(0x1bf),'children':[a69_0x2c076a(Text,{'bold':!![],'children':['*\x20',_0x4f15a9(_0x10b6d0(0x1c3))]}),_0x46cdd4[_0x10b6d0(0x1c5)]((_0x2a11bc,_0x498979)=>{const _0x2ff1e0=_0x10b6d0,_0x2b7078=_0xdec414===_0x498979,_0x5705f9=_0x47f703[_0x2ff1e0(0x1c1)](_0x498979);return a69_0x4d8f9a(Box,{'children':a69_0x2c076a(Text,{'backgroundColor':_0x2b7078?'blue':undefined,'color':_0x2b7078?_0x2ff1e0(0x1ba):undefined,'children':['\x20\x20',_0x5705f9?_0x2ff1e0(0x1b7):_0x2ff1e0(0x1c8),'\x20',_0x2a11bc[_0x2ff1e0(0x1b9)],'\x20',a69_0x2c076a(Text,{'color':_0x2b7078?_0x2ff1e0(0x1ba):_0x2ff1e0(0x1c9),'dimColor':!_0x2b7078,'children':['-\x20',_0x2a11bc['description']]})]})},_0x2a11bc[_0x2ff1e0(0x1be)]);}),a69_0x4d8f9a(Box,{'marginTop':0x1,'children':a69_0x2c076a(Text,{'color':'gray','children':['\x20',_0x4f15a9(_0x10b6d0(0x1c6))]})})]})]});}export{useIDESelection}from'./useIDESelection.js';function a69_0x26e1(){const _0x553bbd=['white','6945590iKGiVd','cyan','302990ecHEyj','key','column','9lyMfhn','has','475932AYNTll','ui.ideSelector.title','1156414TTFPkG','map','ui.ideSelector.hotkeys','1046815GAfBCe','[\x20]','gray','4208848wwAazw','1AqKlOp','4zxqQnD','[✓]','1588821bLBsbQ','name'];a69_0x26e1=function(){return _0x553bbd;};return a69_0x26e1();}
@@ -1 +1 @@
1
- (function(_0x350e3b,_0x15e4c1){const _0x574642=a72_0x274a,_0x22b2f0=_0x350e3b();while(!![]){try{const _0x1341d5=parseInt(_0x574642(0x16d))/0x1+-parseInt(_0x574642(0x16b))/0x2+parseInt(_0x574642(0x170))/0x3+parseInt(_0x574642(0x179))/0x4*(parseInt(_0x574642(0x16e))/0x5)+parseInt(_0x574642(0x16f))/0x6*(-parseInt(_0x574642(0x16a))/0x7)+-parseInt(_0x574642(0x17d))/0x8*(-parseInt(_0x574642(0x174))/0x9)+-parseInt(_0x574642(0x177))/0xa*(parseInt(_0x574642(0x175))/0xb);if(_0x1341d5===_0x15e4c1)break;else _0x22b2f0['push'](_0x22b2f0['shift']());}catch(_0x3815d6){_0x22b2f0['push'](_0x22b2f0['shift']());}}}(a72_0x30af,0x3962a));function a72_0x274a(_0x9872ac,_0x3a7582){_0x9872ac=_0x9872ac-0x16a;const _0x30af4b=a72_0x30af();let _0x274a34=_0x30af4b[_0x9872ac];return _0x274a34;}function a72_0x30af(){const _0x182cd9=['42XqzaRx','752892ZeQcjO','delete','length','downArrow','9HEiqBb','97130ktDHCv','map','590AcZdRA','key','148MzfaNe','filter','findIndex','from','3743848ghTgwe','35196mrAUnD','505914eXmaDO','has','155620GEdvhf','22920VOIiqF'];a72_0x30af=function(){return _0x182cd9;};return a72_0x30af();}import{useState,useCallback}from'react';export function useIDESelection({ideList:_0x4a7c8c,preselectedIDEs:preselectedIDEs=[],multiSelect:multiSelect=!![]}){const _0xbce404=a72_0x274a,[_0x13e887,_0x516aa7]=useState(new Set(preselectedIDEs[_0xbce404(0x176)](_0x3daeb3=>_0x4a7c8c[_0xbce404(0x17b)](_0x164d1d=>_0x164d1d[_0xbce404(0x178)]===_0x3daeb3))[_0xbce404(0x17a)](_0x324200=>_0x324200>=0x0))),[_0x576b88,_0x253568]=useState(0x0),[_0x26e112,_0x560027]=useState(''),_0x5115af=useCallback(()=>{const _0x1d8b26=_0xbce404;_0x253568(_0x4fb5ea=>_0x4fb5ea>0x0?_0x4fb5ea-0x1:_0x4a7c8c[_0x1d8b26(0x172)]-0x1);},[_0x4a7c8c[_0xbce404(0x172)]]),_0x1396c6=useCallback(()=>{const _0x97b1aa=_0xbce404;_0x253568(_0x14d1c7=>_0x14d1c7<_0x4a7c8c[_0x97b1aa(0x172)]-0x1?_0x14d1c7+0x1:0x0);},[_0x4a7c8c['length']]),_0x3a214d=useCallback(()=>{if(!multiSelect){_0x516aa7(new Set([_0x576b88]));return;}_0x516aa7(_0x1b7785=>{const _0x4d2f2b=a72_0x274a,_0x1174a5=new Set(_0x1b7785);return _0x1174a5['has'](_0x576b88)?_0x1174a5[_0x4d2f2b(0x171)](_0x576b88):_0x1174a5['add'](_0x576b88),_0x1174a5;});},[_0x576b88,multiSelect]),_0x1c6cb7=useCallback(()=>{const _0x2b1394=_0xbce404;_0x516aa7(new Set(_0x4a7c8c[_0x2b1394(0x176)]((_0x2a6046,_0x527c10)=>_0x527c10)));},[_0x4a7c8c]),_0x1e0581=useCallback(()=>{_0x516aa7(_0x5240c4=>{const _0x2e2dc7=a72_0x274a,_0x4b9a6e=new Set();for(let _0x495c1a=0x0;_0x495c1a<_0x4a7c8c[_0x2e2dc7(0x172)];_0x495c1a++){!_0x5240c4[_0x2e2dc7(0x16c)](_0x495c1a)&&_0x4b9a6e['add'](_0x495c1a);}return _0x4b9a6e;});},[_0x4a7c8c]),_0x2590df=useCallback(()=>{const _0x2b0994=_0xbce404;return Array[_0x2b0994(0x17c)](_0x13e887)[_0x2b0994(0x176)](_0x293075=>_0x4a7c8c[_0x293075]?.['key'])[_0x2b0994(0x17a)](_0x52f800=>_0x52f800!==undefined);},[_0x13e887,_0x4a7c8c]),_0x5033d4=useCallback(()=>{return _0x13e887['size']===_0x4a7c8c['length'];},[_0x13e887,_0x4a7c8c]),_0x12297c=useCallback((_0x20b890,_0x3c165a)=>{const _0x11837c=_0xbce404;if(_0x3c165a['upArrow'])return _0x5115af(),!![];if(_0x3c165a[_0x11837c(0x173)])return _0x1396c6(),!![];if(_0x20b890==='\x20')return _0x3a214d(),!![];if(_0x20b890==='a'||_0x20b890==='A')return _0x1c6cb7(),!![];if(_0x20b890==='i'||_0x20b890==='I'||_0x20b890==='r'||_0x20b890==='R')return _0x1e0581(),!![];return![];},[_0x5115af,_0x1396c6,_0x3a214d,_0x1c6cb7,_0x1e0581]);return{'selectedIndexes':_0x13e887,'highlightIndex':_0x576b88,'errorMsg':_0x26e112,'setErrorMsg':_0x560027,'handleKeyDown':_0x12297c,'getSelectedIDEs':_0x2590df,'isAllSelected':_0x5033d4,'toggleSelection':_0x3a214d,'selectAll':_0x1c6cb7,'invertSelection':_0x1e0581,'moveHighlightUp':_0x5115af,'moveHighlightDown':_0x1396c6};}
1
+ (function(_0x51d6f9,_0x7a88a1){const _0x15b07f=a70_0xf209,_0x3fda35=_0x51d6f9();while(!![]){try{const _0x4c51a4=parseInt(_0x15b07f(0x1d6))/0x1+parseInt(_0x15b07f(0x1d1))/0x2*(parseInt(_0x15b07f(0x1d9))/0x3)+-parseInt(_0x15b07f(0x1ce))/0x4+parseInt(_0x15b07f(0x1ca))/0x5+-parseInt(_0x15b07f(0x1cf))/0x6+parseInt(_0x15b07f(0x1d4))/0x7+-parseInt(_0x15b07f(0x1d8))/0x8;if(_0x4c51a4===_0x7a88a1)break;else _0x3fda35['push'](_0x3fda35['shift']());}catch(_0x55e198){_0x3fda35['push'](_0x3fda35['shift']());}}}(a70_0x476d,0x81196));import{useState,useCallback}from'react';function a70_0x476d(){const _0x20d3f0=['from','map','68724VsoTep','3559800PeJHse','length','1131938zouPsu','has','upArrow','904687onNpVv','key','730655eihjqH','findIndex','2762960ostYjg','3SnYeyE','filter','delete','293880vumUsW','add'];a70_0x476d=function(){return _0x20d3f0;};return a70_0x476d();}function a70_0xf209(_0x2c6a62,_0x694b27){_0x2c6a62=_0x2c6a62-0x1ca;const _0x476db5=a70_0x476d();let _0xf2090e=_0x476db5[_0x2c6a62];return _0xf2090e;}export function useIDESelection({ideList:_0x26c8d7,preselectedIDEs:preselectedIDEs=[],multiSelect:multiSelect=!![]}){const _0x18a4e0=a70_0xf209,[_0x4cb1ce,_0x1db266]=useState(new Set(preselectedIDEs['map'](_0x409b96=>_0x26c8d7[_0x18a4e0(0x1d7)](_0x1b2de0=>_0x1b2de0['key']===_0x409b96))[_0x18a4e0(0x1da)](_0x34dd13=>_0x34dd13>=0x0))),[_0x27e6db,_0x2bf967]=useState(0x0),[_0x50eac0,_0x3d70cf]=useState(''),_0x45a37d=useCallback(()=>{const _0x50d205=_0x18a4e0;_0x2bf967(_0x30073d=>_0x30073d>0x0?_0x30073d-0x1:_0x26c8d7[_0x50d205(0x1d0)]-0x1);},[_0x26c8d7[_0x18a4e0(0x1d0)]]),_0x1fc321=useCallback(()=>{const _0x1fe636=_0x18a4e0;_0x2bf967(_0x4b7ada=>_0x4b7ada<_0x26c8d7[_0x1fe636(0x1d0)]-0x1?_0x4b7ada+0x1:0x0);},[_0x26c8d7[_0x18a4e0(0x1d0)]]),_0x4cb598=useCallback(()=>{if(!multiSelect){_0x1db266(new Set([_0x27e6db]));return;}_0x1db266(_0x4cb09e=>{const _0x54ea27=a70_0xf209,_0xa18fd9=new Set(_0x4cb09e);return _0xa18fd9[_0x54ea27(0x1d2)](_0x27e6db)?_0xa18fd9[_0x54ea27(0x1db)](_0x27e6db):_0xa18fd9[_0x54ea27(0x1cb)](_0x27e6db),_0xa18fd9;});},[_0x27e6db,multiSelect]),_0x550708=useCallback(()=>{const _0x29759e=_0x18a4e0;_0x1db266(new Set(_0x26c8d7[_0x29759e(0x1cd)]((_0x531eb4,_0x1df408)=>_0x1df408)));},[_0x26c8d7]),_0x559d7b=useCallback(()=>{_0x1db266(_0x351000=>{const _0x4b4872=a70_0xf209,_0x1ed262=new Set();for(let _0x21a270=0x0;_0x21a270<_0x26c8d7[_0x4b4872(0x1d0)];_0x21a270++){!_0x351000[_0x4b4872(0x1d2)](_0x21a270)&&_0x1ed262['add'](_0x21a270);}return _0x1ed262;});},[_0x26c8d7]),_0x513cc8=useCallback(()=>{const _0x4d85ea=_0x18a4e0;return Array[_0x4d85ea(0x1cc)](_0x4cb1ce)[_0x4d85ea(0x1cd)](_0x551028=>_0x26c8d7[_0x551028]?.[_0x4d85ea(0x1d5)])[_0x4d85ea(0x1da)](_0x23cc2b=>_0x23cc2b!==undefined);},[_0x4cb1ce,_0x26c8d7]),_0x2841ce=useCallback(()=>{const _0x244045=_0x18a4e0;return _0x4cb1ce['size']===_0x26c8d7[_0x244045(0x1d0)];},[_0x4cb1ce,_0x26c8d7]),_0x4159d9=useCallback((_0x4dfffc,_0x4ab97c)=>{const _0x513446=_0x18a4e0;if(_0x4ab97c[_0x513446(0x1d3)])return _0x45a37d(),!![];if(_0x4ab97c['downArrow'])return _0x1fc321(),!![];if(_0x4dfffc==='\x20')return _0x4cb598(),!![];if(_0x4dfffc==='a'||_0x4dfffc==='A')return _0x550708(),!![];if(_0x4dfffc==='i'||_0x4dfffc==='I'||_0x4dfffc==='r'||_0x4dfffc==='R')return _0x559d7b(),!![];return![];},[_0x45a37d,_0x1fc321,_0x4cb598,_0x550708,_0x559d7b]);return{'selectedIndexes':_0x4cb1ce,'highlightIndex':_0x27e6db,'errorMsg':_0x50eac0,'setErrorMsg':_0x3d70cf,'handleKeyDown':_0x4159d9,'getSelectedIDEs':_0x513cc8,'isAllSelected':_0x2841ce,'toggleSelection':_0x4cb598,'selectAll':_0x550708,'invertSelection':_0x559d7b,'moveHighlightUp':_0x45a37d,'moveHighlightDown':_0x1fc321};}