@miracleplus/mplus 0.1.7 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -79
- package/dist/auth.js +1 -1
- package/dist/client.js +1 -1
- package/dist/commands/admission.js +1 -1
- package/dist/commands/application.js +1 -1
- package/dist/commands/batch.js +1 -1
- package/dist/commands/company.js +1 -1
- package/dist/commands/configure.js +1 -1
- package/dist/commands/install-skills.js +1 -1
- package/dist/commands/login.js +1 -1
- package/dist/commands/logout.js +1 -1
- package/dist/commands/profiles.js +1 -1
- package/dist/commands/status.js +1 -0
- package/dist/commands/use.js +1 -1
- package/dist/commands/whoami.js +1 -1
- package/dist/config.js +1 -1
- package/dist/env.js +1 -1
- package/dist/format.js +1 -1
- package/dist/help.js +1 -1
- package/dist/index.js +1 -1
- package/dist/oauth.js +1 -1
- package/dist/oauth_client.js +1 -1
- package/dist/registry.js +1 -1
- package/package.json +2 -4
- package/skills/mplus-shared/SKILL.md +15 -0
- package/README.npm.md +0 -87
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict';
|
|
2
|
+
'use strict';function _0x255d(_0x1ec917,_0x364911){_0x1ec917=_0x1ec917-0x17b;const _0x560b7d=_0x560b();let _0x255d37=_0x560b7d[_0x1ec917];if(_0x255d['QzBkdW']===undefined){var _0x4911bf=function(_0x5517e2){const _0x53a15a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc4d950='',_0x50562c='';for(let _0x342372=0x0,_0x129acc,_0x4eb1a8,_0x130409=0x0;_0x4eb1a8=_0x5517e2['charAt'](_0x130409++);~_0x4eb1a8&&(_0x129acc=_0x342372%0x4?_0x129acc*0x40+_0x4eb1a8:_0x4eb1a8,_0x342372++%0x4)?_0xc4d950+=String['fromCharCode'](0xff&_0x129acc>>(-0x2*_0x342372&0x6)):0x0){_0x4eb1a8=_0x53a15a['indexOf'](_0x4eb1a8);}for(let _0x11a9df=0x0,_0x2778de=_0xc4d950['length'];_0x11a9df<_0x2778de;_0x11a9df++){_0x50562c+='%'+('00'+_0xc4d950['charCodeAt'](_0x11a9df)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x50562c);};_0x255d['oetjUh']=_0x4911bf,_0x255d['hJkTJX']={},_0x255d['QzBkdW']=!![];}const _0x31a482=_0x560b7d[0x0],_0x2b6f6c=_0x1ec917+_0x31a482,_0x2ba7e1=_0x255d['hJkTJX'][_0x2b6f6c];return!_0x2ba7e1?(_0x255d37=_0x255d['oetjUh'](_0x255d37),_0x255d['hJkTJX'][_0x2b6f6c]=_0x255d37):_0x255d37=_0x2ba7e1,_0x255d37;}const _0x4b5ea3=_0x255d;(function(_0x1e8681,_0x58311d){const _0x183594=_0x255d,_0x5bf411=_0x1e8681();while(!![]){try{const _0x22bb70=parseInt(_0x183594(0x1a7))/0x1*(parseInt(_0x183594(0x1a8))/0x2)+-parseInt(_0x183594(0x19a))/0x3+-parseInt(_0x183594(0x198))/0x4+parseInt(_0x183594(0x1bc))/0x5+parseInt(_0x183594(0x1a1))/0x6+parseInt(_0x183594(0x1bd))/0x7*(-parseInt(_0x183594(0x194))/0x8)+-parseInt(_0x183594(0x1bb))/0x9*(-parseInt(_0x183594(0x195))/0xa);if(_0x22bb70===_0x58311d)break;else _0x5bf411['push'](_0x5bf411['shift']());}catch(_0x40b7ce){_0x5bf411['push'](_0x5bf411['shift']());}}}(_0x560b,0x1a4d2));var __importDefault=this&&this[_0x4b5ea3(0x17b)]||function(_0xc4d950){const _0x2debeb=_0x4b5ea3;return _0xc4d950&&_0xc4d950[_0x2debeb(0x1b9)]?_0xc4d950:{'default':_0xc4d950};};Object[_0x4b5ea3(0x19f)](exports,_0x4b5ea3(0x1b9),{'value':!![]});const commander_1=require(_0x4b5ea3(0x197)),update_notifier_1=__importDefault(require('update-notifier')),env_1=require(_0x4b5ea3(0x1ad)),pkg=require('../package.json'),configure_1=require('./commands/configure'),login_1=require(_0x4b5ea3(0x190)),whoami_1=require(_0x4b5ea3(0x1c5)),use_1=require(_0x4b5ea3(0x1af)),profiles_1=require(_0x4b5ea3(0x1c4)),logout_1=require(_0x4b5ea3(0x1b8)),batch_1=require(_0x4b5ea3(0x181)),company_1=require(_0x4b5ea3(0x183)),application_1=require(_0x4b5ea3(0x18f)),admission_1=require(_0x4b5ea3(0x1b6)),install_skills_1=require('./commands/install-skills'),status_1=require(_0x4b5ea3(0x188)),registry_1=require(_0x4b5ea3(0x1b3)),help_1=require(_0x4b5ea3(0x1ae));(0x0,env_1[_0x4b5ea3(0x1b7)])();const notifier=(0x0,update_notifier_1['default'])({'pkg':pkg,'updateCheckInterval':0x3e8*0x3c*0x3c*0x18});notifier[_0x4b5ea3(0x1be)]();const program=new commander_1[(_0x4b5ea3(0x1b4))]();program[_0x4b5ea3(0x1aa)](_0x4b5ea3(0x1a9))['description']('奇绩创坛命令行工具\x20—\x20管理\x20API\x20Key、查看账户信息')[_0x4b5ea3(0x1c1)](pkg[_0x4b5ea3(0x1c1)],_0x4b5ea3(0x17c),_0x4b5ea3(0x182)),(0x0,configure_1[_0x4b5ea3(0x18e)])(program),(0x0,login_1[_0x4b5ea3(0x1a6)])(program),(0x0,whoami_1[_0x4b5ea3(0x1c3)])(program),(0x0,use_1[_0x4b5ea3(0x1a4)])(program),(0x0,profiles_1[_0x4b5ea3(0x189)])(program),(0x0,logout_1[_0x4b5ea3(0x1ba)])(program),(0x0,batch_1[_0x4b5ea3(0x192)])(program),(0x0,company_1[_0x4b5ea3(0x1ac)])(program),(0x0,application_1['registerApplication'])(program),(0x0,admission_1['registerAdmission'])(program),(0x0,install_skills_1[_0x4b5ea3(0x18a)])(program),(0x0,status_1['registerStatus'])(program),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)](_0x4b5ea3(0x1a2),_0x4b5ea3(0x17d)),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)](_0x4b5ea3(0x1a5),_0x4b5ea3(0x17d)),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)](_0x4b5ea3(0x196),'public'),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)](_0x4b5ea3(0x17f),'public'),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)](_0x4b5ea3(0x1c2),_0x4b5ea3(0x17d)),registry_1[_0x4b5ea3(0x199)]['set']('profiles',_0x4b5ea3(0x17d)),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)]('use','public'),registry_1['commandRoles']['set']('logout',_0x4b5ea3(0x17d)),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)]('batch','admin'),registry_1[_0x4b5ea3(0x199)]['set'](_0x4b5ea3(0x191),_0x4b5ea3(0x1a3)),registry_1[_0x4b5ea3(0x199)][_0x4b5ea3(0x185)](_0x4b5ea3(0x1bf),_0x4b5ea3(0x1a3)),registry_1['commandRoles'][_0x4b5ea3(0x185)]('admission',_0x4b5ea3(0x17d)),program[_0x4b5ea3(0x1c0)]({'formatHelp':(_0x50562c,_0x342372)=>{const _0x1fb47c=_0x4b5ea3;if(_0x50562c===program)return(0x0,help_1[_0x1fb47c(0x1a0)])(program,pkg[_0x1fb47c(0x1c1)]);return _0x342372[_0x1fb47c(0x18c)](_0x50562c,_0x342372);}});function _0x560b(){const _0x352bfc=['CMvNAxn0zxjdB25MAwD1CMu','lI9JB21Tyw5KCY9HChbSAwnHDgLVBG','lI9JB21Tyw5KCY9SB2DPBG','y29TCgfUEq','CMvNAxn0zxjcyxrJAa','BwvZC2fNzq','mZm1mKrgC2H6qW','ntbzuxnSwNG','Aw5ZDgfSBc1ZA2LSBhm','y29TBwfUzgvY','ndmWmtiWtwfTzuzc','y29TBwfUzfjVBgvZ','mJyZmti0CNbwwM1l','z2v0q2fJAgvKuM9Szq','zMLSDgvY','zNjVBq','yxjNDG','zgvMAw5LuhjVCgvYDhK','zM9YBwf0r3jVDxbLzeHLBha','mZG5otG4wwjfuKj0','y29UzMLNDxjL','ywrTAw4','CMvNAxn0zxjvC2u','Bg9NAw4','CMvNAxn0zxjmB2DPBG','odfgtNr5swW','ote4y05Twfjn','BxbSDxm','BMfTzq','Aw5JBhvKzxm','CMvNAxn0zxjdB21Wyw55','lI9LBNy','lI9OzwXW','lI9JB21Tyw5KCY91C2u','y2f0y2G','6zsz6k+V77YA5PYQ55+L5zg95lUK77YA','zxHPDa','lI9YzwDPC3rYEq','q29TBwfUza','6zsz6k+V77YA','lI9JB21Tyw5KCY9Hzg1PC3nPB24','Bg9HzeXVy2fSrw52','lI9JB21Tyw5KCY9SB2DVDxq','x19LC01VzhvSzq','CMvNAxn0zxjmB2DVDxq','ntC4ntq3y2fywKn2','otaZmJvOCMDbA1a','mJmXn0LlExLbAW','BM90Awz5','yxbWBgLJyxrPB24','y29UzMLNDxjLsgvSCa','DMvYC2LVBG','D2HVyw1P','CMvNAxn0zxjxAg9HBwK','lI9JB21Tyw5KCY9WCM9MAwXLCW','lI9JB21Tyw5KCY93Ag9HBwK','x19PBxbVCNrezwzHDwX0','lxySic0TDMvYC2LVBG','ChvIBgLJ','BgvUz3rO','C3rHDhvZ','ls1OzwXW','lI9JB21Tyw5KCY9IyxrJAa','5PI+56s654Mi5PYS5y+3','lI9JB21Tyw5KCY9JB21Wyw55','BwfW','C2v0','AxndB25MAwD1CMvK','zw50CMLLCW','lI9JB21Tyw5KCY9ZDgf0Dxm','CMvNAxn0zxjqCM9MAwXLCW','CMvNAxn0zxjjBNn0ywXSu2TPBgXZ','C3rKzxjY','zM9YBwf0sgvSCa','D3jPDgu'];_0x560b=function(){return _0x352bfc;};return _0x560b();}async function main(){const _0x164a97=_0x4b5ea3,_0x129acc=process[_0x164a97(0x19e)]['slice'](0x2),_0x4eb1a8=_0x129acc[0x0],_0x130409=_0x129acc[_0x164a97(0x1ab)]('--help')||_0x129acc[_0x164a97(0x1ab)]('-h'),_0x11a9df=_0x4eb1a8===_0x164a97(0x180)||_0x4eb1a8==='-h'||_0x129acc[_0x164a97(0x17e)]===0x0,_0x2778de=Array[_0x164a97(0x19d)](registry_1[_0x164a97(0x199)][_0x164a97(0x187)]())[_0x164a97(0x19c)](([,_0x5b9004])=>_0x5b9004===_0x164a97(0x1a3))[_0x164a97(0x184)](([_0x494daf])=>_0x494daf),_0x4e957c=!!_0x4eb1a8&&_0x130409&&_0x4eb1a8!==_0x164a97(0x180)&&_0x4eb1a8!=='-h'&&_0x2778de[_0x164a97(0x1ab)](_0x4eb1a8);(_0x11a9df||_0x4e957c)&&(0x0,help_1[_0x164a97(0x186)])()&&(0x0,help_1[_0x164a97(0x19b)])()===null&&await(0x0,help_1['tryRefreshRole'])();const _0x45effa=_0x4eb1a8&&_0x130409&&_0x4eb1a8!==_0x164a97(0x180)&&_0x4eb1a8!=='-h';if(_0x45effa){if(_0x2778de[_0x164a97(0x1ab)](_0x4eb1a8)){const _0x2fceb7=(0x0,help_1[_0x164a97(0x19b)])();(!_0x2fceb7||!_0x2fceb7[_0x164a97(0x1ab)]('admin'))&&(process[_0x164a97(0x18b)][_0x164a97(0x18d)](_0x164a97(0x1b1)+_0x4eb1a8+'\x0a'),process[_0x164a97(0x1b2)](0x1));}}program['parse'](process[_0x164a97(0x19e)]);}main()[_0x4b5ea3(0x1b0)](_0x21a334=>{const _0x2b78fd=_0x4b5ea3;process[_0x2b78fd(0x18b)]['write'](_0x2b78fd(0x1b5)+_0x21a334[_0x2b78fd(0x193)]+'\x0a'),process['exit'](0x1);});
|
package/dist/oauth.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function _0x5584(_0x2d8d4e,_0x19b7ef){_0x2d8d4e=_0x2d8d4e-0x172;const _0x39ef08=_0x39ef();let _0x5584c9=_0x39ef08[_0x2d8d4e];if(_0x5584['XUXnin']===undefined){var _0x21730c=function(_0x1b2037){const _0xac512b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x222b7f='',_0x1ca5b4='';for(let _0x2182c2=0x0,_0x10fd0f,_0x2fdc30,_0x1e818a=0x0;_0x2fdc30=_0x1b2037['charAt'](_0x1e818a++);~_0x2fdc30&&(_0x10fd0f=_0x2182c2%0x4?_0x10fd0f*0x40+_0x2fdc30:_0x2fdc30,_0x2182c2++%0x4)?_0x222b7f+=String['fromCharCode'](0xff&_0x10fd0f>>(-0x2*_0x2182c2&0x6)):0x0){_0x2fdc30=_0xac512b['indexOf'](_0x2fdc30);}for(let _0x249815=0x0,_0x2a2c80=_0x222b7f['length'];_0x249815<_0x2a2c80;_0x249815++){_0x1ca5b4+='%'+('00'+_0x222b7f['charCodeAt'](_0x249815)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ca5b4);};_0x5584['TKPOHB']=_0x21730c,_0x5584['JPjwBX']={},_0x5584['XUXnin']=!![];}const _0x1078d1=_0x39ef08[0x0],_0x49002a=_0x2d8d4e+_0x1078d1,_0x3d45f8=_0x5584['JPjwBX'][_0x49002a];return!_0x3d45f8?(_0x5584c9=_0x5584['TKPOHB'](_0x5584c9),_0x5584['JPjwBX'][_0x49002a]=_0x5584c9):_0x5584c9=_0x3d45f8,_0x5584c9;}const _0x59fee0=_0x5584;(function(_0x1d2272,_0x3c910d){const _0x1fa5cc=_0x5584,_0x214006=_0x1d2272();while(!![]){try{const _0xfc3eb0=-parseInt(_0x1fa5cc(0x1bd))/0x1+-parseInt(_0x1fa5cc(0x1d8))/0x2+-parseInt(_0x1fa5cc(0x1d7))/0x3+-parseInt(_0x1fa5cc(0x1be))/0x4+parseInt(_0x1fa5cc(0x17d))/0x5+-parseInt(_0x1fa5cc(0x1d2))/0x6+parseInt(_0x1fa5cc(0x185))/0x7*(parseInt(_0x1fa5cc(0x1b9))/0x8);if(_0xfc3eb0===_0x3c910d)break;else _0x214006['push'](_0x214006['shift']());}catch(_0x2864f4){_0x214006['push'](_0x214006['shift']());}}}(_0x39ef,0x51420));var __createBinding=this&&this[_0x59fee0(0x193)]||(Object[_0x59fee0(0x1ad)]?function(_0x222b7f,_0x1ca5b4,_0x2182c2,_0x10fd0f){const _0x4fa3f8=_0x59fee0;if(_0x10fd0f===undefined)_0x10fd0f=_0x2182c2;var _0x2fdc30=Object[_0x4fa3f8(0x181)](_0x1ca5b4,_0x2182c2);(!_0x2fdc30||(_0x4fa3f8(0x19a)in _0x2fdc30?!_0x1ca5b4[_0x4fa3f8(0x1e5)]:_0x2fdc30[_0x4fa3f8(0x1d9)]||_0x2fdc30['configurable']))&&(_0x2fdc30={'enumerable':!![],'get':function(){return _0x1ca5b4[_0x2182c2];}}),Object[_0x4fa3f8(0x1cc)](_0x222b7f,_0x10fd0f,_0x2fdc30);}:function(_0x1e818a,_0x249815,_0x2a2c80,_0x564163){if(_0x564163===undefined)_0x564163=_0x2a2c80;_0x1e818a[_0x564163]=_0x249815[_0x2a2c80];}),__setModuleDefault=this&&this[_0x59fee0(0x1d6)]||(Object['create']?function(_0x43489f,_0x34e679){const _0x5d6c60=_0x59fee0;Object[_0x5d6c60(0x1cc)](_0x43489f,_0x5d6c60(0x1db),{'enumerable':!![],'value':_0x34e679});}:function(_0x3dba02,_0x234e9e){const _0x1b6155=_0x59fee0;_0x3dba02[_0x1b6155(0x1db)]=_0x234e9e;}),__importStar=this&&this[_0x59fee0(0x1a6)]||(function(){var _0x59ccb1=function(_0x444550){const _0x1eb215=_0x5584;return _0x59ccb1=Object[_0x1eb215(0x1d4)]||function(_0x351659){const _0x40087e=_0x1eb215;var _0x16b00a=[];for(var _0x4d3913 in _0x351659)if(Object['prototype'][_0x40087e(0x1cb)][_0x40087e(0x1af)](_0x351659,_0x4d3913))_0x16b00a[_0x16b00a[_0x40087e(0x1bc)]]=_0x4d3913;return _0x16b00a;},_0x59ccb1(_0x444550);};return function(_0x27eed3){const _0x38e18d=_0x5584;if(_0x27eed3&&_0x27eed3[_0x38e18d(0x1e5)])return _0x27eed3;var _0x2d63bf={};if(_0x27eed3!=null){for(var _0x2da55a=_0x59ccb1(_0x27eed3),_0x10fe68=0x0;_0x10fe68<_0x2da55a[_0x38e18d(0x1bc)];_0x10fe68++)if(_0x2da55a[_0x10fe68]!=='default')__createBinding(_0x2d63bf,_0x27eed3,_0x2da55a[_0x10fe68]);}return __setModuleDefault(_0x2d63bf,_0x27eed3),_0x2d63bf;};}()),__importDefault=this&&this[_0x59fee0(0x1b5)]||function(_0x57430b){const _0x4afdb4=_0x59fee0;return _0x57430b&&_0x57430b[_0x4afdb4(0x1e5)]?_0x57430b:{'default':_0x57430b};};Object[_0x59fee0(0x1cc)](exports,_0x59fee0(0x1e5),{'value':!![]}),exports[_0x59fee0(0x182)]=loginWithOAuth,exports[_0x59fee0(0x186)]=isOAuthAccessTokenFresh,exports[_0x59fee0(0x1c9)]=refreshOAuthSession,exports[_0x59fee0(0x1a0)]=getValidOAuthAccessToken;const axios_1=__importDefault(require('axios')),crypto=__importStar(require('crypto')),http=__importStar(require(_0x59fee0(0x195))),url_1=require(_0x59fee0(0x1e2)),child_process_1=require(_0x59fee0(0x1ca)),config_1=require('./config');function base64Url(_0x45de45){const _0x2a7f5d=_0x59fee0;return _0x45de45['toString'](_0x2a7f5d(0x180))[_0x2a7f5d(0x184)](/\+/g,'-')[_0x2a7f5d(0x184)](/\//g,'_')[_0x2a7f5d(0x184)](/=+$/g,'');}function randomBase64Url(_0x8ec1b0=0x20){const _0x4ca7ed=_0x59fee0;return base64Url(crypto[_0x4ca7ed(0x17b)](_0x8ec1b0));}function createCodeChallenge(_0x1f553c){const _0x5de11c=_0x59fee0;return base64Url(crypto[_0x5de11c(0x1c0)](_0x5de11c(0x173))[_0x5de11c(0x1a8)](_0x1f553c)[_0x5de11c(0x1d0)]());}function normalizeEndpoint(_0x348b41){const _0xc46b50=_0x59fee0;return _0x348b41[_0xc46b50(0x184)](/\/$/,'');}function openUrl(_0x4a7b68){const _0x41e44f=_0x59fee0,_0x5437d1=process[_0x41e44f(0x183)],_0xb5ca6a=_0x5437d1==='darwin'?_0x41e44f(0x198):_0x5437d1===_0x41e44f(0x1df)?_0x41e44f(0x1c5):_0x41e44f(0x19d),_0x74cf54=_0x5437d1==='win32'?['/c',_0x41e44f(0x17a),'',_0x4a7b68]:[_0x4a7b68],_0x55873d=(0x0,child_process_1['spawn'])(_0xb5ca6a,_0x74cf54,{'stdio':'ignore','detached':!![]});_0x55873d[_0x41e44f(0x18b)]();}function listenForCallback(_0xf8a24f,_0x13bc29){const _0x410b70=_0x59fee0,_0x34c33e=new url_1['URL'](_0xf8a24f),_0x507ed5=Number(_0x34c33e[_0x410b70(0x187)]||(_0x34c33e[_0x410b70(0x1e4)]==='https:'?0x1bb:0x50)),_0x1a386c=_0x34c33e[_0x410b70(0x19e)];if(!['127.0.0.1',_0x410b70(0x1de)]['includes'](_0x34c33e[_0x410b70(0x1cd)]))throw new Error(_0x410b70(0x1bb));return new Promise((_0x458c2b,_0x119ef4)=>{const _0x3e7884=_0x410b70,_0x11b8dd=setTimeout(()=>{const _0xe845af=_0x5584;_0x374a9d[_0xe845af(0x18e)](),_0x119ef4(new Error(_0xe845af(0x191)));},0x5*0x3c*0x3e8),_0x374a9d=http[_0x3e7884(0x199)]((_0x155827,_0x21c700)=>{const _0x4ca7fc=_0x3e7884;try{const _0x4daf5c=new url_1[(_0x4ca7fc(0x17e))](_0x155827[_0x4ca7fc(0x1e2)]??'/',_0xf8a24f);if(_0x4daf5c[_0x4ca7fc(0x19e)]!==_0x1a386c){_0x21c700['writeHead'](0x194,{'Content-Type':_0x4ca7fc(0x1c4)}),_0x21c700[_0x4ca7fc(0x194)]('Not\x20Found');return;}const _0x248559=_0x4daf5c[_0x4ca7fc(0x1a9)][_0x4ca7fc(0x19a)]('error');if(_0x248559){const _0x4e7c52=_0x4daf5c['searchParams'][_0x4ca7fc(0x19a)](_0x4ca7fc(0x18f))??_0x248559;_0x21c700[_0x4ca7fc(0x1e3)](0x190,{'Content-Type':'text/html;\x20charset=utf-8'}),_0x21c700[_0x4ca7fc(0x194)]('<h1>授权失败</h1><p>'+_0x4e7c52+'</p>'),clearTimeout(_0x11b8dd),_0x374a9d[_0x4ca7fc(0x18e)](),_0x119ef4(new Error(_0x4ca7fc(0x1ce)+_0x4e7c52));return;}const _0x28dbc3=_0x4daf5c[_0x4ca7fc(0x1a9)]['get']('state');if(_0x28dbc3!==_0x13bc29){_0x21c700[_0x4ca7fc(0x1e3)](0x190,{'Content-Type':_0x4ca7fc(0x174)}),_0x21c700['end']('<h1>授权失败</h1><p>state\x20校验失败,请回到终端重新登录。</p>'),clearTimeout(_0x11b8dd),_0x374a9d[_0x4ca7fc(0x18e)](),_0x119ef4(new Error(_0x4ca7fc(0x1b1)));return;}const _0x568a60=_0x4daf5c[_0x4ca7fc(0x1a9)][_0x4ca7fc(0x19a)](_0x4ca7fc(0x1b6));if(!_0x568a60){_0x21c700[_0x4ca7fc(0x1e3)](0x190,{'Content-Type':_0x4ca7fc(0x174)}),_0x21c700[_0x4ca7fc(0x194)](_0x4ca7fc(0x196)),clearTimeout(_0x11b8dd),_0x374a9d['close'](),_0x119ef4(new Error(_0x4ca7fc(0x1dd)));return;}_0x21c700[_0x4ca7fc(0x1e3)](0xc8,{'Content-Type':_0x4ca7fc(0x174)}),_0x21c700[_0x4ca7fc(0x194)]('<h1>登录成功</h1><p>你可以关闭这个页面,回到终端继续使用\x20mplus。</p>'),clearTimeout(_0x11b8dd),_0x374a9d['close'](),_0x458c2b(_0x568a60);}catch(_0x16fba5){clearTimeout(_0x11b8dd),_0x374a9d[_0x4ca7fc(0x18e)](),_0x119ef4(_0x16fba5);}});_0x374a9d['on']('error',_0x4d19e0=>{clearTimeout(_0x11b8dd),_0x119ef4(_0x4d19e0);}),_0x374a9d[_0x3e7884(0x175)](_0x507ed5,_0x34c33e[_0x3e7884(0x1cd)]);});}async function exchangeCodeForToken(_0x537596,_0x9d69b4,_0x1e1e73,_0x16266f,_0x4dd440){const _0x1a002f=_0x59fee0,_0x549c21=normalizeEndpoint(_0x537596)+_0x1a002f(0x179),_0x36f595=new url_1[(_0x1a002f(0x1a3))]({'grant_type':_0x1a002f(0x1d1),'client_id':_0x9d69b4,'redirect_uri':_0x1e1e73,'code':_0x16266f,'code_verifier':_0x4dd440}),_0x18bae1=await axios_1[_0x1a002f(0x1db)][_0x1a002f(0x1da)](_0x549c21,_0x36f595[_0x1a002f(0x19c)](),{'headers':{'Content-Type':_0x1a002f(0x190),'Accept':_0x1a002f(0x18d)},'timeout':0x3a98});return _0x18bae1[_0x1a002f(0x1ac)];}async function exchangeRefreshToken(_0x3f6c91){const _0x345a56=_0x59fee0;if(!_0x3f6c91['refresh_token'])throw new Error(_0x345a56(0x1c6));const _0x5cc2da=new url_1[(_0x345a56(0x1a3))]({'grant_type':_0x345a56(0x1dc),'client_id':_0x3f6c91[_0x345a56(0x1e1)],'refresh_token':_0x3f6c91[_0x345a56(0x1dc)]}),_0x1d6ff9=await axios_1[_0x345a56(0x1db)][_0x345a56(0x1da)](normalizeEndpoint(_0x3f6c91[_0x345a56(0x176)])+_0x345a56(0x179),_0x5cc2da['toString'](),{'headers':{'Content-Type':'application/x-www-form-urlencoded','Accept':_0x345a56(0x18d)},'timeout':0x3a98});return _0x1d6ff9[_0x345a56(0x1ac)];}async function fetchUserInfo(_0x1e0a10,_0x46422e){const _0x1ec798=_0x59fee0,_0x2e83a9=await axios_1[_0x1ec798(0x1db)]['get'](normalizeEndpoint(_0x1e0a10)+'/oauth/userinfo',{'headers':{'Authorization':_0x1ec798(0x1ae)+_0x46422e,'Accept':_0x1ec798(0x18d)},'timeout':0x3a98});return _0x2e83a9[_0x1ec798(0x1ac)];}function buildSessionFromToken(_0x4dbeba,_0x345be9,_0x2977be){const _0x27a3ff=_0x59fee0,_0x4daf9d=_0x345be9[_0x27a3ff(0x189)]?new Date(Date[_0x27a3ff(0x1a1)]()+_0x345be9[_0x27a3ff(0x189)]*0x3e8)['toISOString']():undefined;return{..._0x4dbeba,'scope':_0x345be9['scope']??_0x4dbeba[_0x27a3ff(0x1a2)],'access_token':_0x345be9[_0x27a3ff(0x1c3)],..._0x345be9[_0x27a3ff(0x1dc)]?{'refresh_token':_0x345be9['refresh_token']}:{},'token_type':_0x345be9[_0x27a3ff(0x1ab)]??_0x27a3ff(0x188),..._0x4daf9d?{'token_expires_at':_0x4daf9d}:{},..._0x2977be?{'user':{'id':_0x2977be[_0x27a3ff(0x1d3)],..._0x2977be[_0x27a3ff(0x1b8)]?{'name':_0x2977be[_0x27a3ff(0x1b8)]}:{},..._0x2977be[_0x27a3ff(0x1c7)]?{'email':_0x2977be['email']}:{},'roles':_0x2977be[_0x27a3ff(0x1b0)]??[]}}:{},'logged_in_at':new Date()['toISOString']()};}async function loginWithOAuth(_0x48afa0){const _0x1ece15=_0x59fee0,_0x9a9567=normalizeEndpoint(_0x48afa0['endpoint']),_0x4253c0=randomBase64Url(0x18),_0x523413=randomBase64Url(0x30),_0x7c2cb9=createCodeChallenge(_0x523413),_0x27875f=new url_1[(_0x1ece15(0x17e))](_0x9a9567+_0x1ece15(0x197));_0x27875f[_0x1ece15(0x1a9)][_0x1ece15(0x1a7)](_0x1ece15(0x1e1),_0x48afa0[_0x1ece15(0x17c)]),_0x27875f[_0x1ece15(0x1a9)]['set'](_0x1ece15(0x172),_0x48afa0['redirectUri']),_0x27875f[_0x1ece15(0x1a9)]['set'](_0x1ece15(0x192),_0x1ece15(0x1b6)),_0x27875f[_0x1ece15(0x1a9)][_0x1ece15(0x1a7)](_0x1ece15(0x1a2),_0x48afa0[_0x1ece15(0x1a2)]),_0x27875f['searchParams'][_0x1ece15(0x1a7)]('state',_0x4253c0),_0x27875f[_0x1ece15(0x1a9)][_0x1ece15(0x1a7)](_0x1ece15(0x1e0),_0x7c2cb9),_0x27875f[_0x1ece15(0x1a9)][_0x1ece15(0x1a7)](_0x1ece15(0x1c8),'S256');const _0x3c8811=listenForCallback(_0x48afa0[_0x1ece15(0x1a4)],_0x4253c0);console['log'](_0x1ece15(0x18a)+_0x27875f[_0x1ece15(0x19c)]()+'\x0a');_0x48afa0['openBrowser']?openUrl(_0x27875f[_0x1ece15(0x19c)]()):console[_0x1ece15(0x1ba)](_0x1ece15(0x1cf));const _0x200d51=await _0x3c8811;process[_0x1ece15(0x19f)]['write'](_0x1ece15(0x1b2));const _0x15a6c=await exchangeCodeForToken(_0x9a9567,_0x48afa0[_0x1ece15(0x17c)],_0x48afa0[_0x1ece15(0x1a4)],_0x200d51,_0x523413);process[_0x1ece15(0x19f)]['write'](_0x1ece15(0x18c));let _0x25e569;try{_0x25e569=await fetchUserInfo(_0x9a9567,_0x15a6c[_0x1ece15(0x1c3)]);}catch(_0x14c417){const _0x437628=axios_1['default'][_0x1ece15(0x1b3)](_0x14c417)?_0x1ece15(0x17f)+(_0x14c417['response']?.[_0x1ece15(0x177)]??_0x14c417[_0x1ece15(0x1b6)]??_0x1ece15(0x1d5)):_0x14c417 instanceof Error?_0x14c417[_0x1ece15(0x1c1)]:String(_0x14c417);process['stderr']['write']('⚠\x20未能获取用户信息('+_0x437628+'),但\x20access\x20token\x20已保存,可用于后续\x20API\x20请求。\x0a');}const _0x37a700=buildSessionFromToken({'endpoint':_0x9a9567,'client_id':_0x48afa0['clientId'],'redirect_uri':_0x48afa0['redirectUri'],'scope':_0x48afa0[_0x1ece15(0x1a2)]},_0x15a6c,_0x25e569);return(0x0,config_1[_0x1ece15(0x1b4)])(_0x48afa0[_0x1ece15(0x178)],_0x37a700),_0x37a700;}function _0x39ef(){const _0x27ce39=['BgLZDgvU','zw5KCg9PBNq','C3rHDhvZ','C2vZC2LVBK5HBwu','l29HDxrOl3rVA2vU','C3rHCNq','CMfUzg9TqNL0zxm','y2XPzw50swq','mZi1odu3nvLkEwfhzW','vvjm','sfruuca','yMfZzty0','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','Bg9NAw5xAxrOt0f1DgG','CgXHDgzVCM0','CMvWBgfJzq','nda0mdyXDNzuvhbI','Axnpqxv0AefJy2vZC1rVA2vUrNjLC2G','Cg9YDa','qMvHCMvY','zxHWAxjLC19PBG','6k+35zYO5Rwp6kEi5zMO5lIT5A6m5OIqie1qioEzU+w9LEAoIoADG++8MGO','Dw5Yzwy','qwnJzxnZihrVA2vUiow3SUIoT+wpLU+8JoATO+wCQowWNEIVLEIoT+wpLUEuQoAiT+s/OEAbRY4UlGO','yxbWBgLJyxrPB24VANnVBG','y2XVC2u','zxjYB3jFzgvZy3jPChrPB24','yxbWBgLJyxrPB24VEc13D3CTzM9YBs11CMXLBMnVzgvK','562j5B6f5Rwp6kEi5zMO5O6i5P2d6lAf5PE277Ym6k+36yEn5PAW6l+q6kgmig1WBhvZigXVz2LU','CMvZCg9UC2vFDhLWzq','x19JCMvHDgvcAw5KAw5N','zw5K','Ahr0Ca','pgGXpUAoIoADG+wKSEI0PtWVAde+pha+5zUE6lcd5lIT57Y65BcrignVzgxJGii8l3a+','l29HDxrOl2f1DgHVCML6zq','B3bLBG','y3jLyxrLu2vYDMvY','z2v0','z2v0t0f1DgHtzxnZAw9U','Dg9tDhjPBMC','EgrNlw9Wzw4','Cgf0Ag5HBwu','C3rKB3v0','z2v0vMfSAwrpqxv0AefJy2vZC1rVA2vU','BM93','C2nVCgu','vvjmu2vHCMnOugfYyw1Z','CMvKAxjLy3rvCMK','Dg9Rzw5FzxHWAxjLC19HDa','x19PBxbVCNrtDgfY','C2v0','DxbKyxrL','C2vHCMnOugfYyw1Z','z2v0vgLTzq','Dg9Rzw5FDhLWzq','zgf0yq','y3jLyxrL','qMvHCMvYia','y2fSBa','CM9Szxm','t0f1DgGGC3rHDguG5QcH6AQm5AsX6lsL','5BEY5Ps25yIW5O6i5P2d56cb77Ym5Q2J5zYO5O2I5y+wigfJy2vZCYb0B2TLBI4UlGO','AxnbEgLVC0vYCM9Y','C2f2zu9bDxrOu2vZC2LVBG','x19PBxbVCNrezwzHDwX0','y29Kzq','5PYQ5OM+5yIWie9bDxrOihnLC3nPB27VViZOR7FLHyJOV5dOOyWGBxbSDxmGBg9NAw4','BMfTzq','nZjwthLNBwe','Bg9N','CMvKAxjLy3rFDxjPiow/HEMHU+AyRYbSB2nHBgHVC3qG5OIwideYnY4WlJaUmq','BgvUz3rO','nZe2mdLTr1Piy2C','mteZmdG0we9Rz1rN','C2vZC2LVBG','y3jLyxrLsgfZAa','BwvZC2fNzq','DxnLCG','ywnJzxnZx3rVA2vU','Dgv4Dc9WBgfPBJSGy2HHCNnLDd11DgyToa','y21K','5B2t5yMnie9bDxrOihnLC3nPB24G5RkH5PYjihjLzNjLC2HFDg9Rzw7VViZOR7FPH43MLRdOV5dOOyWGBxbSDxmGBg9NAw4','zw1HAwW','y29Kzv9JAgfSBgvUz2vFBwv0Ag9K','CMvMCMvZAe9bDxrOu2vZC2LVBG','y2HPBgrFChjVy2vZCW','AgfZt3DUuhjVCgvYDhK','zgvMAw5LuhjVCgvYDhK','Ag9ZDg5HBwu','t0f1DgGG5O6i5P2d5AsX6lsL77YA','5BEY56Ab55sO6iEQ5yQO5OMt5BYa5Rwp6kEi5zMO77Ym6k+35OMl5yQO5Asn5yI25lIk6z2I55Qe5zYW5z2a6k6/6zEU44cc','zgLNzxn0','yxv0Ag9YAxPHDgLVBL9JB2rL','mty2mdm1mhjfrK9KyG','C3vI','z2v0t3DUuhjVCgvYDhLoyw1LCW','Dw5RBM93BG','x19ZzxrnB2r1BgvezwzHDwX0','mta4odG3muHIshrOCq','mtK3nJu2uMzAB09w','D3jPDgfIBgu','Cg9ZDa','zgvMyxvSDa','CMvMCMvZAf90B2TLBG','t0f1DgGG5zUE6lcd5lIT57Y65BcrignVzgu','Bg9JywXOB3n0','D2LUmZi','y29Kzv9JAgfSBgvUz2u','y2XPzw50x2LK','DxjS','D3jPDgvizwfK','ChjVDg9JB2W','x19LC01VzhvSzq','CMvKAxjLy3rFDxjP','C2HHmJu2','Dgv4Dc9ODg1SoYbJAgfYC2v0pxv0zI04'];_0x39ef=function(){return _0x27ce39;};return _0x39ef();}function isOAuthAccessTokenFresh(_0x141146,_0x25a475=0x3c){const _0x1327c3=_0x59fee0;if(!_0x141146[_0x1327c3(0x1a5)])return!![];return new Date(_0x141146['token_expires_at'])[_0x1327c3(0x1aa)]()-Date[_0x1327c3(0x1a1)]()>_0x25a475*0x3e8;}async function refreshOAuthSession(_0xcdd020){const _0x27ec80=_0x59fee0,_0x222059=(0x0,config_1[_0x27ec80(0x19b)])(_0xcdd020);if(!_0x222059)throw new Error(_0x27ec80(0x1b7));const _0x403fc0=await exchangeRefreshToken(_0x222059[_0x27ec80(0x1bf)]),_0x104e84={..._0x222059[_0x27ec80(0x1bf)],...buildSessionFromToken({'endpoint':_0x222059[_0x27ec80(0x1bf)][_0x27ec80(0x176)],'client_id':_0x222059[_0x27ec80(0x1bf)]['client_id'],'redirect_uri':_0x222059['session'][_0x27ec80(0x172)],'scope':_0x222059[_0x27ec80(0x1bf)][_0x27ec80(0x1a2)]},_0x403fc0,_0x222059['session']['user']?{'sub':_0x222059[_0x27ec80(0x1bf)][_0x27ec80(0x1c2)]['id'],'name':_0x222059['session'][_0x27ec80(0x1c2)][_0x27ec80(0x1b8)],'email':_0x222059[_0x27ec80(0x1bf)][_0x27ec80(0x1c2)][_0x27ec80(0x1c7)],'roles':_0x222059['session'][_0x27ec80(0x1c2)][_0x27ec80(0x1b0)]}:undefined),'refresh_token':_0x403fc0[_0x27ec80(0x1dc)]??_0x222059[_0x27ec80(0x1bf)][_0x27ec80(0x1dc)]};return(0x0,config_1['saveOAuthSession'])(_0x222059[_0x27ec80(0x1b8)],_0x104e84),_0x104e84;}async function getValidOAuthAccessToken(_0x269396){const _0x21387b=_0x59fee0,_0x45735f=(0x0,config_1[_0x21387b(0x19b)])(_0x269396);if(!_0x45735f)throw new Error('未找到\x20OAuth\x20session,请先运行\x20mplus\x20login');if(isOAuthAccessTokenFresh(_0x45735f['session']))return _0x45735f[_0x21387b(0x1bf)][_0x21387b(0x1c3)];const _0x3fcfb2=await refreshOAuthSession(_0x45735f[_0x21387b(0x1b8)]);return _0x3fcfb2['access_token'];}
|
|
1
|
+
'use strict';const _0xf03b62=_0x53ee;(function(_0x5f4d18,_0x3ffa32){const _0x49ade3=_0x53ee,_0x5b003a=_0x5f4d18();while(!![]){try{const _0x225b57=-parseInt(_0x49ade3(0x1d6))/0x1*(parseInt(_0x49ade3(0x196))/0x2)+parseInt(_0x49ade3(0x1b4))/0x3+-parseInt(_0x49ade3(0x19f))/0x4*(parseInt(_0x49ade3(0x1b1))/0x5)+-parseInt(_0x49ade3(0x1d0))/0x6*(parseInt(_0x49ade3(0x1bc))/0x7)+parseInt(_0x49ade3(0x1ab))/0x8+-parseInt(_0x49ade3(0x189))/0x9+-parseInt(_0x49ade3(0x179))/0xa*(-parseInt(_0x49ade3(0x1a7))/0xb);if(_0x225b57===_0x3ffa32)break;else _0x5b003a['push'](_0x5b003a['shift']());}catch(_0x404233){_0x5b003a['push'](_0x5b003a['shift']());}}}(_0x251c,0xde065));function _0x53ee(_0x264141,_0x37b33c){_0x264141=_0x264141-0x170;const _0x251c89=_0x251c();let _0x53ee1c=_0x251c89[_0x264141];if(_0x53ee['AaVHUV']===undefined){var _0x31673c=function(_0x2cb3af){const _0x48121f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5701c9='',_0x28aa43='';for(let _0x254640=0x0,_0x1f48aa,_0x5d5064,_0x21193f=0x0;_0x5d5064=_0x2cb3af['charAt'](_0x21193f++);~_0x5d5064&&(_0x1f48aa=_0x254640%0x4?_0x1f48aa*0x40+_0x5d5064:_0x5d5064,_0x254640++%0x4)?_0x5701c9+=String['fromCharCode'](0xff&_0x1f48aa>>(-0x2*_0x254640&0x6)):0x0){_0x5d5064=_0x48121f['indexOf'](_0x5d5064);}for(let _0x19de13=0x0,_0x4c3f73=_0x5701c9['length'];_0x19de13<_0x4c3f73;_0x19de13++){_0x28aa43+='%'+('00'+_0x5701c9['charCodeAt'](_0x19de13)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x28aa43);};_0x53ee['zrsVvB']=_0x31673c,_0x53ee['PpFUmo']={},_0x53ee['AaVHUV']=!![];}const _0x34340=_0x251c89[0x0],_0x2f38b9=_0x264141+_0x34340,_0x21af83=_0x53ee['PpFUmo'][_0x2f38b9];return!_0x21af83?(_0x53ee1c=_0x53ee['zrsVvB'](_0x53ee1c),_0x53ee['PpFUmo'][_0x2f38b9]=_0x53ee1c):_0x53ee1c=_0x21af83,_0x53ee1c;}function _0x251c(){const _0x55d9eb=['y3jLyxrLsgfZAa','ChjVDg90ExbL','562j5B6f5Rwp6kEi5zMO5O6i5P2d6lAf5PE277Ym6k+36yEn5PAW6l+q6kgmig1WBhvZigXVz2LU','t0f1DgGGC3rHDguG5QcH6AQm5AsX6lsL','zgf0yq','otiZotaXDw5cyKvZ','C2f2zu9bDxrOu2vZC2LVBG','ChjVDg9JB2W','CMfUzg9TqNL0zxm','mJy0nte2oejmzhfLDq','5PYQ5OM+5yIWie9bDxrOihnLC3nPB27VViZOR7FLHyJOV5dOOyWGBxbSDxmGBg9NAw4','CgXHDgzVCM0','z2v0','x19LC01VzhvSzq','C2v0','mtvZs2nfD0u','zxHWAxjLC19PBG','Ahr0Ca','mJeZmdeYoun4uM1AAq','DxjS','l29HDxrOl3vZzxjPBMzV','y29Kzv9JAgfSBgvUz2vFBwv0Ag9K','Cgf0Ag5HBwu','Aw5JBhvKzxm','D2LUmZi','Dgv4Dc9ODg1SoYbJAgfYC2v0pxv0zI04','n2fuwurhrq','y2XVC2u','y2XPzw50swq','CMvWBgfJzq','Dg9ju09tDhjPBMC','vvjm','zxjYB3i','BM93','Cg9ZDa','lI9JB25MAwC','zxjYB3jFzgvZy3jPChrPB24','x19JCMvHDgvcAw5KAw5N','l29HDxrOl2f1DgHVCML6zq','Dgv4Dc9WBgfPBJSGy2HHCNnLDd11DgyToa','tM90iezVDw5K','CMvMCMvZAe9bDxrOu2vZC2LVBG','DxnLCG','y3j5ChrV','Bg9NAw5xAxrOt0f1DgG','Cg9YDa','oda4mde5neHgsNjjzW','ywnJzxnZx3rVA2vU','pc9WpG','D3jPDgfIBgu','C2nVCgu','CMvZCg9UC2u','nJK5nZG4D3LXqNHV','Dg9Rzw5FzxHWAxjLC19HDa','CMvKAxjLy3rvCMK','D3jPDgvizwfK','BgvUz3rO','CM9Szxm','C3rKzxjY','t0f1DgGG5zUE6lcd5lIT57Y65BcrignVzgu','Bg9N','pgGXpUAoIoADG+wKSEI0PtWVAde+pha+5zUE6lcd5lIT57Y65BcrignVzgxJGii8l3a+','C3rHDgu','yxbWBgLJyxrPB24VANnVBG','Dg9tDhjPBMC','z2v0vMfSAwrpqxv0AefJy2vZC1rVA2vU','y29Kzq','yxbWBgLJyxrPB24VEc13D3CTzM9YBs11CMXLBMnVzgvK','y29UzMLNDxjHyMXL','AgfZt3DUuhjVCgvYDhK','D3jPDgu','Axnpqxv0AefJy2vZC1rVA2vUrNjLC2G','5BEY56Ab55sO6iEQ5yQO5OMt5BYa5Rwp6kEi5zMO77Ym6k+35OMl5yQO5Asn5yI25lIk6z2I55Qe5zYW5z2a6k6/6zEU44cc','l29HDxrOl3rVA2vU','pgGXpUAoIoADG+wKSEI0PtWVAde+pha+C3rHDguG5QcH6AQm5AsX6lsL77Ym6k+35zUE5yIW57Ui56UV6yEn5PAW55M75B2v44ccpc9WpG','zgLNzxn0','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','pgGXpUAoIoADG+wKSEI0PtWVAde+pha+','x19PBxbVCNrezwzHDwX0','Ag9ZDg5HBwu','y3jLyxrL','x19ZzxrnB2r1BgvezwzHDwX0','yxv0Ag9YAxPHDgLVBL9JB2rL','nZeWEhHby3bh','CMvMCMvZAf90B2TLBG','zw5KCg9PBNq','C2vZC2LVBG','z2v0t0f1DgHtzxnZAw9U','yxHPB3m','zgvMyxvSDa','B3bLBG','Dw5Yzwy','x19PBxbVCNrtDgfY','qMvHCMvY','EgrNlw9Wzw4','B3bLBKjYB3DZzxi','CMvKAxjLy3rFDxjP','y2fSBa','qwnJzxnZihrVA2vUiow3SUIoT+wpLU+8JoATO+wCQowWNEIVLEIoT+wpLUEuQoAiT+s/OEAbRY4UlGO','mtyYnJuWmdDPrKvirei','C2vZC2LVBK5HBwu','BwvZC2fNzq','Dg9Rzw5FDhLWzq','5B2t5yMnie9bDxrOihnLC3nPB24G5RkH5PYjihjLzNjLC2HFDg9Rzw7VViZOR7FPH43MLRdOV5dOOyWGBxbSDxmGBg9NAw4','C2HHmJu2','AwDUB3jL','C3rKB3v0','BMfTzq','BgLZDgvU','DxbKyxrL','y2XPzw50x2LK','Dw5RBM93BG','ne5ywNbpsq','yMfZzty0','y29Kzv9JAgfSBgvUz2u','C2vHCMnOugfYyw1Z','uZi1nG','C3bHD24','sfruuca','y2HPBgrFChjVy2vZCW','zw5K','mJa1ndG1mNnLqK5kuq','CMvKAxjLy3rFDxjPiow/HEMHU+AyRYbSB2nHBgHVC3qG5OIwideYnY4WlJaUmq','AxnbEgLVC0vYCM9Y'];_0x251c=function(){return _0x55d9eb;};return _0x251c();}var __createBinding=this&&this[_0xf03b62(0x1c7)]||(Object[_0xf03b62(0x176)]?function(_0x5701c9,_0x28aa43,_0x254640,_0x1f48aa){const _0x3b901b=_0xf03b62;if(_0x1f48aa===undefined)_0x1f48aa=_0x254640;var _0x5d5064=Object[_0x3b901b(0x172)](_0x28aa43,_0x254640);(!_0x5d5064||(_0x3b901b(0x1ae)in _0x5d5064?!_0x28aa43[_0x3b901b(0x1af)]:_0x5d5064[_0x3b901b(0x1d3)]||_0x5d5064[_0x3b901b(0x1e6)]))&&(_0x5d5064={'enumerable':!![],'get':function(){return _0x28aa43[_0x254640];}}),Object['defineProperty'](_0x5701c9,_0x1f48aa,_0x5d5064);}:function(_0x21193f,_0x19de13,_0x4c3f73,_0x5956fb){if(_0x5956fb===undefined)_0x5956fb=_0x4c3f73;_0x21193f[_0x5956fb]=_0x19de13[_0x4c3f73];}),__setModuleDefault=this&&this[_0xf03b62(0x177)]||(Object[_0xf03b62(0x176)]?function(_0x5f9212,_0x19bed9){const _0x2fe1d3=_0xf03b62;Object['defineProperty'](_0x5f9212,_0x2fe1d3(0x17f),{'enumerable':!![],'value':_0x19bed9});}:function(_0x2abe40,_0x211020){const _0x143c2d=_0xf03b62;_0x2abe40[_0x143c2d(0x17f)]=_0x211020;}),__importStar=this&&this[_0xf03b62(0x182)]||(function(){var _0x372e7a=function(_0x453be4){return _0x372e7a=Object['getOwnPropertyNames']||function(_0x2f14c4){const _0x4f95c6=_0x53ee;var _0x2b1127=[];for(var _0x5677b3 in _0x2f14c4)if(Object[_0x4f95c6(0x1a3)][_0x4f95c6(0x1e7)][_0x4f95c6(0x187)](_0x2f14c4,_0x5677b3))_0x2b1127[_0x2b1127[_0x4f95c6(0x1da)]]=_0x5677b3;return _0x2b1127;},_0x372e7a(_0x453be4);};return function(_0x2ac5e1){const _0x503818=_0x53ee;if(_0x2ac5e1&&_0x2ac5e1[_0x503818(0x1af)])return _0x2ac5e1;var _0x39396e={};if(_0x2ac5e1!=null){for(var _0x3105ae=_0x372e7a(_0x2ac5e1),_0x1ba793=0x0;_0x1ba793<_0x3105ae[_0x503818(0x1da)];_0x1ba793++)if(_0x3105ae[_0x1ba793]!=='default')__createBinding(_0x39396e,_0x2ac5e1,_0x3105ae[_0x1ba793]);}return __setModuleDefault(_0x39396e,_0x2ac5e1),_0x39396e;};}()),__importDefault=this&&this[_0xf03b62(0x174)]||function(_0x290690){const _0x27d3c3=_0xf03b62;return _0x290690&&_0x290690[_0x27d3c3(0x1af)]?_0x290690:{'default':_0x290690};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports[_0xf03b62(0x1ce)]=loginWithOAuth,exports[_0xf03b62(0x1e9)]=isOAuthAccessTokenFresh,exports[_0xf03b62(0x1cb)]=refreshOAuthSession,exports[_0xf03b62(0x1e3)]=getValidOAuthAccessToken;const axios_1=__importDefault(require(_0xf03b62(0x17e))),crypto=__importStar(require(_0xf03b62(0x1cd))),http=__importStar(require(_0xf03b62(0x1b3))),url_1=require(_0xf03b62(0x1b5)),child_process_1=require(_0xf03b62(0x19d)),config_1=require(_0xf03b62(0x1c5));function base64Url(_0x4cea0b){const _0x2eeb34=_0xf03b62;return _0x4cea0b[_0x2eeb34(0x1e2)](_0x2eeb34(0x197))[_0x2eeb34(0x1bf)](/\+/g,'-')[_0x2eeb34(0x1bf)](/\//g,'_')[_0x2eeb34(0x1bf)](/=+$/g,'');}function randomBase64Url(_0x123e9d=0x20){const _0x5b7110=_0xf03b62;return base64Url(crypto[_0x5b7110(0x1aa)](_0x123e9d));}function createCodeChallenge(_0x1df495){const _0x318e0d=_0xf03b62;return base64Url(crypto[_0x318e0d(0x1a2)](_0x318e0d(0x18e))[_0x318e0d(0x193)](_0x1df495)[_0x318e0d(0x171)]());}function normalizeEndpoint(_0x4c518e){const _0x3ecf52=_0xf03b62;return _0x4c518e[_0x3ecf52(0x1bf)](/\/$/,'');}function openUrl(_0x82c80f){const _0x1bf616=_0xf03b62,_0x2fcafd=process[_0x1bf616(0x1ad)],_0x1d236a=_0x2fcafd==='darwin'?_0x1bf616(0x180):_0x2fcafd===_0x1bf616(0x1ba)?'cmd':_0x1bf616(0x184),_0x1bd91a=_0x2fcafd==='win32'?['/c','start','',_0x82c80f]:[_0x82c80f],_0xb96fd8=(0x0,child_process_1[_0x1bf616(0x19b)])(_0x1d236a,_0x1bd91a,{'stdio':_0x1bf616(0x18f),'detached':!![]});_0xb96fd8[_0x1bf616(0x181)]();}function listenForCallback(_0x3777da,_0x1a0634){const _0x2a1e42=_0xf03b62,_0x49abf2=new url_1[(_0x2a1e42(0x1c1))](_0x3777da),_0x5bd39e=Number(_0x49abf2[_0x2a1e42(0x1cf)]||(_0x49abf2[_0x2a1e42(0x1a9)]==='https:'?0x1bb:0x50)),_0x44abeb=_0x49abf2[_0x2a1e42(0x1b8)];if(!['127.0.0.1','localhost'][_0x2a1e42(0x1b9)](_0x49abf2[_0x2a1e42(0x175)]))throw new Error(_0x2a1e42(0x1a0));return new Promise((_0x18f870,_0x3b58f4)=>{const _0x12ff3b=_0x2a1e42,_0x35ab66=setTimeout(()=>{const _0x17bb07=_0x53ee;_0x370126[_0x17bb07(0x1bd)](),_0x3b58f4(new Error(_0x17bb07(0x1a4)));},0x5*0x3c*0x3e8),_0x370126=http['createServer']((_0x314134,_0x252ace)=>{const _0x40733a=_0x53ee;try{const _0x5da2fb=new url_1[(_0x40733a(0x1c1))](_0x314134[_0x40733a(0x1b5)]??'/',_0x3777da);if(_0x5da2fb[_0x40733a(0x1b8)]!==_0x44abeb){_0x252ace['writeHead'](0x194,{'Content-Type':_0x40733a(0x1c9)}),_0x252ace['end'](_0x40733a(0x1ca));return;}const _0xedaecc=_0x5da2fb[_0x40733a(0x199)]['get'](_0x40733a(0x1c2));if(_0xedaecc){const _0x2607e3=_0x5da2fb[_0x40733a(0x199)]['get'](_0x40733a(0x1c6))??_0xedaecc;_0x252ace[_0x40733a(0x1d9)](0x190,{'Content-Type':_0x40733a(0x1bb)}),_0x252ace['end'](_0x40733a(0x173)+_0x2607e3+_0x40733a(0x1d2)),clearTimeout(_0x35ab66),_0x370126[_0x40733a(0x1bd)](),_0x3b58f4(new Error('OAuth\x20授权失败:'+_0x2607e3));return;}const _0x17fdfc=_0x5da2fb[_0x40733a(0x199)][_0x40733a(0x1ae)](_0x40733a(0x1e0));if(_0x17fdfc!==_0x1a0634){_0x252ace[_0x40733a(0x1d9)](0x190,{'Content-Type':_0x40733a(0x1bb)}),_0x252ace[_0x40733a(0x19e)](_0x40733a(0x170)),clearTimeout(_0x35ab66),_0x370126[_0x40733a(0x1bd)](),_0x3b58f4(new Error(_0x40733a(0x1a5)));return;}const _0x563acb=_0x5da2fb[_0x40733a(0x199)][_0x40733a(0x1ae)](_0x40733a(0x1e4));if(!_0x563acb){_0x252ace[_0x40733a(0x1d9)](0x190,{'Content-Type':_0x40733a(0x1bb)}),_0x252ace[_0x40733a(0x19e)](_0x40733a(0x1df)),clearTimeout(_0x35ab66),_0x370126[_0x40733a(0x1bd)](),_0x3b58f4(new Error(_0x40733a(0x1dd)));return;}_0x252ace[_0x40733a(0x1d9)](0xc8,{'Content-Type':_0x40733a(0x1bb)}),_0x252ace[_0x40733a(0x19e)]('<h1>登录成功</h1><p>你可以关闭这个页面,回到终端继续使用\x20mplus。</p>'),clearTimeout(_0x35ab66),_0x370126[_0x40733a(0x1bd)](),_0x18f870(_0x563acb);}catch(_0x12a895){clearTimeout(_0x35ab66),_0x370126[_0x40733a(0x1bd)](),_0x3b58f4(_0x12a895);}});_0x370126['on']('error',_0x26702b=>{clearTimeout(_0x35ab66),_0x3b58f4(_0x26702b);}),_0x370126[_0x12ff3b(0x192)](_0x5bd39e,_0x49abf2[_0x12ff3b(0x175)]);});}async function exchangeCodeForToken(_0x19f219,_0x4911e4,_0x326586,_0x5a5bf5,_0x215ebe){const _0x53ca4d=_0xf03b62,_0x2d5241=normalizeEndpoint(_0x19f219)+_0x53ca4d(0x1eb),_0x1c9968=new url_1['URLSearchParams']({'grant_type':_0x53ca4d(0x178),'client_id':_0x4911e4,'redirect_uri':_0x326586,'code':_0x5a5bf5,'code_verifier':_0x215ebe}),_0x495b79=await axios_1[_0x53ca4d(0x17f)][_0x53ca4d(0x1c4)](_0x2d5241,_0x1c9968[_0x53ca4d(0x1e2)](),{'headers':{'Content-Type':_0x53ca4d(0x1e5),'Accept':_0x53ca4d(0x1e1)},'timeout':0x3a98});return _0x495b79['data'];}async function exchangeRefreshToken(_0x29e067){const _0x369aa8=_0xf03b62;if(!_0x29e067[_0x369aa8(0x17a)])throw new Error(_0x369aa8(0x18d));const _0x335ab3=new url_1['URLSearchParams']({'grant_type':_0x369aa8(0x17a),'client_id':_0x29e067[_0x369aa8(0x194)],'refresh_token':_0x29e067[_0x369aa8(0x17a)]}),_0x22744e=await axios_1['default']['post'](normalizeEndpoint(_0x29e067[_0x369aa8(0x17b)])+_0x369aa8(0x1eb),_0x335ab3['toString'](),{'headers':{'Content-Type':'application/x-www-form-urlencoded','Accept':'application/json'},'timeout':0x3a98});return _0x22744e[_0x369aa8(0x1a6)];}async function fetchUserInfo(_0x2ef8d3,_0x54620a){const _0xaa0b0e=_0xf03b62,_0x214387=await axios_1[_0xaa0b0e(0x17f)]['get'](normalizeEndpoint(_0x2ef8d3)+_0xaa0b0e(0x1b6),{'headers':{'Authorization':'Bearer\x20'+_0x54620a,'Accept':'application/json'},'timeout':0x3a98});return _0x214387[_0xaa0b0e(0x1a6)];}function buildSessionFromToken(_0x36043b,_0x5b323e,_0x1e7006){const _0x5b5bf8=_0xf03b62,_0x58e817=_0x5b323e['expires_in']?new Date(Date[_0x5b5bf8(0x1c3)]()+_0x5b323e[_0x5b5bf8(0x1b2)]*0x3e8)[_0x5b5bf8(0x1c0)]():undefined;return{..._0x36043b,'scope':_0x5b323e[_0x5b5bf8(0x1d4)]??_0x36043b[_0x5b5bf8(0x1d4)],'access_token':_0x5b323e[_0x5b5bf8(0x1d1)],..._0x5b323e[_0x5b5bf8(0x17a)]?{'refresh_token':_0x5b323e[_0x5b5bf8(0x17a)]}:{},'token_type':_0x5b323e[_0x5b5bf8(0x18c)]??_0x5b5bf8(0x183),..._0x58e817?{'token_expires_at':_0x58e817}:{},..._0x1e7006?{'user':{'id':_0x1e7006['sub'],..._0x1e7006[_0x5b5bf8(0x191)]?{'name':_0x1e7006[_0x5b5bf8(0x191)]}:{},..._0x1e7006['email']?{'email':_0x1e7006['email']}:{},'roles':_0x1e7006[_0x5b5bf8(0x1db)]??[]}}:{},'logged_in_at':new Date()['toISOString']()};}async function loginWithOAuth(_0x63e235){const _0x13a2ef=_0xf03b62,_0x339c8b=normalizeEndpoint(_0x63e235[_0x13a2ef(0x17b)]),_0x2069ea=randomBase64Url(0x18),_0x5d05b8=randomBase64Url(0x30),_0x329733=createCodeChallenge(_0x5d05b8),_0x4adb56=new url_1[(_0x13a2ef(0x1c1))](_0x339c8b+_0x13a2ef(0x1c8));_0x4adb56[_0x13a2ef(0x199)]['set'](_0x13a2ef(0x194),_0x63e235[_0x13a2ef(0x1be)]),_0x4adb56[_0x13a2ef(0x199)][_0x13a2ef(0x1b0)](_0x13a2ef(0x186),_0x63e235[_0x13a2ef(0x1d8)]),_0x4adb56['searchParams'][_0x13a2ef(0x1b0)]('response_type',_0x13a2ef(0x1e4)),_0x4adb56[_0x13a2ef(0x199)]['set']('scope',_0x63e235[_0x13a2ef(0x1d4)]),_0x4adb56['searchParams'][_0x13a2ef(0x1b0)]('state',_0x2069ea),_0x4adb56[_0x13a2ef(0x199)][_0x13a2ef(0x1b0)](_0x13a2ef(0x198),_0x329733),_0x4adb56[_0x13a2ef(0x199)][_0x13a2ef(0x1b0)](_0x13a2ef(0x1b7),_0x13a2ef(0x19a));const _0x28a8b7=listenForCallback(_0x63e235[_0x13a2ef(0x1d8)],_0x2069ea);console[_0x13a2ef(0x1de)]('请在浏览器中完成\x20MP\x20登录授权:\x0a'+_0x4adb56['toString']()+'\x0a');_0x63e235[_0x13a2ef(0x185)]?openUrl(_0x4adb56[_0x13a2ef(0x1e2)]()):console[_0x13a2ef(0x1de)](_0x13a2ef(0x1ea));const _0x7bd1c5=await _0x28a8b7;process[_0x13a2ef(0x190)][_0x13a2ef(0x1e8)]('已收到授权码,正在换取\x20access\x20token...\x0a');const _0x5c1cf2=await exchangeCodeForToken(_0x339c8b,_0x63e235[_0x13a2ef(0x1be)],_0x63e235[_0x13a2ef(0x1d8)],_0x7bd1c5,_0x5d05b8);process[_0x13a2ef(0x190)][_0x13a2ef(0x1e8)](_0x13a2ef(0x188));let _0x43f638;try{_0x43f638=await fetchUserInfo(_0x339c8b,_0x5c1cf2[_0x13a2ef(0x1d1)]);}catch(_0x303fab){const _0x5f4632=axios_1['default'][_0x13a2ef(0x1a1)](_0x303fab)?_0x13a2ef(0x19c)+(_0x303fab[_0x13a2ef(0x1d5)]?.['status']??_0x303fab[_0x13a2ef(0x1e4)]??_0x13a2ef(0x195)):_0x303fab instanceof Error?_0x303fab[_0x13a2ef(0x18b)]:String(_0x303fab);process[_0x13a2ef(0x1dc)][_0x13a2ef(0x1e8)]('⚠\x20未能获取用户信息('+_0x5f4632+'),但\x20access\x20token\x20已保存,可用于后续\x20API\x20请求。\x0a');}const _0x6b6f05=buildSessionFromToken({'endpoint':_0x339c8b,'client_id':_0x63e235['clientId'],'redirect_uri':_0x63e235[_0x13a2ef(0x1d8)],'scope':_0x63e235['scope']},_0x5c1cf2,_0x43f638);return(0x0,config_1[_0x13a2ef(0x1a8)])(_0x63e235[_0x13a2ef(0x18a)],_0x6b6f05),_0x6b6f05;}function isOAuthAccessTokenFresh(_0x5c0328,_0x2ae24f=0x3c){const _0x3b20ef=_0xf03b62;if(!_0x5c0328[_0x3b20ef(0x1d7)])return!![];return new Date(_0x5c0328[_0x3b20ef(0x1d7)])['getTime']()-Date['now']()>_0x2ae24f*0x3e8;}async function refreshOAuthSession(_0x13d5e1){const _0x4fde56=_0xf03b62,_0x4175cb=(0x0,config_1['getOAuthSession'])(_0x13d5e1);if(!_0x4175cb)throw new Error(_0x4fde56(0x1ac));const _0x3c4761=await exchangeRefreshToken(_0x4175cb[_0x4fde56(0x17c)]),_0x460b12={..._0x4175cb[_0x4fde56(0x17c)],...buildSessionFromToken({'endpoint':_0x4175cb[_0x4fde56(0x17c)]['endpoint'],'client_id':_0x4175cb['session'][_0x4fde56(0x194)],'redirect_uri':_0x4175cb[_0x4fde56(0x17c)][_0x4fde56(0x186)],'scope':_0x4175cb['session'][_0x4fde56(0x1d4)]},_0x3c4761,_0x4175cb[_0x4fde56(0x17c)][_0x4fde56(0x1cc)]?{'sub':_0x4175cb['session'][_0x4fde56(0x1cc)]['id'],'name':_0x4175cb[_0x4fde56(0x17c)][_0x4fde56(0x1cc)][_0x4fde56(0x191)],'email':_0x4175cb[_0x4fde56(0x17c)][_0x4fde56(0x1cc)]['email'],'roles':_0x4175cb['session']['user'][_0x4fde56(0x1db)]}:undefined),'refresh_token':_0x3c4761[_0x4fde56(0x17a)]??_0x4175cb['session'][_0x4fde56(0x17a)]};return(0x0,config_1[_0x4fde56(0x1a8)])(_0x4175cb['name'],_0x460b12),_0x460b12;}async function getValidOAuthAccessToken(_0x228ec0){const _0x3dac72=_0xf03b62,_0x4d62c3=(0x0,config_1[_0x3dac72(0x17d)])(_0x228ec0);if(!_0x4d62c3)throw new Error('未找到\x20OAuth\x20session,请先运行\x20mplus\x20login');if(isOAuthAccessTokenFresh(_0x4d62c3['session']))return _0x4d62c3[_0x3dac72(0x17c)][_0x3dac72(0x1d1)];const _0x786edb=await refreshOAuthSession(_0x4d62c3[_0x3dac72(0x191)]);return _0x786edb['access_token'];}
|
package/dist/oauth_client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const _0x11e523=_0x589d;(function(_0x4f4a21,_0x349665){const _0x5c4eb8=_0x589d,_0x176fc3=_0x4f4a21();while(!![]){try{const _0x36a6ca=parseInt(_0x5c4eb8(0x11b))/0x1*(-parseInt(_0x5c4eb8(0x107))/0x2)+parseInt(_0x5c4eb8(0x10e))/0x3*(-parseInt(_0x5c4eb8(0x10f))/0x4)+-parseInt(_0x5c4eb8(0x10c))/0x5+parseInt(_0x5c4eb8(0x101))/0x6+-parseInt(_0x5c4eb8(0x119))/0x7+-parseInt(_0x5c4eb8(0x102))/0x8+-parseInt(_0x5c4eb8(0x108))/0x9*(-parseInt(_0x5c4eb8(0x114))/0xa);if(_0x36a6ca===_0x349665)break;else _0x176fc3['push'](_0x176fc3['shift']());}catch(_0x27dc67){_0x176fc3['push'](_0x176fc3['shift']());}}}(_0x208c,0x64b89));var __importDefault=this&&this['__importDefault']||function(_0x617f46){const _0x3d6336=_0x589d;return _0x617f46&&_0x617f46[_0x3d6336(0x104)]?_0x617f46:{'default':_0x617f46};};Object['defineProperty'](exports,_0x11e523(0x104),{'value':!![]}),exports[_0x11e523(0x110)]=oauthApiClient;function _0x589d(_0x45fd37,_0x5b96d4){_0x45fd37=_0x45fd37-0xff;const _0x208ced=_0x208c();let _0x589d34=_0x208ced[_0x45fd37];if(_0x589d['MrBkaJ']===undefined){var _0x4233b0=function(_0x3acda0){const _0x15677f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x617f46='',_0xc4ac98='';for(let _0x5479c1=0x0,_0x14cc4f,_0x2ba37d,_0x2c9abd=0x0;_0x2ba37d=_0x3acda0['charAt'](_0x2c9abd++);~_0x2ba37d&&(_0x14cc4f=_0x5479c1%0x4?_0x14cc4f*0x40+_0x2ba37d:_0x2ba37d,_0x5479c1++%0x4)?_0x617f46+=String['fromCharCode'](0xff&_0x14cc4f>>(-0x2*_0x5479c1&0x6)):0x0){_0x2ba37d=_0x15677f['indexOf'](_0x2ba37d);}for(let _0x5e55a1=0x0,_0xdacbff=_0x617f46['length'];_0x5e55a1<_0xdacbff;_0x5e55a1++){_0xc4ac98+='%'+('00'+_0x617f46['charCodeAt'](_0x5e55a1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc4ac98);};_0x589d['DdmDnk']=_0x4233b0,_0x589d['HAUaDM']={},_0x589d['MrBkaJ']=!![];}const _0x4027a9=_0x208ced[0x0],_0x32699b=_0x45fd37+_0x4027a9,_0x3e4f45=_0x589d['HAUaDM'][_0x32699b];return!_0x3e4f45?(_0x589d34=_0x589d['DdmDnk'](_0x589d34),_0x589d['HAUaDM'][_0x32699b]=_0x589d34):_0x589d34=_0x3e4f45,_0x589d34;}const axios_1=__importDefault(require(_0x11e523(0x105))),env_1=require(_0x11e523(0x10d)),oauth_1=require(_0x11e523(0x10b)),client_1=require('./client');function httpErrorMessage(_0xc4ac98,_0x5479c1){const _0x569c72=_0x11e523;if(_0x5479c1&&typeof _0x5479c1===_0x569c72(0x115)&&_0x569c72(0x111)in _0x5479c1)return String(_0x5479c1[_0x569c72(0x111)]);switch(_0xc4ac98){case 0x191:return _0x569c72(0x10a);case 0x193:return _0x569c72(0x106);case 0x194:return _0x569c72(0x103);default:if(_0xc4ac98>=0x1f4)return'服务器错误,请稍后重试';return'请求失败(HTTP\x20'+_0xc4ac98+')';}}function _0x208c(){const _0x14f396=['mtm4ndfhswXrq2e','CMvXDwvZDa','qxbPrxjYB3i','revgqvvmvf9bueLFr0furvDbwv9ftKrqt0Lova','zgf0yq','mJqXndiWohj0D1jwEa','mJa1nte2mhLftwLOAG','6lwe5RQq5lIn5A2y5zYO','x19LC01VzhvSzq','yxHPB3m','5l2G5RkH5PYj6k6/6zEU6k+L6lwe5RQq55Qe5P2d6zMq','mtbYvMP6tgi','ovPdvKLfDq','CMvZCg9UC2u','t0f1DgGG6yM05P2d5AsX6lsL77Ym6k+36l+q6kgmig1WBhvZigXVz2LUioMhJEAwSoEzU+w9Lq','lI9Vyxv0Aa','mteWotK3mgrQtM1WzW','lI9LBNy','ntuZotj2vgfxrxq','mJbrD2vRugS','B2f1DgHbCgLdBgLLBNq','BwvZC2fNzq','zw52','Aw50zxjJzxb0B3jZ','odeZotyXmgjOCLPeza','B2jQzwn0','572r57UC6zsz6k+V77Ym5PEG5Rov6l+E5O6LiefqssbhyxrLD2f577YA','zgvMyxvSDa','tvbmvvnFqvbjx0DbvevxqvLFru5eue9jtLq','mte0mZuZnePzv1jJuq','C3rHDhvZ'];_0x208c=function(){return _0x14f396;};return _0x208c();}async function oauthApiClient(_0x14cc4f){const _0x1223ba=_0x11e523,_0x2ba37d=await(0x0,oauth_1['getValidOAuthAccessToken'])(_0x14cc4f),_0x2c9abd=(process[_0x1223ba(0x112)][_0x1223ba(0x118)]??env_1[_0x1223ba(0xff)])['replace'](/\/$/,''),_0x5e55a1=axios_1[_0x1223ba(0x117)]['create']({'baseURL':_0x2c9abd,'headers':{'Authorization':'Bearer\x20'+_0x2ba37d,'Content-Type':'application/json','Accept':'application/json'},'timeout':0x7530});return _0x5e55a1[_0x1223ba(0x113)]['response']['use'](_0xdacbff=>_0xdacbff,_0x311de2=>{const _0x4c5115=_0x1223ba;if(_0x311de2[_0x4c5115(0x109)])throw new client_1['ApiError'](httpErrorMessage(_0x311de2[_0x4c5115(0x109)][_0x4c5115(0x11a)],_0x311de2[_0x4c5115(0x109)][_0x4c5115(0x100)]),_0x311de2[_0x4c5115(0x109)]['status']);if(_0x311de2[_0x4c5115(0x11c)])throw new client_1[(_0x4c5115(0x11d))](_0x4c5115(0x116)+_0x311de2[_0x4c5115(0x111)]);throw new client_1[(_0x4c5115(0x11d))](_0x311de2[_0x4c5115(0x111)]);}),_0x5e55a1;}
|
package/dist/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var _0x2fc12f=_0x299d;function _0x166a(){var _0x46b78b=['nta4mZa4merqu2Dizq','mZC4nJu1q1DgCuL1','oxvKv0vSvW','mtbkEe9SwM8','mtaWndG3n05HBxjfBa','mte5uuL6sgnW','mtu4mdu2nJLzBMPWBNG','mtKZote1ogPbq1fdtG','mtu5ndq2BK1Su1Hu','x19LC01VzhvSzq','y29TBwfUzfjVBgvZ','mtjODercsem','nZeYnZrktu5PvhG'];_0x166a=function(){return _0x46b78b;};return _0x166a();}function _0x299d(_0x1f34ac,_0x630592){_0x1f34ac=_0x1f34ac-0x1f4;var _0x166af7=_0x166a();var _0x299db4=_0x166af7[_0x1f34ac];if(_0x299d['dLuevV']===undefined){var _0x52ce99=function(_0x305e5b){var _0x469232='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3889e8='',_0x29b048='';for(var _0xb3421e=0x0,_0x231588,_0x383cd6,_0x2816e7=0x0;_0x383cd6=_0x305e5b['charAt'](_0x2816e7++);~_0x383cd6&&(_0x231588=_0xb3421e%0x4?_0x231588*0x40+_0x383cd6:_0x383cd6,_0xb3421e++%0x4)?_0x3889e8+=String['fromCharCode'](0xff&_0x231588>>(-0x2*_0xb3421e&0x6)):0x0){_0x383cd6=_0x469232['indexOf'](_0x383cd6);}for(var _0x479905=0x0,_0x77bb14=_0x3889e8['length'];_0x479905<_0x77bb14;_0x479905++){_0x29b048+='%'+('00'+_0x3889e8['charCodeAt'](_0x479905)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29b048);};_0x299d['jNTHtE']=_0x52ce99,_0x299d['vpxkit']={},_0x299d['dLuevV']=!![];}var _0x27c931=_0x166af7[0x0],_0x3d19c9=_0x1f34ac+_0x27c931,_0x893c47=_0x299d['vpxkit'][_0x3d19c9];return!_0x893c47?(_0x299db4=_0x299d['jNTHtE'](_0x299db4),_0x299d['vpxkit'][_0x3d19c9]=_0x299db4):_0x299db4=_0x893c47,_0x299db4;}(function(_0x3b3cf9,_0x290d52){var _0xbc8022=_0x299d,_0x280d41=_0x3b3cf9();while(!![]){try{var _0x81d791=-parseInt(_0xbc8022(0x1fd))/0x1+-parseInt(_0xbc8022(0x1fc))/0x2+-parseInt(_0xbc8022(0x1f9))/0x3+-parseInt(_0xbc8022(0x200))/0x4*(-parseInt(_0xbc8022(0x1f6))/0x5)+parseInt(_0xbc8022(0x1f4))/0x6*(-parseInt(_0xbc8022(0x1fa))/0x7)+-parseInt(_0xbc8022(0x1f5))/0x8*(-parseInt(_0xbc8022(0x1f7))/0x9)+-parseInt(_0xbc8022(0x1f8))/0xa*(-parseInt(_0xbc8022(0x1fb))/0xb);if(_0x81d791===_0x290d52)break;else _0x280d41['push'](_0x280d41['shift']());}catch(_0x54b0d0){_0x280d41['push'](_0x280d41['shift']());}}}(_0x166a,0x9aaba));Object['defineProperty'](exports,_0x2fc12f(0x1fe),{'value':!![]}),exports[_0x2fc12f(0x1ff)]=void 0x0,exports['commandRoles']=new Map();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@miracleplus/mplus",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.9",
|
|
4
4
|
"description": "奇绩创坛命令行工具(mplus CLI)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"miracleplus",
|
|
@@ -12,13 +12,11 @@
|
|
|
12
12
|
"mplus": "./bin/mplus.js"
|
|
13
13
|
},
|
|
14
14
|
"main": "./dist/index.js",
|
|
15
|
-
"readme": "README.npm.md",
|
|
16
15
|
"files": [
|
|
17
16
|
"dist",
|
|
18
17
|
"bin",
|
|
19
18
|
"skills",
|
|
20
|
-
"scripts/postinstall-skills.js"
|
|
21
|
-
"README.npm.md"
|
|
19
|
+
"scripts/postinstall-skills.js"
|
|
22
20
|
],
|
|
23
21
|
"scripts": {
|
|
24
22
|
"build": "tsc -p tsconfig.build.json && node scripts/postbuild.js",
|
|
@@ -15,6 +15,21 @@ metadata:
|
|
|
15
15
|
|
|
16
16
|
mplus CLI 的 admission 相关命令使用 **OAuth Authorization Code + PKCE** 认证,通过 API Gateway (`https://api-gateway.miracleplus.com`) 访问后端服务。
|
|
17
17
|
|
|
18
|
+
### 检查登录状态
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# 查看当前 OAuth 登录状态
|
|
22
|
+
mplus status
|
|
23
|
+
|
|
24
|
+
# JSON 格式(AI Agent 推荐)
|
|
25
|
+
mplus status --json
|
|
26
|
+
|
|
27
|
+
# 查看指定 session
|
|
28
|
+
mplus status --session work
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**重要**:使用 `mplus status` 检查 OAuth 登录状态,不要用 `mplus whoami`(那是 API Key 体系的命令)。
|
|
32
|
+
|
|
18
33
|
### 登录
|
|
19
34
|
|
|
20
35
|
```bash
|
package/README.npm.md
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
# mplus CLI
|
|
2
|
-
|
|
3
|
-
奇绩创坛命令行工具,在终端中与 [apply.miracleplus.com](https://apply.miracleplus.com) 和 [build.miracleplus.com](https://build.miracleplus.com) 交互。
|
|
4
|
-
|
|
5
|
-
## 面向人群
|
|
6
|
-
1. 目前主要面向奇绩合伙人(陆奇, 曹勖文, 毛圣博, 栾运明 等)
|
|
7
|
-
2. 创业者暂时用不了,暂时不支持创业者的"填写申请", 提交申请"功能。
|
|
8
|
-
3. 暂时不支持校友(被投资企业)
|
|
9
|
-
|
|
10
|
-
本工具 2026 年 4 月 11 号上线,刚上线的功能有限,后续会支持更多功能,感谢你的耐心等待。
|
|
11
|
-
任何意见或建议请发邮件到 chengzheng@miracleplus.com,或者飞书找 @郑诚
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## 安装
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
npm install -g @miracleplus/mplus
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
## 快速开始
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
# 1. 配置 API Key
|
|
25
|
-
mplus configure
|
|
26
|
-
|
|
27
|
-
# 2. 验证身份
|
|
28
|
-
mplus whoami
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
API Key 获取方式:登录奇绩创坛 → 账户设置 → 访问密钥 → 新建密钥。
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## 常用命令
|
|
36
|
-
|
|
37
|
-
| 命令 | 说明 |
|
|
38
|
-
|---|---|
|
|
39
|
-
| `mplus configure [--profile <name>]` | 配置 API 连接(endpoint + key)|
|
|
40
|
-
| `mplus whoami [--json]` | 查看当前登录身份 |
|
|
41
|
-
| `mplus profiles` | 列出所有已配置的 profile |
|
|
42
|
-
| `mplus use <profile>` | 切换默认 profile |
|
|
43
|
-
| `mplus logout [--profile <name>]` | 清除登录状态 |
|
|
44
|
-
|
|
45
|
-
所有命令支持 `--help` 查看详细用法,例如 `mplus configure --help`。
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## 多环境(Profile)
|
|
50
|
-
|
|
51
|
-
同时管理多个环境时:
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
mplus configure # 配置默认(生产)
|
|
55
|
-
mplus configure --profile staging # 配置测试环境
|
|
56
|
-
|
|
57
|
-
mplus use staging # 切换到测试环境
|
|
58
|
-
mplus whoami --profile staging # 临时使用,不切换默认
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
---
|
|
62
|
-
|
|
63
|
-
## 环境变量(CI/CD)
|
|
64
|
-
|
|
65
|
-
适用于无法交互式运行 `mplus configure` 的场景:
|
|
66
|
-
|
|
67
|
-
| 变量 | 说明 |
|
|
68
|
-
|---|---|
|
|
69
|
-
| `MPLUS_KEY_ID` | API Key ID |
|
|
70
|
-
| `MPLUS_KEY_SECRET` | API Key Secret |
|
|
71
|
-
| `MPLUS_ENDPOINT` | API 端点地址 |
|
|
72
|
-
|
|
73
|
-
三个变量需同时设置,完全跳过本地配置文件:
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
MPLUS_KEY_ID=ki_xxx \
|
|
77
|
-
MPLUS_KEY_SECRET=ks_xxx \
|
|
78
|
-
MPLUS_ENDPOINT=https://apply.miracleplus.com \
|
|
79
|
-
mplus whoami
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## 配置文件
|
|
85
|
-
|
|
86
|
-
存储于 `~/.config/mplus/config.json`(权限 `0600`)。
|
|
87
|
-
⚠️ 含有 Key Secret,请勿提交到版本库或分享给他人。
|