@univerjs-pro/mcp-ui 0.21.0 → 0.22.1

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 (53) hide show
  1. package/lib/cjs/index.js +1 -1
  2. package/lib/cjs/locale/ca-ES.js +1 -1
  3. package/lib/cjs/locale/en-US.js +1 -1
  4. package/lib/cjs/locale/es-ES.js +1 -1
  5. package/lib/cjs/locale/fa-IR.js +1 -1
  6. package/lib/cjs/locale/fr-FR.js +1 -1
  7. package/lib/cjs/locale/ja-JP.js +1 -1
  8. package/lib/cjs/locale/ko-KR.js +1 -1
  9. package/lib/cjs/locale/ru-RU.js +1 -1
  10. package/lib/cjs/locale/sk-SK.js +1 -1
  11. package/lib/cjs/locale/vi-VN.js +1 -1
  12. package/lib/cjs/locale/zh-CN.js +1 -1
  13. package/lib/cjs/locale/zh-TW.js +1 -1
  14. package/lib/es/index.js +1 -1
  15. package/lib/es/locale/ca-ES.js +1 -1
  16. package/lib/es/locale/en-US.js +1 -1
  17. package/lib/es/locale/es-ES.js +1 -1
  18. package/lib/es/locale/fa-IR.js +1 -1
  19. package/lib/es/locale/fr-FR.js +1 -1
  20. package/lib/es/locale/ja-JP.js +1 -1
  21. package/lib/es/locale/ko-KR.js +1 -1
  22. package/lib/es/locale/ru-RU.js +1 -1
  23. package/lib/es/locale/sk-SK.js +1 -1
  24. package/lib/es/locale/vi-VN.js +1 -1
  25. package/lib/es/locale/zh-CN.js +1 -1
  26. package/lib/es/locale/zh-TW.js +1 -1
  27. package/lib/index.js +1 -1
  28. package/lib/locale/ca-ES.js +1 -1
  29. package/lib/locale/en-US.js +1 -1
  30. package/lib/locale/es-ES.js +1 -1
  31. package/lib/locale/fa-IR.js +1 -1
  32. package/lib/locale/fr-FR.js +1 -1
  33. package/lib/locale/ja-JP.js +1 -1
  34. package/lib/locale/ko-KR.js +1 -1
  35. package/lib/locale/ru-RU.js +1 -1
  36. package/lib/locale/sk-SK.js +1 -1
  37. package/lib/locale/vi-VN.js +1 -1
  38. package/lib/locale/zh-CN.js +1 -1
  39. package/lib/locale/zh-TW.js +1 -1
  40. package/lib/umd/index.js +1 -1
  41. package/lib/umd/locale/ca-ES.js +1 -1
  42. package/lib/umd/locale/en-US.js +1 -1
  43. package/lib/umd/locale/es-ES.js +1 -1
  44. package/lib/umd/locale/fa-IR.js +1 -1
  45. package/lib/umd/locale/fr-FR.js +1 -1
  46. package/lib/umd/locale/ja-JP.js +1 -1
  47. package/lib/umd/locale/ko-KR.js +1 -1
  48. package/lib/umd/locale/ru-RU.js +1 -1
  49. package/lib/umd/locale/sk-SK.js +1 -1
  50. package/lib/umd/locale/vi-VN.js +1 -1
  51. package/lib/umd/locale/zh-CN.js +1 -1
  52. package/lib/umd/locale/zh-TW.js +1 -1
  53. package/package.json +11 -11
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- const _0x554d16=_0x1bd6;(function(_0x14e0b6,_0x3786dd){const _0x413c7e=_0x1bd6,_0x1abe58=_0x14e0b6();while(!![]){try{const _0x29224b=parseInt(_0x413c7e(0x1e8))/0x1+-parseInt(_0x413c7e(0x14c))/0x2+-parseInt(_0x413c7e(0x200))/0x3+-parseInt(_0x413c7e(0x145))/0x4*(-parseInt(_0x413c7e(0x153))/0x5)+parseInt(_0x413c7e(0x160))/0x6+parseInt(_0x413c7e(0x14e))/0x7+-parseInt(_0x413c7e(0x1be))/0x8;if(_0x29224b===_0x3786dd)break;else _0x1abe58['push'](_0x1abe58['shift']());}catch(_0x3c9bf9){_0x1abe58['push'](_0x1abe58['shift']());}}}(_0x3987,0xaaa1c));import{CommandType,DependentOn,Disposable,ICommandService,IConfigService,ILocalStorageService,ILogService,Inject,Injector,LocaleService,Plugin,merge}from'@univerjs/core';import{MCPConnectionController,MCPConnectionError,MCPConnectionStatus,MCP_PLUGIN_CONFIG_KEY,UniverMCPPlugin}from'@univerjs-pro/mcp';import{Button,Input,MessageType,Tooltip,clsx}from'@univerjs/design';import{BuiltInUIPart,ComponentManager,IDialogService,IMenuManagerService,IMessageService,IUIPartsService,MenuItemType,RibbonStartGroup,connectInjector,useDependency,useObservable}from'@univerjs/ui';import{BehaviorSubject}from'rxjs';function _0x1bd6(_0x46ad5b,_0x22c886){_0x46ad5b=_0x46ad5b-0xfe;const _0x3987d4=_0x3987();let _0x1bd661=_0x3987d4[_0x46ad5b];return _0x1bd661;}import{CheckMarkIcon,CloseIcon,HelpIcon,OffLineIcon,OnLineIcon}from'@univerjs/icons';import{useCallback,useState}from'react';import{jsx,jsxs}from'react/jsx-runtime';import{ISocketService,WebSocketService}from'@univerjs/network';function MCPConfigPanel(_0x3c2674){const _0x2ab7dc=_0x1bd6;var _0x488193,_0x21fc78;const {mcpCoreConfig:_0x3bf11c,onSave:_0xa79a8f,loading:loading=![],config:_0x2f880d,connectionStatus$:_0x4394c2,connectionError$:_0x367d06,currentApiKey$:_0x340a66,currentSessionId$:_0x59db8e}=_0x3c2674,_0x6a9249=useDependency(LocaleService),_0x4f80a1=useObservable(_0x4394c2,MCPConnectionStatus['DISCONNECTED']),_0x32f79c=useObservable(_0x367d06,MCPConnectionError[_0x2ab7dc(0x1f6)]),_0x57527b=useObservable(_0x59db8e,''),[_0xec6f7c,_0x358fd7]=useState(useObservable(_0x340a66,'')||''),_0x3caf73=!![],_0x51ce7b=_0x2f880d[_0x2ab7dc(0x152)]&&_0x3bf11c[_0x2ab7dc(0x181)]&&(_0x3bf11c[_0x2ab7dc(0x181)][_0x2ab7dc(0x131)](_0x2ab7dc(0x1dd))||_0x3bf11c[_0x2ab7dc(0x181)][_0x2ab7dc(0x131)](_0x2ab7dc(0x1ef))),_0x3f0f13=(_0x488193=_0x3bf11c['mcpServerUrl'])===null||_0x488193===void 0x0?void 0x0:_0x488193[_0x2ab7dc(0x131)]('univer.plus'),_0x2b5150=(_0x21fc78=_0x3bf11c[_0x2ab7dc(0x181)])===null||_0x21fc78===void 0x0?void 0x0:_0x21fc78['includes'](_0x2ab7dc(0x1ef)),_0x43f874=_0x3f0f13?_0x2ab7dc(0x1d1):_0x2ab7dc(0x100),_0x1a5d00=_0x2f880d[_0x2ab7dc(0x152)]&&(_0x3f0f13||_0x2b5150),[_0x15d467,_0x4a1975]=useState(!_0xec6f7c['trim']()),_0x540fa9=(_0x53228f,_0x3140df)=>{const _0x2f6cdb=_0x2ab7dc;if(_0x3140df===MCPConnectionError[_0x2f6cdb(0x1a8)])return _0x2f6cdb(0x150);switch(_0x53228f){case MCPConnectionStatus[_0x2f6cdb(0x132)]:return'univer-text-green-600\x20univer-bg-green-50\x20univer-border-green-200';case MCPConnectionStatus['CONNECTING']:case MCPConnectionStatus['RETRYING']:return _0x2f6cdb(0x1bd);case MCPConnectionStatus[_0x2f6cdb(0x13d)]:return _0x2f6cdb(0x150);default:return'univer-text-gray-600\x20univer-bg-gray-50\x20univer-border-gray-200';}},_0x29b17e=(_0x1eec19,_0x19f1b6)=>{const _0x1ff973=_0x2ab7dc;if(_0x19f1b6===MCPConnectionError['UNAUTHORIZED'])return _0x1ff973(0x1d5);switch(_0x1eec19){case MCPConnectionStatus[_0x1ff973(0x132)]:return _0x1ff973(0x19b);case MCPConnectionStatus['CONNECTING']:case MCPConnectionStatus[_0x1ff973(0x1df)]:return _0x1ff973(0x1d9);case MCPConnectionStatus[_0x1ff973(0x13d)]:return'univer-bg-red-500';default:return _0x1ff973(0x1ee);}},_0x297f25=_0x24d7bc=>{const _0x236871=_0x2ab7dc;switch(_0x24d7bc){case MCPConnectionStatus['CONNECTED']:return _0x6a9249['t']('mcpConfig.connectionStatus.connected');case MCPConnectionStatus['CONNECTING']:return _0x6a9249['t']('mcpConfig.connectionStatus.connecting');case MCPConnectionStatus[_0x236871(0x13d)]:return _0x6a9249['t'](_0x236871(0x214));case MCPConnectionStatus[_0x236871(0x1df)]:return _0x6a9249['t'](_0x236871(0x1f5));default:return _0x6a9249['t']('mcpConfig.connectionStatus.disconnected');}},_0x496bba=_0x1bcc48=>{const _0x123e5b=_0x2ab7dc;switch(_0x1bcc48){case MCPConnectionError[_0x123e5b(0x1a8)]:return _0x6a9249['t']('mcpConfig.connectionError.unauthorized');case MCPConnectionError[_0x123e5b(0x1d3)]:return _0x6a9249['t']('mcpConfig.connectionError.sessionOccupied');case MCPConnectionError[_0x123e5b(0x154)]:return _0x6a9249['t'](_0x123e5b(0x1bb));case MCPConnectionError[_0x123e5b(0x203)]:return _0x6a9249['t']('mcpConfig.connectionError.maxRetriesExceeded');default:return'';}},_0x50aa73=useCallback(()=>{const _0x1736a7=_0x2ab7dc;_0xa79a8f({..._0x3bf11c,'apiKey':_0xec6f7c[_0x1736a7(0x1d4)](),'enableAuth':_0x3caf73});},[_0x3bf11c,_0xec6f7c,_0x3caf73,_0xa79a8f]),_0x220279=_0xec6f7c[_0x2ab7dc(0x1d4)]()[_0x2ab7dc(0x1a1)]>0x0;return jsxs('div',{'className':_0x2ab7dc(0x1e0),'children':[jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x193),'children':jsxs(_0x2ab7dc(0x1e4),{'className':'univer-flex\x20univer-items-center\x20univer-gap-3','children':[jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x162),'children':jsx(_0x2ab7dc(0x216),{'className':_0x2ab7dc(0x134),'children':'⚙'})}),jsx('div',{'children':jsx('p',{'className':_0x2ab7dc(0x1d8),'children':_0x6a9249['t'](_0x2ab7dc(0x1ce))})})]})}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x177),'children':[jsx('div',{'className':clsx(_0x2ab7dc(0x170),_0x540fa9(_0x4f80a1,_0x32f79c)),'children':jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1a3),'children':[jsx('div',{'className':clsx(_0x2ab7dc(0x15c),_0x29b17e(_0x4f80a1,_0x32f79c))}),jsx('span',{'className':_0x2ab7dc(0x115),'children':_0x297f25(_0x4f80a1)})]})}),_0x32f79c!==MCPConnectionError['NONE']&&(_0x4f80a1===MCPConnectionStatus[_0x2ab7dc(0x13d)]||_0x32f79c===MCPConnectionError[_0x2ab7dc(0x1a8)])&&jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x18c),'children':jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x120),'children':[jsx(_0x2ab7dc(0x216),{'className':_0x2ab7dc(0x189),'children':'⚠️'}),jsx('p',{'className':_0x2ab7dc(0x1da),'children':_0x496bba(_0x32f79c)})]})})]}),jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1dc),'children':jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x141),'children':[jsxs(_0x2ab7dc(0x1e4),{'className':'univer-space-y-2','children':[jsxs('label',{'className':_0x2ab7dc(0x16c),'children':[jsx(_0x2ab7dc(0x216),{'children':'🔑'}),'\x20',_0x6a9249['t'](_0x2ab7dc(0x20e)),jsx('span',{'className':_0x2ab7dc(0x1b9),'children':'*'}),_0x51ce7b&&jsx('a',{'className':'univer-ml-1\x20univer-flex\x20univer-size-4\x20univer-items-center\x20univer-justify-center\x20univer-text-blue-600\x20univer-transition-all\x20univer-duration-200\x20hover:univer-scale-110\x20hover:univer-text-blue-800','title':_0x6a9249['t']('mcpConfig.apiApplyInfo.title'),'role':_0x2ab7dc(0x168),'onClick':()=>_0x4a1975(!![]),'children':jsx(HelpIcon,{})})]}),jsx(Input,{'type':_0x2ab7dc(0x187),'placeholder':_0x6a9249['t']('mcpConfig.apiKeyPlaceholder'),'value':_0xec6f7c,'disabled':loading,'autoComplete':_0x2ab7dc(0x148),'onChange':_0x358fd7}),jsx('p',{'className':_0x2ab7dc(0x11f),'children':_0x6a9249['t'](_0x2ab7dc(0x213))})]}),_0x51ce7b&&_0x15d467&&jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x126),'children':[jsx('a',{'className':_0x2ab7dc(0x1a2),'role':_0x2ab7dc(0x168),'onClick':()=>_0x4a1975(![]),'children':jsx(CloseIcon,{'className':'univer-size-4'})}),jsxs(_0x2ab7dc(0x1e4),{'className':'univer-flex\x20univer-items-start\x20univer-gap-3\x20univer-pr-8','children':[jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x15d),'children':jsx('span',{'className':_0x2ab7dc(0xfe),'children':'🚀'})}),jsxs('div',{'className':_0x2ab7dc(0x186),'children':[jsx('h4',{'className':_0x2ab7dc(0x18f),'children':_0x6a9249['t'](_0x2ab7dc(0x199))}),jsx('p',{'className':'univer-mb-3\x20univer-text-xs\x20univer-text-gray-600','children':_0x6a9249['t'](_0x2ab7dc(0x104))}),jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1b8),'children':_0x1a5d00&&jsxs('a',{'className':'univer-inline-flex\x20univer-items-center\x20univer-gap-1\x20univer-rounded-md\x20univer-border\x20univer-border-purple-300\x20univer-bg-white\x20univer-px-3\x20univer-py-1.5\x20univer-text-xs\x20univer-font-medium\x20univer-text-purple-600\x20univer-shadow-sm\x20univer-transition-all\x20univer-duration-200\x20hover:univer-border-purple-400\x20hover:univer-bg-purple-50\x20hover:univer-shadow-md','href':_0x43f874,'target':_0x2ab7dc(0x13c),'rel':'noopener\x20noreferrer','children':[jsx('span',{'children':'🤖'}),_0x6a9249['t'](_0x2ab7dc(0x1c6)),jsx('span',{'className':_0x2ab7dc(0x116),'children':'↗'})]})}),jsxs(_0x2ab7dc(0x1e4),{'className':'univer-mt-2\x20univer-text-xs\x20univer-text-gray-500','children':['✨','\x20',_0x6a9249['t'](_0x2ab7dc(0x167))]})]})]})]}),_0x2f880d['showDeveloperTools']&&jsxs(_0x2ab7dc(0x1e4),{'className':'univer-rounded-lg\x20univer-border\x20univer-border-gray-200\x20univer-bg-gray-50\x20univer-p-4','children':[jsxs('h4',{'className':_0x2ab7dc(0x211),'children':[jsx(_0x2ab7dc(0x216),{'children':'🔗'}),'\x20',_0x6a9249['t']('mcpConfig.connectionInfo')]}),jsxs('div',{'className':'univer-space-y-4','children':[jsxs(_0x2ab7dc(0x1e4),{'className':'univer-space-y-3','children':[jsx('p',{'className':_0x2ab7dc(0x19f),'children':_0x6a9249['t'](_0x2ab7dc(0x114))}),jsxs(_0x2ab7dc(0x1e4),{'className':'univer-space-y-2','children':[jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x188),'children':_0x6a9249['t'](_0x2ab7dc(0x1a0))}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1ba),'children':[jsxs(_0x2ab7dc(0x1e4),{'className':'univer-flex\x20univer-items-center\x20univer-gap-2','children':[jsx('span',{'className':_0x2ab7dc(0x1a5),'children':'1'}),_0x6a9249['t'](_0x2ab7dc(0x1ac))]}),jsxs('div',{'className':_0x2ab7dc(0x1a3),'children':[jsx(_0x2ab7dc(0x216),{'className':_0x2ab7dc(0x1a5),'children':'2'}),_0x6a9249['t'](_0x2ab7dc(0x125))]}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1a3),'children':[jsx(_0x2ab7dc(0x216),{'className':_0x2ab7dc(0x1a5),'children':'3'}),_0x6a9249['t'](_0x2ab7dc(0x163))]})]})]})]}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1fe),'children':[jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x188),'children':_0x2ab7dc(0x215)}),jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x17c),'children':jsx(_0x2ab7dc(0x12f),{'className':_0x2ab7dc(0x12b),'children':JSON['stringify']({'mcpServers':{'univer':{'url':_0x2ab7dc(0x1d2)+(_0x57527b||_0x2ab7dc(0x13f)),'type':_0x2ab7dc(0x1e7),'headers':{'Authorization':_0x2ab7dc(0x1ca)+(_0xec6f7c||_0x2ab7dc(0x166))}}}},null,0x2)})})]}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x155),'children':[jsx(_0x2ab7dc(0x1e4),{'className':'univer-text-xs\x20univer-font-medium\x20univer-text-gray-700','children':_0x6a9249['t'](_0x2ab7dc(0x12a))}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1fe),'children':[jsxs('div',{'className':'univer-flex\x20univer-items-start\x20univer-gap-3','children':[jsx('div',{'className':'univer-mt-1.5\x20univer-size-2\x20univer-shrink-0\x20univer-rounded-full\x20univer-bg-blue-500'}),jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x16d),'children':[jsx(_0x2ab7dc(0x1e4),{'className':'univer-text-xs\x20univer-font-medium\x20univer-text-gray-600','children':_0x2ab7dc(0x173)}),jsx('div',{'className':_0x2ab7dc(0x11f),'children':_0x6a9249['t']('mcpConfig.sessionIdDescription')})]})]}),jsxs(_0x2ab7dc(0x1e4),{'className':'univer-flex\x20univer-items-start\x20univer-gap-3','children':[jsx(_0x2ab7dc(0x1e4),{'className':'univer-mt-1.5\x20univer-size-2\x20univer-shrink-0\x20univer-rounded-full\x20univer-bg-blue-500'}),jsxs(_0x2ab7dc(0x1e4),{'className':'univer-min-w-0\x20univer-flex-1','children':[jsx(_0x2ab7dc(0x1e4),{'className':'univer-text-xs\x20univer-font-medium\x20univer-text-gray-600','children':_0x2ab7dc(0x1b4)}),jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x11f),'children':_0x6a9249['t']('mcpConfig.authorizationDescription')})]})]})]})]})]})]}),jsx(Button,{'onClick':_0x50aa73,'disabled':!_0x220279||loading,'className':_0x2ab7dc(0x165),'children':loading?jsxs('span',{'className':_0x2ab7dc(0x1a3),'children':[jsx(_0x2ab7dc(0x216),{'children':'⟲'}),_0x6a9249['t'](_0x2ab7dc(0x1b3))]}):jsxs('span',{'className':'univer-flex\x20univer-items-center\x20univer-gap-2','children':[jsx(CheckMarkIcon,{}),_0x6a9249['t']('mcpConfig.save')]})}),jsx(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x1b2),'children':jsxs(_0x2ab7dc(0x1e4),{'className':_0x2ab7dc(0x14b),'children':[jsx(_0x2ab7dc(0x216),{'className':'univer-shrink-0\x20univer-text-blue-500','children':'💡'}),jsxs(_0x2ab7dc(0x1e4),{'className':'univer-space-y-1\x20univer-text-xs\x20univer-text-blue-700','children':[jsx('div',{'className':_0x2ab7dc(0x142),'children':_0x2ab7dc(0x1c0)}),jsxs(_0x2ab7dc(0x1e4),{'children':['•',_0x6a9249['t'](_0x2ab7dc(0x146))]}),jsxs(_0x2ab7dc(0x1e4),{'children':['•',_0x6a9249['t']('mcpConfig.note2')]})]})]})})]})})]});}const MCP_UI_PLUGIN_CONFIG_KEY=_0x554d16(0x1c2),configSymbol=Symbol(MCP_UI_PLUGIN_CONFIG_KEY),defaultPluginConfig={'showDeveloperTools':![],'showStatus':!![]};function _typeof(_0xab19a5){'@babel/helpers - typeof';const _0xe88626=_0x554d16;return _typeof=_0xe88626(0x159)==typeof Symbol&&_0xe88626(0x1bf)==typeof Symbol[_0xe88626(0x119)]?function(_0x405d0e){return typeof _0x405d0e;}:function(_0x16196d){const _0x2a6a30=_0xe88626;return _0x16196d&&_0x2a6a30(0x159)==typeof Symbol&&_0x16196d[_0x2a6a30(0x1a7)]===Symbol&&_0x16196d!==Symbol[_0x2a6a30(0x19d)]?_0x2a6a30(0x1bf):typeof _0x16196d;},_typeof(_0xab19a5);}function toPrimitive(_0x14ec30,_0x260258){const _0x1b36d1=_0x554d16;if('object'!=_typeof(_0x14ec30)||!_0x14ec30)return _0x14ec30;var _0x5b3792=_0x14ec30[Symbol[_0x1b36d1(0x11a)]];if(void 0x0!==_0x5b3792){var _0x30f0bc=_0x5b3792['call'](_0x14ec30,_0x260258||'default');if(_0x1b36d1(0x206)!=_typeof(_0x30f0bc))return _0x30f0bc;throw new TypeError('@@toPrimitive\x20must\x20return\x20a\x20primitive\x20value.');}return(_0x1b36d1(0x16f)===_0x260258?String:Number)(_0x14ec30);}function toPropertyKey(_0x19f929){const _0x1bcf0a=_0x554d16;var _0x55b62b=toPrimitive(_0x19f929,_0x1bcf0a(0x16f));return _0x1bcf0a(0x1bf)==_typeof(_0x55b62b)?_0x55b62b:_0x55b62b+'';}function _defineProperty(_0xaf1855,_0x30871b,_0x52665f){const _0x2f8b93=_0x554d16;return(_0x30871b=toPropertyKey(_0x30871b))in _0xaf1855?Object[_0x2f8b93(0x113)](_0xaf1855,_0x30871b,{'value':_0x52665f,'enumerable':!0x0,'configurable':!0x0,'writable':!0x0}):_0xaf1855[_0x30871b]=_0x52665f,_0xaf1855;}function __decorateParam(_0x1eeb28,_0x40df26){return function(_0x1fcdaa,_0x2ad7a3){_0x40df26(_0x1fcdaa,_0x2ad7a3,_0x1eeb28);};}function __decorate(_0x539f28,_0xaffa6f,_0x5474fd,_0x5f19c0){const _0x1d18bd=_0x554d16;var _0x2623bc=arguments['length'],_0x4fa874=_0x2623bc<0x3?_0xaffa6f:_0x5f19c0===null?_0x5f19c0=Object[_0x1d18bd(0x1fd)](_0xaffa6f,_0x5474fd):_0x5f19c0,_0x52c6c7;if(typeof Reflect===_0x1d18bd(0x206)&&typeof Reflect[_0x1d18bd(0x190)]===_0x1d18bd(0x159))_0x4fa874=Reflect[_0x1d18bd(0x190)](_0x539f28,_0xaffa6f,_0x5474fd,_0x5f19c0);else{for(var _0xaac216=_0x539f28[_0x1d18bd(0x1a1)]-0x1;_0xaac216>=0x0;_0xaac216--)if(_0x52c6c7=_0x539f28[_0xaac216])_0x4fa874=(_0x2623bc<0x3?_0x52c6c7(_0x4fa874):_0x2623bc>0x3?_0x52c6c7(_0xaffa6f,_0x5474fd,_0x4fa874):_0x52c6c7(_0xaffa6f,_0x5474fd))||_0x4fa874;}return _0x2623bc>0x3&&_0x4fa874&&Object[_0x1d18bd(0x113)](_0xaffa6f,_0x5474fd,_0x4fa874),_0x4fa874;}const MCP_API_KEY_STORAGE_KEY=_0x554d16(0x107),MCP_CONFIG_DIALOG_ID='mcp-config-dialog';let MCPConfigUIController=class MCPConfigUIController extends Disposable{constructor(_0x49b4bc,_0xcb71ac,_0x47da6c,_0x267d33,_0x43d187,_0xca6dd1,_0x4a60e3,_0x472da5,_0x49dad2,_0x159256){const _0x3bcd16=_0x554d16;super(),this['_injector']=_0x49b4bc,this[_0x3bcd16(0x182)]=_0xcb71ac,this[_0x3bcd16(0x19a)]=_0x47da6c,this[_0x3bcd16(0x1c3)]=_0x267d33,this['_dialogService']=_0x43d187,this['_messageService']=_0xca6dd1,this[_0x3bcd16(0x1ff)]=_0x4a60e3,this[_0x3bcd16(0x1cc)]=_0x472da5,this[_0x3bcd16(0x20a)]=_0x49dad2,this[_0x3bcd16(0x10a)]=_0x159256,_defineProperty(this,_0x3bcd16(0x17b),new BehaviorSubject(![])),_defineProperty(this,_0x3bcd16(0x1d6),new BehaviorSubject({})),_defineProperty(this,_0x3bcd16(0x179),new BehaviorSubject({})),_defineProperty(this,_0x3bcd16(0x19c),new BehaviorSubject('')),_defineProperty(this,_0x3bcd16(0x17d),async _0x14130c=>{const _0x1ea3c6=_0x3bcd16;this[_0x1ea3c6(0x17b)][_0x1ea3c6(0x136)](!![]);try{var _0x240252,_0x309c8b;const _0x4dc4d1=await this[_0x1ea3c6(0x130)](_0x14130c);if(!_0x4dc4d1[_0x1ea3c6(0x1ae)]){this[_0x1ea3c6(0x195)][_0x1ea3c6(0x1b6)]({'type':MessageType[_0x1ea3c6(0x10e)],'content':_0x4dc4d1['errorMessage']||this[_0x1ea3c6(0x1cc)]['t']('mcpConfig.validation.invalidConfig')});return;}if(_0x14130c[_0x1ea3c6(0x1aa)])await this[_0x1ea3c6(0x1c3)][_0x1ea3c6(0x144)](MCP_API_KEY_STORAGE_KEY,_0x14130c[_0x1ea3c6(0x1aa)][_0x1ea3c6(0x1d4)]());else await this[_0x1ea3c6(0x1c3)][_0x1ea3c6(0x180)](MCP_API_KEY_STORAGE_KEY);this[_0x1ea3c6(0x19c)][_0x1ea3c6(0x136)](((_0x240252=_0x14130c[_0x1ea3c6(0x1aa)])===null||_0x240252===void 0x0?void 0x0:_0x240252[_0x1ea3c6(0x1d4)]())||''),this[_0x1ea3c6(0x10a)][_0x1ea3c6(0x14d)]({'Authorization':'Bearer\x20'+((_0x309c8b=_0x14130c[_0x1ea3c6(0x1aa)])===null||_0x309c8b===void 0x0?void 0x0:_0x309c8b[_0x1ea3c6(0x1d4)]())}),this[_0x1ea3c6(0x195)][_0x1ea3c6(0x1b6)]({'type':MessageType[_0x1ea3c6(0x123)],'content':this[_0x1ea3c6(0x1cc)]['t'](_0x1ea3c6(0x204))}),setTimeout(()=>{const _0x463495=_0x1ea3c6;this[_0x463495(0x158)][_0x463495(0x12e)](MCP_CONFIG_DIALOG_ID);},0x320);}catch(_0xd3f12c){this[_0x1ea3c6(0x20a)][_0x1ea3c6(0x172)]('[MCPConfigUI]\x20Failed\x20to\x20save\x20configuration:',_0xd3f12c),this[_0x1ea3c6(0x195)]['show']({'type':MessageType[_0x1ea3c6(0x10e)],'content':this[_0x1ea3c6(0x1cc)]['t'](_0x1ea3c6(0x1ea))});}finally{this[_0x1ea3c6(0x17b)][_0x1ea3c6(0x136)](![]);}}),this[_0x3bcd16(0x18d)](),this[_0x3bcd16(0x1e3)](),this[_0x3bcd16(0x1a6)]();}[_0x554d16(0x1ad)](){const _0xb18740=_0x554d16,_0x1e9404=this[_0xb18740(0x19a)][_0xb18740(0x110)](MCP_UI_PLUGIN_CONFIG_KEY);if(_0x1e9404===null||_0x1e9404===void 0x0?void 0x0:_0x1e9404[_0xb18740(0x152)])this['_dialogService'][_0xb18740(0x1ab)]({'id':MCP_CONFIG_DIALOG_ID,'title':{'title':this[_0xb18740(0x1cc)]['t'](_0xb18740(0x1f8))},'children':{'label':'MCPConfigPanel'},'width':0x244,'draggable':!![],'destroyOnClose':!![],'onClose':()=>{const _0x336f1b=_0xb18740;this[_0x336f1b(0x158)]['close'](MCP_CONFIG_DIALOG_ID);}});}[_0x554d16(0x184)](){const _0x363f7d=_0x554d16;return this[_0x363f7d(0x1d6)][_0x363f7d(0x191)];}[_0x554d16(0x1a6)](){const _0x4957db=_0x554d16;this[_0x4957db(0x1a9)](this[_0x4957db(0x1ff)]['register'](_0x4957db(0x1bc),this[_0x4957db(0x12d)]()));}['_createConfigPanelComponent'](){const _0x3d335d=_0x554d16;return connectInjector(()=>{const _0x5193ec=_0x1bd6;var _0x410767,_0x4b4b62,_0x28dfe6;return jsx(MCPConfigPanel,{'config':this[_0x5193ec(0x179)]['value'],'mcpCoreConfig':this[_0x5193ec(0x1d6)]['value'],'currentApiKey$':this[_0x5193ec(0x19c)],'onSave':this[_0x5193ec(0x17d)],'loading':this[_0x5193ec(0x17b)]['value'],'connectionStatus$':(_0x410767=this['_mcpConnectionController'])===null||_0x410767===void 0x0?void 0x0:_0x410767[_0x5193ec(0x19e)],'connectionError$':(_0x4b4b62=this[_0x5193ec(0x10a)])===null||_0x4b4b62===void 0x0?void 0x0:_0x4b4b62[_0x5193ec(0x16e)],'currentSessionId$':(_0x28dfe6=this[_0x5193ec(0x10a)])===null||_0x28dfe6===void 0x0?void 0x0:_0x28dfe6[_0x5193ec(0x20f)]});},this[_0x3d335d(0x12c)]);}[_0x554d16(0x18d)](){const _0x3cfb68=_0x554d16;this[_0x3cfb68(0x1a9)](this['_configService'][_0x3cfb68(0x208)](MCP_PLUGIN_CONFIG_KEY)[_0x3cfb68(0x1af)](_0x29592f=>{const _0x42e075=_0x3cfb68;this[_0x42e075(0x1d6)]['next'](_0x29592f||{});}));const _0x566e71=this['_configService']['getConfig'](MCP_PLUGIN_CONFIG_KEY);this['_mcpCoreConfig$'][_0x3cfb68(0x136)](_0x566e71||{}),this['disposeWithMe'](this[_0x3cfb68(0x19a)][_0x3cfb68(0x208)](MCP_UI_PLUGIN_CONFIG_KEY)[_0x3cfb68(0x1af)](_0x43e84d=>{const _0x355805=_0x3cfb68;this[_0x355805(0x179)][_0x355805(0x136)](_0x43e84d||{});}));const _0x38a32e=this[_0x3cfb68(0x19a)][_0x3cfb68(0x110)](MCP_UI_PLUGIN_CONFIG_KEY);this[_0x3cfb68(0x179)][_0x3cfb68(0x136)](_0x38a32e||{});}async[_0x554d16(0x1e3)](){const _0x49c68d=_0x554d16,_0x1d8811=this[_0x49c68d(0x19a)][_0x49c68d(0x110)](MCP_UI_PLUGIN_CONFIG_KEY);if(!(_0x1d8811===null||_0x1d8811===void 0x0?void 0x0:_0x1d8811[_0x49c68d(0x152)]))return;const _0x3af53c=await this[_0x49c68d(0x1c3)]['getItem'](MCP_API_KEY_STORAGE_KEY);_0x3af53c&&(this[_0x49c68d(0x10a)][_0x49c68d(0x14d)]({'Authorization':'Bearer\x20'+_0x3af53c}),this['_apiKey$'][_0x49c68d(0x136)](_0x3af53c));}async[_0x554d16(0x130)](_0x677494){const _0xe7841d=_0x554d16;if(!_0x677494[_0xe7841d(0x1aa)]||_0x677494[_0xe7841d(0x1aa)][_0xe7841d(0x1d4)]()[_0xe7841d(0x1a1)]===0x0)return{'isValid':![],'errorMessage':this[_0xe7841d(0x1cc)]['t'](_0xe7841d(0x175))};if(_0x677494[_0xe7841d(0x1aa)][_0xe7841d(0x1d4)]()[_0xe7841d(0x1a1)]<0xa)return{'isValid':![],'errorMessage':this[_0xe7841d(0x1cc)]['t']('mcpConfig.validation.apiKeyTooShort')};try{const _0x2f57d2=await this[_0xe7841d(0x12c)][_0xe7841d(0x14f)](MCPConnectionController)[_0xe7841d(0x118)](_0x677494[_0xe7841d(0x1aa)][_0xe7841d(0x1d4)]());if(!_0x2f57d2[_0xe7841d(0x1ae)])return{'isValid':![],'errorMessage':_0x2f57d2['error']||this[_0xe7841d(0x1cc)]['t'](_0xe7841d(0x103))};return{'isValid':!![]};}catch(_0x2301cc){return console[_0xe7841d(0x147)](_0xe7841d(0x106),_0x2301cc),{'isValid':!![]};}}};MCPConfigUIController=__decorate([__decorateParam(0x0,Inject(Injector)),__decorateParam(0x1,IUIPartsService),__decorateParam(0x2,IConfigService),__decorateParam(0x3,ILocalStorageService),__decorateParam(0x4,IDialogService),__decorateParam(0x5,IMessageService),__decorateParam(0x6,Inject(ComponentManager)),__decorateParam(0x7,Inject(LocaleService)),__decorateParam(0x8,ILogService),__decorateParam(0x9,Inject(MCPConnectionController))],MCPConfigUIController);const OpenMCPConfigPanelCommand={'id':_0x554d16(0x15b),'type':CommandType[_0x554d16(0x161)],'handler':async(_0x9e97ae,_0x5c2ce2)=>{const _0x3745aa=_0x554d16;return _0x9e97ae[_0x3745aa(0x14f)](MCPConfigUIController)[_0x3745aa(0x1ad)](),!![];}};function mapStatusToI18NKey(_0x3c3a24,_0x58ffbc){const _0x2aa891=_0x554d16;switch(_0x3c3a24){case MCPConnectionStatus[_0x2aa891(0x1f7)]:return _0x2aa891(0x183);case MCPConnectionStatus['CONNECTING']:return'mcpStatus.connecting';case MCPConnectionStatus[_0x2aa891(0x132)]:return _0x2aa891(0x112);case MCPConnectionStatus[_0x2aa891(0x13d)]:switch(_0x58ffbc){case MCPConnectionError[_0x2aa891(0x1a8)]:return'mcpStatus.unauthorized';case MCPConnectionError[_0x2aa891(0x1d3)]:return'mcpStatus.sessionOccupied';case MCPConnectionError['NETWORK_ERROR']:return _0x2aa891(0x18a);case MCPConnectionError[_0x2aa891(0x203)]:return'mcpStatus.maxRetriesExceeded';default:return _0x2aa891(0x1c8);}case MCPConnectionStatus['RETRYING']:return'mcpStatus.retrying';default:return'mcpStatus.unknown';}}function getTooltipText(_0x1e48af,_0x10fec2,_0x138836,_0x59a676=!![]){const _0x83e429=_0x554d16,_0x5e9c9d=mapStatusToI18NKey(_0x1e48af,_0x10fec2),_0x48da6e=_0x138836['t'](_0x5e9c9d);if(!_0x59a676)return _0x48da6e;if(_0x1e48af===MCPConnectionStatus[_0x83e429(0x1f7)]&&_0x10fec2===MCPConnectionError[_0x83e429(0x1a8)])return _0x48da6e+_0x83e429(0x16b)+_0x138836['t']('mcpStatus.clickToConfigure');else{if(_0x1e48af===MCPConnectionStatus['CONNECTED'])return''+_0x48da6e;else{if(_0x1e48af===MCPConnectionStatus[_0x83e429(0x1f7)]||_0x1e48af===MCPConnectionStatus[_0x83e429(0x13d)])return _0x48da6e+_0x83e429(0x16b)+_0x138836['t'](_0x83e429(0x149));}}return _0x48da6e;}function _0x3987(){const _0x309fc8=['univer-space-y-3','Connecting...','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','_dialogService','function','MCP\x20已连接','mcp-ui.command.openConfigPanel','univer-size-2\x20univer-rounded-full','univer-flex\x20univer-size-10\x20univer-shrink-0\x20univer-items-center\x20univer-justify-center\x20univer-rounded-full\x20univer-bg-blue-100','重连中...','几秒钟内获取您的\x20API\x20密钥','8132424QWOcHy','COMMAND','univer-flex\x20univer-size-8\x20univer-items-center\x20univer-justify-center\x20univer-rounded-lg\x20univer-bg-blue-500','mcpConfig.configStep3','保存配置','univer-w-full\x20!univer-border-green-600\x20!univer-bg-green-600\x20!univer-text-white\x20hover:!univer-border-green-700\x20hover:!univer-bg-green-700\x20disabled:!univer-border-gray-300\x20disabled:!univer-bg-gray-300\x20disabled:!univer-text-gray-500','<API_KEY>','mcpConfig.apiApplyInfo.getStarted','button','API\x20key\x20with\x20Bearer\x20prefix.','MCP_UI_PLUGIN','\x20-\x20','univer-flex\x20univer-items-center\x20univer-gap-2\x20univer-text-sm\x20univer-font-medium\x20univer-text-gray-700','univer-min-w-0\x20univer-flex-1','connectionError$','string','univer-flex\x20univer-items-center\x20univer-justify-between\x20univer-rounded-lg\x20univer-border\x20univer-px-3\x20univer-py-2','复制以下\x20JSON\x20配置','error','univer_session_id:','点击配置\x20MCP','mcpConfig.validation.apiKeyRequired','您的\x20API\x20密钥将在此浏览器中本地存储','univer-border-b\x20univer-border-gray-100\x20univer-px-6\x20univer-py-3','权限验证失败,请检查您的\x20API\x20密钥','_config$','Configuration\x20saved\x20successfully','_loading$','univer-max-w-full\x20univer-rounded\x20univer-border\x20univer-bg-white\x20univer-p-3','_handleConfigSave','MCP\x20Client\x20Configuration','API\x20密钥用于连接\x20Univer\x20MCP\x20服务器,让您可以使用\x20AI\x20来操作电子表格。请前往控制台获取您的专属密钥。','removeItem','mcpServerUrl','_uiPartsService','mcpStatus.disconnected','getCurrentConfig','_initAutoConnect','univer-flex-1','text','univer-text-xs\x20univer-font-medium\x20univer-text-gray-700','univer-shrink-0\x20univer-text-red-500','mcpStatus.networkError','会话\x20ID\x20已被占用,请稍后再试','univer-mt-2\x20univer-rounded-md\x20univer-border\x20univer-border-red-200\x20univer-bg-red-50\x20univer-px-3\x20univer-py-2','_initConfigSync','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','univer-mb-2\x20univer-text-sm\x20univer-font-semibold\x20univer-text-gray-800','decorate','value','setConfig','univer-border-b\x20univer-border-gray-100\x20univer-px-6\x20univer-py-4','MCP\x20Connecting...','_messageService','Connection\x20Failed','onStarting','OTHERS','mcpConfig.apiApplyInfo.title','_configService','univer-bg-green-500','_apiKey$','prototype','connectionStatus$','univer-text-xs\x20univer-text-gray-600','mcpConfig.configStepTitle','length','univer-absolute\x20univer-right-3\x20univer-top-3\x20univer-flex\x20univer-size-6\x20univer-items-center\x20univer-justify-center\x20univer-text-gray-500\x20univer-transition-all\x20univer-duration-200\x20hover:univer-scale-110\x20hover:univer-text-gray-700','univer-flex\x20univer-items-center\x20univer-gap-2','配置\x20MCP\x20使用\x20AI\x20操作电子表格','univer-flex\x20univer-size-4\x20univer-items-center\x20univer-justify-center\x20univer-rounded-full\x20univer-bg-blue-100\x20univer-text-xs\x20univer-font-medium\x20univer-text-blue-600','_registerComponent','constructor','UNAUTHORIZED','disposeWithMe','apiKey','open','mcpConfig.configStep1','showConfigPanel','isValid','subscribe','Click\x20to\x20connect\x20MCP','has','univer-rounded-lg\x20univer-border\x20univer-border-blue-200\x20univer-bg-blue-50\x20univer-p-3','mcpConfig.saving','Authorization:','Disconnected','show','@univerjs-pro/mcp-ui','univer-flex\x20univer-flex-wrap\x20univer-gap-2','univer-text-red-500','univer-space-y-1\x20univer-text-xs\x20univer-text-gray-600','mcpConfig.connectionError.networkError','MCPConfigPanel','univer-text-blue-600\x20univer-bg-blue-50\x20univer-border-blue-200','17365600vrofLo','symbol','Configuration\x20Notes:','API\x20密钥长度至少需要\x2010\x20位','mcp-ui.config','_localStorageService','MCP\x20客户端配置','MCP\x20配置','mcpConfig.apiApplyInfo.univerAiLabel','packageName','mcpStatus.failed','API\x20密钥无效,请检查密钥是否正确','Bearer\x20','What\x20is\x20API\x20Key?','_localeService','超出最大重试次数,请稍后再试','mcpConfig.description','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Enable\x20authentication\x20for\x20secure\x20connections','https://console.univer.plus','https://mcp.univer.ai/mcp/?univer_session_id=','SESSION_ID_OCCUPIED','trim','univer-bg-red-500','_mcpCoreConfig$','showStatus','univer-text-sm\x20univer-text-gray-500','univer-bg-blue-500','univer-m-0\x20univer-text-sm\x20univer-font-medium\x20univer-text-red-800','Enter\x20your\x20API\x20key','univer-flex-1\x20univer-overflow-auto\x20univer-px-6\x20univer-py-5','univer.plus','配置保存成功','RETRYING','univer-flex\x20univer-max-h-[80vh]\x20univer-min-h-[320px]\x20univer-flex-col','连接失败','Connected','_loadStoredApiKey','div','_initStatusComponent','MCP:\x20Unauthorized','http','1143891ieNLEg','已连接','mcpConfig.configError','MCP:\x20网络错误','_initializeMenus','MCP\x20Connection\x20Failed','univer-bg-gray-500','univer.ai','univer-text-yellow-500','Save\x20Configuration','_initializeCommands','唯一会话标识符。如果您打开了多个\x20Univer\x20实例,每个实例必须使用不同的\x20session_id\x20以避免连接冲突。','连接中...','mcpConfig.connectionStatus.retrying','NONE','DISCONNECTED','mcpConfig.title','MCP\x20Unknown\x20Status','_menuManagerService','enableAutoConnect','MCP:\x20Network\x20Error','getOwnPropertyDescriptor','univer-space-y-2','_componentManager','1107678qXEpDf','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Configuration\x20Parameters:','MAX_RETRIES_EXCEEDED','mcpConfig.configSaved','pluginName','object','_commandService','subscribeConfigValue$','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','_logService','Get\x20your\x20API\x20key\x20in\x20seconds','配置无效','MCP:\x20Session\x20ID\x20Occupied','mcpConfig.apiKey','sessionId$','MCP\x20状态未知','univer-mb-3\x20univer-flex\x20univer-items-center\x20univer-gap-2\x20univer-text-sm\x20univer-font-semibold\x20univer-text-gray-800','Univer\x20AI\x20控制台','mcpConfig.apiKeyHint','mcpConfig.connectionStatus.failed','MCP\x20Configuration','span','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','网络连接错误,请检查您的网络连接','univer-text-blue-600','CONNECTING','https://console.univer.ai','MCP:\x20Max\x20Retries\x20Exceeded','配置步骤:','mcpConfig.validation.invalidApiKey','mcpConfig.apiApplyInfo.description','配置保存失败','[MCPConfigUI]\x20Could\x20not\x20validate\x20API\x20key\x20with\x20core\x20plugin:','mcp.apiKey','最大重试次数','univer-mr-2\x20univer-flex\x20univer-text-xl','_mcpConnectionController','BUTTON','MCP\x20连接失败','点击连接\x20MCP','Error','请输入您的\x20API\x20密钥','getConfig','MCP:\x20未授权','mcpStatus.connected','defineProperty','mcpConfig.configInstructions','univer-text-sm\x20univer-font-medium','univer-text-gray-400','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','validateApiKey','iterator','toPrimitive','会话ID','mergeMenu','API\x20密钥','MCP\x20Retrying...','univer-text-xs\x20univer-text-gray-500','univer-flex\x20univer-items-start\x20univer-gap-2','forEach','什么是\x20API\x20密钥?','Success','_connectionController','mcpConfig.configStep2','univer-relative\x20univer-rounded-lg\x20univer-border\x20univer-border-blue-200\x20univer-bg-gradient-to-r\x20univer-from-blue-50\x20univer-to-indigo-50\x20univer-p-4','Invalid\x20configuration','MCP\x20Disconnected','MCP\x20已断开','mcpConfig.configParameters','univer-overflow-hidden\x20univer-whitespace-pre-wrap\x20univer-break-all\x20univer-text-xs\x20univer-text-gray-800','_injector','_createConfigPanelComponent','close','pre','_validateConfig','includes','CONNECTED','MCP:\x20超出最大重试次数','univer-text-white','univer-flex\x20univer-items-center','next','Univer\x20AI\x20Console','Enable\x20Authentication','_handleConfigure','version','启用身份验证','_blank','FAILED','重启您的\x20MCP\x20客户端以使配置生效','<SESSION_ID>','Click\x20to\x20configure\x20MCP','univer-space-y-5','univer-font-medium','push','setItem','4dDihIT','mcpConfig.note1','warn','off','mcpStatus.clickToConnect','add','univer-flex\x20univer-gap-3','479924oCgXct','__setCustomHeaders','3232334btXmBx','get','univer-text-red-600\x20univer-bg-red-50\x20univer-border-red-200','Retrying...','showDeveloperTools','2588695dLDKGM','NETWORK_ERROR'];_0x3987=function(){return _0x309fc8;};return _0x3987();}function getStatusColor(_0x2c9faa){const _0x15d2f5=_0x554d16;switch(_0x2c9faa){case MCPConnectionStatus['CONNECTED']:return'univer-text-green-500';case MCPConnectionStatus[_0x15d2f5(0xff)]:case MCPConnectionStatus[_0x15d2f5(0x1df)]:return _0x15d2f5(0x1f0);case MCPConnectionStatus[_0x15d2f5(0x13d)]:case MCPConnectionStatus[_0x15d2f5(0x1f7)]:return _0x15d2f5(0x1b9);default:return'univer-text-gray-500';}}function MCPStatusDisplay(_0x206c50){const _0x5495f8=_0x554d16,{status$:_0x16d76d,error$:_0x1b235d,onConfigure:_0x4f7b91,showClickable:showClickable=!![]}=_0x206c50,_0x7e6baa=useObservable(_0x16d76d,MCPConnectionStatus[_0x5495f8(0x1f7)]),_0x6b514b=useObservable(_0x1b235d,MCPConnectionError[_0x5495f8(0x1f6)]),_0x59d2db=useDependency(LocaleService),_0x32fcac=_0x7e6baa===MCPConnectionStatus['CONNECTED'];_0x7e6baa===MCPConnectionStatus[_0x5495f8(0xff)]||MCPConnectionStatus[_0x5495f8(0x1df)];const _0x3d41b2=_0x59d2db['t'](mapStatusToI18NKey(_0x7e6baa,_0x6b514b)),_0x39801c=getTooltipText(_0x7e6baa,_0x6b514b,_0x59d2db,showClickable),_0xdfbc31=getStatusColor(_0x7e6baa),_0x535567=_0x32fcac?jsx(OnLineIcon,{}):jsx(OffLineIcon,{}),_0xc9ec37=useCallback(()=>{if(showClickable&&_0x4f7b91)_0x4f7b91();},[showClickable,_0x4f7b91]);function _0x4acb47(){const _0x245f68=_0x5495f8;return jsxs(_0x245f68(0x1e4),{'className':clsx(_0x245f68(0x135),showClickable&&_0x4f7b91&&'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20univer-cursor-pointer\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hover:univer-opacity-80\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),'role':_0x245f68(0x168),'onClick':showClickable&&_0x4f7b91?_0xc9ec37:void 0x0,'children':[jsx(_0x245f68(0x1e4),{'className':clsx(_0x245f68(0x109),_0xdfbc31),'children':_0x535567}),jsx(_0x245f68(0x1e4),{'className':'univer-text-sm\x20univer-leading-8\x20univer-text-gray-600\x20dark:!univer-text-gray-200','children':_0x3d41b2})]});}return jsx(Tooltip,{'title':_0x39801c,'placement':'bottom','children':_0x4acb47()});}let MCPConnectionUIController=class MCPConnectionUIController extends Disposable{constructor(_0x5b363f,_0x15e731,_0x342b4e,_0x49442b){const _0x3f3099=_0x554d16;super(),this[_0x3f3099(0x12c)]=_0x5b363f,this['_connectionController']=_0x15e731,this['_uiPartsService']=_0x342b4e,this[_0x3f3099(0x19a)]=_0x49442b,this[_0x3f3099(0x185)](),this['_initStatusComponent']();}[_0x554d16(0x185)](){const _0x2f4747=_0x554d16,_0x26725b=this['_configService']['getConfig'](MCP_UI_PLUGIN_CONFIG_KEY);if(_0x26725b===null||_0x26725b===void 0x0?void 0x0:_0x26725b['showDeveloperTools'])this[_0x2f4747(0x124)][_0x2f4747(0x1fb)]=![];}[_0x554d16(0x1e5)](){const _0x53412a=_0x554d16,_0x18f2cc=this['_configService']['getConfig'](MCP_UI_PLUGIN_CONFIG_KEY);if((_0x18f2cc===null||_0x18f2cc===void 0x0?void 0x0:_0x18f2cc[_0x53412a(0x1d7)])!==![])this[_0x53412a(0x1a9)](this['_uiPartsService']['registerComponent'](BuiltInUIPart['HEADER_MENU'],()=>{const _0x2a9b2e=_0x53412a;var _0x1210f0;return connectInjector(passProps({'status$':this[_0x2a9b2e(0x124)]['connectionStatus$'],'error$':this[_0x2a9b2e(0x124)][_0x2a9b2e(0x16e)],'onConfigure':()=>this[_0x2a9b2e(0x139)](),'showClickable':(_0x1210f0=_0x18f2cc===null||_0x18f2cc===void 0x0?void 0x0:_0x18f2cc['showDeveloperTools'])!==null&&_0x1210f0!==void 0x0?_0x1210f0:![]}),this['_injector']);}));}[_0x554d16(0x139)](){const _0x59eca3=_0x554d16;this[_0x59eca3(0x12c)][_0x59eca3(0x14f)](MCPConfigUIController)['showConfigPanel']();}};MCPConnectionUIController=__decorate([__decorateParam(0x0,Inject(Injector)),__decorateParam(0x1,Inject(MCPConnectionController)),__decorateParam(0x2,IUIPartsService),__decorateParam(0x3,IConfigService)],MCPConnectionUIController);function passProps(_0x53cf7){const {status$:_0x2aa8d0,error$:_0xa23b7e,onConfigure:_0x4ebb34,showClickable:_0x43d6ef}=_0x53cf7;return function _0x4d99d0(){return jsx(MCPStatusDisplay,{'status$':_0x2aa8d0,'error$':_0xa23b7e,'onConfigure':_0x4ebb34,'showClickable':_0x43d6ef});};}function MCPConfigMenuItemFactory(_0x2de0d1){const _0xcccf30=_0x554d16;return{'id':OpenMCPConfigPanelCommand['id'],'type':MenuItemType[_0xcccf30(0x10b)],'icon':'MenuIcon','title':_0xcccf30(0x1f8),'tooltip':_0xcccf30(0x1f8)};}const menuSchema={[RibbonStartGroup[_0x554d16(0x198)]]:{[OpenMCPConfigPanelCommand['id']]:{'order':0xa,'menuItemFactory':MCPConfigMenuItemFactory}}};let MCPUIMenuController=class MCPUIMenuController extends Disposable{constructor(_0x5941e6,_0x3d29dd){const _0x5c6d9f=_0x554d16;super(),this['_commandService']=_0x5941e6,this[_0x5c6d9f(0x1fa)]=_0x3d29dd,this[_0x5c6d9f(0x1f2)](),this[_0x5c6d9f(0x1ec)]();}['_initializeCommands'](){const _0x6d43ba=_0x554d16;[OpenMCPConfigPanelCommand][_0x6d43ba(0x121)](_0xd8618f=>{const _0x251c64=_0x6d43ba;this['disposeWithMe'](this[_0x251c64(0x207)]['registerCommand'](_0xd8618f));});}[_0x554d16(0x1ec)](){const _0x2d924d=_0x554d16;this['_menuManagerService'][_0x2d924d(0x11c)](menuSchema);}};MCPUIMenuController=__decorate([__decorateParam(0x0,ICommandService),__decorateParam(0x1,IMenuManagerService)],MCPUIMenuController);const locale={'mcpStatus':{'disconnected':_0x554d16(0x128),'connecting':_0x554d16(0x194),'connected':'MCP\x20Connected','failed':_0x554d16(0x1ed),'retrying':_0x554d16(0x11e),'unknown':_0x554d16(0x1f9),'unauthorized':_0x554d16(0x1e6),'sessionOccupied':_0x554d16(0x20d),'networkError':_0x554d16(0x1fc),'maxRetriesExceeded':_0x554d16(0x101),'clickToConnect':_0x554d16(0x1b0),'clickToConfigure':_0x554d16(0x140)},'mcpConfig':{'title':_0x554d16(0x215),'description':_0x554d16(0x117),'apiKey':'API\x20Key','apiKeyPlaceholder':_0x554d16(0x1db),'apiKeyHint':'Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','enableAuth':_0x554d16(0x138),'enableAuthHint':_0x554d16(0x1d0),'connectionInfo':_0x554d16(0x17e),'mcpClientConfig':_0x554d16(0x17e),'configInstructions':'Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','configStepTitle':'Configuration\x20Steps:','configStep1':'Copy\x20the\x20JSON\x20configuration\x20below','configStep2':'Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','configStep3':_0x554d16(0x1cf),'sessionId':'Session\x20ID','sessionIdDescription':'Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','authorizationDescription':_0x554d16(0x169),'configParameters':_0x554d16(0x202),'maxRetries':'Max\x20Retries','save':_0x554d16(0x1f1),'saving':'Saving...','note1':_0x554d16(0x217),'note2':'Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','configSaved':_0x554d16(0x17a),'configError':'Failed\x20to\x20save\x20configuration','apiApplyInfo':{'title':_0x554d16(0x1cb),'description':'API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','univerAiLabel':_0x554d16(0x137),'getStarted':_0x554d16(0x20b)},'validation':{'apiKeyRequired':'API\x20key\x20is\x20required','apiKeyTooShort':_0x554d16(0x209),'invalidConfig':_0x554d16(0x127),'invalidApiKey':_0x554d16(0x201)},'connectionStatus':{'disconnected':_0x554d16(0x1b5),'connecting':_0x554d16(0x156),'connected':_0x554d16(0x1e2),'failed':_0x554d16(0x196),'retrying':_0x554d16(0x151)},'connectionError':{'unauthorized':'Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','sessionOccupied':'Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','networkError':_0x554d16(0x157),'maxRetriesExceeded':_0x554d16(0x18e)}}},locale$1={'mcpStatus':{'disconnected':_0x554d16(0x129),'connecting':'MCP\x20连接中...','connected':_0x554d16(0x15a),'failed':_0x554d16(0x10c),'retrying':'MCP\x20重连中...','unknown':_0x554d16(0x210),'unauthorized':_0x554d16(0x111),'sessionOccupied':'MCP:\x20会话\x20ID\x20已被占用','networkError':_0x554d16(0x1eb),'maxRetriesExceeded':_0x554d16(0x133),'clickToConnect':_0x554d16(0x10d),'clickToConfigure':_0x554d16(0x174)},'mcpConfig':{'title':_0x554d16(0x1c5),'description':_0x554d16(0x1a4),'apiKey':_0x554d16(0x11d),'apiKeyPlaceholder':_0x554d16(0x10f),'apiKeyHint':_0x554d16(0x176),'enableAuth':_0x554d16(0x13b),'enableAuthHint':'启用身份验证以获得安全连接','connectionInfo':_0x554d16(0x1c4),'mcpClientConfig':_0x554d16(0x1c4),'configInstructions':'将以下配置添加到您的\x20MCP\x20客户端设置中:','configStepTitle':_0x554d16(0x102),'configStep1':_0x554d16(0x171),'configStep2':'将配置添加到您的\x20MCP\x20客户端设置文件中','configStep3':_0x554d16(0x13e),'sessionId':_0x554d16(0x11b),'sessionIdDescription':_0x554d16(0x1f3),'authorizationDescription':'带有\x20Bearer\x20前缀的\x20API\x20密钥。','configParameters':'配置参数:','maxRetries':_0x554d16(0x108),'save':_0x554d16(0x164),'saving':'保存中...','note1':'配置更改将立即生效','note2':'您的\x20API\x20密钥安全存储在本地存储中','configSaved':_0x554d16(0x1de),'configError':_0x554d16(0x105),'apiApplyInfo':{'title':_0x554d16(0x122),'description':_0x554d16(0x17f),'univerAiLabel':_0x554d16(0x212),'getStarted':_0x554d16(0x15f)},'validation':{'apiKeyRequired':'API\x20密钥不能为空','apiKeyTooShort':_0x554d16(0x1c1),'invalidConfig':_0x554d16(0x20c),'invalidApiKey':_0x554d16(0x1c9)},'connectionStatus':{'disconnected':'未连接','connecting':_0x554d16(0x1f4),'connected':_0x554d16(0x1e9),'failed':_0x554d16(0x1e1),'retrying':_0x554d16(0x15e)},'connectionError':{'unauthorized':_0x554d16(0x178),'sessionOccupied':_0x554d16(0x18b),'networkError':_0x554d16(0x218),'maxRetriesExceeded':_0x554d16(0x1cd)}}};var name=_0x554d16(0x1b7),version='0.21.0';let UniverMCPUIPlugin=class UniverMCPUIPlugin extends Plugin{constructor(_0x4ff1dd=defaultPluginConfig,_0x39ce3c,_0x141b06,_0x3fa55e,_0x280ef1,_0x45ebb9){const _0x53e7e6=_0x554d16;super(),this['_config']=_0x4ff1dd,this[_0x53e7e6(0x12c)]=_0x39ce3c,this['_configService']=_0x141b06,this[_0x53e7e6(0x182)]=_0x3fa55e,this[_0x53e7e6(0x1c3)]=_0x280ef1,this[_0x53e7e6(0x1cc)]=_0x45ebb9;const {..._0x4f8388}=merge({},defaultPluginConfig,this['_config']);this[_0x53e7e6(0x19a)][_0x53e7e6(0x192)](MCP_UI_PLUGIN_CONFIG_KEY,_0x4f8388);}async[_0x554d16(0x197)](){const _0x65462e=_0x554d16,_0x3e508=[[MCPConnectionUIController],[MCPConfigUIController],[MCPUIMenuController]];if(!this['_injector'][_0x65462e(0x1b1)](ISocketService))_0x3e508[_0x65462e(0x143)]([ISocketService,{'useClass':WebSocketService}]);_0x3e508['forEach'](_0x1f819b=>this[_0x65462e(0x12c)][_0x65462e(0x14a)](_0x1f819b)),this[_0x65462e(0x12c)][_0x65462e(0x14f)](MCPConnectionUIController),this[_0x65462e(0x12c)][_0x65462e(0x14f)](MCPConfigUIController),this['_injector']['get'](MCPUIMenuController);}};_defineProperty(UniverMCPUIPlugin,_0x554d16(0x205),_0x554d16(0x16a)),_defineProperty(UniverMCPUIPlugin,_0x554d16(0x1c7),name),_defineProperty(UniverMCPUIPlugin,_0x554d16(0x13a),version),UniverMCPUIPlugin=__decorate([DependentOn(UniverMCPPlugin),__decorateParam(0x1,Inject(Injector)),__decorateParam(0x2,IConfigService),__decorateParam(0x3,IUIPartsService),__decorateParam(0x4,ILocalStorageService),__decorateParam(0x5,Inject(LocaleService))],UniverMCPUIPlugin);export{MCPConfigPanel,MCPConfigUIController,MCPConnectionUIController,MCPStatusDisplay,MCPUIMenuController,OpenMCPConfigPanelCommand,UniverMCPUIPlugin,locale as enUS,locale$1 as zhCN};
1
+ const _0xe5c988=_0x19ff;(function(_0x29c6de,_0xf448e6){const _0x1a91e8=_0x19ff,_0x309839=_0x29c6de();while(!![]){try{const _0x59c7dc=parseInt(_0x1a91e8(0xc0))/0x1+parseInt(_0x1a91e8(0x104))/0x2*(parseInt(_0x1a91e8(0xce))/0x3)+parseInt(_0x1a91e8(0xf8))/0x4*(parseInt(_0x1a91e8(0x93))/0x5)+-parseInt(_0x1a91e8(0x17c))/0x6*(-parseInt(_0x1a91e8(0x153))/0x7)+-parseInt(_0x1a91e8(0xe4))/0x8+parseInt(_0x1a91e8(0x11b))/0x9+-parseInt(_0x1a91e8(0x17f))/0xa;if(_0x59c7dc===_0xf448e6)break;else _0x309839['push'](_0x309839['shift']());}catch(_0xcc703){_0x309839['push'](_0x309839['shift']());}}}(_0x26f5,0xc0aa1));import{CommandType,DependentOn,Disposable,ICommandService,IConfigService,ILocalStorageService,ILogService,Inject,Injector,LocaleService,Plugin,merge}from'@univerjs/core';import{MCPConnectionController,MCPConnectionError,MCPConnectionStatus,MCP_PLUGIN_CONFIG_KEY,UniverMCPPlugin}from'@univerjs-pro/mcp';import{Button,Input,MessageType,Tooltip,clsx}from'@univerjs/design';import{BuiltInUIPart,ComponentManager,IDialogService,IMenuManagerService,IMessageService,IUIPartsService,MenuItemType,RibbonStartGroup,connectInjector,useDependency,useObservable}from'@univerjs/ui';import{BehaviorSubject}from'rxjs';import{CheckMarkIcon,CloseIcon,HelpIcon,OffLineIcon,OnLineIcon}from'@univerjs/icons';import{useCallback,useState}from'react';import{jsx,jsxs}from'react/jsx-runtime';import{ISocketService,WebSocketService}from'@univerjs/network';function MCPConfigPanel(_0x8c4cbb){const _0x3561f4=_0x19ff;var _0x25aa38,_0x5b3f1e;const {mcpCoreConfig:_0xdc9199,onSave:_0x2f46bc,loading:loading=![],config:_0x3ba388,connectionStatus$:_0x5699f3,connectionError$:_0x32bb85,currentApiKey$:_0x45d3d8,currentSessionId$:_0x2f1c39}=_0x8c4cbb,_0x3952f4=useDependency(LocaleService),_0x30207=useObservable(_0x5699f3,MCPConnectionStatus[_0x3561f4(0x72)]),_0x1a1371=useObservable(_0x32bb85,MCPConnectionError[_0x3561f4(0xbf)]),_0x52536a=useObservable(_0x2f1c39,''),[_0x3a62e5,_0x321f4e]=useState(useObservable(_0x45d3d8,'')||''),_0x5965af=!![],_0x540380=_0x3ba388[_0x3561f4(0x100)]&&_0xdc9199[_0x3561f4(0x6d)]&&(_0xdc9199['mcpServerUrl'][_0x3561f4(0xed)](_0x3561f4(0x158))||_0xdc9199[_0x3561f4(0x6d)][_0x3561f4(0xed)]('univer.ai')),_0x5388fa=(_0x25aa38=_0xdc9199[_0x3561f4(0x6d)])===null||_0x25aa38===void 0x0?void 0x0:_0x25aa38[_0x3561f4(0xed)](_0x3561f4(0x158)),_0x488b69=(_0x5b3f1e=_0xdc9199[_0x3561f4(0x6d)])===null||_0x5b3f1e===void 0x0?void 0x0:_0x5b3f1e[_0x3561f4(0xed)](_0x3561f4(0x9a)),_0x38b71c=_0x5388fa?_0x3561f4(0xd8):_0x3561f4(0x134),_0x2587a3=_0x3ba388[_0x3561f4(0x100)]&&(_0x5388fa||_0x488b69),[_0x371c10,_0xb759d]=useState(!_0x3a62e5[_0x3561f4(0xe8)]()),_0x3a8050=(_0x187e13,_0x47c9a2)=>{const _0x2a2b9e=_0x3561f4;if(_0x47c9a2===MCPConnectionError[_0x2a2b9e(0x15c)])return'univer-text-red-600\x20univer-bg-red-50\x20univer-border-red-200';switch(_0x187e13){case MCPConnectionStatus[_0x2a2b9e(0x6a)]:return _0x2a2b9e(0x92);case MCPConnectionStatus[_0x2a2b9e(0x8e)]:case MCPConnectionStatus['RETRYING']:return _0x2a2b9e(0x173);case MCPConnectionStatus[_0x2a2b9e(0x7c)]:return'univer-text-red-600\x20univer-bg-red-50\x20univer-border-red-200';default:return _0x2a2b9e(0x141);}},_0x49e935=(_0x1cf7c4,_0x49d155)=>{const _0x1542f0=_0x3561f4;if(_0x49d155===MCPConnectionError['UNAUTHORIZED'])return _0x1542f0(0x8a);switch(_0x1cf7c4){case MCPConnectionStatus['CONNECTED']:return _0x1542f0(0x84);case MCPConnectionStatus[_0x1542f0(0x8e)]:case MCPConnectionStatus[_0x1542f0(0xa3)]:return'univer-bg-blue-500';case MCPConnectionStatus[_0x1542f0(0x7c)]:return _0x1542f0(0x8a);default:return _0x1542f0(0x85);}},_0x33fe7e=_0x12315d=>{const _0x1eb0c6=_0x3561f4;switch(_0x12315d){case MCPConnectionStatus[_0x1eb0c6(0x6a)]:return _0x3952f4['t'](_0x1eb0c6(0xc7));case MCPConnectionStatus[_0x1eb0c6(0x8e)]:return _0x3952f4['t']('mcpConfig.connectionStatus.connecting');case MCPConnectionStatus[_0x1eb0c6(0x7c)]:return _0x3952f4['t'](_0x1eb0c6(0xe5));case MCPConnectionStatus[_0x1eb0c6(0xa3)]:return _0x3952f4['t'](_0x1eb0c6(0x10f));default:return _0x3952f4['t'](_0x1eb0c6(0x12d));}},_0x29b6c3=_0x233353=>{const _0x5b0dc0=_0x3561f4;switch(_0x233353){case MCPConnectionError[_0x5b0dc0(0x15c)]:return _0x3952f4['t'](_0x5b0dc0(0x149));case MCPConnectionError['SESSION_ID_OCCUPIED']:return _0x3952f4['t'](_0x5b0dc0(0x157));case MCPConnectionError[_0x5b0dc0(0x175)]:return _0x3952f4['t']('mcpConfig.connectionError.networkError');case MCPConnectionError[_0x5b0dc0(0x9d)]:return _0x3952f4['t'](_0x5b0dc0(0xba));default:return'';}},_0x27e070=useCallback(()=>{_0x2f46bc({..._0xdc9199,'apiKey':_0x3a62e5['trim'](),'enableAuth':_0x5965af});},[_0xdc9199,_0x3a62e5,_0x5965af,_0x2f46bc]),_0x2dabef=_0x3a62e5['trim']()[_0x3561f4(0xee)]>0x0;return jsxs(_0x3561f4(0x169),{'className':'univer-flex\x20univer-max-h-[80vh]\x20univer-min-h-[320px]\x20univer-flex-col','children':[jsx('div',{'className':_0x3561f4(0x6c),'children':jsxs(_0x3561f4(0x169),{'className':'univer-flex\x20univer-items-center\x20univer-gap-3','children':[jsx(_0x3561f4(0x169),{'className':_0x3561f4(0x119),'children':jsx(_0x3561f4(0x12f),{'className':'univer-text-white','children':'⚙'})}),jsx(_0x3561f4(0x169),{'children':jsx('p',{'className':_0x3561f4(0xe9),'children':_0x3952f4['t'](_0x3561f4(0xfb))})})]})}),jsxs('div',{'className':_0x3561f4(0x88),'children':[jsx('div',{'className':clsx('univer-flex\x20univer-items-center\x20univer-justify-between\x20univer-rounded-lg\x20univer-border\x20univer-px-3\x20univer-py-2',_0x3a8050(_0x30207,_0x1a1371)),'children':jsxs('div',{'className':_0x3561f4(0xb5),'children':[jsx(_0x3561f4(0x169),{'className':clsx(_0x3561f4(0x15f),_0x49e935(_0x30207,_0x1a1371))}),jsx(_0x3561f4(0x12f),{'className':_0x3561f4(0xbb),'children':_0x33fe7e(_0x30207)})]})}),_0x1a1371!==MCPConnectionError[_0x3561f4(0xbf)]&&(_0x30207===MCPConnectionStatus[_0x3561f4(0x7c)]||_0x1a1371===MCPConnectionError['UNAUTHORIZED'])&&jsx(_0x3561f4(0x169),{'className':'univer-mt-2\x20univer-rounded-md\x20univer-border\x20univer-border-red-200\x20univer-bg-red-50\x20univer-px-3\x20univer-py-2','children':jsxs('div',{'className':_0x3561f4(0xbc),'children':[jsx(_0x3561f4(0x12f),{'className':_0x3561f4(0x15a),'children':'⚠️'}),jsx('p',{'className':_0x3561f4(0x165),'children':_0x29b6c3(_0x1a1371)})]})})]}),jsx(_0x3561f4(0x169),{'className':_0x3561f4(0x14b),'children':jsxs('div',{'className':_0x3561f4(0xd9),'children':[jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0x12e),'children':[jsxs('label',{'className':_0x3561f4(0x14f),'children':[jsx(_0x3561f4(0x12f),{'children':'🔑'}),'\x20',_0x3952f4['t'](_0x3561f4(0xa0)),jsx('span',{'className':_0x3561f4(0x140),'children':'*'}),_0x540380&&jsx('a',{'className':'univer-ml-1\x20univer-flex\x20univer-size-4\x20univer-items-center\x20univer-justify-center\x20univer-text-blue-600\x20univer-transition-all\x20univer-duration-200\x20hover:univer-scale-110\x20hover:univer-text-blue-800','title':_0x3952f4['t'](_0x3561f4(0x68)),'role':_0x3561f4(0x114),'onClick':()=>_0xb759d(!![]),'children':jsx(HelpIcon,{})})]}),jsx(Input,{'type':_0x3561f4(0x11e),'placeholder':_0x3952f4['t']('mcpConfig.apiKeyPlaceholder'),'value':_0x3a62e5,'disabled':loading,'autoComplete':_0x3561f4(0x13d),'onChange':_0x321f4e}),jsx('p',{'className':_0x3561f4(0x186),'children':_0x3952f4['t']('mcpConfig.apiKeyHint')})]}),_0x540380&&_0x371c10&&jsxs(_0x3561f4(0x169),{'className':'univer-relative\x20univer-rounded-lg\x20univer-border\x20univer-border-blue-200\x20univer-bg-gradient-to-r\x20univer-from-blue-50\x20univer-to-indigo-50\x20univer-p-4','children':[jsx('a',{'className':_0x3561f4(0x17b),'role':'button','onClick':()=>_0xb759d(![]),'children':jsx(CloseIcon,{'className':_0x3561f4(0x7e)})}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0xb3),'children':[jsx(_0x3561f4(0x169),{'className':_0x3561f4(0xea),'children':jsx('span',{'className':_0x3561f4(0xd4),'children':'🚀'})}),jsxs(_0x3561f4(0x169),{'className':'univer-flex-1','children':[jsx('h4',{'className':_0x3561f4(0x176),'children':_0x3952f4['t'](_0x3561f4(0x68))}),jsx('p',{'className':_0x3561f4(0x71),'children':_0x3952f4['t'](_0x3561f4(0x160))}),jsx('div',{'className':'univer-flex\x20univer-flex-wrap\x20univer-gap-2','children':_0x2587a3&&jsxs('a',{'className':'univer-inline-flex\x20univer-items-center\x20univer-gap-1\x20univer-rounded-md\x20univer-border\x20univer-border-purple-300\x20univer-bg-white\x20univer-px-3\x20univer-py-1.5\x20univer-text-xs\x20univer-font-medium\x20univer-text-purple-600\x20univer-shadow-sm\x20univer-transition-all\x20univer-duration-200\x20hover:univer-border-purple-400\x20hover:univer-bg-purple-50\x20hover:univer-shadow-md','href':_0x38b71c,'target':_0x3561f4(0x15d),'rel':_0x3561f4(0x14a),'children':[jsx(_0x3561f4(0x12f),{'children':'🤖'}),_0x3952f4['t'](_0x3561f4(0x6b)),jsx(_0x3561f4(0x12f),{'className':_0x3561f4(0x109),'children':'↗'})]})}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0xe3),'children':['✨','\x20',_0x3952f4['t']('mcpConfig.apiApplyInfo.getStarted')]})]})]})]}),_0x3ba388[_0x3561f4(0x100)]&&jsxs(_0x3561f4(0x169),{'className':'univer-rounded-lg\x20univer-border\x20univer-border-gray-200\x20univer-bg-gray-50\x20univer-p-4','children':[jsxs('h4',{'className':'univer-mb-3\x20univer-flex\x20univer-items-center\x20univer-gap-2\x20univer-text-sm\x20univer-font-semibold\x20univer-text-gray-800','children':[jsx(_0x3561f4(0x12f),{'children':'🔗'}),'\x20',_0x3952f4['t'](_0x3561f4(0xab))]}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0x118),'children':[jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0x143),'children':[jsx('p',{'className':_0x3561f4(0xf5),'children':_0x3952f4['t'](_0x3561f4(0xdf))}),jsxs('div',{'className':_0x3561f4(0x12e),'children':[jsx(_0x3561f4(0x169),{'className':_0x3561f4(0xca),'children':_0x3952f4['t']('mcpConfig.configStepTitle')}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0x161),'children':[jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0xb5),'children':[jsx('span',{'className':_0x3561f4(0x174),'children':'1'}),_0x3952f4['t'](_0x3561f4(0x82))]}),jsxs(_0x3561f4(0x169),{'className':'univer-flex\x20univer-items-center\x20univer-gap-2','children':[jsx(_0x3561f4(0x12f),{'className':_0x3561f4(0x174),'children':'2'}),_0x3952f4['t'](_0x3561f4(0x188))]}),jsxs('div',{'className':_0x3561f4(0xb5),'children':[jsx('span',{'className':'univer-flex\x20univer-size-4\x20univer-items-center\x20univer-justify-center\x20univer-rounded-full\x20univer-bg-blue-100\x20univer-text-xs\x20univer-font-medium\x20univer-text-blue-600','children':'3'}),_0x3952f4['t'](_0x3561f4(0x8f))]})]})]})]}),jsxs(_0x3561f4(0x169),{'className':'univer-space-y-2','children':[jsx(_0x3561f4(0x169),{'className':'univer-text-xs\x20univer-font-medium\x20univer-text-gray-700','children':_0x3561f4(0x177)}),jsx(_0x3561f4(0x169),{'className':'univer-max-w-full\x20univer-rounded\x20univer-border\x20univer-bg-white\x20univer-p-3','children':jsx(_0x3561f4(0x126),{'className':'univer-overflow-hidden\x20univer-whitespace-pre-wrap\x20univer-break-all\x20univer-text-xs\x20univer-text-gray-800','children':JSON[_0x3561f4(0x73)]({'mcpServers':{'univer':{'url':_0x3561f4(0x95)+(_0x52536a||_0x3561f4(0xaf)),'type':_0x3561f4(0x75),'headers':{'Authorization':_0x3561f4(0x10b)+(_0x3a62e5||_0x3561f4(0x107))}}}},null,0x2)})})]}),jsxs(_0x3561f4(0x169),{'className':'univer-space-y-3','children':[jsx('div',{'className':_0x3561f4(0xca),'children':_0x3952f4['t'](_0x3561f4(0x146))}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0x12e),'children':[jsxs(_0x3561f4(0x169),{'className':'univer-flex\x20univer-items-start\x20univer-gap-3','children':[jsx('div',{'className':_0x3561f4(0xf1)}),jsxs(_0x3561f4(0x169),{'className':'univer-min-w-0\x20univer-flex-1','children':[jsx(_0x3561f4(0x169),{'className':'univer-text-xs\x20univer-font-medium\x20univer-text-gray-600','children':'univer_session_id:'}),jsx(_0x3561f4(0x169),{'className':'univer-text-xs\x20univer-text-gray-500','children':_0x3952f4['t']('mcpConfig.sessionIdDescription')})]})]}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0xb7),'children':[jsx(_0x3561f4(0x169),{'className':_0x3561f4(0xf1)}),jsxs('div',{'className':'univer-min-w-0\x20univer-flex-1','children':[jsx(_0x3561f4(0x169),{'className':_0x3561f4(0x9f),'children':_0x3561f4(0x127)}),jsx(_0x3561f4(0x169),{'className':'univer-text-xs\x20univer-text-gray-500','children':_0x3952f4['t'](_0x3561f4(0x120))})]})]})]})]})]})]}),jsx(Button,{'onClick':_0x27e070,'disabled':!_0x2dabef||loading,'className':'univer-w-full\x20!univer-border-green-600\x20!univer-bg-green-600\x20!univer-text-white\x20hover:!univer-border-green-700\x20hover:!univer-bg-green-700\x20disabled:!univer-border-gray-300\x20disabled:!univer-bg-gray-300\x20disabled:!univer-text-gray-500','children':loading?jsxs('span',{'className':_0x3561f4(0xb5),'children':[jsx('span',{'children':'⟲'}),_0x3952f4['t']('mcpConfig.saving')]}):jsxs('span',{'className':_0x3561f4(0xb5),'children':[jsx(CheckMarkIcon,{}),_0x3952f4['t'](_0x3561f4(0xcc))]})}),jsx(_0x3561f4(0x169),{'className':_0x3561f4(0xfd),'children':jsxs('div',{'className':_0x3561f4(0xdc),'children':[jsx('span',{'className':_0x3561f4(0xf2),'children':'💡'}),jsxs(_0x3561f4(0x169),{'className':_0x3561f4(0x11d),'children':[jsx(_0x3561f4(0x169),{'className':_0x3561f4(0x10e),'children':_0x3561f4(0x117)}),jsxs('div',{'children':['•',_0x3952f4['t'](_0x3561f4(0x182))]}),jsxs(_0x3561f4(0x169),{'children':['•',_0x3952f4['t'](_0x3561f4(0x142))]})]})]})})]})})]});}const MCP_UI_PLUGIN_CONFIG_KEY='mcp-ui.config',configSymbol=Symbol(MCP_UI_PLUGIN_CONFIG_KEY),defaultPluginConfig={'showDeveloperTools':![],'showStatus':!![]};function _typeof(_0xc43a45){'@babel/helpers - typeof';const _0x13e682=_0x19ff;return _typeof=_0x13e682(0x162)==typeof Symbol&&_0x13e682(0x13f)==typeof Symbol['iterator']?function(_0x29f6e4){return typeof _0x29f6e4;}:function(_0x1623c8){const _0x12e602=_0x13e682;return _0x1623c8&&_0x12e602(0x162)==typeof Symbol&&_0x1623c8[_0x12e602(0x12c)]===Symbol&&_0x1623c8!==Symbol[_0x12e602(0x13e)]?'symbol':typeof _0x1623c8;},_typeof(_0xc43a45);}function toPrimitive(_0xef3eb1,_0x17b5a8){const _0x5095b0=_0x19ff;if(_0x5095b0(0x16c)!=_typeof(_0xef3eb1)||!_0xef3eb1)return _0xef3eb1;var _0x54cb7c=_0xef3eb1[Symbol[_0x5095b0(0xad)]];if(void 0x0!==_0x54cb7c){var _0x1d2d6e=_0x54cb7c[_0x5095b0(0x136)](_0xef3eb1,_0x17b5a8||'default');if(_0x5095b0(0x16c)!=_typeof(_0x1d2d6e))return _0x1d2d6e;throw new TypeError('@@toPrimitive\x20must\x20return\x20a\x20primitive\x20value.');}return(_0x5095b0(0x156)===_0x17b5a8?String:Number)(_0xef3eb1);}function toPropertyKey(_0x3963dc){var _0x4e2db1=toPrimitive(_0x3963dc,'string');return'symbol'==_typeof(_0x4e2db1)?_0x4e2db1:_0x4e2db1+'';}function _0x26f5(){const _0x7b1749=['_createConfigPanelComponent','Enable\x20authentication\x20for\x20secure\x20connections','29032vhhrEr','Save\x20Configuration','_mcpConnectionController','mcpConfig.description','MenuIcon','univer-rounded-lg\x20univer-border\x20univer-border-blue-200\x20univer-bg-blue-50\x20univer-p-3','showStatus','Connection\x20Failed','showDeveloperTools','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20univer-cursor-pointer\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hover:univer-opacity-80\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','API\x20密钥不能为空','579310ZwjftU','_registerComponent','Click\x20to\x20configure\x20MCP','<API_KEY>','push','univer-text-gray-400','getItem','Bearer\x20','_commandService','_handleConfigSave','univer-font-medium','mcpConfig.connectionStatus.retrying','_logService','Invalid\x20configuration','_initializeMenus','_config','button','SESSION_ID_OCCUPIED','pluginName','Configuration\x20Notes:','univer-space-y-4','univer-flex\x20univer-size-8\x20univer-items-center\x20univer-justify-center\x20univer-rounded-lg\x20univer-bg-blue-500','defineProperty','14095881XguygD','mcpStatus.networkError','univer-space-y-1\x20univer-text-xs\x20univer-text-blue-700','text','apiKey','mcpConfig.authorizationDescription','mcp-config-dialog','_localStorageService','error','_initConfigSync','Configuration\x20Parameters:','pre','Authorization:','配置步骤:','mcpStatus.connecting','MCPConfigPanel','univer-text-yellow-500','constructor','mcpConfig.connectionStatus.disconnected','univer-space-y-2','span','showConfigPanel','配置\x20MCP\x20使用\x20AI\x20操作电子表格','Get\x20your\x20API\x20key\x20in\x20seconds','mcpStatus.failed','https://console.univer.ai','MCP\x20Disconnected','call','validateApiKey','带有\x20Bearer\x20前缀的\x20API\x20密钥。','MCP\x20Connection\x20Failed','MCP:\x20未授权','getConfig','BUTTON','off','prototype','symbol','univer-text-red-500','univer-text-gray-600\x20univer-bg-gray-50\x20univer-border-gray-200','mcpConfig.note2','univer-space-y-3','show','Saving...','mcpConfig.configParameters','重启您的\x20MCP\x20客户端以使配置生效','配置更改将立即生效','mcpConfig.connectionError.unauthorized','noopener\x20noreferrer','univer-flex-1\x20univer-overflow-auto\x20univer-px-6\x20univer-py-5','register','配置无效','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','univer-flex\x20univer-items-center\x20univer-gap-2\x20univer-text-sm\x20univer-font-medium\x20univer-text-gray-700','mcpStatus.sessionOccupied','COMMAND','MCP\x20Client\x20Configuration','7SuyMgp','subscribeConfigValue$','univer-mr-2\x20univer-flex\x20univer-text-xl','string','mcpConfig.connectionError.sessionOccupied','univer.plus','close','univer-shrink-0\x20univer-text-red-500','setItem','UNAUTHORIZED','_blank','mergeMenu','univer-size-2\x20univer-rounded-full','mcpConfig.apiApplyInfo.description','univer-space-y-1\x20univer-text-xs\x20univer-text-gray-600','function','_loading$','MCP\x20Connecting...','univer-m-0\x20univer-text-sm\x20univer-font-medium\x20univer-text-red-800','isValid','已连接','_uiPartsService','div','保存中...','配置参数:','object','packageName','@univerjs-pro/mcp-ui','_messageService','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','点击连接\x20MCP','univer-text-blue-600\x20univer-bg-blue-50\x20univer-border-blue-200','univer-flex\x20univer-size-4\x20univer-items-center\x20univer-justify-center\x20univer-rounded-full\x20univer-bg-blue-100\x20univer-text-xs\x20univer-font-medium\x20univer-text-blue-600','NETWORK_ERROR','univer-mb-2\x20univer-text-sm\x20univer-font-semibold\x20univer-text-gray-800','MCP\x20Configuration','bottom','您的\x20API\x20密钥将在此浏览器中本地存储','\x20-\x20','univer-absolute\x20univer-right-3\x20univer-top-3\x20univer-flex\x20univer-size-6\x20univer-items-center\x20univer-justify-center\x20univer-text-gray-500\x20univer-transition-all\x20univer-duration-200\x20hover:univer-scale-110\x20hover:univer-text-gray-700','5050362jExPUm','connectionStatus$','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','34870050WZbqGa','API\x20密钥','将以下配置添加到您的\x20MCP\x20客户端设置中:','mcpConfig.note1','Enter\x20your\x20API\x20key','点击配置\x20MCP','_initStatusComponent','univer-text-xs\x20univer-text-gray-500','MCP\x20已连接','mcpConfig.configStep2','registerComponent','errorMessage','_componentManager','mcpConfig.validation.apiKeyRequired','_handleConfigure','_menuManagerService','mcpConfig.apiApplyInfo.title','HEADER_MENU','CONNECTED','mcpConfig.apiApplyInfo.univerAiLabel','univer-border-b\x20univer-border-gray-100\x20univer-px-6\x20univer-py-4','mcpServerUrl','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','会话\x20ID\x20已被占用,请稍后再试','sessionId$','univer-mb-3\x20univer-text-xs\x20univer-text-gray-600','DISCONNECTED','stringify','mcpConfig.validation.invalidConfig','http','_initializeCommands','权限验证失败,请检查您的\x20API\x20密钥','Enable\x20Authentication','MCP\x20客户端配置','disposeWithMe','API\x20密钥长度至少需要\x2010\x20位','FAILED','_localeService','univer-size-4','warn','Failed\x20to\x20save\x20configuration','_dialogService','mcpConfig.configStep1','getOwnPropertyDescriptor','univer-bg-green-500','univer-bg-gray-500','MCP:\x20超出最大重试次数','_apiKey$','univer-border-b\x20univer-border-gray-100\x20univer-px-6\x20univer-py-3','What\x20is\x20API\x20Key?','univer-bg-red-500','Univer\x20AI\x20Console','_injector','_configService','CONNECTING','mcpConfig.configStep3','Copy\x20the\x20JSON\x20configuration\x20below','subscribe','univer-text-green-600\x20univer-bg-green-50\x20univer-border-green-200','40IaHngC','您的\x20API\x20密钥安全存储在本地存储中','https://mcp.univer.ai/mcp/?univer_session_id=','version','mcpStatus.unknown','MCP:\x20Network\x20Error','__setCustomHeaders','univer.ai','启用身份验证','_config$','MAX_RETRIES_EXCEEDED','setConfig','univer-text-xs\x20univer-font-medium\x20univer-text-gray-600','mcpConfig.apiKey','_connectionController','mcpStatus.unauthorized','RETRYING','mcpConfig.title','几秒钟内获取您的\x20API\x20密钥','Max\x20Retries','MCP\x20Connected','_validateConfig','配置保存成功','mcpConfig.validation.apiKeyTooShort','mcpConfig.connectionInfo','将配置添加到您的\x20MCP\x20客户端设置文件中','toPrimitive','启用身份验证以获得安全连接','<SESSION_ID>','最大重试次数','连接失败','get','univer-flex\x20univer-items-start\x20univer-gap-3\x20univer-pr-8','mcpStatus.clickToConfigure','univer-flex\x20univer-items-center\x20univer-gap-2','连接中...','univer-flex\x20univer-items-start\x20univer-gap-3','API\x20密钥无效,请检查密钥是否正确','MCP\x20连接中...','mcpConfig.connectionError.maxRetriesExceeded','univer-text-sm\x20univer-font-medium','univer-flex\x20univer-items-start\x20univer-gap-2','MCP\x20Unknown\x20Status','mcpStatus.connected','NONE','1267348pGxsMK','decorate','未连接','API\x20密钥用于连接\x20Univer\x20MCP\x20服务器,让您可以使用\x20AI\x20来操作电子表格。请前往控制台获取您的专属密钥。','MCP:\x20网络错误','MCP_UI_PLUGIN','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','mcpConfig.connectionStatus.connected','会话ID','API\x20key\x20is\x20required','univer-text-xs\x20univer-font-medium\x20univer-text-gray-700','超出最大重试次数,请稍后再试','mcpConfig.save','什么是\x20API\x20密钥?','9mJYYzG','保存配置','mcpConfig.configError','_mcpCoreConfig$','mcpConfig.configSaved','唯一会话标识符。如果您打开了多个\x20Univer\x20实例,每个实例必须使用不同的\x20session_id\x20以避免连接冲突。','univer-text-blue-600','_initAutoConnect','_loadStoredApiKey','MCP:\x20Unauthorized','https://console.univer.plus','univer-space-y-5','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','next','univer-flex\x20univer-gap-3','forEach','removeItem','mcpConfig.configInstructions','value','connectionError$','onStarting','univer-mt-2\x20univer-text-xs\x20univer-text-gray-500','2609240MPMFEx','mcpConfig.connectionStatus.failed','Error','Retrying...','trim','univer-text-sm\x20univer-text-gray-500','univer-flex\x20univer-size-10\x20univer-shrink-0\x20univer-items-center\x20univer-justify-center\x20univer-rounded-full\x20univer-bg-blue-100','registerCommand','[MCPConfigUI]\x20Could\x20not\x20validate\x20API\x20key\x20with\x20core\x20plugin:','includes','length','配置保存失败','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','univer-mt-1.5\x20univer-size-2\x20univer-shrink-0\x20univer-rounded-full\x20univer-bg-blue-500','univer-shrink-0\x20univer-text-blue-500','网络连接错误,请检查您的网络连接','Configuration\x20Steps:','univer-text-xs\x20univer-text-gray-600'];_0x26f5=function(){return _0x7b1749;};return _0x26f5();}function _defineProperty(_0x48d28e,_0x123c6b,_0x5e66aa){const _0x3bd24b=_0x19ff;return(_0x123c6b=toPropertyKey(_0x123c6b))in _0x48d28e?Object[_0x3bd24b(0x11a)](_0x48d28e,_0x123c6b,{'value':_0x5e66aa,'enumerable':!0x0,'configurable':!0x0,'writable':!0x0}):_0x48d28e[_0x123c6b]=_0x5e66aa,_0x48d28e;}function __decorateParam(_0x6fdfdc,_0x411b53){return function(_0x40d1e8,_0x537c09){_0x411b53(_0x40d1e8,_0x537c09,_0x6fdfdc);};}function __decorate(_0x2eff10,_0x43107f,_0x46611f,_0x521308){const _0xa8d162=_0x19ff;var _0x2f75bc=arguments[_0xa8d162(0xee)],_0x54fdb8=_0x2f75bc<0x3?_0x43107f:_0x521308===null?_0x521308=Object[_0xa8d162(0x83)](_0x43107f,_0x46611f):_0x521308,_0x1e7a86;if(typeof Reflect===_0xa8d162(0x16c)&&typeof Reflect['decorate']===_0xa8d162(0x162))_0x54fdb8=Reflect[_0xa8d162(0xc1)](_0x2eff10,_0x43107f,_0x46611f,_0x521308);else{for(var _0x2300a8=_0x2eff10[_0xa8d162(0xee)]-0x1;_0x2300a8>=0x0;_0x2300a8--)if(_0x1e7a86=_0x2eff10[_0x2300a8])_0x54fdb8=(_0x2f75bc<0x3?_0x1e7a86(_0x54fdb8):_0x2f75bc>0x3?_0x1e7a86(_0x43107f,_0x46611f,_0x54fdb8):_0x1e7a86(_0x43107f,_0x46611f))||_0x54fdb8;}return _0x2f75bc>0x3&&_0x54fdb8&&Object[_0xa8d162(0x11a)](_0x43107f,_0x46611f,_0x54fdb8),_0x54fdb8;}const MCP_API_KEY_STORAGE_KEY='mcp.apiKey',MCP_CONFIG_DIALOG_ID=_0xe5c988(0x121);let MCPConfigUIController=class MCPConfigUIController extends Disposable{constructor(_0x297f06,_0x3b4a79,_0x1794ba,_0x1e45a6,_0xb271c6,_0x34c72d,_0x18f854,_0x45fe9c,_0x1194d7,_0xb62849){const _0x55871f=_0xe5c988;super(),this[_0x55871f(0x8c)]=_0x297f06,this[_0x55871f(0x168)]=_0x3b4a79,this[_0x55871f(0x8d)]=_0x1794ba,this[_0x55871f(0x122)]=_0x1e45a6,this[_0x55871f(0x81)]=_0xb271c6,this['_messageService']=_0x34c72d,this[_0x55871f(0x18b)]=_0x18f854,this['_localeService']=_0x45fe9c,this[_0x55871f(0x110)]=_0x1194d7,this[_0x55871f(0xfa)]=_0xb62849,_defineProperty(this,_0x55871f(0x163),new BehaviorSubject(![])),_defineProperty(this,_0x55871f(0xd1),new BehaviorSubject({})),_defineProperty(this,_0x55871f(0x9c),new BehaviorSubject({})),_defineProperty(this,_0x55871f(0x87),new BehaviorSubject('')),_defineProperty(this,_0x55871f(0x10d),async _0x17446b=>{const _0x7a79e4=_0x55871f;this[_0x7a79e4(0x163)][_0x7a79e4(0xdb)](!![]);try{var _0xcbbdf,_0x319c1a;const _0x2b60f6=await this[_0x7a79e4(0xa8)](_0x17446b);if(!_0x2b60f6[_0x7a79e4(0x166)]){this[_0x7a79e4(0x16f)][_0x7a79e4(0x144)]({'type':MessageType[_0x7a79e4(0xe6)],'content':_0x2b60f6[_0x7a79e4(0x18a)]||this[_0x7a79e4(0x7d)]['t'](_0x7a79e4(0x74))});return;}if(_0x17446b[_0x7a79e4(0x11f)])await this['_localStorageService'][_0x7a79e4(0x15b)](MCP_API_KEY_STORAGE_KEY,_0x17446b[_0x7a79e4(0x11f)][_0x7a79e4(0xe8)]());else await this[_0x7a79e4(0x122)][_0x7a79e4(0xde)](MCP_API_KEY_STORAGE_KEY);this[_0x7a79e4(0x87)][_0x7a79e4(0xdb)](((_0xcbbdf=_0x17446b[_0x7a79e4(0x11f)])===null||_0xcbbdf===void 0x0?void 0x0:_0xcbbdf[_0x7a79e4(0xe8)]())||''),this[_0x7a79e4(0xfa)][_0x7a79e4(0x99)]({'Authorization':_0x7a79e4(0x10b)+((_0x319c1a=_0x17446b[_0x7a79e4(0x11f)])===null||_0x319c1a===void 0x0?void 0x0:_0x319c1a['trim']())}),this[_0x7a79e4(0x16f)][_0x7a79e4(0x144)]({'type':MessageType['Success'],'content':this[_0x7a79e4(0x7d)]['t'](_0x7a79e4(0xd2))}),setTimeout(()=>{const _0x267e62=_0x7a79e4;this['_dialogService'][_0x267e62(0x159)](MCP_CONFIG_DIALOG_ID);},0x320);}catch(_0x1e0b9a){this[_0x7a79e4(0x110)][_0x7a79e4(0x123)]('[MCPConfigUI]\x20Failed\x20to\x20save\x20configuration:',_0x1e0b9a),this[_0x7a79e4(0x16f)][_0x7a79e4(0x144)]({'type':MessageType[_0x7a79e4(0xe6)],'content':this[_0x7a79e4(0x7d)]['t'](_0x7a79e4(0xd0))});}finally{this['_loading$'][_0x7a79e4(0xdb)](![]);}}),this[_0x55871f(0x124)](),this[_0x55871f(0xd6)](),this['_registerComponent']();}[_0xe5c988(0x130)](){const _0x4ebaf4=_0xe5c988,_0x5a6c43=this[_0x4ebaf4(0x8d)][_0x4ebaf4(0x13b)](MCP_UI_PLUGIN_CONFIG_KEY);if(_0x5a6c43===null||_0x5a6c43===void 0x0?void 0x0:_0x5a6c43[_0x4ebaf4(0x100)])this['_dialogService']['open']({'id':MCP_CONFIG_DIALOG_ID,'title':{'title':this[_0x4ebaf4(0x7d)]['t'](_0x4ebaf4(0xa4))},'children':{'label':_0x4ebaf4(0x12a)},'width':0x244,'draggable':!![],'destroyOnClose':!![],'onClose':()=>{const _0x5382d1=_0x4ebaf4;this['_dialogService'][_0x5382d1(0x159)](MCP_CONFIG_DIALOG_ID);}});}['getCurrentConfig'](){const _0x4027b0=_0xe5c988;return this[_0x4027b0(0xd1)][_0x4027b0(0xe0)];}[_0xe5c988(0x105)](){const _0x535b60=_0xe5c988;this['disposeWithMe'](this[_0x535b60(0x18b)][_0x535b60(0x14c)](_0x535b60(0x12a),this[_0x535b60(0xf6)]()));}['_createConfigPanelComponent'](){const _0x80f94=_0xe5c988;return connectInjector(()=>{const _0x309aec=_0x19ff;var _0x3e8798,_0x4cd4fc,_0x5467e1;return jsx(MCPConfigPanel,{'config':this[_0x309aec(0x9c)][_0x309aec(0xe0)],'mcpCoreConfig':this[_0x309aec(0xd1)][_0x309aec(0xe0)],'currentApiKey$':this[_0x309aec(0x87)],'onSave':this[_0x309aec(0x10d)],'loading':this[_0x309aec(0x163)][_0x309aec(0xe0)],'connectionStatus$':(_0x3e8798=this[_0x309aec(0xfa)])===null||_0x3e8798===void 0x0?void 0x0:_0x3e8798[_0x309aec(0x17d)],'connectionError$':(_0x4cd4fc=this[_0x309aec(0xfa)])===null||_0x4cd4fc===void 0x0?void 0x0:_0x4cd4fc[_0x309aec(0xe1)],'currentSessionId$':(_0x5467e1=this[_0x309aec(0xfa)])===null||_0x5467e1===void 0x0?void 0x0:_0x5467e1[_0x309aec(0x70)]});},this[_0x80f94(0x8c)]);}[_0xe5c988(0x124)](){const _0x22a297=_0xe5c988;this[_0x22a297(0x7a)](this[_0x22a297(0x8d)]['subscribeConfigValue$'](MCP_PLUGIN_CONFIG_KEY)[_0x22a297(0x91)](_0x1f7108=>{const _0x152e32=_0x22a297;this['_mcpCoreConfig$'][_0x152e32(0xdb)](_0x1f7108||{});}));const _0x46760c=this[_0x22a297(0x8d)][_0x22a297(0x13b)](MCP_PLUGIN_CONFIG_KEY);this['_mcpCoreConfig$'][_0x22a297(0xdb)](_0x46760c||{}),this['disposeWithMe'](this[_0x22a297(0x8d)][_0x22a297(0x154)](MCP_UI_PLUGIN_CONFIG_KEY)[_0x22a297(0x91)](_0xf09522=>{const _0x55e1be=_0x22a297;this[_0x55e1be(0x9c)][_0x55e1be(0xdb)](_0xf09522||{});}));const _0x487f3c=this[_0x22a297(0x8d)]['getConfig'](MCP_UI_PLUGIN_CONFIG_KEY);this[_0x22a297(0x9c)]['next'](_0x487f3c||{});}async[_0xe5c988(0xd6)](){const _0x57d630=_0xe5c988,_0x3b778b=this['_configService'][_0x57d630(0x13b)](MCP_UI_PLUGIN_CONFIG_KEY);if(!(_0x3b778b===null||_0x3b778b===void 0x0?void 0x0:_0x3b778b['showDeveloperTools']))return;const _0x16a40a=await this[_0x57d630(0x122)][_0x57d630(0x10a)](MCP_API_KEY_STORAGE_KEY);_0x16a40a&&(this['_mcpConnectionController'][_0x57d630(0x99)]({'Authorization':_0x57d630(0x10b)+_0x16a40a}),this[_0x57d630(0x87)][_0x57d630(0xdb)](_0x16a40a));}async[_0xe5c988(0xa8)](_0x535e10){const _0x36ceea=_0xe5c988;if(!_0x535e10[_0x36ceea(0x11f)]||_0x535e10[_0x36ceea(0x11f)]['trim']()[_0x36ceea(0xee)]===0x0)return{'isValid':![],'errorMessage':this[_0x36ceea(0x7d)]['t'](_0x36ceea(0x18c))};if(_0x535e10[_0x36ceea(0x11f)][_0x36ceea(0xe8)]()[_0x36ceea(0xee)]<0xa)return{'isValid':![],'errorMessage':this['_localeService']['t'](_0x36ceea(0xaa))};try{const _0x41bad0=await this[_0x36ceea(0x8c)][_0x36ceea(0xb2)](MCPConnectionController)[_0x36ceea(0x137)](_0x535e10['apiKey']['trim']());if(!_0x41bad0[_0x36ceea(0x166)])return{'isValid':![],'errorMessage':_0x41bad0[_0x36ceea(0x123)]||this[_0x36ceea(0x7d)]['t']('mcpConfig.validation.invalidApiKey')};return{'isValid':!![]};}catch(_0x37808d){return console[_0x36ceea(0x7f)](_0x36ceea(0xec),_0x37808d),{'isValid':!![]};}}};MCPConfigUIController=__decorate([__decorateParam(0x0,Inject(Injector)),__decorateParam(0x1,IUIPartsService),__decorateParam(0x2,IConfigService),__decorateParam(0x3,ILocalStorageService),__decorateParam(0x4,IDialogService),__decorateParam(0x5,IMessageService),__decorateParam(0x6,Inject(ComponentManager)),__decorateParam(0x7,Inject(LocaleService)),__decorateParam(0x8,ILogService),__decorateParam(0x9,Inject(MCPConnectionController))],MCPConfigUIController);const OpenMCPConfigPanelCommand={'id':'mcp-ui.command.openConfigPanel','type':CommandType[_0xe5c988(0x151)],'handler':async(_0x253f89,_0x1865f7)=>{const _0x2da317=_0xe5c988;return _0x253f89[_0x2da317(0xb2)](MCPConfigUIController)['showConfigPanel'](),!![];}};function mapStatusToI18NKey(_0x4f8666,_0xd86137){const _0x33fc2a=_0xe5c988;switch(_0x4f8666){case MCPConnectionStatus[_0x33fc2a(0x72)]:return'mcpStatus.disconnected';case MCPConnectionStatus['CONNECTING']:return _0x33fc2a(0x129);case MCPConnectionStatus[_0x33fc2a(0x6a)]:return _0x33fc2a(0xbe);case MCPConnectionStatus[_0x33fc2a(0x7c)]:switch(_0xd86137){case MCPConnectionError['UNAUTHORIZED']:return _0x33fc2a(0xa2);case MCPConnectionError[_0x33fc2a(0x115)]:return _0x33fc2a(0x150);case MCPConnectionError['NETWORK_ERROR']:return _0x33fc2a(0x11c);case MCPConnectionError['MAX_RETRIES_EXCEEDED']:return'mcpStatus.maxRetriesExceeded';default:return _0x33fc2a(0x133);}case MCPConnectionStatus[_0x33fc2a(0xa3)]:return'mcpStatus.retrying';default:return _0x33fc2a(0x97);}}function getTooltipText(_0x44a010,_0x2a37a7,_0x1fabb7,_0x5c61c5=!![]){const _0x1cc743=_0xe5c988,_0xcf1cb1=mapStatusToI18NKey(_0x44a010,_0x2a37a7),_0x381809=_0x1fabb7['t'](_0xcf1cb1);if(!_0x5c61c5)return _0x381809;if(_0x44a010===MCPConnectionStatus[_0x1cc743(0x72)]&&_0x2a37a7===MCPConnectionError[_0x1cc743(0x15c)])return _0x381809+_0x1cc743(0x17a)+_0x1fabb7['t'](_0x1cc743(0xb4));else{if(_0x44a010===MCPConnectionStatus[_0x1cc743(0x6a)])return''+_0x381809;else{if(_0x44a010===MCPConnectionStatus[_0x1cc743(0x72)]||_0x44a010===MCPConnectionStatus[_0x1cc743(0x7c)])return _0x381809+'\x20-\x20'+_0x1fabb7['t']('mcpStatus.clickToConnect');}}return _0x381809;}function getStatusColor(_0x1cbc5f){const _0x37baca=_0xe5c988;switch(_0x1cbc5f){case MCPConnectionStatus[_0x37baca(0x6a)]:return'univer-text-green-500';case MCPConnectionStatus[_0x37baca(0x8e)]:case MCPConnectionStatus[_0x37baca(0xa3)]:return _0x37baca(0x12b);case MCPConnectionStatus['FAILED']:case MCPConnectionStatus[_0x37baca(0x72)]:return _0x37baca(0x140);default:return'univer-text-gray-500';}}function MCPStatusDisplay(_0x33c667){const _0x4cb763=_0xe5c988,{status$:_0xbf3a2c,error$:_0x51b79f,onConfigure:_0x529bc6,showClickable:showClickable=!![]}=_0x33c667,_0x425598=useObservable(_0xbf3a2c,MCPConnectionStatus[_0x4cb763(0x72)]),_0x48c0fb=useObservable(_0x51b79f,MCPConnectionError[_0x4cb763(0xbf)]),_0x2194d3=useDependency(LocaleService),_0x230fa1=_0x425598===MCPConnectionStatus[_0x4cb763(0x6a)];_0x425598===MCPConnectionStatus[_0x4cb763(0x8e)]||MCPConnectionStatus[_0x4cb763(0xa3)];const _0x5d859b=_0x2194d3['t'](mapStatusToI18NKey(_0x425598,_0x48c0fb)),_0x21366a=getTooltipText(_0x425598,_0x48c0fb,_0x2194d3,showClickable),_0x3ef07f=getStatusColor(_0x425598),_0x356600=_0x230fa1?jsx(OnLineIcon,{}):jsx(OffLineIcon,{}),_0x2b50f3=useCallback(()=>{if(showClickable&&_0x529bc6)_0x529bc6();},[showClickable,_0x529bc6]);function _0x66badd(){const _0x21b6c0=_0x4cb763;return jsxs(_0x21b6c0(0x169),{'className':clsx('univer-flex\x20univer-items-center',showClickable&&_0x529bc6&&_0x21b6c0(0x102)),'role':_0x21b6c0(0x114),'onClick':showClickable&&_0x529bc6?_0x2b50f3:void 0x0,'children':[jsx(_0x21b6c0(0x169),{'className':clsx(_0x21b6c0(0x155),_0x3ef07f),'children':_0x356600}),jsx('div',{'className':'univer-text-sm\x20univer-leading-8\x20univer-text-gray-600\x20dark:!univer-text-gray-200','children':_0x5d859b})]});}return jsx(Tooltip,{'title':_0x21366a,'placement':_0x4cb763(0x178),'children':_0x66badd()});}function _0x19ff(_0x483bd9,_0x5ea467){_0x483bd9=_0x483bd9-0x66;const _0x26f5c9=_0x26f5();let _0x19ff87=_0x26f5c9[_0x483bd9];return _0x19ff87;}let MCPConnectionUIController=class MCPConnectionUIController extends Disposable{constructor(_0xfcd9fa,_0x54b19f,_0x497d5e,_0x44b577){const _0x5d35b6=_0xe5c988;super(),this[_0x5d35b6(0x8c)]=_0xfcd9fa,this[_0x5d35b6(0xa1)]=_0x54b19f,this[_0x5d35b6(0x168)]=_0x497d5e,this['_configService']=_0x44b577,this[_0x5d35b6(0xd5)](),this[_0x5d35b6(0x185)]();}[_0xe5c988(0xd5)](){const _0x301f1a=_0xe5c988,_0x817c21=this['_configService']['getConfig'](MCP_UI_PLUGIN_CONFIG_KEY);if(_0x817c21===null||_0x817c21===void 0x0?void 0x0:_0x817c21['showDeveloperTools'])this[_0x301f1a(0xa1)]['enableAutoConnect']=![];}[_0xe5c988(0x185)](){const _0x18fddc=_0xe5c988,_0xf95b91=this[_0x18fddc(0x8d)][_0x18fddc(0x13b)](MCP_UI_PLUGIN_CONFIG_KEY);if((_0xf95b91===null||_0xf95b91===void 0x0?void 0x0:_0xf95b91[_0x18fddc(0xfe)])!==![])this[_0x18fddc(0x7a)](this[_0x18fddc(0x168)][_0x18fddc(0x189)](BuiltInUIPart[_0x18fddc(0x69)],()=>{const _0x2af89e=_0x18fddc;var _0x3fec80;return connectInjector(passProps({'status$':this[_0x2af89e(0xa1)][_0x2af89e(0x17d)],'error$':this['_connectionController']['connectionError$'],'onConfigure':()=>this[_0x2af89e(0x66)](),'showClickable':(_0x3fec80=_0xf95b91===null||_0xf95b91===void 0x0?void 0x0:_0xf95b91['showDeveloperTools'])!==null&&_0x3fec80!==void 0x0?_0x3fec80:![]}),this[_0x2af89e(0x8c)]);}));}['_handleConfigure'](){const _0x28c4e9=_0xe5c988;this[_0x28c4e9(0x8c)]['get'](MCPConfigUIController)[_0x28c4e9(0x130)]();}};MCPConnectionUIController=__decorate([__decorateParam(0x0,Inject(Injector)),__decorateParam(0x1,Inject(MCPConnectionController)),__decorateParam(0x2,IUIPartsService),__decorateParam(0x3,IConfigService)],MCPConnectionUIController);function passProps(_0x378e0b){const {status$:_0x1fed89,error$:_0xbcaf3b,onConfigure:_0x1d461a,showClickable:_0x39c03c}=_0x378e0b;return function _0xf60bce(){return jsx(MCPStatusDisplay,{'status$':_0x1fed89,'error$':_0xbcaf3b,'onConfigure':_0x1d461a,'showClickable':_0x39c03c});};}function MCPConfigMenuItemFactory(_0x2f3e11){const _0x2f5aa0=_0xe5c988;return{'id':OpenMCPConfigPanelCommand['id'],'type':MenuItemType[_0x2f5aa0(0x13c)],'icon':_0x2f5aa0(0xfc),'title':_0x2f5aa0(0xa4),'tooltip':_0x2f5aa0(0xa4)};}const menuSchema={[RibbonStartGroup['OTHERS']]:{[OpenMCPConfigPanelCommand['id']]:{'order':0xa,'menuItemFactory':MCPConfigMenuItemFactory}}};let MCPUIMenuController=class MCPUIMenuController extends Disposable{constructor(_0x42e9e7,_0x47fa1e){const _0x4b6a47=_0xe5c988;super(),this[_0x4b6a47(0x10c)]=_0x42e9e7,this[_0x4b6a47(0x67)]=_0x47fa1e,this[_0x4b6a47(0x76)](),this[_0x4b6a47(0x112)]();}[_0xe5c988(0x76)](){const _0x40ba01=_0xe5c988;[OpenMCPConfigPanelCommand][_0x40ba01(0xdd)](_0x1523ce=>{const _0x167e7b=_0x40ba01;this[_0x167e7b(0x7a)](this[_0x167e7b(0x10c)][_0x167e7b(0xeb)](_0x1523ce));});}[_0xe5c988(0x112)](){const _0x4bd94b=_0xe5c988;this[_0x4bd94b(0x67)][_0x4bd94b(0x15e)](menuSchema);}};MCPUIMenuController=__decorate([__decorateParam(0x0,ICommandService),__decorateParam(0x1,IMenuManagerService)],MCPUIMenuController);const locale={'mcpStatus':{'disconnected':_0xe5c988(0x135),'connecting':_0xe5c988(0x164),'connected':_0xe5c988(0xa7),'failed':_0xe5c988(0x139),'retrying':'MCP\x20Retrying...','unknown':_0xe5c988(0xbd),'unauthorized':_0xe5c988(0xd7),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':_0xe5c988(0x98),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':'Click\x20to\x20connect\x20MCP','clickToConfigure':_0xe5c988(0x106)},'mcpConfig':{'title':_0xe5c988(0x177),'description':_0xe5c988(0xf0),'apiKey':'API\x20Key','apiKeyPlaceholder':_0xe5c988(0x183),'apiKeyHint':_0xe5c988(0x101),'enableAuth':_0xe5c988(0x78),'enableAuthHint':_0xe5c988(0xf7),'connectionInfo':_0xe5c988(0x152),'mcpClientConfig':_0xe5c988(0x152),'configInstructions':_0xe5c988(0x17e),'configStepTitle':_0xe5c988(0xf4),'configStep1':_0xe5c988(0x90),'configStep2':_0xe5c988(0xc6),'configStep3':_0xe5c988(0x170),'sessionId':'Session\x20ID','sessionIdDescription':'Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','authorizationDescription':'API\x20key\x20with\x20Bearer\x20prefix.','configParameters':_0xe5c988(0x125),'maxRetries':_0xe5c988(0xa6),'save':_0xe5c988(0xf9),'saving':_0xe5c988(0x145),'note1':_0xe5c988(0x6e),'note2':'Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','configSaved':'Configuration\x20saved\x20successfully','configError':_0xe5c988(0x80),'apiApplyInfo':{'title':_0xe5c988(0x89),'description':'API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','univerAiLabel':_0xe5c988(0x8b),'getStarted':_0xe5c988(0x132)},'validation':{'apiKeyRequired':_0xe5c988(0xc9),'apiKeyTooShort':'API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','invalidConfig':_0xe5c988(0x111),'invalidApiKey':_0xe5c988(0x171)},'connectionStatus':{'disconnected':'Disconnected','connecting':'Connecting...','connected':'Connected','failed':_0xe5c988(0xff),'retrying':_0xe5c988(0xe7)},'connectionError':{'unauthorized':_0xe5c988(0x14e),'sessionOccupied':'Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','networkError':_0xe5c988(0xda),'maxRetriesExceeded':'Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later'}}},locale$1={'mcpStatus':{'disconnected':'MCP\x20已断开','connecting':_0xe5c988(0xb9),'connected':_0xe5c988(0x187),'failed':'MCP\x20连接失败','retrying':'MCP\x20重连中...','unknown':'MCP\x20状态未知','unauthorized':_0xe5c988(0x13a),'sessionOccupied':'MCP:\x20会话\x20ID\x20已被占用','networkError':_0xe5c988(0xc4),'maxRetriesExceeded':_0xe5c988(0x86),'clickToConnect':_0xe5c988(0x172),'clickToConfigure':_0xe5c988(0x184)},'mcpConfig':{'title':'MCP\x20配置','description':_0xe5c988(0x131),'apiKey':_0xe5c988(0x180),'apiKeyPlaceholder':'请输入您的\x20API\x20密钥','apiKeyHint':_0xe5c988(0x179),'enableAuth':_0xe5c988(0x9b),'enableAuthHint':_0xe5c988(0xae),'connectionInfo':_0xe5c988(0x79),'mcpClientConfig':_0xe5c988(0x79),'configInstructions':_0xe5c988(0x181),'configStepTitle':_0xe5c988(0x128),'configStep1':'复制以下\x20JSON\x20配置','configStep2':_0xe5c988(0xac),'configStep3':_0xe5c988(0x147),'sessionId':_0xe5c988(0xc8),'sessionIdDescription':_0xe5c988(0xd3),'authorizationDescription':_0xe5c988(0x138),'configParameters':_0xe5c988(0x16b),'maxRetries':_0xe5c988(0xb0),'save':_0xe5c988(0xcf),'saving':_0xe5c988(0x16a),'note1':_0xe5c988(0x148),'note2':_0xe5c988(0x94),'configSaved':_0xe5c988(0xa9),'configError':_0xe5c988(0xef),'apiApplyInfo':{'title':_0xe5c988(0xcd),'description':_0xe5c988(0xc3),'univerAiLabel':'Univer\x20AI\x20控制台','getStarted':_0xe5c988(0xa5)},'validation':{'apiKeyRequired':_0xe5c988(0x103),'apiKeyTooShort':_0xe5c988(0x7b),'invalidConfig':_0xe5c988(0x14d),'invalidApiKey':_0xe5c988(0xb8)},'connectionStatus':{'disconnected':_0xe5c988(0xc2),'connecting':_0xe5c988(0xb6),'connected':_0xe5c988(0x167),'failed':_0xe5c988(0xb1),'retrying':'重连中...'},'connectionError':{'unauthorized':_0xe5c988(0x77),'sessionOccupied':_0xe5c988(0x6f),'networkError':_0xe5c988(0xf3),'maxRetriesExceeded':_0xe5c988(0xcb)}}};var name=_0xe5c988(0x16e),version='0.22.1';let UniverMCPUIPlugin=class UniverMCPUIPlugin extends Plugin{constructor(_0x26411d=defaultPluginConfig,_0x4e920b,_0x96a272,_0x4488ce,_0x5a766f,_0x40878f){const _0x36f675=_0xe5c988;super(),this[_0x36f675(0x113)]=_0x26411d,this['_injector']=_0x4e920b,this[_0x36f675(0x8d)]=_0x96a272,this[_0x36f675(0x168)]=_0x4488ce,this[_0x36f675(0x122)]=_0x5a766f,this[_0x36f675(0x7d)]=_0x40878f;const {..._0x3c09ee}=merge({},defaultPluginConfig,this[_0x36f675(0x113)]);this['_configService'][_0x36f675(0x9e)](MCP_UI_PLUGIN_CONFIG_KEY,_0x3c09ee);}async[_0xe5c988(0xe2)](){const _0x4ef54d=_0xe5c988,_0x4fb726=[[MCPConnectionUIController],[MCPConfigUIController],[MCPUIMenuController]];if(!this[_0x4ef54d(0x8c)]['has'](ISocketService))_0x4fb726[_0x4ef54d(0x108)]([ISocketService,{'useClass':WebSocketService}]);_0x4fb726[_0x4ef54d(0xdd)](_0x47c978=>this[_0x4ef54d(0x8c)]['add'](_0x47c978)),this[_0x4ef54d(0x8c)]['get'](MCPConnectionUIController),this['_injector']['get'](MCPConfigUIController),this['_injector']['get'](MCPUIMenuController);}};_defineProperty(UniverMCPUIPlugin,_0xe5c988(0x116),_0xe5c988(0xc5)),_defineProperty(UniverMCPUIPlugin,_0xe5c988(0x16d),name),_defineProperty(UniverMCPUIPlugin,_0xe5c988(0x96),version),UniverMCPUIPlugin=__decorate([DependentOn(UniverMCPPlugin),__decorateParam(0x1,Inject(Injector)),__decorateParam(0x2,IConfigService),__decorateParam(0x3,IUIPartsService),__decorateParam(0x4,ILocalStorageService),__decorateParam(0x5,Inject(LocaleService))],UniverMCPUIPlugin);export{MCPConfigPanel,MCPConfigUIController,MCPConnectionUIController,MCPStatusDisplay,MCPUIMenuController,OpenMCPConfigPanelCommand,UniverMCPUIPlugin,locale as enUS,locale$1 as zhCN};
@@ -1 +1 @@
1
- function _0x45e0(){const _0x3ac997=['Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Saving...','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','MCP:\x20Unauthorized','Disconnected','API\x20key\x20is\x20required','2100915PmgIHN','21847078ovMKlj','MCP:\x20Network\x20Error','135NaUsBc','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','MCP\x20Retrying...','MCP:\x20Max\x20Retries\x20Exceeded','1775912tceiQA','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','Configuration\x20Parameters:','MCP\x20Configuration','MCP:\x20Session\x20ID\x20Occupied','API\x20Key','MCP\x20Connection\x20Failed','Session\x20ID','Connection\x20Failed','3688950WueJwT','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','API\x20key\x20with\x20Bearer\x20prefix.','Copy\x20the\x20JSON\x20configuration\x20below','Save\x20Configuration','Max\x20Retries','9orkkIr','Univer\x20AI\x20Console','Configuration\x20saved\x20successfully','2046vDaBPr','MCP\x20Client\x20Configuration','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Invalid\x20configuration','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','17857SKXfZe','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','48wlmgHj','Connecting...','Failed\x20to\x20save\x20configuration','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','2771GtaopB','Click\x20to\x20configure\x20MCP','11364BCULtk','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Connected','Enable\x20Authentication','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Get\x20your\x20API\x20key\x20in\x20seconds','MCP\x20Disconnected'];_0x45e0=function(){return _0x3ac997;};return _0x45e0();}const _0x34a051=_0x32ed;(function(_0x5c84a6,_0x1fa110){const _0x3ed466=_0x32ed,_0x34d74c=_0x5c84a6();while(!![]){try{const _0x1ad07f=parseInt(_0x3ed466(0x14c))/0x1*(parseInt(_0x3ed466(0x146))/0x2)+parseInt(_0x3ed466(0x129))/0x3*(-parseInt(_0x3ed466(0x14e))/0x4)+-parseInt(_0x3ed466(0x126))/0x5+-parseInt(_0x3ed466(0x13f))/0x6*(parseInt(_0x3ed466(0x144))/0x7)+parseInt(_0x3ed466(0x12d))/0x8*(parseInt(_0x3ed466(0x13c))/0x9)+-parseInt(_0x3ed466(0x136))/0xa+parseInt(_0x3ed466(0x127))/0xb;if(_0x1ad07f===_0x1fa110)break;else _0x34d74c['push'](_0x34d74c['shift']());}catch(_0x2efc82){_0x34d74c['push'](_0x34d74c['shift']());}}}(_0x45e0,0x77161));const locale$1={'mcpStatus':{'disconnected':_0x34a051(0x155),'connecting':'MCP\x20Connecting...','connected':'MCP\x20Connected','failed':_0x34a051(0x133),'retrying':_0x34a051(0x12b),'unknown':'MCP\x20Unknown\x20Status','unauthorized':_0x34a051(0x123),'sessionOccupied':_0x34a051(0x131),'networkError':_0x34a051(0x128),'maxRetriesExceeded':_0x34a051(0x12c),'clickToConnect':'Click\x20to\x20connect\x20MCP','clickToConfigure':_0x34a051(0x14d)},'mcpConfig':{'title':_0x34a051(0x130),'description':_0x34a051(0x149),'apiKey':_0x34a051(0x132),'apiKeyPlaceholder':'Enter\x20your\x20API\x20key','apiKeyHint':_0x34a051(0x14a),'enableAuth':_0x34a051(0x152),'enableAuthHint':'Enable\x20authentication\x20for\x20secure\x20connections','connectionInfo':_0x34a051(0x140),'mcpClientConfig':_0x34a051(0x140),'configInstructions':_0x34a051(0x153),'configStepTitle':'Configuration\x20Steps:','configStep1':_0x34a051(0x139),'configStep2':_0x34a051(0x137),'configStep3':_0x34a051(0x120),'sessionId':_0x34a051(0x134),'sessionIdDescription':_0x34a051(0x12a),'authorizationDescription':_0x34a051(0x138),'configParameters':_0x34a051(0x12f),'maxRetries':_0x34a051(0x13b),'save':_0x34a051(0x13a),'saving':_0x34a051(0x121),'note1':_0x34a051(0x143),'note2':_0x34a051(0x141),'configSaved':_0x34a051(0x13e),'configError':_0x34a051(0x148),'apiApplyInfo':{'title':'What\x20is\x20API\x20Key?','description':_0x34a051(0x150),'univerAiLabel':_0x34a051(0x13d),'getStarted':_0x34a051(0x154)},'validation':{'apiKeyRequired':_0x34a051(0x125),'apiKeyTooShort':_0x34a051(0x14b),'invalidConfig':_0x34a051(0x142),'invalidApiKey':_0x34a051(0x122)},'connectionStatus':{'disconnected':_0x34a051(0x124),'connecting':_0x34a051(0x147),'connected':_0x34a051(0x151),'failed':_0x34a051(0x135),'retrying':'Retrying...'},'connectionError':{'unauthorized':'Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','sessionOccupied':_0x34a051(0x145),'networkError':_0x34a051(0x12e),'maxRetriesExceeded':_0x34a051(0x14f)}}},locale=locale$1;function _0x32ed(_0x541565,_0x13dfe1){_0x541565=_0x541565-0x120;const _0x45e051=_0x45e0();let _0x32ed12=_0x45e051[_0x541565];return _0x32ed12;}export{locale as default};
1
+ const _0x5321e0=_0x2e1e;(function(_0x325652,_0x498803){const _0x3de7a3=_0x2e1e,_0x906b5a=_0x325652();while(!![]){try{const _0x47047b=-parseInt(_0x3de7a3(0x194))/0x1+parseInt(_0x3de7a3(0x17c))/0x2*(parseInt(_0x3de7a3(0x195))/0x3)+-parseInt(_0x3de7a3(0x175))/0x4+parseInt(_0x3de7a3(0x189))/0x5*(parseInt(_0x3de7a3(0x177))/0x6)+-parseInt(_0x3de7a3(0x178))/0x7*(parseInt(_0x3de7a3(0x17a))/0x8)+parseInt(_0x3de7a3(0x192))/0x9*(parseInt(_0x3de7a3(0x183))/0xa)+parseInt(_0x3de7a3(0x17e))/0xb;if(_0x47047b===_0x498803)break;else _0x906b5a['push'](_0x906b5a['shift']());}catch(_0x45eecb){_0x906b5a['push'](_0x906b5a['shift']());}}}(_0x348a,0xd63c1));function _0x2e1e(_0x1c582d,_0x41131a){_0x1c582d=_0x1c582d-0x170;const _0x348af9=_0x348a();let _0x2e1e83=_0x348af9[_0x1c582d];return _0x2e1e83;}const locale$1={'mcpStatus':{'disconnected':_0x5321e0(0x171),'connecting':_0x5321e0(0x179),'connected':'MCP\x20Connected','failed':_0x5321e0(0x197),'retrying':_0x5321e0(0x173),'unknown':_0x5321e0(0x174),'unauthorized':_0x5321e0(0x191),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':_0x5321e0(0x18e),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':_0x5321e0(0x18a),'clickToConfigure':_0x5321e0(0x181)},'mcpConfig':{'title':'MCP\x20Configuration','description':'Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','apiKey':_0x5321e0(0x18f),'apiKeyPlaceholder':'Enter\x20your\x20API\x20key','apiKeyHint':_0x5321e0(0x17d),'enableAuth':_0x5321e0(0x17f),'enableAuthHint':_0x5321e0(0x196),'connectionInfo':_0x5321e0(0x198),'mcpClientConfig':_0x5321e0(0x198),'configInstructions':'Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','configStepTitle':'Configuration\x20Steps:','configStep1':_0x5321e0(0x193),'configStep2':'Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','configStep3':'Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','sessionId':'Session\x20ID','sessionIdDescription':_0x5321e0(0x184),'authorizationDescription':_0x5321e0(0x186),'configParameters':_0x5321e0(0x185),'maxRetries':'Max\x20Retries','save':_0x5321e0(0x172),'saving':_0x5321e0(0x170),'note1':_0x5321e0(0x199),'note2':_0x5321e0(0x180),'configSaved':_0x5321e0(0x187),'configError':_0x5321e0(0x18d),'apiApplyInfo':{'title':_0x5321e0(0x190),'description':_0x5321e0(0x188),'univerAiLabel':_0x5321e0(0x18c),'getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':'API\x20key\x20is\x20required','apiKeyTooShort':'API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','invalidConfig':_0x5321e0(0x18b),'invalidApiKey':'Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct'},'connectionStatus':{'disconnected':'Disconnected','connecting':'Connecting...','connected':_0x5321e0(0x19a),'failed':'Connection\x20Failed','retrying':'Retrying...'},'connectionError':{'unauthorized':_0x5321e0(0x17b),'sessionOccupied':_0x5321e0(0x176),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':_0x5321e0(0x182)}}},locale=locale$1;function _0x348a(){const _0x28b177=['Copy\x20the\x20JSON\x20configuration\x20below','1150724MRtLoU','749070PwxKbE','Enable\x20authentication\x20for\x20secure\x20connections','MCP\x20Connection\x20Failed','MCP\x20Client\x20Configuration','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','Connected','Saving...','MCP\x20Disconnected','Save\x20Configuration','MCP\x20Retrying...','MCP\x20Unknown\x20Status','5265092Qhgdyg','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','10194Wjsabd','367031LiENIR','MCP\x20Connecting...','8TvLqmL','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','8OkGmou','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','11673585jamFZu','Enable\x20Authentication','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Click\x20to\x20configure\x20MCP','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','390qKaHKX','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','Configuration\x20Parameters:','API\x20key\x20with\x20Bearer\x20prefix.','Configuration\x20saved\x20successfully','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','2965CIiXGX','Click\x20to\x20connect\x20MCP','Invalid\x20configuration','Univer\x20AI\x20Console','Failed\x20to\x20save\x20configuration','MCP:\x20Network\x20Error','API\x20Key','What\x20is\x20API\x20Key?','MCP:\x20Unauthorized','76023VqzoWt'];_0x348a=function(){return _0x28b177;};return _0x348a();}export{locale as default};
@@ -1 +1 @@
1
- const _0xc3ccb2=_0x304f;(function(_0x162c4a,_0x1ffe20){const _0x5e06db=_0x304f,_0x14cfdb=_0x162c4a();while(!![]){try{const _0xd00250=-parseInt(_0x5e06db(0x1ec))/0x1*(-parseInt(_0x5e06db(0x1f3))/0x2)+parseInt(_0x5e06db(0x1cf))/0x3*(-parseInt(_0x5e06db(0x1cb))/0x4)+parseInt(_0x5e06db(0x1db))/0x5+parseInt(_0x5e06db(0x1ca))/0x6+-parseInt(_0x5e06db(0x1d1))/0x7*(parseInt(_0x5e06db(0x1ce))/0x8)+-parseInt(_0x5e06db(0x1f0))/0x9+-parseInt(_0x5e06db(0x1ef))/0xa*(-parseInt(_0x5e06db(0x1d9))/0xb);if(_0xd00250===_0x1ffe20)break;else _0x14cfdb['push'](_0x14cfdb['shift']());}catch(_0x1339de){_0x14cfdb['push'](_0x14cfdb['shift']());}}}(_0x9cc5,0x353d5));const locale={'mcpStatus':{'disconnected':'MCP\x20Disconnected','connecting':_0xc3ccb2(0x1e9),'connected':'MCP\x20Connected','failed':_0xc3ccb2(0x1bd),'retrying':_0xc3ccb2(0x1d2),'unknown':'MCP\x20Unknown\x20Status','unauthorized':_0xc3ccb2(0x1da),'sessionOccupied':_0xc3ccb2(0x1c9),'networkError':_0xc3ccb2(0x1e2),'maxRetriesExceeded':_0xc3ccb2(0x1d0),'clickToConnect':_0xc3ccb2(0x1d3),'clickToConfigure':_0xc3ccb2(0x1c0)},'mcpConfig':{'title':_0xc3ccb2(0x1be),'description':_0xc3ccb2(0x1e7),'apiKey':'API\x20Key','apiKeyPlaceholder':_0xc3ccb2(0x1c2),'apiKeyHint':_0xc3ccb2(0x1ee),'enableAuth':_0xc3ccb2(0x1e1),'enableAuthHint':_0xc3ccb2(0x1c7),'connectionInfo':_0xc3ccb2(0x1ea),'mcpClientConfig':_0xc3ccb2(0x1ea),'configInstructions':_0xc3ccb2(0x1e4),'configStepTitle':'Configuration\x20Steps:','configStep1':_0xc3ccb2(0x1ed),'configStep2':_0xc3ccb2(0x1cc),'configStep3':'Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','sessionId':_0xc3ccb2(0x1c5),'sessionIdDescription':_0xc3ccb2(0x1d7),'authorizationDescription':'API\x20key\x20with\x20Bearer\x20prefix.','configParameters':_0xc3ccb2(0x1cd),'maxRetries':_0xc3ccb2(0x1c6),'save':_0xc3ccb2(0x1e0),'saving':_0xc3ccb2(0x1dd),'note1':_0xc3ccb2(0x1f1),'note2':_0xc3ccb2(0x1d8),'configSaved':_0xc3ccb2(0x1d4),'configError':_0xc3ccb2(0x1e5),'apiApplyInfo':{'title':_0xc3ccb2(0x1c8),'description':_0xc3ccb2(0x1c1),'univerAiLabel':_0xc3ccb2(0x1df),'getStarted':_0xc3ccb2(0x1c3)},'validation':{'apiKeyRequired':_0xc3ccb2(0x1eb),'apiKeyTooShort':_0xc3ccb2(0x1d5),'invalidConfig':_0xc3ccb2(0x1c4),'invalidApiKey':_0xc3ccb2(0x1dc)},'connectionStatus':{'disconnected':_0xc3ccb2(0x1bc),'connecting':_0xc3ccb2(0x1e6),'connected':_0xc3ccb2(0x1de),'failed':_0xc3ccb2(0x1d6),'retrying':_0xc3ccb2(0x1e8)},'connectionError':{'unauthorized':_0xc3ccb2(0x1bf),'sessionOccupied':_0xc3ccb2(0x1e3),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':_0xc3ccb2(0x1f2)}}};function _0x304f(_0x1446f6,_0x3dbae2){_0x1446f6=_0x1446f6-0x1bc;const _0x9cc544=_0x9cc5();let _0x304f80=_0x9cc544[_0x1446f6];return _0x304f80;}function _0x9cc5(){const _0x38597f=['7631MuOoTo','Copy\x20the\x20JSON\x20configuration\x20below','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','65270VvHXma','3280473mLdRbX','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','88ZYwlFs','Disconnected','MCP\x20Connection\x20Failed','MCP\x20Configuration','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','Click\x20to\x20configure\x20MCP','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Enter\x20your\x20API\x20key','Get\x20your\x20API\x20key\x20in\x20seconds','Invalid\x20configuration','Session\x20ID','Max\x20Retries','Enable\x20authentication\x20for\x20secure\x20connections','What\x20is\x20API\x20Key?','MCP:\x20Session\x20ID\x20Occupied','2162334xlmImw','492XljAAN','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Configuration\x20Parameters:','16792QPIYUI','42cNCmEz','MCP:\x20Max\x20Retries\x20Exceeded','1442Hfxlhg','MCP\x20Retrying...','Click\x20to\x20connect\x20MCP','Configuration\x20saved\x20successfully','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Connection\x20Failed','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','154hQaGya','MCP:\x20Unauthorized','1145755nFuOLX','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Saving...','Connected','Univer\x20AI\x20Console','Save\x20Configuration','Enable\x20Authentication','MCP:\x20Network\x20Error','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Failed\x20to\x20save\x20configuration','Connecting...','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Retrying...','MCP\x20Connecting...','MCP\x20Client\x20Configuration','API\x20key\x20is\x20required'];_0x9cc5=function(){return _0x38597f;};return _0x9cc5();}export{locale as default};
1
+ const _0x1d467b=_0x2438;(function(_0x2fb530,_0xe180e4){const _0x23c5e0=_0x2438,_0x2444c0=_0x2fb530();while(!![]){try{const _0x222b98=-parseInt(_0x23c5e0(0xef))/0x1*(-parseInt(_0x23c5e0(0xcb))/0x2)+-parseInt(_0x23c5e0(0xfb))/0x3*(parseInt(_0x23c5e0(0xc4))/0x4)+parseInt(_0x23c5e0(0xf0))/0x5*(-parseInt(_0x23c5e0(0xd3))/0x6)+-parseInt(_0x23c5e0(0xfa))/0x7*(-parseInt(_0x23c5e0(0xca))/0x8)+parseInt(_0x23c5e0(0xe3))/0x9+-parseInt(_0x23c5e0(0xe0))/0xa*(parseInt(_0x23c5e0(0xdb))/0xb)+parseInt(_0x23c5e0(0xd0))/0xc;if(_0x222b98===_0xe180e4)break;else _0x2444c0['push'](_0x2444c0['shift']());}catch(_0x4a022c){_0x2444c0['push'](_0x2444c0['shift']());}}}(_0x2d2e,0xbb0b6));const locale={'mcpStatus':{'disconnected':_0x1d467b(0xd4),'connecting':'MCP\x20Connecting...','connected':'MCP\x20Connected','failed':_0x1d467b(0xf1),'retrying':_0x1d467b(0xdc),'unknown':_0x1d467b(0xc9),'unauthorized':_0x1d467b(0xd2),'sessionOccupied':_0x1d467b(0xea),'networkError':_0x1d467b(0xeb),'maxRetriesExceeded':_0x1d467b(0xc5),'clickToConnect':_0x1d467b(0xe2),'clickToConfigure':_0x1d467b(0xf3)},'mcpConfig':{'title':_0x1d467b(0xde),'description':_0x1d467b(0xcf),'apiKey':_0x1d467b(0xd6),'apiKeyPlaceholder':_0x1d467b(0xf9),'apiKeyHint':'Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','enableAuth':_0x1d467b(0xd8),'enableAuthHint':_0x1d467b(0xe8),'connectionInfo':_0x1d467b(0xd1),'mcpClientConfig':_0x1d467b(0xd1),'configInstructions':_0x1d467b(0xd5),'configStepTitle':_0x1d467b(0xc7),'configStep1':_0x1d467b(0xdf),'configStep2':_0x1d467b(0xf8),'configStep3':_0x1d467b(0xc6),'sessionId':_0x1d467b(0xe5),'sessionIdDescription':_0x1d467b(0xe9),'authorizationDescription':_0x1d467b(0xe4),'configParameters':_0x1d467b(0xf2),'maxRetries':_0x1d467b(0xcc),'save':'Save\x20Configuration','saving':'Saving...','note1':'Configuration\x20changes\x20will\x20take\x20effect\x20immediately','note2':_0x1d467b(0xf5),'configSaved':_0x1d467b(0xda),'configError':_0x1d467b(0xed),'apiApplyInfo':{'title':_0x1d467b(0xe6),'description':_0x1d467b(0xf6),'univerAiLabel':_0x1d467b(0xf4),'getStarted':_0x1d467b(0xdd)},'validation':{'apiKeyRequired':_0x1d467b(0xe1),'apiKeyTooShort':_0x1d467b(0xce),'invalidConfig':'Invalid\x20configuration','invalidApiKey':_0x1d467b(0xcd)},'connectionStatus':{'disconnected':_0x1d467b(0xd9),'connecting':_0x1d467b(0xee),'connected':_0x1d467b(0xf7),'failed':_0x1d467b(0xe7),'retrying':_0x1d467b(0xec)},'connectionError':{'unauthorized':_0x1d467b(0xd7),'sessionOccupied':'Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','networkError':_0x1d467b(0xc8),'maxRetriesExceeded':'Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later'}}};function _0x2438(_0x3d42ab,_0x172e33){_0x3d42ab=_0x3d42ab-0xc4;const _0x2d2e01=_0x2d2e();let _0x243880=_0x2d2e01[_0x3d42ab];return _0x243880;}export{locale as default};function _0x2d2e(){const _0x2dca58=['MCP\x20Retrying...','Get\x20your\x20API\x20key\x20in\x20seconds','MCP\x20Configuration','Copy\x20the\x20JSON\x20configuration\x20below','9894350IPuctA','API\x20key\x20is\x20required','Click\x20to\x20connect\x20MCP','13665663wIzdGb','API\x20key\x20with\x20Bearer\x20prefix.','Session\x20ID','What\x20is\x20API\x20Key?','Connection\x20Failed','Enable\x20authentication\x20for\x20secure\x20connections','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','MCP:\x20Session\x20ID\x20Occupied','MCP:\x20Network\x20Error','Retrying...','Failed\x20to\x20save\x20configuration','Connecting...','22039sKhhlz','8345OfOUuP','MCP\x20Connection\x20Failed','Configuration\x20Parameters:','Click\x20to\x20configure\x20MCP','Univer\x20AI\x20Console','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Connected','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Enter\x20your\x20API\x20key','6189449nOOBtP','4317AyTuRi','1268XYhThE','MCP:\x20Max\x20Retries\x20Exceeded','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Configuration\x20Steps:','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','MCP\x20Unknown\x20Status','8vKvGyi','2GWgvKr','Max\x20Retries','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','12485976ynXGKO','MCP\x20Client\x20Configuration','MCP:\x20Unauthorized','4506EclqSX','MCP\x20Disconnected','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','API\x20Key','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','Enable\x20Authentication','Disconnected','Configuration\x20saved\x20successfully','11iriAPK'];_0x2d2e=function(){return _0x2dca58;};return _0x2d2e();}
@@ -1 +1 @@
1
- function _0xab98(){const _0x2a2e35=['Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','4636320wCuwNK','MCP\x20Retrying...','Connected','Enable\x20Authentication','Click\x20to\x20configure\x20MCP','MCP\x20Disconnected','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','MCP\x20Unknown\x20Status','Invalid\x20configuration','Copy\x20the\x20JSON\x20configuration\x20below','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Failed\x20to\x20save\x20configuration','16031460Zpcnyk','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','5574orVWIt','API\x20Key','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Connection\x20Failed','8ngchQr','Get\x20your\x20API\x20key\x20in\x20seconds','1857897OwvAnH','MCP:\x20Network\x20Error','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Configuration\x20saved\x20successfully','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','273370nlORTw','MCP\x20Configuration','Univer\x20AI\x20Console','231enlBNv','Enable\x20authentication\x20for\x20secure\x20connections','Configuration\x20Steps:','MCP\x20Connection\x20Failed','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Save\x20Configuration','189697vvgygE','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','Enter\x20your\x20API\x20key','Max\x20Retries','Disconnected','MCP\x20Client\x20Configuration','Saving...','Connecting...','Retrying...','Configuration\x20Parameters:','MCP:\x20Unauthorized','API\x20key\x20with\x20Bearer\x20prefix.','What\x20is\x20API\x20Key?','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','8hcfIgt','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','1046880lbJWHM'];_0xab98=function(){return _0x2a2e35;};return _0xab98();}function _0x111b(_0xc4b507,_0x2a49ee){_0xc4b507=_0xc4b507-0x136;const _0xab9812=_0xab98();let _0x111b4f=_0xab9812[_0xc4b507];return _0x111b4f;}const _0x49ca80=_0x111b;(function(_0x35a431,_0x35adf9){const _0xab8244=_0x111b,_0x210883=_0x35a431();while(!![]){try{const _0x1c0948=parseInt(_0xab8244(0x13d))/0x1+parseInt(_0xab8244(0x169))/0x2+parseInt(_0xab8244(0x164))/0x3*(parseInt(_0xab8244(0x14b))/0x4)+parseInt(_0xab8244(0x150))/0x5+-parseInt(_0xab8244(0x15e))/0x6*(parseInt(_0xab8244(0x137))/0x7)+parseInt(_0xab8244(0x162))/0x8*(-parseInt(_0xab8244(0x14d))/0x9)+-parseInt(_0xab8244(0x15c))/0xa;if(_0x1c0948===_0x35adf9)break;else _0x210883['push'](_0x210883['shift']());}catch(_0x6c8085){_0x210883['push'](_0x210883['shift']());}}}(_0xab98,0xb52e9));const locale$1={'mcpStatus':{'disconnected':_0x49ca80(0x155),'connecting':'MCP\x20Connecting...','connected':'MCP\x20Connected','failed':_0x49ca80(0x13a),'retrying':_0x49ca80(0x151),'unknown':_0x49ca80(0x157),'unauthorized':_0x49ca80(0x147),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':_0x49ca80(0x165),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':'Click\x20to\x20connect\x20MCP','clickToConfigure':_0x49ca80(0x154)},'mcpConfig':{'title':_0x49ca80(0x16a),'description':_0x49ca80(0x156),'apiKey':_0x49ca80(0x15f),'apiKeyPlaceholder':_0x49ca80(0x13f),'apiKeyHint':_0x49ca80(0x15d),'enableAuth':_0x49ca80(0x153),'enableAuthHint':_0x49ca80(0x138),'connectionInfo':_0x49ca80(0x142),'mcpClientConfig':'MCP\x20Client\x20Configuration','configInstructions':'Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','configStepTitle':_0x49ca80(0x139),'configStep1':_0x49ca80(0x159),'configStep2':_0x49ca80(0x15a),'configStep3':_0x49ca80(0x14e),'sessionId':'Session\x20ID','sessionIdDescription':_0x49ca80(0x14f),'authorizationDescription':_0x49ca80(0x148),'configParameters':_0x49ca80(0x146),'maxRetries':_0x49ca80(0x140),'save':_0x49ca80(0x13c),'saving':_0x49ca80(0x143),'note1':'Configuration\x20changes\x20will\x20take\x20effect\x20immediately','note2':_0x49ca80(0x13b),'configSaved':_0x49ca80(0x167),'configError':_0x49ca80(0x15b),'apiApplyInfo':{'title':_0x49ca80(0x149),'description':_0x49ca80(0x160),'univerAiLabel':_0x49ca80(0x136),'getStarted':_0x49ca80(0x163)},'validation':{'apiKeyRequired':'API\x20key\x20is\x20required','apiKeyTooShort':_0x49ca80(0x166),'invalidConfig':_0x49ca80(0x158),'invalidApiKey':_0x49ca80(0x14c)},'connectionStatus':{'disconnected':_0x49ca80(0x141),'connecting':_0x49ca80(0x144),'connected':_0x49ca80(0x152),'failed':_0x49ca80(0x161),'retrying':_0x49ca80(0x145)},'connectionError':{'unauthorized':_0x49ca80(0x14a),'sessionOccupied':_0x49ca80(0x168),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':_0x49ca80(0x13e)}}},locale=locale$1;export{locale as default};
1
+ const _0x336339=_0x5e2a;(function(_0x4a1730,_0x3ab94f){const _0x25837e=_0x5e2a,_0x4aabcb=_0x4a1730();while(!![]){try{const _0x2b57ef=parseInt(_0x25837e(0x124))/0x1+parseInt(_0x25837e(0x130))/0x2+parseInt(_0x25837e(0x11f))/0x3*(parseInt(_0x25837e(0x112))/0x4)+parseInt(_0x25837e(0x13a))/0x5*(-parseInt(_0x25837e(0x108))/0x6)+-parseInt(_0x25837e(0x133))/0x7+-parseInt(_0x25837e(0x134))/0x8+parseInt(_0x25837e(0x138))/0x9*(parseInt(_0x25837e(0x137))/0xa);if(_0x2b57ef===_0x3ab94f)break;else _0x4aabcb['push'](_0x4aabcb['shift']());}catch(_0x4cf017){_0x4aabcb['push'](_0x4aabcb['shift']());}}}(_0x3471,0xac296));const locale$1={'mcpStatus':{'disconnected':_0x336339(0x11d),'connecting':_0x336339(0x107),'connected':_0x336339(0x129),'failed':_0x336339(0x126),'retrying':_0x336339(0x113),'unknown':_0x336339(0x10c),'unauthorized':'MCP:\x20Unauthorized','sessionOccupied':_0x336339(0x131),'networkError':_0x336339(0x10a),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':_0x336339(0x109),'clickToConfigure':_0x336339(0x12e)},'mcpConfig':{'title':'MCP\x20Configuration','description':_0x336339(0x13b),'apiKey':_0x336339(0x11a),'apiKeyPlaceholder':_0x336339(0x10f),'apiKeyHint':_0x336339(0x110),'enableAuth':'Enable\x20Authentication','enableAuthHint':_0x336339(0x13c),'connectionInfo':'MCP\x20Client\x20Configuration','mcpClientConfig':_0x336339(0x11b),'configInstructions':_0x336339(0x12d),'configStepTitle':_0x336339(0x114),'configStep1':_0x336339(0x122),'configStep2':_0x336339(0x10d),'configStep3':_0x336339(0x10b),'sessionId':_0x336339(0x119),'sessionIdDescription':'Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','authorizationDescription':_0x336339(0x117),'configParameters':_0x336339(0x132),'maxRetries':_0x336339(0x139),'save':_0x336339(0x123),'saving':_0x336339(0x13d),'note1':_0x336339(0x11e),'note2':_0x336339(0x128),'configSaved':_0x336339(0x10e),'configError':_0x336339(0x115),'apiApplyInfo':{'title':'What\x20is\x20API\x20Key?','description':_0x336339(0x116),'univerAiLabel':_0x336339(0x12c),'getStarted':_0x336339(0x111)},'validation':{'apiKeyRequired':_0x336339(0x12f),'apiKeyTooShort':_0x336339(0x118),'invalidConfig':'Invalid\x20configuration','invalidApiKey':_0x336339(0x127)},'connectionStatus':{'disconnected':_0x336339(0x11c),'connecting':'Connecting...','connected':_0x336339(0x135),'failed':_0x336339(0x120),'retrying':_0x336339(0x12a)},'connectionError':{'unauthorized':_0x336339(0x125),'sessionOccupied':_0x336339(0x12b),'networkError':_0x336339(0x136),'maxRetriesExceeded':_0x336339(0x121)}}},locale=locale$1;function _0x5e2a(_0x257c92,_0x5ddb2e){_0x257c92=_0x257c92-0x107;const _0x347186=_0x3471();let _0x5e2a5d=_0x347186[_0x257c92];return _0x5e2a5d;}function _0x3471(){const _0x4bd473=['Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','MCP\x20Connected','Retrying...','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','Univer\x20AI\x20Console','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Click\x20to\x20configure\x20MCP','API\x20key\x20is\x20required','855484dskxpp','MCP:\x20Session\x20ID\x20Occupied','Configuration\x20Parameters:','8299571evvswx','9694624HmVYno','Connected','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','230ojvddC','281565tkUgAO','Max\x20Retries','2542325FBdmiQ','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Enable\x20authentication\x20for\x20secure\x20connections','Saving...','MCP\x20Connecting...','6sABKFU','Click\x20to\x20connect\x20MCP','MCP:\x20Network\x20Error','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','MCP\x20Unknown\x20Status','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Configuration\x20saved\x20successfully','Enter\x20your\x20API\x20key','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','Get\x20your\x20API\x20key\x20in\x20seconds','894264qnEYYW','MCP\x20Retrying...','Configuration\x20Steps:','Failed\x20to\x20save\x20configuration','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','API\x20key\x20with\x20Bearer\x20prefix.','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Session\x20ID','API\x20Key','MCP\x20Client\x20Configuration','Disconnected','MCP\x20Disconnected','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','18fBLnTp','Connection\x20Failed','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','Copy\x20the\x20JSON\x20configuration\x20below','Save\x20Configuration','1122427lJntAd','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','MCP\x20Connection\x20Failed','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct'];_0x3471=function(){return _0x4bd473;};return _0x3471();}export{locale as default};
@@ -1 +1 @@
1
- const _0x22da11=_0x44a4;(function(_0x17307a,_0x21a17f){const _0x2b2728=_0x44a4,_0x410e18=_0x17307a();while(!![]){try{const _0x29d85f=parseInt(_0x2b2728(0x1e6))/0x1*(-parseInt(_0x2b2728(0x1f4))/0x2)+-parseInt(_0x2b2728(0x208))/0x3+parseInt(_0x2b2728(0x217))/0x4*(-parseInt(_0x2b2728(0x1f8))/0x5)+parseInt(_0x2b2728(0x20b))/0x6+parseInt(_0x2b2728(0x1ff))/0x7*(parseInt(_0x2b2728(0x1ec))/0x8)+-parseInt(_0x2b2728(0x211))/0x9*(-parseInt(_0x2b2728(0x1f2))/0xa)+-parseInt(_0x2b2728(0x202))/0xb;if(_0x29d85f===_0x21a17f)break;else _0x410e18['push'](_0x410e18['shift']());}catch(_0x49ceca){_0x410e18['push'](_0x410e18['shift']());}}}(_0x4a86,0x607c8));function _0x4a86(){const _0x238832=['Configuration\x20changes\x20will\x20take\x20effect\x20immediately','API\x20Key','662157dqKJTg','API\x20key\x20with\x20Bearer\x20prefix.','MCP:\x20Unauthorized','MCP\x20Disconnected','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','Failed\x20to\x20save\x20configuration','123088UlboOX','Click\x20to\x20configure\x20MCP','Univer\x20AI\x20Console','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','MCP\x20Connected','Enter\x20your\x20API\x20key','7WIJueS','Configuration\x20Parameters:','Max\x20Retries','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','8nzUuXi','MCP\x20Client\x20Configuration','MCP\x20Configuration','Invalid\x20configuration','MCP\x20Connecting...','Click\x20to\x20connect\x20MCP','70iorqLs','API\x20key\x20is\x20required','95730fPGVGp','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','Connection\x20Failed','5VgNpYW','Connected','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Configuration\x20Steps:','Retrying...','MCP\x20Unknown\x20Status','Connecting...','5224401fGpQsL','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','Enable\x20authentication\x20for\x20secure\x20connections','6390362CjhiZi','What\x20is\x20API\x20Key?','MCP\x20Connection\x20Failed','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','MCP:\x20Network\x20Error','Configuration\x20saved\x20successfully','1850799HFpEvv','Enable\x20Authentication','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','4185336tMCGuQ','Session\x20ID','Save\x20Configuration','Saving...'];_0x4a86=function(){return _0x238832;};return _0x4a86();}const locale$1={'mcpStatus':{'disconnected':_0x22da11(0x214),'connecting':_0x22da11(0x1f0),'connected':_0x22da11(0x1e4),'failed':_0x22da11(0x204),'retrying':'MCP\x20Retrying...','unknown':_0x22da11(0x1fd),'unauthorized':_0x22da11(0x213),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':_0x22da11(0x206),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':_0x22da11(0x1f1),'clickToConfigure':_0x22da11(0x218)},'mcpConfig':{'title':_0x22da11(0x1ee),'description':_0x22da11(0x20a),'apiKey':_0x22da11(0x210),'apiKeyPlaceholder':_0x22da11(0x1e5),'apiKeyHint':_0x22da11(0x215),'enableAuth':_0x22da11(0x209),'enableAuthHint':_0x22da11(0x201),'connectionInfo':_0x22da11(0x1ed),'mcpClientConfig':'MCP\x20Client\x20Configuration','configInstructions':_0x22da11(0x1fa),'configStepTitle':_0x22da11(0x1fb),'configStep1':'Copy\x20the\x20JSON\x20configuration\x20below','configStep2':'Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','configStep3':_0x22da11(0x1f5),'sessionId':_0x22da11(0x20c),'sessionIdDescription':_0x22da11(0x1ea),'authorizationDescription':_0x22da11(0x212),'configParameters':_0x22da11(0x1e7),'maxRetries':_0x22da11(0x1e8),'save':_0x22da11(0x20d),'saving':_0x22da11(0x20e),'note1':_0x22da11(0x20f),'note2':_0x22da11(0x1e9),'configSaved':_0x22da11(0x207),'configError':_0x22da11(0x216),'apiApplyInfo':{'title':_0x22da11(0x203),'description':_0x22da11(0x205),'univerAiLabel':_0x22da11(0x219),'getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':_0x22da11(0x1f3),'apiKeyTooShort':_0x22da11(0x1eb),'invalidConfig':_0x22da11(0x1ef),'invalidApiKey':_0x22da11(0x21a)},'connectionStatus':{'disconnected':'Disconnected','connecting':_0x22da11(0x1fe),'connected':_0x22da11(0x1f9),'failed':_0x22da11(0x1f7),'retrying':_0x22da11(0x1fc)},'connectionError':{'unauthorized':_0x22da11(0x200),'sessionOccupied':_0x22da11(0x1f6),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':'Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later'}}},locale=locale$1;function _0x44a4(_0x2863cf,_0x55bf88){_0x2863cf=_0x2863cf-0x1e4;const _0x4a8653=_0x4a86();let _0x44a412=_0x4a8653[_0x2863cf];return _0x44a412;}export{locale as default};
1
+ const _0x38b637=_0x4383;function _0x5320(){const _0x50924f=['Invalid\x20configuration','MCP:\x20Network\x20Error','Configuration\x20Parameters:','Retrying...','Enable\x20Authentication','API\x20key\x20is\x20required','16WlTrFx','Disconnected','MCP\x20Unknown\x20Status','5057801PqsOGF','MCP\x20Retrying...','Connection\x20Failed','Configuration\x20saved\x20successfully','MCP\x20Connection\x20Failed','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','MCP\x20Configuration','Connected','Configuration\x20Steps:','Enable\x20authentication\x20for\x20secure\x20connections','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','421yZtibZ','2134UtefPS','5294595kQTiuv','Click\x20to\x20configure\x20MCP','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','MCP\x20Disconnected','Connecting...','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Enter\x20your\x20API\x20key','MCP:\x20Max\x20Retries\x20Exceeded','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Click\x20to\x20connect\x20MCP','Save\x20Configuration','1168902dLHDlh','4020980UcdIGw','Failed\x20to\x20save\x20configuration','Copy\x20the\x20JSON\x20configuration\x20below','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','MCP\x20Connected','3113991UnvVxX','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','API\x20Key','MCP\x20Client\x20Configuration','Univer\x20AI\x20Console','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','API\x20key\x20with\x20Bearer\x20prefix.','Session\x20ID','MCP:\x20Session\x20ID\x20Occupied','4365192JWjvTw','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','What\x20is\x20API\x20Key?','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','MCP\x20Connecting...'];_0x5320=function(){return _0x50924f;};return _0x5320();}(function(_0x36c2b3,_0xda7632){const _0x462c71=_0x4383,_0x38a913=_0x36c2b3();while(!![]){try{const _0x2b219b=parseInt(_0x462c71(0x154))/0x1*(parseInt(_0x462c71(0x155))/0x2)+parseInt(_0x462c71(0x168))/0x3+-parseInt(_0x462c71(0x163))/0x4+-parseInt(_0x462c71(0x156))/0x5+parseInt(_0x462c71(0x171))/0x6+parseInt(_0x462c71(0x180))/0x7+parseInt(_0x462c71(0x17d))/0x8*(-parseInt(_0x462c71(0x162))/0x9);if(_0x2b219b===_0xda7632)break;else _0x38a913['push'](_0x38a913['shift']());}catch(_0x532ea9){_0x38a913['push'](_0x38a913['shift']());}}}(_0x5320,0x95bef));function _0x4383(_0x2d8f3f,_0x51f279){_0x2d8f3f=_0x2d8f3f-0x14a;const _0x5320ae=_0x5320();let _0x438363=_0x5320ae[_0x2d8f3f];return _0x438363;}const locale$1={'mcpStatus':{'disconnected':_0x38b637(0x15a),'connecting':_0x38b637(0x176),'connected':_0x38b637(0x167),'failed':_0x38b637(0x14d),'retrying':_0x38b637(0x14a),'unknown':_0x38b637(0x17f),'unauthorized':'MCP:\x20Unauthorized','sessionOccupied':_0x38b637(0x170),'networkError':_0x38b637(0x178),'maxRetriesExceeded':_0x38b637(0x15e),'clickToConnect':_0x38b637(0x160),'clickToConfigure':_0x38b637(0x157)},'mcpConfig':{'title':_0x38b637(0x14f),'description':_0x38b637(0x16d),'apiKey':_0x38b637(0x16a),'apiKeyPlaceholder':_0x38b637(0x15d),'apiKeyHint':_0x38b637(0x153),'enableAuth':_0x38b637(0x17b),'enableAuthHint':_0x38b637(0x152),'connectionInfo':_0x38b637(0x16b),'mcpClientConfig':_0x38b637(0x16b),'configInstructions':_0x38b637(0x172),'configStepTitle':_0x38b637(0x151),'configStep1':_0x38b637(0x165),'configStep2':'Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','configStep3':_0x38b637(0x15f),'sessionId':_0x38b637(0x16f),'sessionIdDescription':_0x38b637(0x174),'authorizationDescription':_0x38b637(0x16e),'configParameters':_0x38b637(0x179),'maxRetries':'Max\x20Retries','save':_0x38b637(0x161),'saving':'Saving...','note1':'Configuration\x20changes\x20will\x20take\x20effect\x20immediately','note2':_0x38b637(0x169),'configSaved':_0x38b637(0x14c),'configError':_0x38b637(0x164),'apiApplyInfo':{'title':_0x38b637(0x173),'description':_0x38b637(0x159),'univerAiLabel':_0x38b637(0x16c),'getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':_0x38b637(0x17c),'apiKeyTooShort':_0x38b637(0x166),'invalidConfig':_0x38b637(0x177),'invalidApiKey':_0x38b637(0x15c)},'connectionStatus':{'disconnected':_0x38b637(0x17e),'connecting':_0x38b637(0x15b),'connected':_0x38b637(0x150),'failed':_0x38b637(0x14b),'retrying':_0x38b637(0x17a)},'connectionError':{'unauthorized':'Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','sessionOccupied':_0x38b637(0x175),'networkError':_0x38b637(0x14e),'maxRetriesExceeded':_0x38b637(0x158)}}},locale=locale$1;export{locale as default};
@@ -1 +1 @@
1
- function _0x3537(_0xb95864,_0x41e5d1){_0xb95864=_0xb95864-0x1c7;const _0x56f8e0=_0x56f8();let _0x353714=_0x56f8e0[_0xb95864];return _0x353714;}const _0x498d8b=_0x3537;function _0x56f8(){const _0x2e4ae5=['Configuration\x20Steps:','1623815wIQPth','Saving...','API\x20key\x20with\x20Bearer\x20prefix.','What\x20is\x20API\x20Key?','Univer\x20AI\x20Console','MCP:\x20Network\x20Error','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','MCP\x20Unknown\x20Status','Enter\x20your\x20API\x20key','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Connection\x20Failed','Copy\x20the\x20JSON\x20configuration\x20below','2USfoCS','585412LlQIhr','Connected','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','API\x20key\x20is\x20required','Max\x20Retries','API\x20Key','2445909thfCBI','7089048xkCuzg','MCP\x20Connecting...','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','2235910VIPehe','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Click\x20to\x20connect\x20MCP','MCP\x20Connection\x20Failed','91VsZwwc','MCP\x20Client\x20Configuration','519976asUxKz','Enable\x20Authentication','Failed\x20to\x20save\x20configuration','Configuration\x20Parameters:','4Jwpegd','Configuration\x20saved\x20successfully','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Disconnected','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','MCP:\x20Unauthorized','6940800wrYfQo','Retrying...'];_0x56f8=function(){return _0x2e4ae5;};return _0x56f8();}(function(_0x541f6a,_0x3fef03){const _0x335baf=_0x3537,_0x129d40=_0x541f6a();while(!![]){try{const _0x1ba1d6=parseInt(_0x335baf(0x1e9))/0x1+-parseInt(_0x335baf(0x1e8))/0x2*(-parseInt(_0x335baf(0x1ef))/0x3)+-parseInt(_0x335baf(0x1d2))/0x4*(-parseInt(_0x335baf(0x1db))/0x5)+-parseInt(_0x335baf(0x1f0))/0x6+-parseInt(_0x335baf(0x1cc))/0x7*(-parseInt(_0x335baf(0x1ce))/0x8)+-parseInt(_0x335baf(0x1d8))/0x9+parseInt(_0x335baf(0x1c8))/0xa;if(_0x1ba1d6===_0x3fef03)break;else _0x129d40['push'](_0x129d40['shift']());}catch(_0x2a7552){_0x129d40['push'](_0x129d40['shift']());}}}(_0x56f8,0xcd66a));const locale$1={'mcpStatus':{'disconnected':'MCP\x20Disconnected','connecting':_0x498d8b(0x1f1),'connected':'MCP\x20Connected','failed':_0x498d8b(0x1cb),'retrying':'MCP\x20Retrying...','unknown':_0x498d8b(0x1e2),'unauthorized':_0x498d8b(0x1d7),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':_0x498d8b(0x1e0),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':_0x498d8b(0x1ca),'clickToConfigure':'Click\x20to\x20configure\x20MCP'},'mcpConfig':{'title':'MCP\x20Configuration','description':_0x498d8b(0x1e4),'apiKey':_0x498d8b(0x1ee),'apiKeyPlaceholder':_0x498d8b(0x1e3),'apiKeyHint':'Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','enableAuth':_0x498d8b(0x1cf),'enableAuthHint':'Enable\x20authentication\x20for\x20secure\x20connections','connectionInfo':_0x498d8b(0x1cd),'mcpClientConfig':'MCP\x20Client\x20Configuration','configInstructions':_0x498d8b(0x1c9),'configStepTitle':_0x498d8b(0x1da),'configStep1':_0x498d8b(0x1e7),'configStep2':'Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','configStep3':_0x498d8b(0x1d4),'sessionId':'Session\x20ID','sessionIdDescription':_0x498d8b(0x1c7),'authorizationDescription':_0x498d8b(0x1dd),'configParameters':_0x498d8b(0x1d1),'maxRetries':_0x498d8b(0x1ed),'save':'Save\x20Configuration','saving':_0x498d8b(0x1dc),'note1':_0x498d8b(0x1d6),'note2':_0x498d8b(0x1e5),'configSaved':_0x498d8b(0x1d3),'configError':_0x498d8b(0x1d0),'apiApplyInfo':{'title':_0x498d8b(0x1de),'description':'API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','univerAiLabel':_0x498d8b(0x1df),'getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':_0x498d8b(0x1ec),'apiKeyTooShort':'API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','invalidConfig':'Invalid\x20configuration','invalidApiKey':'Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct'},'connectionStatus':{'disconnected':_0x498d8b(0x1d5),'connecting':'Connecting...','connected':_0x498d8b(0x1ea),'failed':_0x498d8b(0x1e6),'retrying':_0x498d8b(0x1d9)},'connectionError':{'unauthorized':_0x498d8b(0x1eb),'sessionOccupied':_0x498d8b(0x1e1),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':'Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later'}}},locale=locale$1;export{locale as default};
1
+ const _0x449088=_0xd45a;function _0xd45a(_0x4abcee,_0x49f285){_0x4abcee=_0x4abcee-0x1d2;const _0x96f076=_0x96f0();let _0xd45a55=_0x96f076[_0x4abcee];return _0xd45a55;}(function(_0x35a088,_0x4a51){const _0xbc9ee0=_0xd45a,_0x3e6cfd=_0x35a088();while(!![]){try{const _0x52ed5c=-parseInt(_0xbc9ee0(0x1db))/0x1*(parseInt(_0xbc9ee0(0x1e1))/0x2)+-parseInt(_0xbc9ee0(0x1fe))/0x3*(-parseInt(_0xbc9ee0(0x1d9))/0x4)+parseInt(_0xbc9ee0(0x1f8))/0x5+-parseInt(_0xbc9ee0(0x1f9))/0x6+parseInt(_0xbc9ee0(0x1f1))/0x7+parseInt(_0xbc9ee0(0x1fa))/0x8*(-parseInt(_0xbc9ee0(0x1f0))/0x9)+parseInt(_0xbc9ee0(0x1e8))/0xa;if(_0x52ed5c===_0x4a51)break;else _0x3e6cfd['push'](_0x3e6cfd['shift']());}catch(_0x58bb74){_0x3e6cfd['push'](_0x3e6cfd['shift']());}}}(_0x96f0,0xb1c8f));const locale$1={'mcpStatus':{'disconnected':_0x449088(0x1e7),'connecting':_0x449088(0x1f2),'connected':_0x449088(0x200),'failed':'MCP\x20Connection\x20Failed','retrying':_0x449088(0x1ea),'unknown':_0x449088(0x1ff),'unauthorized':_0x449088(0x1dd),'sessionOccupied':_0x449088(0x1eb),'networkError':_0x449088(0x1f5),'maxRetriesExceeded':'MCP:\x20Max\x20Retries\x20Exceeded','clickToConnect':_0x449088(0x1df),'clickToConfigure':_0x449088(0x1e9)},'mcpConfig':{'title':'MCP\x20Configuration','description':_0x449088(0x1d5),'apiKey':_0x449088(0x1d7),'apiKeyPlaceholder':_0x449088(0x1e0),'apiKeyHint':_0x449088(0x1d8),'enableAuth':'Enable\x20Authentication','enableAuthHint':_0x449088(0x1f7),'connectionInfo':'MCP\x20Client\x20Configuration','mcpClientConfig':_0x449088(0x1da),'configInstructions':_0x449088(0x201),'configStepTitle':_0x449088(0x1de),'configStep1':'Copy\x20the\x20JSON\x20configuration\x20below','configStep2':_0x449088(0x1d4),'configStep3':_0x449088(0x1f3),'sessionId':'Session\x20ID','sessionIdDescription':_0x449088(0x1ec),'authorizationDescription':'API\x20key\x20with\x20Bearer\x20prefix.','configParameters':_0x449088(0x1ed),'maxRetries':_0x449088(0x1ef),'save':'Save\x20Configuration','saving':'Saving...','note1':_0x449088(0x1d6),'note2':_0x449088(0x1fc),'configSaved':'Configuration\x20saved\x20successfully','configError':_0x449088(0x1ee),'apiApplyInfo':{'title':_0x449088(0x1e2),'description':_0x449088(0x1d2),'univerAiLabel':_0x449088(0x1e5),'getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':_0x449088(0x1f4),'apiKeyTooShort':_0x449088(0x1e3),'invalidConfig':_0x449088(0x1fd),'invalidApiKey':_0x449088(0x1f6)},'connectionStatus':{'disconnected':'Disconnected','connecting':_0x449088(0x1fb),'connected':_0x449088(0x1e4),'failed':_0x449088(0x1dc),'retrying':_0x449088(0x1d3)},'connectionError':{'unauthorized':'Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','sessionOccupied':_0x449088(0x202),'networkError':_0x449088(0x1e6),'maxRetriesExceeded':'Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later'}}},locale=locale$1;export{locale as default};function _0x96f0(){const _0x2de2bb=['Click\x20to\x20configure\x20MCP','MCP\x20Retrying...','MCP:\x20Session\x20ID\x20Occupied','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','Configuration\x20Parameters:','Failed\x20to\x20save\x20configuration','Max\x20Retries','279evmmup','3126816kotDca','MCP\x20Connecting...','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','API\x20key\x20is\x20required','MCP:\x20Network\x20Error','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Enable\x20authentication\x20for\x20secure\x20connections','1980360EepuDI','2374026gGDISH','268696gXTMZi','Connecting...','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Invalid\x20configuration','4071RksfDw','MCP\x20Unknown\x20Status','MCP\x20Connected','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Retrying...','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','API\x20Key','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','2152fPjsfz','MCP\x20Client\x20Configuration','27raAZpZ','Connection\x20Failed','MCP:\x20Unauthorized','Configuration\x20Steps:','Click\x20to\x20connect\x20MCP','Enter\x20your\x20API\x20key','16288XVxCuB','What\x20is\x20API\x20Key?','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Connected','Univer\x20AI\x20Console','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','MCP\x20Disconnected','8121370ZjcSzR'];_0x96f0=function(){return _0x2de2bb;};return _0x96f0();}
@@ -1 +1 @@
1
- const _0x316566=_0x4faa;(function(_0x53396f,_0x21facd){const _0x284128=_0x4faa,_0x1e28d6=_0x53396f();while(!![]){try{const _0x1a8be0=parseInt(_0x284128(0xb2))/0x1*(-parseInt(_0x284128(0x96))/0x2)+-parseInt(_0x284128(0xa1))/0x3*(-parseInt(_0x284128(0xab))/0x4)+-parseInt(_0x284128(0xa2))/0x5+parseInt(_0x284128(0xa0))/0x6+parseInt(_0x284128(0xae))/0x7+parseInt(_0x284128(0xaf))/0x8*(-parseInt(_0x284128(0x95))/0x9)+-parseInt(_0x284128(0xbd))/0xa;if(_0x1a8be0===_0x21facd)break;else _0x1e28d6['push'](_0x1e28d6['shift']());}catch(_0x2e9ea1){_0x1e28d6['push'](_0x1e28d6['shift']());}}}(_0x1ac0,0x3e0ac));function _0x4faa(_0x387698,_0x513d7c){_0x387698=_0x387698-0x91;const _0x1ac01c=_0x1ac0();let _0x4faa2e=_0x1ac01c[_0x387698];return _0x4faa2e;}function _0x1ac0(){const _0x56d907=['4DZAhHp','設定の保存に失敗しました','接続中...','APIキーは必須です','MCP:\x20認証されていません','Univer\x20AIコンソール','MCPを設定してAIでスプレッドシートを操作','未接続','APIキー','最大再試行回数を超過しました。後でもう一度お試しください','2464812lgDavL','795603SvaPXc','491485FKrkuG','設定パラメータ:','MCP\x20接続済み','Bearerプレフィックス付きのAPIキー。','APIキーはローカルストレージに安全に保存されます','最大再試行回数','MCP\x20再試行中...','設定手順:','無効な設定','4UOzJMH','設定を保存','MCPクライアントの設定に次の設定を追加してください:','2272291gaCLRN','1536088ipBHCR','認証を有効にする','設定が正常に保存されました','222046oAriGo','APIキーを入力してください','MCP:\x20セッションIDが使用中','接続済み','MCP\x20不明な状態','保存中...','セキュアな接続のために認証を有効にする','MCP\x20接続失敗','ネットワーク接続エラー。インターネット接続を確認してください','数秒でAPIキーを取得','MCPクライアント設定','120920mQDteq','MCPクライアントを再起動して設定を適用','認証に失敗しました。APIキーを確認してください','以下のJSON設定をコピー','MCP:\x20最大再試行回数を超過','APIキーとは?','一意のセッション識別子。複数のUniverインスタンスを開いている場合、接続の競合を避けるため、各インスタンスは異なるsession_idを使用する必要があります。','9tqFhIM'];_0x1ac0=function(){return _0x56d907;};return _0x1ac0();}const locale={'mcpStatus':{'disconnected':'MCP\x20未接続','connecting':'MCP\x20接続中...','connected':_0x316566(0xa4),'failed':_0x316566(0xb9),'retrying':_0x316566(0xa8),'unknown':_0x316566(0xb6),'unauthorized':_0x316566(0x9a),'sessionOccupied':_0x316566(0xb4),'networkError':'MCP:\x20ネットワークエラー','maxRetriesExceeded':_0x316566(0x92),'clickToConnect':'クリックしてMCPに接続','clickToConfigure':'クリックしてMCPを設定'},'mcpConfig':{'title':'MCP設定','description':_0x316566(0x9c),'apiKey':_0x316566(0x9e),'apiKeyPlaceholder':_0x316566(0xb3),'apiKeyHint':'APIキーはこのブラウザのローカルに保存されます','enableAuth':_0x316566(0xb0),'enableAuthHint':_0x316566(0xb8),'connectionInfo':_0x316566(0xbc),'mcpClientConfig':_0x316566(0xbc),'configInstructions':_0x316566(0xad),'configStepTitle':_0x316566(0xa9),'configStep1':_0x316566(0x91),'configStep2':'MCPクライアントの設定ファイルに設定を追加','configStep3':_0x316566(0xbe),'sessionId':'セッションID','sessionIdDescription':_0x316566(0x94),'authorizationDescription':_0x316566(0xa5),'configParameters':_0x316566(0xa3),'maxRetries':_0x316566(0xa7),'save':_0x316566(0xac),'saving':_0x316566(0xb7),'note1':'設定の変更は直ちに有効になります','note2':_0x316566(0xa6),'configSaved':_0x316566(0xb1),'configError':_0x316566(0x97),'apiApplyInfo':{'title':_0x316566(0x93),'description':'APIキーを使用してUniver\x20MCPサーバーに接続し、AIでスプレッドシートを操作できます。コンソールからAPIキーを取得して開始してください。','univerAiLabel':_0x316566(0x9b),'getStarted':_0x316566(0xbb)},'validation':{'apiKeyRequired':_0x316566(0x99),'apiKeyTooShort':'APIキーは10文字以上である必要があります','invalidConfig':_0x316566(0xaa),'invalidApiKey':'無効なAPIキーです。キーが正しいか確認してください'},'connectionStatus':{'disconnected':_0x316566(0x9d),'connecting':_0x316566(0x98),'connected':_0x316566(0xb5),'failed':'接続失敗','retrying':'再試行中...'},'connectionError':{'unauthorized':_0x316566(0xbf),'sessionOccupied':'セッションIDが現在使用中です。後でもう一度お試しください','networkError':_0x316566(0xba),'maxRetriesExceeded':_0x316566(0x9f)}}};export{locale as default};
1
+ const _0x47d422=_0x2eb2;function _0x47c0(){const _0x80a61e=['設定パラメータ:','177294awaRHX','MCP設定','MCP\x20接続中...','MCP\x20不明な状態','MCP\x20未接続','APIキーは10文字以上である必要があります','無効な設定','無効なAPIキーです。キーが正しいか確認してください','設定の保存に失敗しました','設定を保存','セキュアな接続のために認証を有効にする','MCP\x20接続失敗','クリックしてMCPを設定','MCPクライアントの設定ファイルに設定を追加','424065GRowzk','数秒でAPIキーを取得','61405JJrOVL','MCPを設定してAIでスプレッドシートを操作','保存中...','設定の変更は直ちに有効になります','接続失敗','APIキーとは?','MCP:\x20ネットワークエラー','セッションID','MCP\x20接続済み','21801105jrVlmH','接続中...','MCPクライアントの設定に次の設定を追加してください:','MCPクライアントを再起動して設定を適用','APIキーを使用してUniver\x20MCPサーバーに接続し、AIでスプレッドシートを操作できます。コンソールからAPIキーを取得して開始してください。','Bearerプレフィックス付きのAPIキー。','APIキーはこのブラウザのローカルに保存されます','APIキーを入力してください','認証に失敗しました。APIキーを確認してください','MCP:\x20セッションIDが使用中','設定が正常に保存されました','4001236XIsYFB','接続済み','884429LPEtZP','最大再試行回数','一意のセッション識別子。複数のUniverインスタンスを開いている場合、接続の競合を避けるため、各インスタンスは異なるsession_idを使用する必要があります。','MCPクライアント設定','APIキー','MCP:\x20認証されていません','セッションIDが現在使用中です。後でもう一度お試しください','30lqiprl','再試行中...','30cpDdIf','Univer\x20AIコンソール','MCP:\x20最大再試行回数を超過','5024472UpKuPi','APIキーはローカルストレージに安全に保存されます','未接続'];_0x47c0=function(){return _0x80a61e;};return _0x47c0();}(function(_0x482cac,_0x37b88a){const _0x389a7d=_0x2eb2,_0x4de7cf=_0x482cac();while(!![]){try{const _0x416e9a=parseInt(_0x389a7d(0xa6))/0x1+parseInt(_0x389a7d(0x91))/0x2*(parseInt(_0x389a7d(0x98))/0x3)+parseInt(_0x389a7d(0x86))/0x4+parseInt(_0x389a7d(0xa8))/0x5*(parseInt(_0x389a7d(0x8f))/0x6)+parseInt(_0x389a7d(0x88))/0x7+parseInt(_0x389a7d(0x94))/0x8+-parseInt(_0x389a7d(0x7b))/0x9;if(_0x416e9a===_0x37b88a)break;else _0x4de7cf['push'](_0x4de7cf['shift']());}catch(_0x198846){_0x4de7cf['push'](_0x4de7cf['shift']());}}}(_0x47c0,0xabf36));function _0x2eb2(_0x3203ef,_0x3ed1c9){_0x3203ef=_0x3203ef-0x79;const _0x47c09e=_0x47c0();let _0x2eb2f3=_0x47c09e[_0x3203ef];return _0x2eb2f3;}const locale={'mcpStatus':{'disconnected':_0x47d422(0x9c),'connecting':_0x47d422(0x9a),'connected':_0x47d422(0x7a),'failed':_0x47d422(0xa3),'retrying':'MCP\x20再試行中...','unknown':_0x47d422(0x9b),'unauthorized':_0x47d422(0x8d),'sessionOccupied':_0x47d422(0x84),'networkError':_0x47d422(0xae),'maxRetriesExceeded':_0x47d422(0x93),'clickToConnect':'クリックしてMCPに接続','clickToConfigure':_0x47d422(0xa4)},'mcpConfig':{'title':_0x47d422(0x99),'description':_0x47d422(0xa9),'apiKey':_0x47d422(0x8c),'apiKeyPlaceholder':_0x47d422(0x82),'apiKeyHint':_0x47d422(0x81),'enableAuth':'認証を有効にする','enableAuthHint':_0x47d422(0xa2),'connectionInfo':_0x47d422(0x8b),'mcpClientConfig':_0x47d422(0x8b),'configInstructions':_0x47d422(0x7d),'configStepTitle':'設定手順:','configStep1':'以下のJSON設定をコピー','configStep2':_0x47d422(0xa5),'configStep3':_0x47d422(0x7e),'sessionId':_0x47d422(0x79),'sessionIdDescription':_0x47d422(0x8a),'authorizationDescription':_0x47d422(0x80),'configParameters':_0x47d422(0x97),'maxRetries':_0x47d422(0x89),'save':_0x47d422(0xa1),'saving':_0x47d422(0xaa),'note1':_0x47d422(0xab),'note2':_0x47d422(0x95),'configSaved':_0x47d422(0x85),'configError':_0x47d422(0xa0),'apiApplyInfo':{'title':_0x47d422(0xad),'description':_0x47d422(0x7f),'univerAiLabel':_0x47d422(0x92),'getStarted':_0x47d422(0xa7)},'validation':{'apiKeyRequired':'APIキーは必須です','apiKeyTooShort':_0x47d422(0x9d),'invalidConfig':_0x47d422(0x9e),'invalidApiKey':_0x47d422(0x9f)},'connectionStatus':{'disconnected':_0x47d422(0x96),'connecting':_0x47d422(0x7c),'connected':_0x47d422(0x87),'failed':_0x47d422(0xac),'retrying':_0x47d422(0x90)},'connectionError':{'unauthorized':_0x47d422(0x83),'sessionOccupied':_0x47d422(0x8e),'networkError':'ネットワーク接続エラー。インターネット接続を確認してください','maxRetriesExceeded':'最大再試行回数を超過しました。後でもう一度お試しください'}}};export{locale as default};
@@ -1 +1 @@
1
- const _0x498db9=_0x216e;(function(_0x2b2504,_0x226625){const _0x1e2121=_0x216e,_0x1eb008=_0x2b2504();while(!![]){try{const _0x12cd2c=parseInt(_0x1e2121(0x1b0))/0x1+parseInt(_0x1e2121(0x1a4))/0x2+-parseInt(_0x1e2121(0x18f))/0x3*(-parseInt(_0x1e2121(0x1a8))/0x4)+-parseInt(_0x1e2121(0x1a5))/0x5+-parseInt(_0x1e2121(0x19d))/0x6+-parseInt(_0x1e2121(0x1ab))/0x7+parseInt(_0x1e2121(0x1b5))/0x8*(parseInt(_0x1e2121(0x194))/0x9);if(_0x12cd2c===_0x226625)break;else _0x1eb008['push'](_0x1eb008['shift']());}catch(_0x44f6ab){_0x1eb008['push'](_0x1eb008['shift']());}}}(_0x4f6e,0x513eb));function _0x216e(_0x358f76,_0x9ce1d8){_0x358f76=_0x358f76-0x189;const _0x4f6eaf=_0x4f6e();let _0x216e04=_0x4f6eaf[_0x358f76];return _0x216e04;}const locale={'mcpStatus':{'disconnected':_0x498db9(0x1a6),'connecting':'MCP\x20연결\x20중...','connected':'MCP\x20연결됨','failed':'MCP\x20연결\x20실패','retrying':_0x498db9(0x19e),'unknown':_0x498db9(0x195),'unauthorized':'MCP:\x20인증되지\x20않음','sessionOccupied':_0x498db9(0x1aa),'networkError':_0x498db9(0x191),'maxRetriesExceeded':_0x498db9(0x1a9),'clickToConnect':_0x498db9(0x1ac),'clickToConfigure':_0x498db9(0x1b1)},'mcpConfig':{'title':_0x498db9(0x19b),'description':'AI를\x20사용하여\x20스프레드시트를\x20조작하도록\x20MCP\x20설정','apiKey':_0x498db9(0x199),'apiKeyPlaceholder':_0x498db9(0x1af),'apiKeyHint':'API\x20키는\x20이\x20브라우저의\x20로컬에\x20저장됩니다','enableAuth':'인증\x20활성화','enableAuthHint':_0x498db9(0x1a7),'connectionInfo':'MCP\x20클라이언트\x20설정','mcpClientConfig':_0x498db9(0x19a),'configInstructions':_0x498db9(0x190),'configStepTitle':_0x498db9(0x192),'configStep1':'아래\x20JSON\x20설정\x20복사','configStep2':_0x498db9(0x1a2),'configStep3':'MCP\x20클라이언트를\x20다시\x20시작하여\x20설정\x20적용','sessionId':_0x498db9(0x1b3),'sessionIdDescription':'고유\x20세션\x20식별자입니다.\x20여러\x20Univer\x20인스턴스가\x20열려\x20있는\x20경우,\x20연결\x20충돌을\x20방지하기\x20위해\x20각\x20인스턴스는\x20서로\x20다른\x20session_id를\x20사용해야\x20합니다.','authorizationDescription':'Bearer\x20접두사가\x20있는\x20API\x20키.','configParameters':'설정\x20매개변수:','maxRetries':_0x498db9(0x189),'save':'설정\x20저장','saving':'저장\x20중...','note1':_0x498db9(0x18c),'note2':'API\x20키는\x20로컬\x20스토리지에\x20안전하게\x20저장됩니다','configSaved':_0x498db9(0x18d),'configError':_0x498db9(0x193),'apiApplyInfo':{'title':_0x498db9(0x18b),'description':_0x498db9(0x1a1),'univerAiLabel':_0x498db9(0x18e),'getStarted':_0x498db9(0x19c)},'validation':{'apiKeyRequired':_0x498db9(0x1b2),'apiKeyTooShort':_0x498db9(0x1ad),'invalidConfig':_0x498db9(0x19f),'invalidApiKey':_0x498db9(0x1a0)},'connectionStatus':{'disconnected':_0x498db9(0x18a),'connecting':_0x498db9(0x1b6),'connected':_0x498db9(0x197),'failed':_0x498db9(0x1b4),'retrying':_0x498db9(0x1a3)},'connectionError':{'unauthorized':_0x498db9(0x196),'sessionOccupied':_0x498db9(0x1ae),'networkError':_0x498db9(0x198),'maxRetriesExceeded':'최대\x20재시도\x20횟수를\x20초과했습니다.\x20나중에\x20다시\x20시도하세요'}}};export{locale as default};function _0x4f6e(){const _0x2e5c7d=['API\x20키는\x2010자\x20이상이어야\x20합니다','세션\x20ID가\x20현재\x20사용\x20중입니다.\x20나중에\x20다시\x20시도하세요','API\x20키를\x20입력하세요','85481SxYPGu','클릭하여\x20MCP\x20설정','API\x20키는\x20필수입니다','세션\x20ID','연결\x20실패','3856kVKvhc','연결\x20중...','최대\x20재시도\x20횟수','연결\x20끊김','API\x20키란\x20무엇인가요?','설정\x20변경\x20사항은\x20즉시\x20적용됩니다','설정이\x20성공적으로\x20저장되었습니다','Univer\x20AI\x20콘솔','147VCVCeX','MCP\x20클라이언트\x20설정에\x20다음\x20구성을\x20추가하세요:','MCP:\x20네트워크\x20오류','설정\x20단계:','설정\x20저장\x20실패','16335xwXkTk','MCP\x20알\x20수\x20없는\x20상태','인증\x20실패.\x20API\x20키를\x20확인하세요','연결됨','네트워크\x20연결\x20오류.\x20인터넷\x20연결을\x20확인하세요','API\x20키','MCP\x20클라이언트\x20설정','MCP\x20설정','몇\x20초\x20만에\x20API\x20키\x20발급받기','1591656DIEDAu','MCP\x20재시도\x20중...','유효하지\x20않은\x20설정','유효하지\x20않은\x20API\x20키입니다.\x20키가\x20올바른지\x20확인하세요','API\x20키는\x20Univer\x20MCP\x20서버에\x20연결하여\x20AI로\x20스프레드시트를\x20조작할\x20수\x20있게\x20해줍니다.\x20콘솔에서\x20API\x20키를\x20발급받아\x20시작하세요.','MCP\x20클라이언트\x20설정\x20파일에\x20구성\x20추가','재시도\x20중...','839440dDyfHP','2496990dzQuJu','MCP\x20연결\x20끊김','보안\x20연결을\x20위해\x20인증\x20활성화','22796QpiFSV','MCP:\x20최대\x20재시도\x20횟수\x20초과','MCP:\x20세션\x20ID\x20사용\x20중','3932803qddutu','클릭하여\x20MCP\x20연결'];_0x4f6e=function(){return _0x2e5c7d;};return _0x4f6e();}
1
+ const _0x5dc42d=_0x298f;(function(_0x35a9ef,_0x365020){const _0x79983=_0x298f,_0x46a944=_0x35a9ef();while(!![]){try{const _0x577483=-parseInt(_0x79983(0x140))/0x1+parseInt(_0x79983(0x14f))/0x2*(-parseInt(_0x79983(0x15f))/0x3)+parseInt(_0x79983(0x14d))/0x4+-parseInt(_0x79983(0x14e))/0x5*(-parseInt(_0x79983(0x13f))/0x6)+-parseInt(_0x79983(0x156))/0x7+parseInt(_0x79983(0x163))/0x8+-parseInt(_0x79983(0x154))/0x9;if(_0x577483===_0x365020)break;else _0x46a944['push'](_0x46a944['shift']());}catch(_0xf5cadf){_0x46a944['push'](_0x46a944['shift']());}}}(_0x39da,0x7e795));function _0x298f(_0x32190c,_0x5ba0f9){_0x32190c=_0x32190c-0x13e;const _0x39dafd=_0x39da();let _0x298fe9=_0x39dafd[_0x32190c];return _0x298fe9;}function _0x39da(){const _0x424e74=['MCP:\x20인증되지\x20않음','설정\x20매개변수:','네트워크\x20연결\x20오류.\x20인터넷\x20연결을\x20확인하세요','MCP\x20알\x20수\x20없는\x20상태','최대\x20재시도\x20횟수를\x20초과했습니다.\x20나중에\x20다시\x20시도하세요','2148524txWBQe','927830YLHmkh','65140vwJmHu','MCP\x20클라이언트\x20설정\x20파일에\x20구성\x20추가','설정\x20단계:','고유\x20세션\x20식별자입니다.\x20여러\x20Univer\x20인스턴스가\x20열려\x20있는\x20경우,\x20연결\x20충돌을\x20방지하기\x20위해\x20각\x20인스턴스는\x20서로\x20다른\x20session_id를\x20사용해야\x20합니다.','설정\x20변경\x20사항은\x20즉시\x20적용됩니다','3342321VbaPmF','인증\x20실패.\x20API\x20키를\x20확인하세요','927521OfcuUF','API\x20키를\x20입력하세요','유효하지\x20않은\x20설정','연결됨','설정\x20저장','MCP:\x20최대\x20재시도\x20횟수\x20초과','MCP\x20연결\x20실패','Bearer\x20접두사가\x20있는\x20API\x20키.','재시도\x20중...','3CFeajQ','유효하지\x20않은\x20API\x20키입니다.\x20키가\x20올바른지\x20확인하세요','클릭하여\x20MCP\x20설정','API\x20키는\x20필수입니다','2312576ThSyfI','몇\x20초\x20만에\x20API\x20키\x20발급받기','API\x20키는\x20Univer\x20MCP\x20서버에\x20연결하여\x20AI로\x20스프레드시트를\x20조작할\x20수\x20있게\x20해줍니다.\x20콘솔에서\x20API\x20키를\x20발급받아\x20시작하세요.','MCP\x20설정','API\x20키는\x20이\x20브라우저의\x20로컬에\x20저장됩니다','API\x20키란\x20무엇인가요?','MCP\x20클라이언트\x20설정에\x20다음\x20구성을\x20추가하세요:','MCP\x20연결\x20중...','API\x20키','설정\x20저장\x20실패','아래\x20JSON\x20설정\x20복사','저장\x20중...','AI를\x20사용하여\x20스프레드시트를\x20조작하도록\x20MCP\x20설정','세션\x20ID가\x20현재\x20사용\x20중입니다.\x20나중에\x20다시\x20시도하세요','12iVFHut','142856okZVKi','최대\x20재시도\x20횟수','MCP\x20클라이언트\x20설정','인증\x20활성화','Univer\x20AI\x20콘솔','보안\x20연결을\x20위해\x20인증\x20활성화','설정이\x20성공적으로\x20저장되었습니다','클릭하여\x20MCP\x20연결'];_0x39da=function(){return _0x424e74;};return _0x39da();}const locale={'mcpStatus':{'disconnected':'MCP\x20연결\x20끊김','connecting':_0x5dc42d(0x16a),'connected':'MCP\x20연결됨','failed':_0x5dc42d(0x15c),'retrying':'MCP\x20재시도\x20중...','unknown':_0x5dc42d(0x14b),'unauthorized':_0x5dc42d(0x148),'sessionOccupied':'MCP:\x20세션\x20ID\x20사용\x20중','networkError':'MCP:\x20네트워크\x20오류','maxRetriesExceeded':_0x5dc42d(0x15b),'clickToConnect':_0x5dc42d(0x147),'clickToConfigure':_0x5dc42d(0x161)},'mcpConfig':{'title':_0x5dc42d(0x166),'description':_0x5dc42d(0x16f),'apiKey':_0x5dc42d(0x16b),'apiKeyPlaceholder':_0x5dc42d(0x157),'apiKeyHint':_0x5dc42d(0x167),'enableAuth':_0x5dc42d(0x143),'enableAuthHint':_0x5dc42d(0x145),'connectionInfo':'MCP\x20클라이언트\x20설정','mcpClientConfig':_0x5dc42d(0x142),'configInstructions':_0x5dc42d(0x169),'configStepTitle':_0x5dc42d(0x151),'configStep1':_0x5dc42d(0x16d),'configStep2':_0x5dc42d(0x150),'configStep3':'MCP\x20클라이언트를\x20다시\x20시작하여\x20설정\x20적용','sessionId':'세션\x20ID','sessionIdDescription':_0x5dc42d(0x152),'authorizationDescription':_0x5dc42d(0x15d),'configParameters':_0x5dc42d(0x149),'maxRetries':_0x5dc42d(0x141),'save':_0x5dc42d(0x15a),'saving':_0x5dc42d(0x16e),'note1':_0x5dc42d(0x153),'note2':'API\x20키는\x20로컬\x20스토리지에\x20안전하게\x20저장됩니다','configSaved':_0x5dc42d(0x146),'configError':_0x5dc42d(0x16c),'apiApplyInfo':{'title':_0x5dc42d(0x168),'description':_0x5dc42d(0x165),'univerAiLabel':_0x5dc42d(0x144),'getStarted':_0x5dc42d(0x164)},'validation':{'apiKeyRequired':_0x5dc42d(0x162),'apiKeyTooShort':'API\x20키는\x2010자\x20이상이어야\x20합니다','invalidConfig':_0x5dc42d(0x158),'invalidApiKey':_0x5dc42d(0x160)},'connectionStatus':{'disconnected':'연결\x20끊김','connecting':'연결\x20중...','connected':_0x5dc42d(0x159),'failed':'연결\x20실패','retrying':_0x5dc42d(0x15e)},'connectionError':{'unauthorized':_0x5dc42d(0x155),'sessionOccupied':_0x5dc42d(0x13e),'networkError':_0x5dc42d(0x14a),'maxRetriesExceeded':_0x5dc42d(0x14c)}}};export{locale as default};
@@ -1 +1 @@
1
- const _0x2c5ecc=_0x5aaf;(function(_0x155ad9,_0x3ac94d){const _0x4a8621=_0x5aaf,_0x45c832=_0x155ad9();while(!![]){try{const _0x302b5e=-parseInt(_0x4a8621(0xa7))/0x1+parseInt(_0x4a8621(0x93))/0x2+parseInt(_0x4a8621(0x9b))/0x3*(parseInt(_0x4a8621(0x88))/0x4)+-parseInt(_0x4a8621(0xa5))/0x5+parseInt(_0x4a8621(0x90))/0x6+-parseInt(_0x4a8621(0xa3))/0x7+parseInt(_0x4a8621(0xb0))/0x8;if(_0x302b5e===_0x3ac94d)break;else _0x45c832['push'](_0x45c832['shift']());}catch(_0xf2ecaa){_0x45c832['push'](_0x45c832['shift']());}}}(_0x5f4b,0xabde3));const locale$1={'mcpStatus':{'disconnected':_0x2c5ecc(0xaa),'connecting':_0x2c5ecc(0xa8),'connected':_0x2c5ecc(0x94),'failed':'MCP\x20Connection\x20Failed','retrying':_0x2c5ecc(0xa1),'unknown':'MCP\x20Unknown\x20Status','unauthorized':_0x2c5ecc(0xaf),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':'MCP:\x20Network\x20Error','maxRetriesExceeded':_0x2c5ecc(0xa2),'clickToConnect':_0x2c5ecc(0x9f),'clickToConfigure':_0x2c5ecc(0x9a)},'mcpConfig':{'title':_0x2c5ecc(0xa6),'description':_0x2c5ecc(0xa9),'apiKey':_0x2c5ecc(0xa4),'apiKeyPlaceholder':_0x2c5ecc(0x9d),'apiKeyHint':'Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','enableAuth':_0x2c5ecc(0x98),'enableAuthHint':_0x2c5ecc(0x8b),'connectionInfo':_0x2c5ecc(0xab),'mcpClientConfig':_0x2c5ecc(0xab),'configInstructions':_0x2c5ecc(0x92),'configStepTitle':_0x2c5ecc(0xae),'configStep1':'Copy\x20the\x20JSON\x20configuration\x20below','configStep2':_0x2c5ecc(0x99),'configStep3':_0x2c5ecc(0x86),'sessionId':_0x2c5ecc(0x96),'sessionIdDescription':_0x2c5ecc(0xa0),'authorizationDescription':'API\x20key\x20with\x20Bearer\x20prefix.','configParameters':'Configuration\x20Parameters:','maxRetries':_0x2c5ecc(0x85),'save':'Save\x20Configuration','saving':_0x2c5ecc(0x8c),'note1':_0x2c5ecc(0x8a),'note2':_0x2c5ecc(0x87),'configSaved':_0x2c5ecc(0x91),'configError':_0x2c5ecc(0x8d),'apiApplyInfo':{'title':'What\x20is\x20API\x20Key?','description':_0x2c5ecc(0xac),'univerAiLabel':'Univer\x20AI\x20Console','getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':_0x2c5ecc(0x9c),'apiKeyTooShort':_0x2c5ecc(0xad),'invalidConfig':_0x2c5ecc(0x9e),'invalidApiKey':_0x2c5ecc(0x89)},'connectionStatus':{'disconnected':_0x2c5ecc(0x97),'connecting':'Connecting...','connected':_0x2c5ecc(0x84),'failed':_0x2c5ecc(0x8e),'retrying':_0x2c5ecc(0x8f)},'connectionError':{'unauthorized':'Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','sessionOccupied':'Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':_0x2c5ecc(0x95)}}},locale=locale$1;export{locale as default};function _0x5aaf(_0x178901,_0x57de9e){_0x178901=_0x178901-0x84;const _0x5f4bbc=_0x5f4b();let _0x5aaf3c=_0x5f4bbc[_0x178901];return _0x5aaf3c;}function _0x5f4b(){const _0x4552ea=['MCP:\x20Unauthorized','8180432LWOtSe','Connected','Max\x20Retries','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','4Rqowpe','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','Enable\x20authentication\x20for\x20secure\x20connections','Saving...','Failed\x20to\x20save\x20configuration','Connection\x20Failed','Retrying...','6145152kczUzv','Configuration\x20saved\x20successfully','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','172938JMYlPi','MCP\x20Connected','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','Session\x20ID','Disconnected','Enable\x20Authentication','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Click\x20to\x20configure\x20MCP','163794WUdjMW','API\x20key\x20is\x20required','Enter\x20your\x20API\x20key','Invalid\x20configuration','Click\x20to\x20connect\x20MCP','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','MCP\x20Retrying...','MCP:\x20Max\x20Retries\x20Exceeded','2820167bKDHhI','API\x20Key','6340CvWlth','MCP\x20Configuration','1079693GLzpfw','MCP\x20Connecting...','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','MCP\x20Disconnected','MCP\x20Client\x20Configuration','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Configuration\x20Steps:'];_0x5f4b=function(){return _0x4552ea;};return _0x5f4b();}
1
+ const _0x30e2a6=_0x5b15;function _0x3c9b(){const _0x413fa4=['580vLppyM','API\x20Key','Configuration\x20Steps:','Univer\x20AI\x20Console','Invalid\x20configuration','MCP\x20Configuration','MCP\x20Unknown\x20Status','MCP:\x20Unauthorized','Save\x20Configuration','API\x20key\x20with\x20Bearer\x20prefix.','166870BEsngX','Copy\x20the\x20JSON\x20configuration\x20below','8SnDNTA','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','API\x20key\x20is\x20required','28943jtCDfo','Connecting...','MCP\x20Retrying...','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','Max\x20Retries','Failed\x20to\x20save\x20configuration','10JjLuYz','36ooeexW','1817981zLetlW','Enter\x20your\x20API\x20key','288925EwAfXW','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','MCP\x20Connection\x20Failed','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Configuration\x20saved\x20successfully','156XTBfPP','Connection\x20Failed','4190PYirJv','243sjIKJj','3897rjoHzt','MCP\x20Client\x20Configuration','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','111564YWuEeh','MCP:\x20Network\x20Error','Retrying...','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','MCP\x20Disconnected','MCP:\x20Max\x20Retries\x20Exceeded','Enable\x20Authentication','Connected','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Click\x20to\x20configure\x20MCP','Configuration\x20Parameters:','Disconnected','MCP\x20Connected','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','Configuration\x20changes\x20will\x20take\x20effect\x20immediately'];_0x3c9b=function(){return _0x413fa4;};return _0x3c9b();}(function(_0x123eac,_0x29315e){const _0x2c8e06=_0x5b15,_0x34d85e=_0x123eac();while(!![]){try{const _0x1076cc=-parseInt(_0x2c8e06(0x16b))/0x1*(-parseInt(_0x2c8e06(0x171))/0x2)+-parseInt(_0x2c8e06(0x148))/0x3*(parseInt(_0x2c8e06(0x15c))/0x4)+-parseInt(_0x2c8e06(0x166))/0x5*(parseInt(_0x2c8e06(0x172))/0x6)+-parseInt(_0x2c8e06(0x175))/0x7*(-parseInt(_0x2c8e06(0x168))/0x8)+-parseInt(_0x2c8e06(0x149))/0x9*(-parseInt(_0x2c8e06(0x17c))/0xa)+-parseInt(_0x2c8e06(0x173))/0xb+-parseInt(_0x2c8e06(0x14c))/0xc*(-parseInt(_0x2c8e06(0x17a))/0xd);if(_0x1076cc===_0x29315e)break;else _0x34d85e['push'](_0x34d85e['shift']());}catch(_0x53029f){_0x34d85e['push'](_0x34d85e['shift']());}}}(_0x3c9b,0x18d59));const locale$1={'mcpStatus':{'disconnected':_0x30e2a6(0x150),'connecting':'MCP\x20Connecting...','connected':_0x30e2a6(0x158),'failed':_0x30e2a6(0x177),'retrying':_0x30e2a6(0x16d),'unknown':_0x30e2a6(0x162),'unauthorized':_0x30e2a6(0x163),'sessionOccupied':'MCP:\x20Session\x20ID\x20Occupied','networkError':_0x30e2a6(0x14d),'maxRetriesExceeded':_0x30e2a6(0x151),'clickToConnect':'Click\x20to\x20connect\x20MCP','clickToConfigure':_0x30e2a6(0x155)},'mcpConfig':{'title':_0x30e2a6(0x161),'description':'Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','apiKey':_0x30e2a6(0x15d),'apiKeyPlaceholder':_0x30e2a6(0x174),'apiKeyHint':'Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','enableAuth':_0x30e2a6(0x152),'enableAuthHint':'Enable\x20authentication\x20for\x20secure\x20connections','connectionInfo':_0x30e2a6(0x14a),'mcpClientConfig':_0x30e2a6(0x14a),'configInstructions':_0x30e2a6(0x14b),'configStepTitle':_0x30e2a6(0x15e),'configStep1':_0x30e2a6(0x167),'configStep2':_0x30e2a6(0x159),'configStep3':_0x30e2a6(0x178),'sessionId':'Session\x20ID','sessionIdDescription':_0x30e2a6(0x14f),'authorizationDescription':_0x30e2a6(0x165),'configParameters':_0x30e2a6(0x156),'maxRetries':_0x30e2a6(0x16f),'save':_0x30e2a6(0x164),'saving':'Saving...','note1':_0x30e2a6(0x15b),'note2':_0x30e2a6(0x176),'configSaved':_0x30e2a6(0x179),'configError':_0x30e2a6(0x170),'apiApplyInfo':{'title':'What\x20is\x20API\x20Key?','description':'API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','univerAiLabel':_0x30e2a6(0x15f),'getStarted':'Get\x20your\x20API\x20key\x20in\x20seconds'},'validation':{'apiKeyRequired':_0x30e2a6(0x16a),'apiKeyTooShort':'API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','invalidConfig':_0x30e2a6(0x160),'invalidApiKey':_0x30e2a6(0x154)},'connectionStatus':{'disconnected':_0x30e2a6(0x157),'connecting':_0x30e2a6(0x16c),'connected':_0x30e2a6(0x153),'failed':_0x30e2a6(0x17b),'retrying':_0x30e2a6(0x14e)},'connectionError':{'unauthorized':'Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','sessionOccupied':_0x30e2a6(0x169),'networkError':_0x30e2a6(0x16e),'maxRetriesExceeded':_0x30e2a6(0x15a)}}},locale=locale$1;function _0x5b15(_0x1e5273,_0x5a4325){_0x1e5273=_0x1e5273-0x148;const _0x3c9bb2=_0x3c9b();let _0x5b15b1=_0x3c9bb2[_0x1e5273];return _0x5b15b1;}export{locale as default};