@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
@@ -1 +1 @@
1
- function _0xd141(_0x3119a5,_0x242ae7){_0x3119a5=_0x3119a5-0x140;const _0xab3876=_0xab38();let _0xd141c6=_0xab3876[_0x3119a5];return _0xd141c6;}const _0x479fbe=_0xd141;(function(_0x29f29a,_0x3540ff){const _0x144746=_0xd141,_0x243e0c=_0x29f29a();while(!![]){try{const _0x4fa05b=parseInt(_0x144746(0x160))/0x1*(parseInt(_0x144746(0x141))/0x2)+-parseInt(_0x144746(0x155))/0x3*(parseInt(_0x144746(0x16f))/0x4)+-parseInt(_0x144746(0x16a))/0x5*(-parseInt(_0x144746(0x16d))/0x6)+-parseInt(_0x144746(0x14d))/0x7*(parseInt(_0x144746(0x149))/0x8)+parseInt(_0x144746(0x162))/0x9+-parseInt(_0x144746(0x169))/0xa+parseInt(_0x144746(0x16e))/0xb*(parseInt(_0x144746(0x161))/0xc);if(_0x4fa05b===_0x3540ff)break;else _0x243e0c['push'](_0x243e0c['shift']());}catch(_0x4f2fad){_0x243e0c['push'](_0x243e0c['shift']());}}}(_0xab38,0xc2082));function _0xab38(){const _0x2782e6=['12YfGTou','6973533AzYoNe','연결\x20실패','설정\x20변경\x20사항은\x20즉시\x20적용됩니다','MCP\x20클라이언트\x20설정\x20파일에\x20구성\x20추가','Bearer\x20접두사가\x20있는\x20API\x20키.','API\x20키를\x20입력하세요','MCP:\x20인증되지\x20않음','1293070nMMrVa','5ZxYoVO','인증\x20활성화','연결\x20중...','8659014FBIXHE','8469109beiQWU','20FIOOpM','MCP\x20연결\x20실패','인증\x20실패.\x20API\x20키를\x20확인하세요','클릭하여\x20MCP\x20설정','세션\x20ID가\x20현재\x20사용\x20중입니다.\x20나중에\x20다시\x20시도하세요','1411162CNCUbZ','보안\x20연결을\x20위해\x20인증\x20활성화','설정\x20저장\x20실패','MCP\x20클라이언트\x20설정에\x20다음\x20구성을\x20추가하세요:','재시도\x20중...','MCP\x20연결됨','설정\x20단계:','연결됨','992YbLWFU','Univer\x20AI\x20콘솔','AI를\x20사용하여\x20스프레드시트를\x20조작하도록\x20MCP\x20설정','MCP\x20설정','79555nPJwGA','MCP\x20재시도\x20중...','연결\x20끊김','MCP\x20클라이언트를\x20다시\x20시작하여\x20설정\x20적용','최대\x20재시도\x20횟수','아래\x20JSON\x20설정\x20복사','세션\x20ID','MCP:\x20최대\x20재시도\x20횟수\x20초과','816111vwfSvV','MCP\x20클라이언트\x20설정','MCP:\x20세션\x20ID\x20사용\x20중','설정\x20매개변수:','API\x20키는\x20로컬\x20스토리지에\x20안전하게\x20저장됩니다','설정\x20저장','exports','고유\x20세션\x20식별자입니다.\x20여러\x20Univer\x20인스턴스가\x20열려\x20있는\x20경우,\x20연결\x20충돌을\x20방지하기\x20위해\x20각\x20인스턴스는\x20서로\x20다른\x20session_id를\x20사용해야\x20합니다.','클릭하여\x20MCP\x20연결','최대\x20재시도\x20횟수를\x20초과했습니다.\x20나중에\x20다시\x20시도하세요','MCP:\x20네트워크\x20오류','1jauCFr'];_0xab38=function(){return _0x2782e6;};return _0xab38();}const locale={'mcpStatus':{'disconnected':'MCP\x20연결\x20끊김','connecting':'MCP\x20연결\x20중...','connected':_0x479fbe(0x146),'failed':_0x479fbe(0x170),'retrying':_0x479fbe(0x14e),'unknown':'MCP\x20알\x20수\x20없는\x20상태','unauthorized':_0x479fbe(0x168),'sessionOccupied':_0x479fbe(0x157),'networkError':_0x479fbe(0x15f),'maxRetriesExceeded':_0x479fbe(0x154),'clickToConnect':_0x479fbe(0x15d),'clickToConfigure':_0x479fbe(0x172)},'mcpConfig':{'title':_0x479fbe(0x14c),'description':_0x479fbe(0x14b),'apiKey':'API\x20','apiKeyPlaceholder':_0x479fbe(0x167),'apiKeyHint':'API\x20키는\x20이\x20브라우저의\x20로컬에\x20저장됩니다','enableAuth':_0x479fbe(0x16b),'enableAuthHint':_0x479fbe(0x142),'connectionInfo':_0x479fbe(0x156),'mcpClientConfig':'MCP\x20클라이언트\x20설정','configInstructions':_0x479fbe(0x144),'configStepTitle':_0x479fbe(0x147),'configStep1':_0x479fbe(0x152),'configStep2':_0x479fbe(0x165),'configStep3':_0x479fbe(0x150),'sessionId':_0x479fbe(0x153),'sessionIdDescription':_0x479fbe(0x15c),'authorizationDescription':_0x479fbe(0x166),'configParameters':_0x479fbe(0x158),'maxRetries':_0x479fbe(0x151),'save':_0x479fbe(0x15a),'saving':'저장\x20중...','note1':_0x479fbe(0x164),'note2':_0x479fbe(0x159),'configSaved':'설정이\x20성공적으로\x20저장되었습니다','configError':_0x479fbe(0x143),'apiApplyInfo':{'title':'API\x20키란\x20무엇인가요?','description':'API\x20키는\x20Univer\x20MCP\x20서버에\x20연결하여\x20AI로\x20스프레드시트를\x20조작할\x20수\x20있게\x20해줍니다.\x20콘솔에서\x20API\x20키를\x20발급받아\x20시작하세요.','univerAiLabel':_0x479fbe(0x14a),'getStarted':'몇\x20초\x20만에\x20API\x20키\x20발급받기'},'validation':{'apiKeyRequired':'API\x20키는\x20필수입니다','apiKeyTooShort':'API\x20키는\x2010자\x20이상이어야\x20합니다','invalidConfig':'유효하지\x20않은\x20설정','invalidApiKey':'유효하지\x20않은\x20API\x20키입니다.\x20키가\x20올바른지\x20확인하세요'},'connectionStatus':{'disconnected':_0x479fbe(0x14f),'connecting':_0x479fbe(0x16c),'connected':_0x479fbe(0x148),'failed':_0x479fbe(0x163),'retrying':_0x479fbe(0x145)},'connectionError':{'unauthorized':_0x479fbe(0x171),'sessionOccupied':_0x479fbe(0x140),'networkError':'네트워크\x20연결\x20오류.\x20인터넷\x20연결을\x20확인하세요','maxRetriesExceeded':_0x479fbe(0x15e)}}};module[_0x479fbe(0x15b)]=locale;
1
+ const _0x117a77=_0x43ea;(function(_0xa022db,_0x4640e5){const _0x4c6b90=_0x43ea,_0x233707=_0xa022db();while(!![]){try{const _0x45862a=-parseInt(_0x4c6b90(0x10d))/0x1*(parseInt(_0x4c6b90(0x111))/0x2)+parseInt(_0x4c6b90(0x107))/0x3+parseInt(_0x4c6b90(0xfc))/0x4+parseInt(_0x4c6b90(0x11d))/0x5+-parseInt(_0x4c6b90(0x110))/0x6+-parseInt(_0x4c6b90(0xed))/0x7*(-parseInt(_0x4c6b90(0x104))/0x8)+-parseInt(_0x4c6b90(0x10f))/0x9;if(_0x45862a===_0x4640e5)break;else _0x233707['push'](_0x233707['shift']());}catch(_0x71e5ed){_0x233707['push'](_0x233707['shift']());}}}(_0x285c,0x82052));const locale={'mcpStatus':{'disconnected':_0x117a77(0x10a),'connecting':_0x117a77(0xfe),'connected':_0x117a77(0xef),'failed':_0x117a77(0x109),'retrying':_0x117a77(0xf7),'unknown':_0x117a77(0xf4),'unauthorized':_0x117a77(0xfa),'sessionOccupied':_0x117a77(0x100),'networkError':_0x117a77(0xf2),'maxRetriesExceeded':_0x117a77(0xf5),'clickToConnect':_0x117a77(0x103),'clickToConfigure':_0x117a77(0x106)},'mcpConfig':{'title':_0x117a77(0xf9),'description':_0x117a77(0x113),'apiKey':'API\x20','apiKeyPlaceholder':_0x117a77(0x11c),'apiKeyHint':_0x117a77(0xf1),'enableAuth':'인증\x20활성화','enableAuthHint':'보안\x20연결을\x20위해\x20인증\x20활성화','connectionInfo':_0x117a77(0xf6),'mcpClientConfig':_0x117a77(0xf6),'configInstructions':_0x117a77(0x105),'configStepTitle':_0x117a77(0x102),'configStep1':_0x117a77(0x11b),'configStep2':_0x117a77(0x116),'configStep3':_0x117a77(0x10e),'sessionId':_0x117a77(0x120),'sessionIdDescription':_0x117a77(0x119),'authorizationDescription':_0x117a77(0xf8),'configParameters':_0x117a77(0x122),'maxRetries':'최대\x20재시도\x20횟수','save':'설정\x20저장','saving':_0x117a77(0x121),'note1':_0x117a77(0xff),'note2':_0x117a77(0x10b),'configSaved':_0x117a77(0x11e),'configError':_0x117a77(0x108),'apiApplyInfo':{'title':_0x117a77(0x112),'description':_0x117a77(0x114),'univerAiLabel':_0x117a77(0xf3),'getStarted':_0x117a77(0xf0)},'validation':{'apiKeyRequired':'API\x20키는\x20필수입니다','apiKeyTooShort':_0x117a77(0xfd),'invalidConfig':'유효하지\x20않은\x20설정','invalidApiKey':'유효하지\x20않은\x20API\x20키입니다.\x20키가\x20올바른지\x20확인하세요'},'connectionStatus':{'disconnected':_0x117a77(0x115),'connecting':'연결\x20중...','connected':_0x117a77(0x101),'failed':_0x117a77(0xfb),'retrying':_0x117a77(0x117)},'connectionError':{'unauthorized':_0x117a77(0x11f),'sessionOccupied':_0x117a77(0xee),'networkError':_0x117a77(0x10c),'maxRetriesExceeded':_0x117a77(0x11a)}}};function _0x285c(){const _0x201ab1=['저장\x20중...','설정\x20매개변수:','77qFbWIa','세션\x20ID가\x20현재\x20사용\x20중입니다.\x20나중에\x20다시\x20시도하세요','MCP\x20연결됨','몇\x20초\x20만에\x20API\x20키\x20발급받기','API\x20키는\x20이\x20브라우저의\x20로컬에\x20저장됩니다','MCP:\x20네트워크\x20오류','Univer\x20AI\x20콘솔','MCP\x20알\x20수\x20없는\x20상태','MCP:\x20최대\x20재시도\x20횟수\x20초과','MCP\x20클라이언트\x20설정','MCP\x20재시도\x20중...','Bearer\x20접두사가\x20있는\x20API\x20키.','MCP\x20설정','MCP:\x20인증되지\x20않음','연결\x20실패','1679444aGQMBf','API\x20키는\x2010자\x20이상이어야\x20합니다','MCP\x20연결\x20중...','설정\x20변경\x20사항은\x20즉시\x20적용됩니다','MCP:\x20세션\x20ID\x20사용\x20중','연결됨','설정\x20단계:','클릭하여\x20MCP\x20연결','361304bmLatI','MCP\x20클라이언트\x20설정에\x20다음\x20구성을\x20추가하세요:','클릭하여\x20MCP\x20설정','1282356GdDZdg','설정\x20저장\x20실패','MCP\x20연결\x20실패','MCP\x20연결\x20끊김','API\x20키는\x20로컬\x20스토리지에\x20안전하게\x20저장됩니다','네트워크\x20연결\x20오류.\x20인터넷\x20연결을\x20확인하세요','1xvFyhI','MCP\x20클라이언트를\x20다시\x20시작하여\x20설정\x20적용','2321199omRcfK','3206982VrRCfq','741648CgnYxL','API\x20키란\x20무엇인가요?','AI를\x20사용하여\x20스프레드시트를\x20조작하도록\x20MCP\x20설정','API\x20키는\x20Univer\x20MCP\x20서버에\x20연결하여\x20AI로\x20스프레드시트를\x20조작할\x20수\x20있게\x20해줍니다.\x20콘솔에서\x20API\x20키를\x20발급받아\x20시작하세요.','연결\x20끊김','MCP\x20클라이언트\x20설정\x20파일에\x20구성\x20추가','재시도\x20중...','exports','고유\x20세션\x20식별자입니다.\x20여러\x20Univer\x20인스턴스가\x20열려\x20있는\x20경우,\x20연결\x20충돌을\x20방지하기\x20위해\x20각\x20인스턴스는\x20서로\x20다른\x20session_id를\x20사용해야\x20합니다.','최대\x20재시도\x20횟수를\x20초과했습니다.\x20나중에\x20다시\x20시도하세요','아래\x20JSON\x20설정\x20복사','API\x20키를\x20입력하세요','1758440yBiDDO','설정이\x20성공적으로\x20저장되었습니다','인증\x20실패.\x20API\x20키를\x20확인하세요','세션\x20ID'];_0x285c=function(){return _0x201ab1;};return _0x285c();}function _0x43ea(_0xdb45d3,_0xb6bd90){_0xdb45d3=_0xdb45d3-0xed;const _0x285cb5=_0x285c();let _0x43eaf3=_0x285cb5[_0xdb45d3];return _0x43eaf3;}module[_0x117a77(0x118)]=locale;
@@ -1 +1 @@
1
- const _0x53cdda=_0x1ea5;function _0x4935(){const _0x11e9f5=['Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','2460YfCinC','Configuration\x20Parameters:','exports','1861706AtwBAH','Saving...','Enable\x20Authentication','Connected','MCP\x20Connection\x20Failed','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','Click\x20to\x20configure\x20MCP','Connecting...','Click\x20to\x20connect\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.','MCP\x20Configuration','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','API\x20key\x20with\x20Bearer\x20prefix.','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','MCP:\x20Unauthorized','Configuration\x20Steps:','MCP\x20Client\x20Configuration','API\x20Key','MCP:\x20Max\x20Retries\x20Exceeded','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','Session\x20ID','Get\x20your\x20API\x20key\x20in\x20seconds','Retrying...','4193550GzaCNJ','2896712CoGICL','4500BwrLSk','Disconnected','MCP\x20Connecting...','Univer\x20AI\x20Console','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','4977959SbFCJP','What\x20is\x20API\x20Key?','Save\x20Configuration','20BsmWID','Connection\x20Failed','3aymNcn','MCP\x20Connected','Max\x20Retries','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','Failed\x20to\x20save\x20configuration','11715ndVsNW','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','MCP\x20Disconnected','MCP:\x20Session\x20ID\x20Occupied','API\x20key\x20is\x20required','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','342026kwTcfG','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.'];_0x4935=function(){return _0x11e9f5;};return _0x4935();}(function(_0x1bc7ac,_0x5abb34){const _0x12f525=_0x1ea5,_0x1a97d5=_0x1bc7ac();while(!![]){try{const _0x3e9ef5=parseInt(_0x12f525(0x14a))/0x1+-parseInt(_0x12f525(0x119))/0x2+-parseInt(_0x12f525(0x13d))/0x3*(parseInt(_0x12f525(0x132))/0x4)+-parseInt(_0x12f525(0x142))/0x5*(-parseInt(_0x12f525(0x14d))/0x6)+parseInt(_0x12f525(0x138))/0x7+parseInt(_0x12f525(0x131))/0x8+parseInt(_0x12f525(0x130))/0x9*(-parseInt(_0x12f525(0x13b))/0xa);if(_0x3e9ef5===_0x5abb34)break;else _0x1a97d5['push'](_0x1a97d5['shift']());}catch(_0x593966){_0x1a97d5['push'](_0x1a97d5['shift']());}}}(_0x4935,0x7d004));function _0x1ea5(_0x1057fd,_0x5ca97c){_0x1057fd=_0x1057fd-0x117;const _0x4935de=_0x4935();let _0x1ea584=_0x4935de[_0x1057fd];return _0x1ea584;}const locale$1={'mcpStatus':{'disconnected':_0x53cdda(0x146),'connecting':_0x53cdda(0x134),'connected':_0x53cdda(0x13e),'failed':_0x53cdda(0x11d),'retrying':'MCP\x20Retrying...','unknown':'MCP\x20Unknown\x20Status','unauthorized':_0x53cdda(0x127),'sessionOccupied':_0x53cdda(0x147),'networkError':'MCP:\x20Network\x20Error','maxRetriesExceeded':_0x53cdda(0x12b),'clickToConnect':_0x53cdda(0x121),'clickToConfigure':_0x53cdda(0x11f)},'mcpConfig':{'title':_0x53cdda(0x123),'description':'Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','apiKey':_0x53cdda(0x12a),'apiKeyPlaceholder':'Enter\x20your\x20API\x20key','apiKeyHint':_0x53cdda(0x14c),'enableAuth':_0x53cdda(0x11b),'enableAuthHint':'Enable\x20authentication\x20for\x20secure\x20connections','connectionInfo':_0x53cdda(0x129),'mcpClientConfig':'MCP\x20Client\x20Configuration','configInstructions':_0x53cdda(0x136),'configStepTitle':_0x53cdda(0x128),'configStep1':'Copy\x20the\x20JSON\x20configuration\x20below','configStep2':_0x53cdda(0x124),'configStep3':_0x53cdda(0x11e),'sessionId':_0x53cdda(0x12d),'sessionIdDescription':_0x53cdda(0x14b),'authorizationDescription':_0x53cdda(0x125),'configParameters':_0x53cdda(0x117),'maxRetries':_0x53cdda(0x13f),'save':_0x53cdda(0x13a),'saving':_0x53cdda(0x11a),'note1':_0x53cdda(0x144),'note2':_0x53cdda(0x137),'configSaved':'Configuration\x20saved\x20successfully','configError':_0x53cdda(0x141),'apiApplyInfo':{'title':_0x53cdda(0x139),'description':_0x53cdda(0x122),'univerAiLabel':_0x53cdda(0x135),'getStarted':_0x53cdda(0x12e)},'validation':{'apiKeyRequired':_0x53cdda(0x148),'apiKeyTooShort':_0x53cdda(0x126),'invalidConfig':'Invalid\x20configuration','invalidApiKey':_0x53cdda(0x143)},'connectionStatus':{'disconnected':_0x53cdda(0x133),'connecting':_0x53cdda(0x120),'connected':_0x53cdda(0x11c),'failed':_0x53cdda(0x13c),'retrying':_0x53cdda(0x12f)},'connectionError':{'unauthorized':_0x53cdda(0x140),'sessionOccupied':_0x53cdda(0x145),'networkError':_0x53cdda(0x12c),'maxRetriesExceeded':_0x53cdda(0x149)}}},locale=locale$1;module[_0x53cdda(0x118)]=locale;
1
+ const _0x2ee197=_0x41be;function _0x18b4(){const _0x51074d=['3473770ivCRNZ','Click\x20to\x20connect\x20MCP','MCP\x20Configuration','4888ZmtFJw','11EXxfTw','Click\x20to\x20configure\x20MCP','API\x20key\x20is\x20required','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','Saving...','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','Enter\x20your\x20API\x20key','MCP:\x20Session\x20ID\x20Occupied','Configuration\x20Steps:','3376272sTrXDB','Enable\x20authentication\x20for\x20secure\x20connections','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','MCP\x20Disconnected','exports','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','Invalid\x20configuration','17353272aLWznF','Session\x20ID','What\x20is\x20API\x20Key?','4252969gURmxO','Save\x20Configuration','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','1861086JYyCOr','Connected','1PhrUYw','3zdFzSS','Retrying...','Configuration\x20saved\x20successfully','Connecting...','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','MCP:\x20Unauthorized','MCP\x20Connection\x20Failed','7767YMsVZW','MCP\x20Unknown\x20Status','Copy\x20the\x20JSON\x20configuration\x20below','Univer\x20AI\x20Console','MCP\x20Client\x20Configuration','Get\x20your\x20API\x20key\x20in\x20seconds','Max\x20Retries','Connection\x20Failed','MCP:\x20Max\x20Retries\x20Exceeded','MCP\x20Connecting...','MCP\x20Connected','3727656nmNNqf','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','5mmvVPP','MCP:\x20Network\x20Error','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','API\x20Key'];_0x18b4=function(){return _0x51074d;};return _0x18b4();}function _0x41be(_0x2892c4,_0xfbbe12){_0x2892c4=_0x2892c4-0x10d;const _0x18b4b6=_0x18b4();let _0x41be2b=_0x18b4b6[_0x2892c4];return _0x41be2b;}(function(_0x165c39,_0x452ede){const _0x2fceac=_0x41be,_0x28fbe5=_0x165c39();while(!![]){try{const _0x5eaf7d=-parseInt(_0x2fceac(0x11a))/0x1*(-parseInt(_0x2fceac(0x118))/0x2)+parseInt(_0x2fceac(0x11b))/0x3*(parseInt(_0x2fceac(0x143))/0x4)+parseInt(_0x2fceac(0x131))/0x5*(parseInt(_0x2fceac(0x12f))/0x6)+-parseInt(_0x2fceac(0x115))/0x7+-parseInt(_0x2fceac(0x139))/0x8*(-parseInt(_0x2fceac(0x124))/0x9)+-parseInt(_0x2fceac(0x136))/0xa*(parseInt(_0x2fceac(0x13a))/0xb)+-parseInt(_0x2fceac(0x112))/0xc;if(_0x5eaf7d===_0x452ede)break;else _0x28fbe5['push'](_0x28fbe5['shift']());}catch(_0x480881){_0x28fbe5['push'](_0x28fbe5['shift']());}}}(_0x18b4,0x7f792));const locale$1={'mcpStatus':{'disconnected':_0x2ee197(0x10e),'connecting':_0x2ee197(0x12d),'connected':_0x2ee197(0x12e),'failed':_0x2ee197(0x123),'retrying':'MCP\x20Retrying...','unknown':_0x2ee197(0x125),'unauthorized':_0x2ee197(0x122),'sessionOccupied':_0x2ee197(0x141),'networkError':_0x2ee197(0x132),'maxRetriesExceeded':_0x2ee197(0x12c),'clickToConnect':_0x2ee197(0x137),'clickToConfigure':_0x2ee197(0x13b)},'mcpConfig':{'title':_0x2ee197(0x138),'description':'Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','apiKey':_0x2ee197(0x135),'apiKeyPlaceholder':_0x2ee197(0x140),'apiKeyHint':_0x2ee197(0x130),'enableAuth':'Enable\x20Authentication','enableAuthHint':_0x2ee197(0x144),'connectionInfo':_0x2ee197(0x128),'mcpClientConfig':_0x2ee197(0x128),'configInstructions':_0x2ee197(0x145),'configStepTitle':_0x2ee197(0x142),'configStep1':_0x2ee197(0x126),'configStep2':_0x2ee197(0x10d),'configStep3':'Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','sessionId':_0x2ee197(0x113),'sessionIdDescription':_0x2ee197(0x121),'authorizationDescription':'API\x20key\x20with\x20Bearer\x20prefix.','configParameters':'Configuration\x20Parameters:','maxRetries':_0x2ee197(0x12a),'save':_0x2ee197(0x116),'saving':_0x2ee197(0x13e),'note1':'Configuration\x20changes\x20will\x20take\x20effect\x20immediately','note2':_0x2ee197(0x110),'configSaved':_0x2ee197(0x11d),'configError':'Failed\x20to\x20save\x20configuration','apiApplyInfo':{'title':_0x2ee197(0x114),'description':_0x2ee197(0x11f),'univerAiLabel':_0x2ee197(0x127),'getStarted':_0x2ee197(0x129)},'validation':{'apiKeyRequired':_0x2ee197(0x13c),'apiKeyTooShort':_0x2ee197(0x133),'invalidConfig':_0x2ee197(0x111),'invalidApiKey':_0x2ee197(0x134)},'connectionStatus':{'disconnected':'Disconnected','connecting':_0x2ee197(0x11e),'connected':_0x2ee197(0x119),'failed':_0x2ee197(0x12b),'retrying':_0x2ee197(0x11c)},'connectionError':{'unauthorized':_0x2ee197(0x13f),'sessionOccupied':_0x2ee197(0x13d),'networkError':_0x2ee197(0x120),'maxRetriesExceeded':_0x2ee197(0x117)}}},locale=locale$1;module[_0x2ee197(0x10f)]=locale;
@@ -1 +1 @@
1
- const _0xae575b=_0x443d;function _0x295a(){const _0x186f60=['MCP:\x20ID\x20relácie\x20je\x20obsadené','Kliknite\x20na\x20pripojenie\x20MCP','API\x20kľúč\x20vás\x20pripojí\x20k\x20serveru\x20Univer\x20MCP\x20a\x20umožní\x20používať\x20AI\x20pri\x20práci\x20s\x20tabuľkami.\x20Získajte\x20svoj\x20API\x20kľúč\x20v\x20našej\x20konzole.','Povoliť\x20overenie','Odpojené','Váš\x20API\x20kľúč\x20je\x20bezpečne\x20uložený\x20v\x20lokálnom\x20úložisku','Jedinečný\x20identifikátor\x20relácie.\x20Ak\x20máte\x20otvorených\x20viac\x20inštancií\x20Univer,\x20každá\x20inštancia\x20musí\x20používať\x20iné\x20session_id,\x20aby\x20sa\x20predišlo\x20konfliktom\x20pripojenia.','API\x20kľúč\x20s\x20prefixom\x20Bearer.','Kliknite\x20na\x20konfiguráciu\x20MCP','MCP:\x20Neautorizované','Pridajte\x20nasledujúcu\x20konfiguráciu\x20do\x20nastavení\x20klienta\x20MCP:','Konfigurácia\x20klienta\x20MCP','Získajte\x20svoj\x20API\x20kľúč\x20za\x20pár\x20sekúnd','MCP\x20odpojené','89927acWzhk','1763365wfDJCX','Parametre\x20konfigurácie:','MCP\x20neznámy\x20stav','756KwUWzc','MCP\x20pripojené','Univer\x20AI\x20konzola','exports','Nepodarilo\x20sa\x20uložiť\x20konfiguráciu','3048RtZaeO','906PNyTbS','Konfigurácia\x20MCP','MCP\x20opakuje\x20pokus...','4249552YofhQV','Reštartujte\x20klienta\x20MCP,\x20aby\x20sa\x20konfigurácia\x20použila','Pripojené','Uložiť\x20konfiguráciu','Pripája\x20sa...','24PPvtfw','9MWiikk','Pripojenie\x20zlyhalo','1188080JzbupG','Ukladá\x20sa...','Kroky\x20konfigurácie:','Chyba\x20sieťového\x20pripojenia.\x20Skontrolujte\x20svoje\x20internetové\x20pripojenie','Pripojenie\x20MCP\x20zlyhalo','Maximálny\x20počet\x20pokusov','ID\x20relácie','Maximálny\x20počet\x20pokusov\x20bol\x20prekročený.\x20Skúste\x20neskôr','API\x20kľúč\x20je\x20povinný','4080LLqaxz','MCP:\x20Prekročený\x20počet\x20pokusov','Povoliť\x20overenie\x20pre\x20bezpečné\x20pripojenia','API\x20kľúč\x20musí\x20mať\x20aspoň\x2010\x20znakov','496331NkqBMm','2Gdffxz','MCP:\x20Sieťová\x20chyba'];_0x295a=function(){return _0x186f60;};return _0x295a();}(function(_0x811c18,_0x119acf){const _0x52572d=_0x443d,_0x2d4e3e=_0x811c18();while(!![]){try{const _0x4fe2cb=-parseInt(_0x52572d(0xc5))/0x1*(parseInt(_0x52572d(0xb5))/0x2)+-parseInt(_0x52572d(0xcf))/0x3*(-parseInt(_0x52572d(0xe3))/0x4)+parseInt(_0x52572d(0xc6))/0x5+parseInt(_0x52572d(0xce))/0x6*(parseInt(_0x52572d(0xc9))/0x7)+parseInt(_0x52572d(0xd2))/0x8*(-parseInt(_0x52572d(0xd8))/0x9)+parseInt(_0x52572d(0xda))/0xa+-parseInt(_0x52572d(0xb4))/0xb*(-parseInt(_0x52572d(0xd7))/0xc);if(_0x4fe2cb===_0x119acf)break;else _0x2d4e3e['push'](_0x2d4e3e['shift']());}catch(_0x1a97ac){_0x2d4e3e['push'](_0x2d4e3e['shift']());}}}(_0x295a,0x4a192));function _0x443d(_0x17366d,_0xeec106){_0x17366d=_0x17366d-0xb1;const _0x295a42=_0x295a();let _0x443df6=_0x295a42[_0x17366d];return _0x443df6;}const locale={'mcpStatus':{'disconnected':_0xae575b(0xc4),'connecting':'MCP\x20sa\x20pripája...','connected':_0xae575b(0xca),'failed':_0xae575b(0xde),'retrying':_0xae575b(0xd1),'unknown':_0xae575b(0xc8),'unauthorized':_0xae575b(0xc0),'sessionOccupied':_0xae575b(0xb7),'networkError':_0xae575b(0xb6),'maxRetriesExceeded':_0xae575b(0xb1),'clickToConnect':_0xae575b(0xb8),'clickToConfigure':_0xae575b(0xbf)},'mcpConfig':{'title':_0xae575b(0xd0),'description':'Nakonfigurujte\x20MCP\x20na\x20používanie\x20AI\x20pri\x20práci\x20s\x20tabuľkami','apiKey':'API\x20kľúč','apiKeyPlaceholder':'Zadajte\x20svoj\x20API\x20kľúč','apiKeyHint':'Váš\x20API\x20kľúč\x20sa\x20uloží\x20lokálne\x20v\x20tomto\x20prehliadači','enableAuth':_0xae575b(0xba),'enableAuthHint':_0xae575b(0xb2),'connectionInfo':_0xae575b(0xc2),'mcpClientConfig':'Konfigurácia\x20klienta\x20MCP','configInstructions':_0xae575b(0xc1),'configStepTitle':_0xae575b(0xdc),'configStep1':'Skopírujte\x20nižšie\x20uvedenú\x20konfiguráciu\x20JSON','configStep2':'Pridajte\x20konfiguráciu\x20do\x20súboru\x20nastavení\x20klienta\x20MCP','configStep3':_0xae575b(0xd3),'sessionId':_0xae575b(0xe0),'sessionIdDescription':_0xae575b(0xbd),'authorizationDescription':_0xae575b(0xbe),'configParameters':_0xae575b(0xc7),'maxRetries':_0xae575b(0xdf),'save':_0xae575b(0xd5),'saving':_0xae575b(0xdb),'note1':'Zmeny\x20konfigurácie\x20sa\x20prejavia\x20okamžite','note2':_0xae575b(0xbc),'configSaved':'Konfigurácia\x20bola\x20úspešne\x20uložená','configError':_0xae575b(0xcd),'apiApplyInfo':{'title':'Čo\x20je\x20API\x20kľúč?','description':_0xae575b(0xb9),'univerAiLabel':_0xae575b(0xcb),'getStarted':_0xae575b(0xc3)},'validation':{'apiKeyRequired':_0xae575b(0xe2),'apiKeyTooShort':_0xae575b(0xb3),'invalidConfig':'Neplatná\x20konfigurácia','invalidApiKey':'Neplatný\x20API\x20kľúč,\x20skontrolujte,\x20či\x20je\x20správny'},'connectionStatus':{'disconnected':_0xae575b(0xbb),'connecting':_0xae575b(0xd6),'connected':_0xae575b(0xd4),'failed':_0xae575b(0xd9),'retrying':'Skúša\x20sa\x20znova...'},'connectionError':{'unauthorized':'Overenie\x20zlyhalo,\x20skontrolujte\x20svoj\x20API\x20kľúč','sessionOccupied':'ID\x20relácie\x20je\x20momentálne\x20obsadené,\x20skúste\x20neskôr','networkError':_0xae575b(0xdd),'maxRetriesExceeded':_0xae575b(0xe1)}}};module[_0xae575b(0xcc)]=locale;
1
+ const _0x14a0d1=_0x5de2;function _0x4c4e(){const _0x16fe78=['8200MCvNRg','API\x20kľúč\x20s\x20prefixom\x20Bearer.','Povoliť\x20overenie','7278920JeYcMa','Overenie\x20zlyhalo,\x20skontrolujte\x20svoj\x20API\x20kľúč','MCP\x20opakuje\x20pokus...','Ukladá\x20sa...','MCP:\x20ID\x20relácie\x20je\x20obsadené','168mfQFBE','Kroky\x20konfigurácie:','Pripojenie\x20zlyhalo','3888pGUwnr','API\x20kľúč\x20musí\x20mať\x20aspoň\x2010\x20znakov','Konfigurácia\x20MCP','MCP\x20pripojené','Odpojené','Pridajte\x20konfiguráciu\x20do\x20súboru\x20nastavení\x20klienta\x20MCP','Chyba\x20sieťového\x20pripojenia.\x20Skontrolujte\x20svoje\x20internetové\x20pripojenie','Maximálny\x20počet\x20pokusov\x20bol\x20prekročený.\x20Skúste\x20neskôr','Pridajte\x20nasledujúcu\x20konfiguráciu\x20do\x20nastavení\x20klienta\x20MCP:','Kliknite\x20na\x20konfiguráciu\x20MCP','Kliknite\x20na\x20pripojenie\x20MCP','Konfigurácia\x20bola\x20úspešne\x20uložená','Povoliť\x20overenie\x20pre\x20bezpečné\x20pripojenia','MCP:\x20Sieťová\x20chyba','Neplatná\x20konfigurácia','Čo\x20je\x20API\x20kľúč?','Získajte\x20svoj\x20API\x20kľúč\x20za\x20pár\x20sekúnd','32301xpkJch','Pripojenie\x20MCP\x20zlyhalo','MCP:\x20Prekročený\x20počet\x20pokusov','656112PDnXjo','Konfigurácia\x20klienta\x20MCP','Váš\x20API\x20kľúč\x20sa\x20uloží\x20lokálne\x20v\x20tomto\x20prehliadači','1355ITgYMR','MCP\x20odpojené','Uložiť\x20konfiguráciu','440fNAeaG','Parametre\x20konfigurácie:','566944sslIDM','exports','674106evVVzc','35SrYRTI','MCP\x20sa\x20pripája...','ID\x20relácie\x20je\x20momentálne\x20obsadené,\x20skúste\x20neskôr','Skúša\x20sa\x20znova...','Pripojené','Pripája\x20sa...','Reštartujte\x20klienta\x20MCP,\x20aby\x20sa\x20konfigurácia\x20použila','API\x20kľúč\x20vás\x20pripojí\x20k\x20serveru\x20Univer\x20MCP\x20a\x20umožní\x20používať\x20AI\x20pri\x20práci\x20s\x20tabuľkami.\x20Získajte\x20svoj\x20API\x20kľúč\x20v\x20našej\x20konzole.','MCP:\x20Neautorizované','Univer\x20AI\x20konzola'];_0x4c4e=function(){return _0x16fe78;};return _0x4c4e();}(function(_0x1e9fd4,_0x167fce){const _0x11e120=_0x5de2,_0x88988e=_0x1e9fd4();while(!![]){try{const _0x37f2fd=parseInt(_0x11e120(0xf7))/0x1+-parseInt(_0x11e120(0x10f))/0x2*(-parseInt(_0x11e120(0x10c))/0x3)+-parseInt(_0x11e120(0x104))/0x4*(parseInt(_0x11e120(0x126))/0x5)+-parseInt(_0x11e120(0xf9))/0x6*(parseInt(_0x11e120(0xfa))/0x7)+-parseInt(_0x11e120(0x123))/0x8+parseInt(_0x11e120(0x120))/0x9*(parseInt(_0x11e120(0xf5))/0xa)+parseInt(_0x11e120(0x107))/0xb;if(_0x37f2fd===_0x167fce)break;else _0x88988e['push'](_0x88988e['shift']());}catch(_0x3dfb1e){_0x88988e['push'](_0x88988e['shift']());}}}(_0x4c4e,0x484bd));function _0x5de2(_0x120503,_0x1f416a){_0x120503=_0x120503-0xf3;const _0x4c4e0e=_0x4c4e();let _0x5de25e=_0x4c4e0e[_0x120503];return _0x5de25e;}const locale={'mcpStatus':{'disconnected':_0x14a0d1(0xf3),'connecting':_0x14a0d1(0xfb),'connected':_0x14a0d1(0x112),'failed':_0x14a0d1(0x121),'retrying':_0x14a0d1(0x109),'unknown':'MCP\x20neznámy\x20stav','unauthorized':_0x14a0d1(0x102),'sessionOccupied':_0x14a0d1(0x10b),'networkError':_0x14a0d1(0x11c),'maxRetriesExceeded':_0x14a0d1(0x122),'clickToConnect':_0x14a0d1(0x119),'clickToConfigure':_0x14a0d1(0x118)},'mcpConfig':{'title':_0x14a0d1(0x111),'description':'Nakonfigurujte\x20MCP\x20na\x20používanie\x20AI\x20pri\x20práci\x20s\x20tabuľkami','apiKey':'API\x20kľúč','apiKeyPlaceholder':'Zadajte\x20svoj\x20API\x20kľúč','apiKeyHint':_0x14a0d1(0x125),'enableAuth':_0x14a0d1(0x106),'enableAuthHint':_0x14a0d1(0x11b),'connectionInfo':_0x14a0d1(0x124),'mcpClientConfig':_0x14a0d1(0x124),'configInstructions':_0x14a0d1(0x117),'configStepTitle':_0x14a0d1(0x10d),'configStep1':'Skopírujte\x20nižšie\x20uvedenú\x20konfiguráciu\x20JSON','configStep2':_0x14a0d1(0x114),'configStep3':_0x14a0d1(0x100),'sessionId':'ID\x20relácie','sessionIdDescription':'Jedinečný\x20identifikátor\x20relácie.\x20Ak\x20máte\x20otvorených\x20viac\x20inštancií\x20Univer,\x20každá\x20inštancia\x20musí\x20používať\x20iné\x20session_id,\x20aby\x20sa\x20predišlo\x20konfliktom\x20pripojenia.','authorizationDescription':_0x14a0d1(0x105),'configParameters':_0x14a0d1(0xf6),'maxRetries':'Maximálny\x20počet\x20pokusov','save':_0x14a0d1(0xf4),'saving':_0x14a0d1(0x10a),'note1':'Zmeny\x20konfigurácie\x20sa\x20prejavia\x20okamžite','note2':'Váš\x20API\x20kľúč\x20je\x20bezpečne\x20uložený\x20v\x20lokálnom\x20úložisku','configSaved':_0x14a0d1(0x11a),'configError':'Nepodarilo\x20sa\x20uložiť\x20konfiguráciu','apiApplyInfo':{'title':_0x14a0d1(0x11e),'description':_0x14a0d1(0x101),'univerAiLabel':_0x14a0d1(0x103),'getStarted':_0x14a0d1(0x11f)},'validation':{'apiKeyRequired':'API\x20kľúč\x20je\x20povinný','apiKeyTooShort':_0x14a0d1(0x110),'invalidConfig':_0x14a0d1(0x11d),'invalidApiKey':'Neplatný\x20API\x20kľúč,\x20skontrolujte,\x20či\x20je\x20správny'},'connectionStatus':{'disconnected':_0x14a0d1(0x113),'connecting':_0x14a0d1(0xff),'connected':_0x14a0d1(0xfe),'failed':_0x14a0d1(0x10e),'retrying':_0x14a0d1(0xfd)},'connectionError':{'unauthorized':_0x14a0d1(0x108),'sessionOccupied':_0x14a0d1(0xfc),'networkError':_0x14a0d1(0x115),'maxRetriesExceeded':_0x14a0d1(0x116)}}};module[_0x14a0d1(0xf8)]=locale;
@@ -1 +1 @@
1
- function _0x206b(){const _0x340f4a=['Đang\x20lưu...','MCP\x20Kết\x20nối\x20thất\x20bại','Cấu\x20hình\x20đã\x20được\x20lưu\x20thành\x20công','Định\x20danh\x20phiên\x20duy\x20nhất.\x20Nếu\x20bạn\x20mở\x20nhiều\x20phiên\x20bản\x20Univer,\x20mỗi\x20phiên\x20bản\x20phải\x20sử\x20dụng\x20một\x20session_id\x20khác\x20nhau\x20để\x20tránh\x20xung\x20đột\x20kết\x20nối.','Các\x20bước\x20cấu\x20hình:','Cấu\x20hình\x20máy\x20khách\x20MCP','421RwwQeD','Đã\x20ngắt\x20kết\x20nối','MCP:\x20Lỗi\x20mạng','MCP\x20Đã\x20ngắt\x20kết\x20nối','Đang\x20thử\x20lại...','Số\x20lần\x20thử\x20lại\x20tối\x20đa','Nhận\x20khóa\x20API\x20của\x20bạn\x20trong\x20vài\x20giây','781890xepoUP','Lỗi\x20kết\x20nối\x20mạng.\x20Vui\x20lòng\x20kiểm\x20tra\x20kết\x20nối\x20internet\x20của\x20bạn','Nhấp\x20để\x20cấu\x20hình\x20MCP','MCP:\x20Không\x20được\x20phép','MCP:\x20ID\x20phiên\x20đã\x20bị\x20chiếm\x20dụng','Khóa\x20API\x20với\x20tiền\x20tố\x20Bearer.','Khóa\x20API\x20không\x20hợp\x20lệ,\x20vui\x20lòng\x20kiểm\x20tra\x20xem\x20khóa\x20có\x20chính\x20xác\x20không','MCP\x20Đang\x20thử\x20lại...','Lưu\x20cấu\x20hình\x20thất\x20bại','Yêu\x20cầu\x20khóa\x20API','Khóa\x20API\x20kết\x20nối\x20bạn\x20với\x20Máy\x20chủ\x20Univer\x20MCP\x20để\x20sử\x20dụng\x20AI\x20cho\x20việc\x20vận\x20hành\x20bảng\x20tính.\x20Nhận\x20khóa\x20API\x20của\x20bạn\x20từ\x20bảng\x20điều\x20khiển\x20của\x20chúng\x20tôi\x20để\x20bắt\x20đầu.','9523488tsKchY','7282QXuHfv','8qMLjwC','Đã\x20kết\x20nối','Nhấp\x20để\x20kết\x20nối\x20MCP','MCP\x20Trạng\x20thái\x20không\x20xác\x20định','Tham\x20số\x20cấu\x20hình:','3188709LrnmEi','Khóa\x20API\x20phải\x20dài\x20ít\x20nhất\x2010\x20ký\x20tự','Bảng\x20điều\x20khiển\x20Univer\x20AI','Bật\x20xác\x20thực\x20cho\x20các\x20kết\x20nối\x20an\x20toàn','Khóa\x20API','Session-id\x20hiện\x20đang\x20bị\x20chiếm\x20dụng,\x20vui\x20lòng\x20thử\x20lại\x20sau','Vượt\x20quá\x20số\x20lần\x20thử\x20lại\x20tối\x20đa.\x20Vui\x20lòng\x20thử\x20lại\x20sau','11EBuCDW','MCP:\x20Vượt\x20quá\x20số\x20lần\x20thử\x20lại\x20tối\x20đa','1406030sEgrlO','MCP\x20Đang\x20kết\x20nối...','Cấu\x20hình\x20không\x20hợp\x20lệ','Khởi\x20động\x20lại\x20máy\x20khách\x20MCP\x20của\x20bạn\x20để\x20áp\x20dụng\x20cấu\x20hình','55xCuizc','26007PUCnYL','172LSeXao','ID\x20phiên','Cấu\x20hình\x20MCP\x20để\x20sử\x20dụng\x20AI\x20cho\x20việc\x20vận\x20hành\x20bảng\x20tính','9171953QCDskU','MCP\x20Đã\x20kết\x20nối'];_0x206b=function(){return _0x340f4a;};return _0x206b();}const _0x3ea447=_0x28f8;(function(_0x1459d1,_0x4f0495){const _0x68c772=_0x28f8,_0x103c77=_0x1459d1();while(!![]){try{const _0x1bbdf1=parseInt(_0x68c772(0xef))/0x1*(parseInt(_0x68c772(0x102))/0x2)+parseInt(_0x68c772(0x116))/0x3*(parseInt(_0x68c772(0x117))/0x4)+parseInt(_0x68c772(0x115))/0x5*(-parseInt(_0x68c772(0xf6))/0x6)+parseInt(_0x68c772(0x11a))/0x7+parseInt(_0x68c772(0x103))/0x8*(-parseInt(_0x68c772(0x108))/0x9)+parseInt(_0x68c772(0x111))/0xa*(parseInt(_0x68c772(0x10f))/0xb)+-parseInt(_0x68c772(0x101))/0xc;if(_0x1bbdf1===_0x4f0495)break;else _0x103c77['push'](_0x103c77['shift']());}catch(_0x36a5e3){_0x103c77['push'](_0x103c77['shift']());}}}(_0x206b,0xbd3d0));const locale={'mcpStatus':{'disconnected':_0x3ea447(0xf2),'connecting':_0x3ea447(0x112),'connected':_0x3ea447(0x11b),'failed':_0x3ea447(0xea),'retrying':_0x3ea447(0xfd),'unknown':_0x3ea447(0x106),'unauthorized':_0x3ea447(0xf9),'sessionOccupied':_0x3ea447(0xfa),'networkError':_0x3ea447(0xf1),'maxRetriesExceeded':_0x3ea447(0x110),'clickToConnect':_0x3ea447(0x105),'clickToConfigure':_0x3ea447(0xf8)},'mcpConfig':{'title':'Cấu\x20hình\x20MCP','description':_0x3ea447(0x119),'apiKey':_0x3ea447(0x10c),'apiKeyPlaceholder':'Nhập\x20khóa\x20API\x20của\x20bạn','apiKeyHint':'Khóa\x20API\x20của\x20bạn\x20sẽ\x20được\x20lưu\x20trữ\x20cục\x20bộ\x20trong\x20trình\x20duyệt\x20này','enableAuth':'Bật\x20xác\x20thực','enableAuthHint':_0x3ea447(0x10b),'connectionInfo':_0x3ea447(0xee),'mcpClientConfig':_0x3ea447(0xee),'configInstructions':'Thêm\x20cấu\x20hình\x20sau\x20vào\x20cài\x20đặt\x20máy\x20khách\x20MCP\x20của\x20bạn:','configStepTitle':_0x3ea447(0xed),'configStep1':'Sao\x20chép\x20cấu\x20hình\x20JSON\x20bên\x20dưới','configStep2':'Thêm\x20cấu\x20hình\x20vào\x20tệp\x20cài\x20đặt\x20máy\x20khách\x20MCP\x20của\x20bạn','configStep3':_0x3ea447(0x114),'sessionId':_0x3ea447(0x118),'sessionIdDescription':_0x3ea447(0xec),'authorizationDescription':_0x3ea447(0xfb),'configParameters':_0x3ea447(0x107),'maxRetries':_0x3ea447(0xf4),'save':'Lưu\x20cấu\x20hình','saving':_0x3ea447(0xe9),'note1':'Thay\x20đổi\x20cấu\x20hình\x20sẽ\x20có\x20hiệu\x20lực\x20ngay\x20lập\x20tức','note2':'Khóa\x20API\x20của\x20bạn\x20được\x20lưu\x20trữ\x20an\x20toàn\x20trong\x20bộ\x20nhớ\x20cục\x20bộ','configSaved':_0x3ea447(0xeb),'configError':_0x3ea447(0xfe),'apiApplyInfo':{'title':'Khóa\x20API\x20là\x20gì?','description':_0x3ea447(0x100),'univerAiLabel':_0x3ea447(0x10a),'getStarted':_0x3ea447(0xf5)},'validation':{'apiKeyRequired':_0x3ea447(0xff),'apiKeyTooShort':_0x3ea447(0x109),'invalidConfig':_0x3ea447(0x113),'invalidApiKey':_0x3ea447(0xfc)},'connectionStatus':{'disconnected':_0x3ea447(0xf0),'connecting':'Đang\x20kết\x20nối...','connected':_0x3ea447(0x104),'failed':'Kết\x20nối\x20thất\x20bại','retrying':_0x3ea447(0xf3)},'connectionError':{'unauthorized':'Xác\x20thực\x20thất\x20bại,\x20vui\x20lòng\x20kiểm\x20tra\x20khóa\x20API\x20của\x20bạn','sessionOccupied':_0x3ea447(0x10d),'networkError':_0x3ea447(0xf7),'maxRetriesExceeded':_0x3ea447(0x10e)}}};function _0x28f8(_0x1ac7a0,_0x3c0ad6){_0x1ac7a0=_0x1ac7a0-0xe9;const _0x206bc2=_0x206b();let _0x28f871=_0x206bc2[_0x1ac7a0];return _0x28f871;}module['exports']=locale;
1
+ const _0x1fdc2e=_0x2a58;(function(_0x37fa4d,_0x4f9210){const _0x202996=_0x2a58,_0x45c61d=_0x37fa4d();while(!![]){try{const _0xae6ca1=-parseInt(_0x202996(0x1c2))/0x1+-parseInt(_0x202996(0x1cd))/0x2*(-parseInt(_0x202996(0x1d8))/0x3)+-parseInt(_0x202996(0x1be))/0x4*(parseInt(_0x202996(0x1ca))/0x5)+parseInt(_0x202996(0x1af))/0x6*(parseInt(_0x202996(0x1b6))/0x7)+-parseInt(_0x202996(0x1c7))/0x8*(parseInt(_0x202996(0x1da))/0x9)+parseInt(_0x202996(0x1bf))/0xa+-parseInt(_0x202996(0x1c8))/0xb*(-parseInt(_0x202996(0x1d2))/0xc);if(_0xae6ca1===_0x4f9210)break;else _0x45c61d['push'](_0x45c61d['shift']());}catch(_0x141c9e){_0x45c61d['push'](_0x45c61d['shift']());}}}(_0xa05c,0x96e67));const locale={'mcpStatus':{'disconnected':_0x1fdc2e(0x1ad),'connecting':_0x1fdc2e(0x1ae),'connected':_0x1fdc2e(0x1b8),'failed':_0x1fdc2e(0x1ce),'retrying':_0x1fdc2e(0x1cb),'unknown':_0x1fdc2e(0x1d4),'unauthorized':'MCP:\x20Không\x20được\x20phép','sessionOccupied':'MCP:\x20ID\x20phiên\x20đã\x20bị\x20chiếm\x20dụng','networkError':_0x1fdc2e(0x1d5),'maxRetriesExceeded':_0x1fdc2e(0x1bc),'clickToConnect':_0x1fdc2e(0x1cc),'clickToConfigure':'Nhấp\x20để\x20cấu\x20hình\x20MCP'},'mcpConfig':{'title':_0x1fdc2e(0x1ac),'description':_0x1fdc2e(0x1b2),'apiKey':_0x1fdc2e(0x1d3),'apiKeyPlaceholder':_0x1fdc2e(0x1a7),'apiKeyHint':'Khóa\x20API\x20của\x20bạn\x20sẽ\x20được\x20lưu\x20trữ\x20cục\x20bộ\x20trong\x20trình\x20duyệt\x20này','enableAuth':'Bật\x20xác\x20thực','enableAuthHint':_0x1fdc2e(0x1c6),'connectionInfo':'Cấu\x20hình\x20máy\x20khách\x20MCP','mcpClientConfig':_0x1fdc2e(0x1a9),'configInstructions':_0x1fdc2e(0x1b9),'configStepTitle':'Các\x20bước\x20cấu\x20hình:','configStep1':'Sao\x20chép\x20cấu\x20hình\x20JSON\x20bên\x20dưới','configStep2':_0x1fdc2e(0x1cf),'configStep3':_0x1fdc2e(0x1a8),'sessionId':_0x1fdc2e(0x1b1),'sessionIdDescription':_0x1fdc2e(0x1b5),'authorizationDescription':_0x1fdc2e(0x1ab),'configParameters':_0x1fdc2e(0x1d7),'maxRetries':'Số\x20lần\x20thử\x20lại\x20tối\x20đa','save':_0x1fdc2e(0x1c0),'saving':_0x1fdc2e(0x1c9),'note1':_0x1fdc2e(0x1bd),'note2':_0x1fdc2e(0x1b4),'configSaved':_0x1fdc2e(0x1a6),'configError':_0x1fdc2e(0x1b0),'apiApplyInfo':{'title':_0x1fdc2e(0x1c4),'description':_0x1fdc2e(0x1d0),'univerAiLabel':_0x1fdc2e(0x1d9),'getStarted':_0x1fdc2e(0x1b7)},'validation':{'apiKeyRequired':'Yêu\x20cầu\x20khóa\x20API','apiKeyTooShort':_0x1fdc2e(0x1ba),'invalidConfig':_0x1fdc2e(0x1db),'invalidApiKey':_0x1fdc2e(0x1c3)},'connectionStatus':{'disconnected':'Đã\x20ngắt\x20kết\x20nối','connecting':_0x1fdc2e(0x1c5),'connected':_0x1fdc2e(0x1b3),'failed':_0x1fdc2e(0x1c1),'retrying':_0x1fdc2e(0x1d1)},'connectionError':{'unauthorized':_0x1fdc2e(0x1d6),'sessionOccupied':_0x1fdc2e(0x1bb),'networkError':'Lỗi\x20kết\x20nối\x20mạng.\x20Vui\x20lòng\x20kiểm\x20tra\x20kết\x20nối\x20internet\x20của\x20bạn','maxRetriesExceeded':_0x1fdc2e(0x1aa)}}};module['exports']=locale;function _0x2a58(_0x4eba2d,_0x3a6ccf){_0x4eba2d=_0x4eba2d-0x1a6;const _0xa05c34=_0xa05c();let _0x2a58ac=_0xa05c34[_0x4eba2d];return _0x2a58ac;}function _0xa05c(){const _0x522097=['Cấu\x20hình\x20MCP','MCP\x20Đã\x20ngắt\x20kết\x20nối','MCP\x20Đang\x20kết\x20nối...','79986KBnLVL','Lưu\x20cấu\x20hình\x20thất\x20bại','ID\x20phiên','Cấu\x20hình\x20MCP\x20để\x20sử\x20dụng\x20AI\x20cho\x20việc\x20vận\x20hành\x20bảng\x20tính','Đã\x20kết\x20nối','Khóa\x20API\x20của\x20bạn\x20được\x20lưu\x20trữ\x20an\x20toàn\x20trong\x20bộ\x20nhớ\x20cục\x20bộ','Định\x20danh\x20phiên\x20duy\x20nhất.\x20Nếu\x20bạn\x20mở\x20nhiều\x20phiên\x20bản\x20Univer,\x20mỗi\x20phiên\x20bản\x20phải\x20sử\x20dụng\x20một\x20session_id\x20khác\x20nhau\x20để\x20tránh\x20xung\x20đột\x20kết\x20nối.','448oKfJgx','Nhận\x20khóa\x20API\x20của\x20bạn\x20trong\x20vài\x20giây','MCP\x20Đã\x20kết\x20nối','Thêm\x20cấu\x20hình\x20sau\x20vào\x20cài\x20đặt\x20máy\x20khách\x20MCP\x20của\x20bạn:','Khóa\x20API\x20phải\x20dài\x20ít\x20nhất\x2010\x20ký\x20tự','Session-id\x20hiện\x20đang\x20bị\x20chiếm\x20dụng,\x20vui\x20lòng\x20thử\x20lại\x20sau','MCP:\x20Vượt\x20quá\x20số\x20lần\x20thử\x20lại\x20tối\x20đa','Thay\x20đổi\x20cấu\x20hình\x20sẽ\x20có\x20hiệu\x20lực\x20ngay\x20lập\x20tức','57212zKtcfI','4940830lagjrX','Lưu\x20cấu\x20hình','Kết\x20nối\x20thất\x20bại','1119347PMRAlw','Khóa\x20API\x20không\x20hợp\x20lệ,\x20vui\x20lòng\x20kiểm\x20tra\x20xem\x20khóa\x20có\x20chính\x20xác\x20không','Khóa\x20API\x20là\x20gì?','Đang\x20kết\x20nối...','Bật\x20xác\x20thực\x20cho\x20các\x20kết\x20nối\x20an\x20toàn','45464ggFlFc','241406msyEfc','Đang\x20lưu...','265AuduxA','MCP\x20Đang\x20thử\x20lại...','Nhấp\x20để\x20kết\x20nối\x20MCP','799382CIOuAm','MCP\x20Kết\x20nối\x20thất\x20bại','Thêm\x20cấu\x20hình\x20vào\x20tệp\x20cài\x20đặt\x20máy\x20khách\x20MCP\x20của\x20bạn','Khóa\x20API\x20kết\x20nối\x20bạn\x20với\x20Máy\x20chủ\x20Univer\x20MCP\x20để\x20sử\x20dụng\x20AI\x20cho\x20việc\x20vận\x20hành\x20bảng\x20tính.\x20Nhận\x20khóa\x20API\x20của\x20bạn\x20từ\x20bảng\x20điều\x20khiển\x20của\x20chúng\x20tôi\x20để\x20bắt\x20đầu.','Đang\x20thử\x20lại...','516LSgZiG','Khóa\x20API','MCP\x20Trạng\x20thái\x20không\x20xác\x20định','MCP:\x20Lỗi\x20mạng','Xác\x20thực\x20thất\x20bại,\x20vui\x20lòng\x20kiểm\x20tra\x20khóa\x20API\x20của\x20bạn','Tham\x20số\x20cấu\x20hình:','9GRJbyA','Bảng\x20điều\x20khiển\x20Univer\x20AI','1575HTeqAh','Cấu\x20hình\x20không\x20hợp\x20lệ','Cấu\x20hình\x20đã\x20được\x20lưu\x20thành\x20công','Nhập\x20khóa\x20API\x20của\x20bạn','Khởi\x20động\x20lại\x20máy\x20khách\x20MCP\x20của\x20bạn\x20để\x20áp\x20dụng\x20cấu\x20hình','Cấu\x20hình\x20máy\x20khách\x20MCP','Vượt\x20quá\x20số\x20lần\x20thử\x20lại\x20tối\x20đa.\x20Vui\x20lòng\x20thử\x20lại\x20sau','Khóa\x20API\x20với\x20tiền\x20tố\x20Bearer.'];_0xa05c=function(){return _0x522097;};return _0xa05c();}
@@ -1 +1 @@
1
- const _0x32948b=_0x1c5c;(function(_0x19fe29,_0x115879){const _0x4c4dc0=_0x1c5c,_0x437214=_0x19fe29();while(!![]){try{const _0x586b64=parseInt(_0x4c4dc0(0xdc))/0x1*(parseInt(_0x4c4dc0(0xf3))/0x2)+parseInt(_0x4c4dc0(0xd9))/0x3*(-parseInt(_0x4c4dc0(0xf8))/0x4)+parseInt(_0x4c4dc0(0xf4))/0x5+-parseInt(_0x4c4dc0(0xd5))/0x6+-parseInt(_0x4c4dc0(0xe9))/0x7*(parseInt(_0x4c4dc0(0xd3))/0x8)+-parseInt(_0x4c4dc0(0xde))/0x9*(-parseInt(_0x4c4dc0(0xe1))/0xa)+parseInt(_0x4c4dc0(0xe0))/0xb*(parseInt(_0x4c4dc0(0xce))/0xc);if(_0x586b64===_0x115879)break;else _0x437214['push'](_0x437214['shift']());}catch(_0x4fe2b8){_0x437214['push'](_0x437214['shift']());}}}(_0x3b10,0x7fa09));const locale={'mcpStatus':{'disconnected':'MCP\x20已断开','connecting':_0x32948b(0xf9),'connected':_0x32948b(0xe8),'failed':_0x32948b(0xf7),'retrying':_0x32948b(0xfe),'unknown':_0x32948b(0xfb),'unauthorized':_0x32948b(0xcf),'sessionOccupied':_0x32948b(0xf2),'networkError':'MCP:\x20网络错误','maxRetriesExceeded':_0x32948b(0xec),'clickToConnect':_0x32948b(0xdb),'clickToConfigure':_0x32948b(0xdf)},'mcpConfig':{'title':_0x32948b(0xee),'description':_0x32948b(0xda),'apiKey':'API\x20密钥','apiKeyPlaceholder':_0x32948b(0xeb),'apiKeyHint':_0x32948b(0xef),'enableAuth':_0x32948b(0xd4),'enableAuthHint':'启用身份验证以获得安全连接','connectionInfo':_0x32948b(0xf6),'mcpClientConfig':_0x32948b(0xf6),'configInstructions':_0x32948b(0xfa),'configStepTitle':_0x32948b(0xd8),'configStep1':_0x32948b(0xd0),'configStep2':'将配置添加到您的\x20MCP\x20客户端设置文件中','configStep3':_0x32948b(0xcc),'sessionId':'会话ID','sessionIdDescription':'唯一会话标识符。如果您打开了多个\x20Univer\x20实例,每个实例必须使用不同的\x20session_id\x20以避免连接冲突。','authorizationDescription':_0x32948b(0xff),'configParameters':_0x32948b(0xf5),'maxRetries':_0x32948b(0xdd),'save':_0x32948b(0xe4),'saving':_0x32948b(0xd1),'note1':_0x32948b(0xed),'note2':_0x32948b(0xcd),'configSaved':_0x32948b(0xe6),'configError':'配置保存失败','apiApplyInfo':{'title':_0x32948b(0xe3),'description':_0x32948b(0xe2),'univerAiLabel':'Univer\x20AI\x20控制台','getStarted':_0x32948b(0xd2)},'validation':{'apiKeyRequired':_0x32948b(0xe7),'apiKeyTooShort':_0x32948b(0xea),'invalidConfig':_0x32948b(0xf1),'invalidApiKey':_0x32948b(0xd6)},'connectionStatus':{'disconnected':_0x32948b(0xfc),'connecting':'连接中...','connected':'已连接','failed':'连接失败','retrying':'重连中...'},'connectionError':{'unauthorized':'权限验证失败,请检查您的\x20API\x20密钥','sessionOccupied':_0x32948b(0xd7),'networkError':_0x32948b(0xf0),'maxRetriesExceeded':_0x32948b(0xe5)}}};function _0x1c5c(_0x2275b1,_0x3ad174){_0x2275b1=_0x2275b1-0xcc;const _0x3b102f=_0x3b10();let _0x1c5c28=_0x3b102f[_0x2275b1];return _0x1c5c28;}function _0x3b10(){const _0x24c9be=['MCP\x20客户端配置','MCP\x20连接失败','1828nSGimG','MCP\x20连接中...','将以下配置添加到您的\x20MCP\x20客户端设置中:','MCP\x20状态未知','未连接','exports','MCP\x20重连中...','带有\x20Bearer\x20前缀的\x20API\x20密钥。','重启您的\x20MCP\x20客户端以使配置生效','您的\x20API\x20密钥安全存储在本地存储中','12VfXgOD','MCP:\x20未授权','复制以下\x20JSON\x20配置','保存中...','几秒钟内获取您的\x20API\x20密钥','77688ElJmbE','启用身份验证','1027260WsOAAV','API\x20密钥无效,请检查密钥是否正确','会话\x20ID\x20已被占用,请稍后再试','配置步骤:','5427rGhiAq','配置\x20MCP\x20使用\x20AI\x20操作电子表格','点击连接\x20MCP','50663tKDOrc','最大重试次数','7124301ppeiNg','点击配置\x20MCP','13866578wZinNt','10RpUfiW','API\x20密钥用于连接\x20Univer\x20MCP\x20服务器,让您可以使用\x20AI\x20来操作电子表格。请前往控制台获取您的专属密钥。','什么是\x20API\x20密钥?','保存配置','超出最大重试次数,请稍后再试','配置保存成功','API\x20密钥不能为空','MCP\x20已连接','553HRdwNX','API\x20密钥长度至少需要\x2010\x20位','请输入您的\x20API\x20密钥','MCP:\x20超出最大重试次数','配置更改将立即生效','MCP\x20配置','您的\x20API\x20密钥将在此浏览器中本地存储','网络连接错误,请检查您的网络连接','配置无效','MCP:\x20会话\x20ID\x20已被占用','4CKaTfv','671700kQCPuf','配置参数:'];_0x3b10=function(){return _0x24c9be;};return _0x3b10();}module[_0x32948b(0xfd)]=locale;
1
+ const _0x50c847=_0x55db;(function(_0x3b969c,_0x2c3822){const _0x37cb1f=_0x55db,_0x3964a6=_0x3b969c();while(!![]){try{const _0x28018b=-parseInt(_0x37cb1f(0x1b3))/0x1+parseInt(_0x37cb1f(0x1ba))/0x2*(parseInt(_0x37cb1f(0x1d6))/0x3)+-parseInt(_0x37cb1f(0x1dd))/0x4+-parseInt(_0x37cb1f(0x1e5))/0x5*(-parseInt(_0x37cb1f(0x1ca))/0x6)+parseInt(_0x37cb1f(0x1c5))/0x7+parseInt(_0x37cb1f(0x1e2))/0x8+-parseInt(_0x37cb1f(0x1da))/0x9;if(_0x28018b===_0x2c3822)break;else _0x3964a6['push'](_0x3964a6['shift']());}catch(_0x1ec036){_0x3964a6['push'](_0x3964a6['shift']());}}}(_0x5b1e,0x84319));function _0x55db(_0x2915b6,_0x5e7f01){_0x2915b6=_0x2915b6-0x1b3;const _0x5b1e6c=_0x5b1e();let _0x55db10=_0x5b1e6c[_0x2915b6];return _0x55db10;}const locale={'mcpStatus':{'disconnected':'MCP\x20已断开','connecting':_0x50c847(0x1d5),'connected':_0x50c847(0x1df),'failed':_0x50c847(0x1c3),'retrying':_0x50c847(0x1db),'unknown':_0x50c847(0x1d2),'unauthorized':_0x50c847(0x1cb),'sessionOccupied':_0x50c847(0x1d9),'networkError':_0x50c847(0x1c6),'maxRetriesExceeded':_0x50c847(0x1d7),'clickToConnect':_0x50c847(0x1d1),'clickToConfigure':_0x50c847(0x1e0)},'mcpConfig':{'title':_0x50c847(0x1cc),'description':_0x50c847(0x1c7),'apiKey':_0x50c847(0x1c8),'apiKeyPlaceholder':'请输入您的\x20API\x20密钥','apiKeyHint':_0x50c847(0x1d4),'enableAuth':_0x50c847(0x1bd),'enableAuthHint':'启用身份验证以获得安全连接','connectionInfo':'MCP\x20客户端配置','mcpClientConfig':'MCP\x20客户端配置','configInstructions':_0x50c847(0x1bb),'configStepTitle':_0x50c847(0x1b7),'configStep1':_0x50c847(0x1be),'configStep2':_0x50c847(0x1d8),'configStep3':_0x50c847(0x1c2),'sessionId':_0x50c847(0x1bc),'sessionIdDescription':_0x50c847(0x1e1),'authorizationDescription':_0x50c847(0x1cf),'configParameters':_0x50c847(0x1c9),'maxRetries':_0x50c847(0x1c4),'save':'保存配置','saving':'保存中...','note1':'配置更改将立即生效','note2':_0x50c847(0x1d0),'configSaved':_0x50c847(0x1d3),'configError':'配置保存失败','apiApplyInfo':{'title':'什么是\x20API\x20密钥?','description':_0x50c847(0x1b6),'univerAiLabel':_0x50c847(0x1b8),'getStarted':_0x50c847(0x1bf)},'validation':{'apiKeyRequired':'API\x20密钥不能为空','apiKeyTooShort':'API\x20密钥长度至少需要\x2010\x20位','invalidConfig':_0x50c847(0x1de),'invalidApiKey':_0x50c847(0x1b5)},'connectionStatus':{'disconnected':_0x50c847(0x1dc),'connecting':'连接中...','connected':_0x50c847(0x1ce),'failed':_0x50c847(0x1c0),'retrying':_0x50c847(0x1c1)},'connectionError':{'unauthorized':_0x50c847(0x1b4),'sessionOccupied':_0x50c847(0x1cd),'networkError':_0x50c847(0x1e4),'maxRetriesExceeded':_0x50c847(0x1b9)}}};function _0x5b1e(){const _0x4313a5=['几秒钟内获取您的\x20API\x20密钥','连接失败','重连中...','重启您的\x20MCP\x20客户端以使配置生效','MCP\x20连接失败','最大重试次数','2368884WpwWVn','MCP:\x20网络错误','配置\x20MCP\x20使用\x20AI\x20操作电子表格','API\x20密钥','配置参数:','5733282DWtDFN','MCP:\x20未授权','MCP\x20配置','会话\x20ID\x20已被占用,请稍后再试','已连接','带有\x20Bearer\x20前缀的\x20API\x20密钥。','您的\x20API\x20密钥安全存储在本地存储中','点击连接\x20MCP','MCP\x20状态未知','配置保存成功','您的\x20API\x20密钥将在此浏览器中本地存储','MCP\x20连接中...','1635771vqfPuj','MCP:\x20超出最大重试次数','将配置添加到您的\x20MCP\x20客户端设置文件中','MCP:\x20会话\x20ID\x20已被占用','1656945CxQHOL','MCP\x20重连中...','未连接','3441608wyYzAt','配置无效','MCP\x20已连接','点击配置\x20MCP','唯一会话标识符。如果您打开了多个\x20Univer\x20实例,每个实例必须使用不同的\x20session_id\x20以避免连接冲突。','6400040FEeHgB','exports','网络连接错误,请检查您的网络连接','5xDbGyL','1053249xHHUVk','权限验证失败,请检查您的\x20API\x20密钥','API\x20密钥无效,请检查密钥是否正确','API\x20密钥用于连接\x20Univer\x20MCP\x20服务器,让您可以使用\x20AI\x20来操作电子表格。请前往控制台获取您的专属密钥。','配置步骤:','Univer\x20AI\x20控制台','超出最大重试次数,请稍后再试','2zNhVGl','将以下配置添加到您的\x20MCP\x20客户端设置中:','会话ID','启用身份验证','复制以下\x20JSON\x20配置'];_0x5b1e=function(){return _0x4313a5;};return _0x5b1e();}module[_0x50c847(0x1e3)]=locale;
@@ -1 +1 @@
1
- function _0x3ed0(){const _0x533ce6=['Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','Connection\x20Failed','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','API\x20key\x20is\x20required','Enable\x20authentication\x20for\x20secure\x20connections','Failed\x20to\x20save\x20configuration','Save\x20Configuration','4ASPmrR','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Connected','Click\x20to\x20connect\x20MCP','MCP\x20Connecting...','11929442WolCoy','Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','Univer\x20AI\x20Console','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','3059824cWvibq','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','29961QdLAsz','Click\x20to\x20configure\x20MCP','856fMJquZ','Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','4711092YYCbyT','Copy\x20the\x20JSON\x20configuration\x20below','449425kGvqFK','Configuration\x20saved\x20successfully','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','766334KZZlKY','MCP\x20Connected','MCP:\x20Unauthorized','Get\x20your\x20API\x20key\x20in\x20seconds','Max\x20Retries','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','69385940ZMeEcT','11gDdPFu','MCP\x20Unknown\x20Status','API\x20key\x20with\x20Bearer\x20prefix.','Configuration\x20Steps:','MCP\x20Configuration','MCP:\x20Max\x20Retries\x20Exceeded','Disconnected','Configuration\x20Parameters:','What\x20is\x20API\x20Key?','MCP\x20Client\x20Configuration','Saving...','MCP:\x20Session\x20ID\x20Occupied','API\x20Key\x20connects\x20you\x20to\x20Univer\x20MCP\x20Server\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets.\x20Get\x20your\x20API\x20key\x20from\x20our\x20console\x20to\x20get\x20started.','Connecting...','6vkuAyD','API\x20Key','Configuration\x20changes\x20will\x20take\x20effect\x20immediately','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long'];_0x3ed0=function(){return _0x533ce6;};return _0x3ed0();}function _0x2faa(_0x10c02f,_0x2d2b10){_0x10c02f=_0x10c02f-0xaa;const _0x3ed08d=_0x3ed0();let _0x2faac3=_0x3ed08d[_0x10c02f];return _0x2faac3;}const _0x4e4c1e=_0x2faa;(function(_0x3755a6,_0x5314e0){const _0x268fff=_0x2faa,_0x467dda=_0x3755a6();while(!![]){try{const _0x1b94c0=-parseInt(_0x268fff(0xd7))/0x1+-parseInt(_0x268fff(0xcc))/0x2+parseInt(_0x268fff(0xd2))/0x3*(-parseInt(_0x268fff(0xc3))/0x4)+-parseInt(_0x268fff(0xd4))/0x5+parseInt(_0x268fff(0xb8))/0x6*(-parseInt(_0x268fff(0xc8))/0x7)+parseInt(_0x268fff(0xd0))/0x8*(-parseInt(_0x268fff(0xce))/0x9)+parseInt(_0x268fff(0xdd))/0xa*(parseInt(_0x268fff(0xaa))/0xb);if(_0x1b94c0===_0x5314e0)break;else _0x467dda['push'](_0x467dda['shift']());}catch(_0x20104b){_0x467dda['push'](_0x467dda['shift']());}}}(_0x3ed0,0xe105a));const locale$1={'mcpStatus':{'disconnected':'MCP\x20Disconnected','connecting':_0x4e4c1e(0xc7),'connected':_0x4e4c1e(0xd8),'failed':'MCP\x20Connection\x20Failed','retrying':'MCP\x20Retrying...','unknown':_0x4e4c1e(0xab),'unauthorized':_0x4e4c1e(0xd9),'sessionOccupied':_0x4e4c1e(0xb5),'networkError':'MCP:\x20Network\x20Error','maxRetriesExceeded':_0x4e4c1e(0xaf),'clickToConnect':_0x4e4c1e(0xc6),'clickToConfigure':_0x4e4c1e(0xcf)},'mcpConfig':{'title':_0x4e4c1e(0xae),'description':_0x4e4c1e(0xc4),'apiKey':_0x4e4c1e(0xb9),'apiKeyPlaceholder':'Enter\x20your\x20API\x20key','apiKeyHint':'Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','enableAuth':'Enable\x20Authentication','enableAuthHint':_0x4e4c1e(0xc0),'connectionInfo':'MCP\x20Client\x20Configuration','mcpClientConfig':_0x4e4c1e(0xb3),'configInstructions':_0x4e4c1e(0xc9),'configStepTitle':_0x4e4c1e(0xad),'configStep1':_0x4e4c1e(0xd3),'configStep2':_0x4e4c1e(0xdc),'configStep3':_0x4e4c1e(0xd6),'sessionId':'Session\x20ID','sessionIdDescription':_0x4e4c1e(0xbe),'authorizationDescription':_0x4e4c1e(0xac),'configParameters':_0x4e4c1e(0xb1),'maxRetries':_0x4e4c1e(0xdb),'save':_0x4e4c1e(0xc2),'saving':_0x4e4c1e(0xb4),'note1':_0x4e4c1e(0xba),'note2':'Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','configSaved':_0x4e4c1e(0xd5),'configError':_0x4e4c1e(0xc1),'apiApplyInfo':{'title':_0x4e4c1e(0xb2),'description':_0x4e4c1e(0xb6),'univerAiLabel':_0x4e4c1e(0xca),'getStarted':_0x4e4c1e(0xda)},'validation':{'apiKeyRequired':_0x4e4c1e(0xbf),'apiKeyTooShort':_0x4e4c1e(0xbb),'invalidConfig':'Invalid\x20configuration','invalidApiKey':_0x4e4c1e(0xd1)},'connectionStatus':{'disconnected':_0x4e4c1e(0xb0),'connecting':_0x4e4c1e(0xb7),'connected':_0x4e4c1e(0xc5),'failed':_0x4e4c1e(0xbd),'retrying':'Retrying...'},'connectionError':{'unauthorized':_0x4e4c1e(0xcb),'sessionOccupied':_0x4e4c1e(0xcd),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':_0x4e4c1e(0xbc)}}},locale=locale$1;module['exports']=locale;
1
+ const _0x4102fb=_0x465d;(function(_0x40759d,_0x1184f9){const _0x19bbf0=_0x465d,_0x2b48e2=_0x40759d();while(!![]){try{const _0x428d12=-parseInt(_0x19bbf0(0xd3))/0x1*(parseInt(_0x19bbf0(0xc9))/0x2)+parseInt(_0x19bbf0(0xd6))/0x3+parseInt(_0x19bbf0(0xc4))/0x4+parseInt(_0x19bbf0(0xcc))/0x5*(parseInt(_0x19bbf0(0xba))/0x6)+parseInt(_0x19bbf0(0xd2))/0x7*(-parseInt(_0x19bbf0(0xbd))/0x8)+parseInt(_0x19bbf0(0xb9))/0x9+parseInt(_0x19bbf0(0xc8))/0xa*(-parseInt(_0x19bbf0(0xda))/0xb);if(_0x428d12===_0x1184f9)break;else _0x2b48e2['push'](_0x2b48e2['shift']());}catch(_0xf603a5){_0x2b48e2['push'](_0x2b48e2['shift']());}}}(_0x18ac,0xdb0bb));function _0x465d(_0xbffadf,_0x1cd6dd){_0xbffadf=_0xbffadf-0xad;const _0x18ac6d=_0x18ac();let _0x465dae=_0x18ac6d[_0xbffadf];return _0x465dae;}const locale$1={'mcpStatus':{'disconnected':_0x4102fb(0xdd),'connecting':'MCP\x20Connecting...','connected':_0x4102fb(0xc7),'failed':_0x4102fb(0xbb),'retrying':'MCP\x20Retrying...','unknown':_0x4102fb(0xcd),'unauthorized':'MCP:\x20Unauthorized','sessionOccupied':_0x4102fb(0xb5),'networkError':'MCP:\x20Network\x20Error','maxRetriesExceeded':_0x4102fb(0xaf),'clickToConnect':'Click\x20to\x20connect\x20MCP','clickToConfigure':_0x4102fb(0xc2)},'mcpConfig':{'title':_0x4102fb(0xcb),'description':_0x4102fb(0xd0),'apiKey':'API\x20Key','apiKeyPlaceholder':_0x4102fb(0xc0),'apiKeyHint':_0x4102fb(0xc5),'enableAuth':_0x4102fb(0xd5),'enableAuthHint':_0x4102fb(0xc3),'connectionInfo':'MCP\x20Client\x20Configuration','mcpClientConfig':_0x4102fb(0xb1),'configInstructions':'Add\x20the\x20following\x20configuration\x20to\x20your\x20MCP\x20client\x20settings:','configStepTitle':_0x4102fb(0xce),'configStep1':'Copy\x20the\x20JSON\x20configuration\x20below','configStep2':_0x4102fb(0xb4),'configStep3':_0x4102fb(0xb0),'sessionId':_0x4102fb(0xc6),'sessionIdDescription':_0x4102fb(0xd1),'authorizationDescription':_0x4102fb(0xd4),'configParameters':'Configuration\x20Parameters:','maxRetries':'Max\x20Retries','save':_0x4102fb(0xde),'saving':_0x4102fb(0xcf),'note1':'Configuration\x20changes\x20will\x20take\x20effect\x20immediately','note2':_0x4102fb(0xdc),'configSaved':_0x4102fb(0xbc),'configError':_0x4102fb(0xc1),'apiApplyInfo':{'title':_0x4102fb(0xb7),'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':_0x4102fb(0xd9),'getStarted':_0x4102fb(0xd8)},'validation':{'apiKeyRequired':_0x4102fb(0xca),'apiKeyTooShort':_0x4102fb(0xbf),'invalidConfig':_0x4102fb(0xd7),'invalidApiKey':_0x4102fb(0xbe)},'connectionStatus':{'disconnected':_0x4102fb(0xb8),'connecting':_0x4102fb(0xdb),'connected':_0x4102fb(0xb3),'failed':'Connection\x20Failed','retrying':_0x4102fb(0xb6)},'connectionError':{'unauthorized':_0x4102fb(0xae),'sessionOccupied':_0x4102fb(0xb2),'networkError':'Network\x20connection\x20error.\x20Please\x20check\x20your\x20internet\x20connection','maxRetriesExceeded':_0x4102fb(0xad)}}},locale=locale$1;function _0x18ac(){const _0x4cac6e=['Invalid\x20API\x20key,\x20please\x20check\x20if\x20the\x20key\x20is\x20correct','API\x20key\x20must\x20be\x20at\x20least\x2010\x20characters\x20long','Enter\x20your\x20API\x20key','Failed\x20to\x20save\x20configuration','Click\x20to\x20configure\x20MCP','Enable\x20authentication\x20for\x20secure\x20connections','1149824AdUXMy','Your\x20API\x20key\x20will\x20be\x20stored\x20locally\x20in\x20this\x20browser','Session\x20ID','MCP\x20Connected','762110lSGzrQ','54phTxcP','API\x20key\x20is\x20required','MCP\x20Configuration','62530kVCVgP','MCP\x20Unknown\x20Status','Configuration\x20Steps:','Saving...','Configure\x20MCP\x20to\x20use\x20AI\x20for\x20operating\x20spreadsheets','Unique\x20session\x20identifier.\x20If\x20you\x20have\x20multiple\x20Univer\x20instances\x20open,\x20each\x20instance\x20must\x20use\x20a\x20different\x20session_id\x20to\x20avoid\x20connection\x20conflicts.','28McFnXF','8666BmBbqk','API\x20key\x20with\x20Bearer\x20prefix.','Enable\x20Authentication','3758532wXOBEX','Invalid\x20configuration','Get\x20your\x20API\x20key\x20in\x20seconds','Univer\x20AI\x20Console','286QsfytR','Connecting...','Your\x20API\x20key\x20is\x20stored\x20securely\x20in\x20local\x20storage','MCP\x20Disconnected','Save\x20Configuration','Maximum\x20retry\x20attempts\x20exceeded.\x20Please\x20try\x20again\x20later','Authorization\x20failed,\x20please\x20check\x20your\x20API\x20key','MCP:\x20Max\x20Retries\x20Exceeded','Restart\x20your\x20MCP\x20client\x20to\x20apply\x20the\x20configuration','MCP\x20Client\x20Configuration','Session-id\x20is\x20currently\x20occupied,\x20please\x20try\x20again\x20later','Connected','Add\x20the\x20configuration\x20to\x20your\x20MCP\x20client\x20settings\x20file','MCP:\x20Session\x20ID\x20Occupied','Retrying...','What\x20is\x20API\x20Key?','Disconnected','8286633PYGNuu','678tbptgv','MCP\x20Connection\x20Failed','Configuration\x20saved\x20successfully','1523072SbMBlH'];_0x18ac=function(){return _0x4cac6e;};return _0x18ac();}module['exports']=locale;
package/lib/es/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};