@wujie-shell/core 3.0.1 → 3.0.2
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/dist/bin/wujie-shell.mjs +1 -1
- package/dist/src/agents/bundled-agent-skills.mjs +1 -1
- package/dist/src/agents/bundled-agents.mjs +1 -1
- package/dist/src/chat/media-archive.mjs +1 -1
- package/dist/src/chat/queue.mjs +1 -1
- package/dist/src/common/diagnostics.mjs +1 -1
- package/dist/src/common/logging.mjs +1 -1
- package/dist/src/common/runtime-logger.mjs +1 -1
- package/dist/src/common/user-events.mjs +1 -1
- package/dist/src/common/utils.mjs +1 -1
- package/dist/src/config/controller.mjs +1 -1
- package/dist/src/connectors/config-utils.mjs +1 -1
- package/dist/src/connectors/constants.mjs +1 -1
- package/dist/src/connectors/controller.mjs +1 -1
- package/dist/src/connectors/kdocs-cli.mjs +1 -1
- package/dist/src/electron/main.mjs +1 -1
- package/dist/src/electron/preload.mjs +1 -1
- package/dist/src/files/generated-files-store.mjs +1 -1
- package/dist/src/files/handlers.mjs +1 -1
- package/dist/src/gateway/chat-delta.mjs +1 -1
- package/dist/src/gateway/controller.mjs +1 -1
- package/dist/src/gateway/ws-client.mjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/log-reporting/handlers.mjs +1 -1
- package/dist/src/log-reporting/report-logs.mjs +1 -1
- package/dist/src/models/handlers.mjs +1 -1
- package/dist/src/preferences/store.mjs +1 -1
- package/dist/src/runtime/index.mjs +1 -1
- package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
- package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
- package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -1
- package/dist/src/runtime/plugin-sync.mjs +1 -1
- package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
- package/dist/src/sessions/runtime-bridge.mjs +1 -1
- package/dist/src/sessions/session-sqlite-store.mjs +1 -1
- package/dist/src/skills/import.mjs +1 -1
- package/dist/src/skills/market.mjs +1 -1
- package/dist/src/terminal/manager.mjs +1 -1
- package/dist/src/updates/controller.mjs +1 -1
- package/dist/src/updates/loader.mjs +1 -0
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x1cf374=_0x3307;(function(_0x4bdfaf,_0x446657){const _0x38a7d1=_0x3307,_0x5623c4=_0x4bdfaf();while(!![]){try{const _0x5e165e=-parseInt(_0x38a7d1(0x1ba))/0x1+parseInt(_0x38a7d1(0x1a6))/0x2*(-parseInt(_0x38a7d1(0x1b6))/0x3)+parseInt(_0x38a7d1(0x189))/0x4+-parseInt(_0x38a7d1(0x1b2))/0x5*(-parseInt(_0x38a7d1(0x18e))/0x6)+parseInt(_0x38a7d1(0x18d))/0x7*(-parseInt(_0x38a7d1(0x18f))/0x8)+-parseInt(_0x38a7d1(0x1a8))/0x9+-parseInt(_0x38a7d1(0x188))/0xa*(-parseInt(_0x38a7d1(0x19c))/0xb);if(_0x5e165e===_0x446657)break;else _0x5623c4['push'](_0x5623c4['shift']());}catch(_0xe50a88){_0x5623c4['push'](_0x5623c4['shift']());}}}(_0x165d,0x695bf));import{readFile,readdir,rm}from'node:fs/promises';import{join}from'node:path';import{asRecord,getTrimmedString,writeJson}from'../common/utils.mjs';const SKILL_SOURCE_MARKET=_0x1cf374(0x1ad)+_0x1cf374(0x190);function _0x165d(){const _0x948250=['skillKey','entries','size','match','技能商店安装需要','11374AMjGqj','接口返回的\x20co','replace','Key','map','ion','gatewayS','mpare','parse','rsion','35554EGfeLu','resolveS','2985273GcKtYW','trim','logo_url','utf8','descript','aipc-mar','market-s','catch','kills.js','code','235890QDrTcE','has','SKILLS.m','接口返回的\x20ve','15lUUMhR','manifest','接口返回的\x20na','fromEntr','761561hSXFPi',':\x5cs*(.+)','filter','localeCo','isArray','skills','keys','logoUrl','tateDir','11150dbbukz','2783360GbzKoS','skillDir','name','sort','14sJaHxG','6GKUtMy','1128936hJqWun','ket','object','killKey','isDirect','length','^\x5cs*','version'];_0x165d=function(){return _0x948250;};return _0x165d();}function _0x3307(_0x5b81a6,_0x1ddff){_0x5b81a6=_0x5b81a6-0x182;const _0x165d73=_0x165d();let _0x33076a=_0x165d73[_0x5b81a6];return _0x33076a;}async function readMarketSkillRegistry(_0x36a5c7){const _0x358118=_0x1cf374;try{const _0x4afc99=JSON[_0x358118(0x1a4)](await readFile(_0x36a5c7,_0x358118(0x1ab)));if(!_0x4afc99||typeof _0x4afc99!==_0x358118(0x191)||Array[_0x358118(0x183)](_0x4afc99))return{};return _0x4afc99;}catch{return{};}}export async function readSkillMarketRegistry(_0xc8943c){const _0x509728=_0x1cf374;return await readMarketSkillRegistry(join(_0xc8943c,_0x509728(0x1ae)+_0x509728(0x1b0)+'on'));}async function upsertMarketSkillRegistryEntry(_0xa75eeb,_0x59fdc9,_0xf21811,_0x57b80c,_0x114a1e={}){const _0x1aa280=_0x1cf374,_0x4dfa80=getTrimmedString(_0x59fdc9),_0xaaa3d3=getTrimmedString(_0xf21811),_0x50c5ac=getTrimmedString(_0x57b80c);if(!_0x4dfa80||!_0xaaa3d3||!_0x50c5ac)return;const _0x55d2f1=await readMarketSkillRegistry(_0xa75eeb);_0x55d2f1[_0x4dfa80]={'version':_0x50c5ac,'code':_0xaaa3d3,...getTrimmedString(_0x114a1e['name'])?{'name':getTrimmedString(_0x114a1e[_0x1aa280(0x18b)])}:{},...getTrimmedString(_0x114a1e['logoUrl'])?{'logo_url':getTrimmedString(_0x114a1e[_0x1aa280(0x186)])}:{},...getTrimmedString(_0x114a1e[_0x1aa280(0x1ac)+'ion'])?{'description':getTrimmedString(_0x114a1e[_0x1aa280(0x1ac)+_0x1aa280(0x1a1)])}:{}};if(_0x55d2f1[_0xaaa3d3]&&_0xaaa3d3!==_0x4dfa80)delete _0x55d2f1[_0xaaa3d3];for(const [_0x999da0,_0x376b2f]of Object[_0x1aa280(0x198)](_0x55d2f1)){if(_0x999da0!==_0x4dfa80&&asRecord(_0x376b2f)[_0x1aa280(0x1b1)]===_0xaaa3d3)delete _0x55d2f1[_0x999da0];}const _0xafef44=Object[_0x1aa280(0x1b9)+'ies'](Object['entries'](_0x55d2f1)[_0x1aa280(0x18c)](([_0x2b3a27],[_0x14cced])=>_0x2b3a27[_0x1aa280(0x182)+_0x1aa280(0x1a3)](_0x14cced)));await writeJson(_0xa75eeb,_0xafef44);}async function removeMarketSkillRegistryKeys(_0x26d6cf,_0x26ea9c){const _0xb9f8a7=_0x1cf374,_0x42c188=new Set(_0x26ea9c[_0xb9f8a7(0x1a0)](getTrimmedString)[_0xb9f8a7(0x1bc)](Boolean));if(_0x42c188[_0xb9f8a7(0x199)]===0x0)return;const _0x4eb924=await readMarketSkillRegistry(_0x26d6cf);let _0x2ddc4a=![];for(const _0x2acce9 of Object[_0xb9f8a7(0x185)](_0x4eb924)){const _0x5a1a2f=asRecord(_0x4eb924[_0x2acce9]);(_0x42c188[_0xb9f8a7(0x1b3)](_0x2acce9)||_0x42c188[_0xb9f8a7(0x1b3)](getTrimmedString(_0x5a1a2f['code'])))&&(delete _0x4eb924[_0x2acce9],_0x2ddc4a=!![]);}if(_0x2ddc4a){const _0xdbbb12=Object[_0xb9f8a7(0x1b9)+'ies'](Object['entries'](_0x4eb924)['sort'](([_0x5379f3],[_0x1c52f0])=>_0x5379f3[_0xb9f8a7(0x182)+_0xb9f8a7(0x1a3)](_0x1c52f0)));await writeJson(_0x26d6cf,_0xdbbb12);}}async function readSkillManifestText(_0x3a9274){const _0x26aa3f=_0x1cf374,_0x3c8bf2=[join(_0x3a9274,'SKILL.md'),join(_0x3a9274,_0x26aa3f(0x1b4)+'d')];for(const _0x1d1198 of _0x3c8bf2){const _0x3e3f98=await readFile(_0x1d1198,'utf8')[_0x26aa3f(0x1af)](()=>'');if(_0x3e3f98[_0x26aa3f(0x1a9)]())return _0x3e3f98;}return'';}function resolveFrontmatterValue(_0x35c85d,_0x23ab0d){const _0x4cacea=_0x1cf374,_0x395a1e=_0x35c85d[_0x4cacea(0x19a)](/^---\s*\r?\n([\s\S]*?)\r?\n---/),_0x15a85b=_0x395a1e?.[0x1]??'',_0x366c95=_0x15a85b[_0x4cacea(0x19a)](new RegExp(_0x4cacea(0x195)+_0x23ab0d+(_0x4cacea(0x1bb)+'$'),'m'))?.[0x1];return getTrimmedString(_0x366c95)[_0x4cacea(0x19e)](/^["']|["']$/g,'')||null;}async function resolveSkillKeyFromManifest(_0x3c5522){const _0x1edfed=_0x1cf374,_0x2752b7=await readSkillManifestText(_0x3c5522);if(!_0x2752b7[_0x1edfed(0x1a9)]())return null;const _0x26ccc2=_0x2752b7[_0x1edfed(0x19a)](/"skillKey"\s*:\s*"([^"]+)"/);if(_0x26ccc2?.[0x1])return getTrimmedString(_0x26ccc2[0x1]);return resolveFrontmatterValue(_0x2752b7,_0x1edfed(0x197))||resolveFrontmatterValue(_0x2752b7,_0x1edfed(0x18b));}async function removeOtherMarketSkillVersions(_0x426e90,_0x1a74f4,_0x5b8079){const _0x262667=_0x1cf374,_0xccd611=getTrimmedString(_0x5b8079);if(!_0xccd611)return;for(const _0xed96b6 of await readdir(_0x426e90,{'withFileTypes':!![]})[_0x262667(0x1af)](()=>[])){if(!_0xed96b6[_0x262667(0x193)+'ory']())continue;const _0x512ff6=join(_0x426e90,_0xed96b6['name']);if(_0x512ff6===_0x1a74f4)continue;const _0x12ee4c=await resolveSkillKeyFromManifest(_0x512ff6);_0x12ee4c&&_0x12ee4c[_0x262667(0x1a9)]()===_0xccd611&&await rm(_0x512ff6,{'recursive':!![],'force':!![]});}}export async function importMarketSkillZip({payload:payload={},importSkillZip:_0x5e1b2e,configController:_0x10ea9c}={}){const _0x47d0e3=_0x1cf374,_0x5a989d=asRecord(payload);if(_0x5a989d['source']!=='market')return _0x5e1b2e({'payload':payload});const _0x25f5a4=getTrimmedString(_0x5a989d['code']),_0x2e382c=getTrimmedString(_0x5a989d[_0x47d0e3(0x196)]),_0x4a54a2=getTrimmedString(_0x5a989d[_0x47d0e3(0x18b)]);if(!_0x25f5a4)throw new Error(_0x47d0e3(0x19b)+_0x47d0e3(0x19d)+'de');if(!_0x2e382c)throw new Error(_0x47d0e3(0x19b)+_0x47d0e3(0x1b5)+_0x47d0e3(0x1a5));if(!_0x4a54a2)throw new Error(_0x47d0e3(0x19b)+_0x47d0e3(0x1b8)+'me');const _0x43b52f=await _0x5e1b2e({'payload':{..._0x5a989d,'version':_0x2e382c}});if(!_0x43b52f?.['imported'])return _0x43b52f;const _0x5a192d=getTrimmedString(_0x43b52f[_0x47d0e3(0x197)])||getTrimmedString(_0x43b52f[_0x47d0e3(0x1b7)+_0x47d0e3(0x19f)])||getTrimmedString(_0x43b52f[_0x47d0e3(0x18a)+'Name']);return await removeOtherMarketSkillVersions(join(_0x10ea9c[_0x47d0e3(0x1a7)+_0x47d0e3(0x187)](),_0x47d0e3(0x184)),_0x43b52f['targetPa'+'th'],_0x5a192d),await upsertMarketSkillRegistryEntry(join(_0x10ea9c[_0x47d0e3(0x1a7)+'tateDir'](),_0x47d0e3(0x1ae)+_0x47d0e3(0x1b0)+'on'),_0x5a192d,_0x25f5a4,_0x2e382c,{'name':_0x4a54a2,'logoUrl':getTrimmedString(_0x5a989d[_0x47d0e3(0x186)]),'description':getTrimmedString(_0x5a989d['descript'+_0x47d0e3(0x1a1)])}),_0x43b52f;}export async function deleteMarketSkillRegistryEntry({payload:payload={},deleteManagedSkill:_0x4bd426,configController:_0x370627}={}){const _0x218da5=_0x1cf374,_0x519379=await _0x4bd426({'payload':payload}),_0x4e0248=asRecord(payload),_0x21af88=getTrimmedString(_0x519379?.['skillKey']??_0x4e0248[_0x218da5(0x197)]??_0x4e0248[_0x218da5(0x18b)]),_0x152031=[_0x21af88,getTrimmedString(_0x4e0248[_0x218da5(0x1a2)+_0x218da5(0x192)]),getTrimmedString(_0x4e0248[_0x218da5(0x18b)])];return await removeMarketSkillRegistryKeys(join(_0x370627[_0x218da5(0x1a7)+_0x218da5(0x187)](),'market-s'+_0x218da5(0x1b0)+'on'),_0x152031),_0x519379;}export function mapMarketRegisteredSkills(_0x5d6c87,_0x563101){const _0x3bbac2=_0x1cf374,_0xed442d=Array[_0x3bbac2(0x183)](asRecord(_0x5d6c87)[_0x3bbac2(0x184)])?asRecord(_0x5d6c87)[_0x3bbac2(0x184)]:[];if(_0xed442d[_0x3bbac2(0x194)]===0x0||Object[_0x3bbac2(0x185)](_0x563101)[_0x3bbac2(0x194)]===0x0)return _0x5d6c87;const _0x44cab9=_0xed442d[_0x3bbac2(0x1a0)](_0x2aad8a=>{const _0x59019e=_0x3bbac2,_0x391442=asRecord(_0x2aad8a),_0x780c9e=getTrimmedString(_0x391442[_0x59019e(0x197)])||getTrimmedString(_0x391442[_0x59019e(0x18b)]);let _0x5ed6ac=_0x780c9e,_0x355a03=asRecord(_0x563101[_0x780c9e]);if(!Object[_0x59019e(0x185)](_0x355a03)[_0x59019e(0x194)])for(const [_0x821d01,_0x1774e9]of Object[_0x59019e(0x198)](_0x563101)){const _0x3362ae=asRecord(_0x1774e9);if(getTrimmedString(_0x3362ae[_0x59019e(0x1b1)])===_0x780c9e){_0x5ed6ac=_0x821d01,_0x355a03=_0x3362ae;break;}}if(!Object[_0x59019e(0x185)](_0x355a03)[_0x59019e(0x194)])return _0x2aad8a;const _0x2fdcd7=getTrimmedString(_0x355a03[_0x59019e(0x1b1)]),_0x12e7f0=getTrimmedString(_0x355a03[_0x59019e(0x18b)]),_0x1b3710=getTrimmedString(_0x355a03[_0x59019e(0x1ac)+'ion']),_0x9e1d42=getTrimmedString(_0x355a03[_0x59019e(0x1aa)]),_0x43c849=getTrimmedString(_0x355a03['version']);return{..._0x391442,'source':SKILL_SOURCE_MARKET,'skillKey':_0x2fdcd7||_0x780c9e,'gatewaySkillKey':_0x2fdcd7?_0x5ed6ac:null,'marketInstalledVersion':_0x43c849||null,..._0x12e7f0?{'name':_0x12e7f0}:{},..._0x1b3710?{'description':_0x1b3710}:{},..._0x9e1d42?{'logoUrl':_0x9e1d42}:{}};});return{...asRecord(_0x5d6c87),'skills':_0x44cab9};}export function createMarketSkillRuntime({configController:_0x54f7bf}){return{'mapSkillsStatus':async _0x5145db=>{const _0x14c271=_0x3307,_0x16bd27=await readSkillMarketRegistry(_0x54f7bf['resolveS'+_0x14c271(0x187)]())[_0x14c271(0x1af)](()=>({}));return mapMarketRegisteredSkills(_0x5145db,_0x16bd27);}};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4b869a,_0x535deb){const _0x5a793b=_0x4b6d,_0x541e42=_0x4b869a();while(!![]){try{const _0x449f53=-parseInt(_0x5a793b(0xc8))/0x1+-parseInt(_0x5a793b(0xc7))/0x2+-parseInt(_0x5a793b(0xd3))/0x3+-parseInt(_0x5a793b(0xe6))/0x4+parseInt(_0x5a793b(0xd9))/0x5*(-parseInt(_0x5a793b(0xf9))/0x6)+-parseInt(_0x5a793b(0xd2))/0x7*(parseInt(_0x5a793b(0xd0))/0x8)+parseInt(_0x5a793b(0xe8))/0x9*(parseInt(_0x5a793b(0xde))/0xa);if(_0x449f53===_0x535deb)break;else _0x541e42['push'](_0x541e42['shift']());}catch(_0x1722cf){_0x541e42['push'](_0x541e42['shift']());}}}(_0x3071,0x688d5));function _0x4b6d(_0x294579,_0x1b5f7b){_0x294579=_0x294579-0xc0;const _0x307131=_0x3071();let _0x4b6d54=_0x307131[_0x294579];return _0x4b6d54;}import{spawn}from'node:child_process';import{randomUUID}from'node:crypto';import{accessSync,constants,existsSync}from'node:fs';import{mkdir}from'node:fs/promises';import{basename,delimiter,join}from'node:path';const FILE_EXTENSION_REGEX=/\.[a-z0-9]+$/i;function resolvePathEntries(_0x23e4a1){const _0x956bf5=_0x4b6d,_0x380a2f=Object[_0x956bf5(0xce)](_0x23e4a1)[_0x956bf5(0xfd)](_0x5281a7=>_0x5281a7[_0x956bf5(0xf4)+_0x956bf5(0xe0)]()===_0x956bf5(0xe3))??_0x956bf5(0xc2);return String(_0x23e4a1[_0x380a2f]||'')['split'](delimiter)[_0x956bf5(0xda)](Boolean);}function canExecute(_0xd34ebb){const _0x5b2b4c=_0x4b6d;try{return accessSync(_0xd34ebb,process[_0x5b2b4c(0xc4)]===_0x5b2b4c(0xc6)?constants['F_OK']:constants['X_OK']),!![];}catch{return![];}}function resolveExecutableOnPath(_0x5c9671,_0xcbe296){const _0x3c8904=_0x4b6d,_0x50915f=String(_0x5c9671||'')[_0x3c8904(0xfa)]();if(!_0x50915f)return null;if(_0x50915f[_0x3c8904(0xf7)]('/')||_0x50915f['includes']('\x5c'))return existsSync(_0x50915f)?_0x50915f:null;const _0xf987f6=[_0x50915f];process['platform']===_0x3c8904(0xc6)&&!FILE_EXTENSION_REGEX['test'](_0x50915f)&&_0xf987f6[_0x3c8904(0xd1)](_0x50915f+_0x3c8904(0xf6),_0x50915f+_0x3c8904(0xd6),_0x50915f+_0x3c8904(0xc3));for(const _0x820176 of resolvePathEntries(_0xcbe296)){for(const _0x567f09 of _0xf987f6){const _0x392f5d=join(_0x820176,_0x567f09);if(canExecute(_0x392f5d))return _0x392f5d;}}return null;}function resolveShellLaunchConfig(_0x3deb4a){const _0x24c468=_0x4b6d;if(process[_0x24c468(0xc4)]===_0x24c468(0xc6)){const _0x594f66=resolveExecutableOnPath(_0x24c468(0xd5),_0x3deb4a)??resolveExecutableOnPath('powershe'+'ll',_0x3deb4a);if(_0x594f66)return{'command':_0x594f66,'args':[_0x24c468(0xd7)]};const _0x47a180=resolveExecutableOnPath('cmd',_0x3deb4a);if(_0x47a180)return{'command':_0x47a180,'args':['/Q']};throw new Error(_0x24c468(0xc5)+'rted\x20Win'+'dows\x20she'+_0x24c468(0xca));}if(process['platform']==='darwin'){const _0x5cc02d=['/bin/zsh',_0x24c468(0xf5)+'al/bin/z'+'sh',_0x24c468(0xe1)+_0x24c468(0xc1)+_0x24c468(0xdf)]['find'](canExecute);if(_0x5cc02d)return{'command':_0x5cc02d,'args':['-i']};const _0x520724=['/bin/bas'+'h',_0x24c468(0xf5)+_0x24c468(0xcb)+_0x24c468(0xe7),_0x24c468(0xe1)+_0x24c468(0xc1)+_0x24c468(0xe4)][_0x24c468(0xfd)](canExecute);if(_0x520724)return{'command':_0x520724,'args':['--login','-i']};}const _0x4e9818=resolveExecutableOnPath(process.env.SHELL||'',_0x3deb4a)??resolveExecutableOnPath(_0x24c468(0xfb),_0x3deb4a)??resolveExecutableOnPath('sh',_0x3deb4a);if(!_0x4e9818)throw new Error('No\x20suppo'+'rted\x20she'+_0x24c468(0xca));return{'command':_0x4e9818,'args':['-l','-i']};}export function createTerminalManager({cwd:_0x52b337,emitData:_0x256589,emitExit:_0x14b728}){const _0x2c907e=new Map();function _0x334985(_0x59c4b9){const _0x2eaaba=_0x4b6d,_0x4720db=_0x2c907e[_0x2eaaba(0xc0)](_0x59c4b9);if(!_0x4720db)throw new Error(_0x2eaaba(0xcf)+_0x2eaaba(0xeb)+_0x2eaaba(0xe2)+'nd');return _0x4720db;}async function _0x24ba60(_0x358cd5={}){const _0x2a5410=_0x4b6d,_0x5d2f21={...process.env,'TERM':_0x2a5410(0xfc)+_0x2a5410(0xcc),'COLORTERM':_0x2a5410(0xdd)+'r',..._0x358cd5['env']&&typeof _0x358cd5[_0x2a5410(0xf3)]===_0x2a5410(0xe9)?_0x358cd5['env']:{}},_0x136c86=typeof _0x358cd5[_0x2a5410(0xdc)]==='string'&&_0x358cd5['cwd'][_0x2a5410(0xfa)]()?_0x358cd5['cwd']:'',_0x2ed176=_0x136c86||_0x52b337;await mkdir(_0x2ed176,{'recursive':!![]});const {command:_0xfc9c16,args:_0x42ab30}=resolveShellLaunchConfig(_0x5d2f21),_0x3e0527=randomUUID(),_0x2c57d6=spawn(_0xfc9c16,_0x42ab30,{'cwd':_0x2ed176,'env':_0x5d2f21,'stdio':_0x2a5410(0xd8)});return _0x2c907e['set'](_0x3e0527,{'sessionId':_0x3e0527,'child':_0x2c57d6}),_0x2c57d6[_0x2a5410(0xf1)]['on']('data',_0x21779d=>_0x256589({'sessionId':_0x3e0527,'data':_0x21779d[_0x2a5410(0xcd)]()})),_0x2c57d6[_0x2a5410(0xe5)]['on'](_0x2a5410(0xec),_0x25f749=>_0x256589({'sessionId':_0x3e0527,'data':_0x25f749['toString']()})),_0x2c57d6['on'](_0x2a5410(0xd4),(_0x8f3692,_0x4b4a69)=>{const _0xdd6099=_0x2a5410;_0x2c907e[_0xdd6099(0xdb)](_0x3e0527),_0x14b728({'sessionId':_0x3e0527,'exitCode':_0x8f3692,'signal':_0x4b4a69});}),_0x2c57d6['on'](_0x2a5410(0xf2),_0x5e5db6=>{const _0x2aaab3=_0x2a5410;_0x256589({'sessionId':_0x3e0527,'data':_0x5e5db6[_0x2aaab3(0xee)]+'\x0a'});}),{'sessionId':_0x3e0527,'shell':basename(_0xfc9c16),'cwd':_0x2ed176};}function _0xbe4b5f(_0x46b977={}){const _0x16b449=_0x4b6d,_0x409565=_0x334985(String(_0x46b977[_0x16b449(0xed)+'d']||''));return _0x409565['child'][_0x16b449(0xf0)]['write'](String(_0x46b977[_0x16b449(0xec)]||'')),{'ok':!![]};}function _0x5ca83a(_0x499549={}){const _0x1146d8=_0x4b6d,_0x2550bb=String(_0x499549[_0x1146d8(0xed)+'d']||'');return _0x334985(_0x2550bb),{'ok':!![],'ignored':!![]};}function _0x336cdb(_0x3e0ff4={}){const _0x50a1f1=_0x4b6d,_0x18042d=String(_0x3e0ff4[_0x50a1f1(0xed)+'d']||''),_0x29c95d=_0x2c907e[_0x50a1f1(0xc0)](_0x18042d);if(!_0x29c95d)return{'ok':!![],'closed':![]};return _0x2c907e[_0x50a1f1(0xdb)](_0x18042d),_0x29c95d[_0x50a1f1(0xef)][_0x50a1f1(0xf8)](),{'ok':!![],'closed':!![]};}function _0x2ad495(){const _0x1eb0de=_0x4b6d;for(const _0x2a1454 of _0x2c907e[_0x1eb0de(0xea)]())_0x2a1454['child'][_0x1eb0de(0xf8)]();_0x2c907e[_0x1eb0de(0xc9)]();}return{'create':_0x24ba60,'input':_0xbe4b5f,'resize':_0x5ca83a,'close':_0x336cdb,'dispose':_0x2ad495};}function _0x3071(){const _0x5be7fc=['object','values','\x20session','data','sessionI','message','child','stdin','stdout','error','env','toLowerC','/usr/loc','.exe','includes','kill','24060zHmvIU','trim','bash','xterm-25','find','get','ebrew/bi','PATH','.bat','platform','No\x20suppo','win32','1414802eqPIlM','794623CrbvGU','clear','ll\x20found','al/bin/b','6color','toString','keys','Terminal','16UmRGEk','push','564767zcmFVQ','2148330bnSrzi','close','pwsh','.cmd','-NoLogo','pipe','940vxmuwB','filter','delete','cwd','truecolo','85010YcpPQP','n/zsh','ase','/opt/hom','\x20not\x20fou','path','n/bash','stderr','3367588jtHrLd','ash','4662RRXJQL'];_0x3071=function(){return _0x5be7fc;};return _0x3071();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x3d63b3,_0x471ab0){const _0x52664f=_0xc116,_0x4670d5=_0x3d63b3();while(!![]){try{const _0x3f5be0=-parseInt(_0x52664f(0xfa))/0x1+parseInt(_0x52664f(0x18e))/0x2*(-parseInt(_0x52664f(0x12d))/0x3)+-parseInt(_0x52664f(0x169))/0x4*(parseInt(_0x52664f(0x184))/0x5)+-parseInt(_0x52664f(0x118))/0x6*(-parseInt(_0x52664f(0x1a2))/0x7)+parseInt(_0x52664f(0x13f))/0x8*(parseInt(_0x52664f(0x174))/0x9)+-parseInt(_0x52664f(0xf4))/0xa+-parseInt(_0x52664f(0x102))/0xb*(-parseInt(_0x52664f(0x16e))/0xc);if(_0x3f5be0===_0x471ab0)break;else _0x4670d5['push'](_0x4670d5['shift']());}catch(_0x66cef8){_0x4670d5['push'](_0x4670d5['shift']());}}}(_0xa062,0x55a4d));import{existsSync,readFileSync,readdirSync,rmSync,statSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{basename,join}from'node:path';import _0x5c3f4e from'electron-updater';import{app,BrowserWindow}from'electron';import{clean,compare}from'semver';const {autoUpdater}=_0x5c3f4e,DEFAULT_INSTALL_QUIT_TIMEOUT_MS=0xea60,DEFAULT_BACKGROUND_UPDATE_CHECK_INTERVAL_MS=0x3c*0x3c*0x3e8,DEFAULT_BACKGROUND_UPDATE_CHECK_STALE_MS=0x1e*0x3c*0x3e8;function normalizeAppUpdatePackageFileName(_0x1bd95c){const _0x151eaf=_0xc116;if(typeof _0x1bd95c!==_0x151eaf(0x1b0))return null;const _0x502015=_0x1bd95c[_0x151eaf(0xec)]();if(!_0x502015||_0x502015==='.'||_0x502015==='..'||_0x502015[_0x151eaf(0x181)]('/')||_0x502015[_0x151eaf(0x181)]('\x5c'))return null;return _0x502015;}function isMatchingAppUpdatePackageMetadata(_0x484c36,_0x45b032){const _0x28f3af=_0xc116;if(!_0x484c36||!_0x45b032||typeof _0x45b032!==_0x28f3af(0x192))return![];const _0x5757fe=_0x45b032,_0x1edf54=normalizeAppUpdatePackageFileName(_0x484c36[_0x28f3af(0x13e)]),_0xc67669=normalizeAppUpdatePackageFileName(_0x5757fe['fileName']),_0x2052e8=_0x484c36['sha512'][_0x28f3af(0xec)](),_0x572ec4=typeof _0x5757fe[_0x28f3af(0x1a6)]===_0x28f3af(0x1b0)?_0x5757fe['sha512'][_0x28f3af(0xec)]():'';return Boolean(_0x1edf54&&_0xc67669&&_0x1edf54===_0xc67669&&_0x2052e8&&_0x572ec4&&_0x2052e8===_0x572ec4);}function normalizeAppVersion(_0xe05471){const _0x575e8f=_0xc116;return clean(String(_0xe05471??'')[_0x575e8f(0xec)]());}function compareAppVersions(_0x5bc4c4,_0x36ef62){const _0x33a0be=_0xc116,_0x2cf7e4=normalizeAppVersion(_0x5bc4c4),_0x56fbae=normalizeAppVersion(_0x36ef62);if(!_0x2cf7e4||!_0x56fbae)return'unknown';const _0x460ccc=compare(_0x56fbae,_0x2cf7e4);if(_0x460ccc===0x0)return _0x33a0be(0x11d)+_0x33a0be(0x18c);return _0x460ccc>0x0?_0x33a0be(0x12e)+_0x33a0be(0xfb):_0x33a0be(0x10d)+'lder';}function normalizeAppUpdateChannel(_0x5d17c6){return _0x5d17c6==='alpha'?'alpha':'latest';}function normalizeString(_0x55989b){const _0x5e4160=_0xc116;if(typeof _0x55989b!==_0x5e4160(0x1b0))return null;const _0x1b0ece=_0x55989b[_0x5e4160(0xec)]();return _0x1b0ece||null;}function normalizeReleaseNotes(_0x4247e2){const _0x1f505f=_0xc116;if(typeof _0x4247e2===_0x1f505f(0x1b0))return normalizeString(_0x4247e2);if(!Array[_0x1f505f(0x1a1)](_0x4247e2))return null;const _0x23ec7d=_0x4247e2[_0x1f505f(0x14e)](_0x2e7dd3=>{const _0xbb4839=_0x1f505f;if(typeof _0x2e7dd3==='string'){const _0x377f26=normalizeString(_0x2e7dd3);return _0x377f26?[_0x377f26]:[];}if(!_0x2e7dd3||typeof _0x2e7dd3!==_0xbb4839(0x192))return[];const _0x26acba=normalizeString(_0x2e7dd3[_0xbb4839(0x198)]),_0x1d5084=normalizeString(_0x2e7dd3[_0xbb4839(0x179)]);if(_0x26acba&&_0x1d5084)return['v'+_0x26acba+'\x0a'+_0x1d5084];if(_0x1d5084)return[_0x1d5084];if(_0x26acba)return['v'+_0x26acba];return[];});return _0x23ec7d[_0x1f505f(0x17a)]>0x0?_0x23ec7d[_0x1f505f(0x16c)]('\x0a\x0a'):null;}function extractUpdateInfoPatch(_0x4195bb){const _0x3ad077=_0xc116;if(!_0x4195bb||typeof _0x4195bb!=='object')return{};return{'remoteVersion':normalizeString(_0x4195bb['version']),'availableVersion':normalizeString(_0x4195bb[_0x3ad077(0x198)]),'releaseName':normalizeString(_0x4195bb['releaseN'+_0x3ad077(0x1a4)]),'releaseDate':normalizeString(_0x4195bb[_0x3ad077(0x14b)+'ate']),'releaseNotes':normalizeReleaseNotes(_0x4195bb[_0x3ad077(0xfc)+_0x3ad077(0x17d)])};}function _0xc116(_0x27b900,_0x5ed609){_0x27b900=_0x27b900-0xd8;const _0xa062d4=_0xa062();let _0xc1164e=_0xa062d4[_0x27b900];return _0xc1164e;}function extractPackageFileName(_0x54d69b){const _0x2c68bb=_0xc116,_0x806057=normalizeString(_0x54d69b);if(!_0x806057)return null;try{const _0x65887b=new URL(_0x806057);return normalizeAppUpdatePackageFileName(decodeURIComponent(basename(_0x65887b[_0x2c68bb(0x11f)])));}catch{const _0x2dba46=_0x806057[_0x2c68bb(0x168)](/[?#]/u,0x1)[0x0];return normalizeAppUpdatePackageFileName(basename(_0x2dba46));}}function _0xa062(){const _0x75a3b1=['channel','phase','warn','未知的自动更新错','\x20AppImag','pending\x20','更新安装未能启动','ge\x20for\x20c','o\x20read\x20a','utMs','自动更新已禁用','releaseD','exec','o\x20inspec','flatMap','正在下载\x20','autoDown','更新包已准备好安','currentV','ersion','update-d','push','ate','自动更新功能已就','nd\x20updat','o\x20read\x20p','e\x20check\x20','failed','isDestro','package\x20','Second','phase-co','动更新','toFixed','当前没有可安装的','isFinite','toISOStr','message','check-er','check\x20re','split','468148xdpSuR','nfo.json','pp\x20quit\x20','join','g\x20instal','120LMZlDo','latform','发现可用更新','bytesPer','sPath','当前使用\x20Alp','9Ozxjyu','ted','url','urrent\x20p','install-','note','length','hasUpdat','files','otes','te-state','当前已经是最新版','install\x20','includes','imeout','packageB','5kDwZxI','startup','linux','yed','path','utf8','ending\x20u','finally','sion','更新包校验完成但','36236QwQEeu','自动更新失败','ndCheckS','更新准备失败','object','installQ','当前没有可下载的','已下载更新','e.yml','supporte','version','t\x20pendin','rigger\x20a','size','idle','rsion','t\x20instal','remoteVe','update-a','isArray','7IdOmqU',',请重新下载更新','ame','启应用','sha512','正在重新准备更新','darwin','edVersio','able','内自动更新','quested','Local','backgrou','o\x20persis','string','aded\x20pac','ntext','dataDir','acheDirN','Update','red','e\x20版本支持应用','-error','自动更新已在\x20s','ndows','resource','updaterC','checking','isFile','uitTimeo','ntervalM','availabl','g\x20downlo','taleMs','lable','getAllWi','ing\x20upda','unknown','parse','update-i','\x20已准备好安装','trim','发现本地更新包\x20','platform','cache\x20hi','requeste','quitAndI','.cache','-updater','3124310gafvkI','no\x20match','checkFor','l\x20phase\x20','autoInst','load','282569zRZdfp','ewer','releaseN','app-upda','isPackag','nts','新版本','ha\x20更新渠道','1149093MTAJQp','重试下载更新','download','schedule','ndCheckI','context','map','自动更新仅在打包','eVersion','packageN','pp-updat','remote-o','total','Percent','within\x20t','nstall','o\x20clear\x20','l\x20packag','te\x20packa','r\x20starte','error','find','134088Sjpgia','app:upda','update-n','not-avai','更新包\x20v','same-ver','assign','pathname','Updates','webConte','ownloade','ror','transfer','min','-progres','后的安装包中可用','当前构建不支持自','info','errorCod','ytes','installi','78BXzWaC','remote-n','ot-avail','failed\x20t','win32','number','-for-upd','test','正在检查更新','nstall\x20d','max','ing','id\x20not\x20t','Quit','now','Library','enabled','fileName','3735392iinAxv'];_0xa062=function(){return _0x75a3b1;};return _0xa062();}function getPreferredUpdatePackagePattern(){const _0x1eba2d=_0xc116;if(process['platform']===_0x1eba2d(0x1a8))return/\.zip$/iu;if(process[_0x1eba2d(0xee)]===_0x1eba2d(0x131))return/\.exe$/iu;if(process[_0x1eba2d(0xee)]===_0x1eba2d(0x186))return/\.AppImage$/u;return/\.(zip|exe|AppImage)$/u;}function extractRemoteUpdatePackageMetadata(_0x27a992,_0x27d410){const _0x59507e=_0xc116;if(!_0x27a992||typeof _0x27a992!==_0x59507e(0x192))return null;const _0x4257de=normalizeString(_0x27a992[_0x59507e(0x198)]);if(!_0x4257de)return null;const _0x39597=[],_0x22d82e=Array[_0x59507e(0x1a1)](_0x27a992[_0x59507e(0x17c)])?_0x27a992[_0x59507e(0x17c)]:[];for(const _0x8eda02 of _0x22d82e){if(!_0x8eda02||typeof _0x8eda02!==_0x59507e(0x192))continue;const _0x4a6271=extractPackageFileName(_0x8eda02[_0x59507e(0x176)])??extractPackageFileName(_0x8eda02['path'])??normalizeAppUpdatePackageFileName(_0x8eda02['fileName']),_0x4ee3bc=normalizeString(_0x8eda02[_0x59507e(0x1a6)]);_0x4a6271&&_0x4ee3bc&&_0x39597[_0x59507e(0x155)]({'fileName':_0x4a6271,'sha512':_0x4ee3bc});}const _0x4d5a88=extractPackageFileName(_0x27a992[_0x59507e(0x176)])??extractPackageFileName(_0x27a992[_0x59507e(0x188)])??normalizeAppUpdatePackageFileName(_0x27a992[_0x59507e(0x13e)]),_0x122cef=normalizeString(_0x27a992[_0x59507e(0x1a6)]);_0x4d5a88&&_0x122cef&&_0x39597[_0x59507e(0x155)]({'fileName':_0x4d5a88,'sha512':_0x122cef});const _0x41b5f3=_0x39597[_0x59507e(0x117)](_0xd23a85=>getPreferredUpdatePackagePattern()[_0x59507e(0x134)](_0xd23a85[_0x59507e(0x13e)]));if(!_0x41b5f3)return _0x27d410?.[_0x59507e(0x142)]?.(_0x59507e(0xf5)+_0x59507e(0xe7)+_0x59507e(0x114)+_0x59507e(0x147)+_0x59507e(0x177)+_0x59507e(0x16f),{'platform':process[_0x59507e(0xee)],'candidates':_0x39597[_0x59507e(0x108)](_0x18ba1c=>_0x18ba1c['fileName'])}),null;return{'version':_0x4257de,..._0x41b5f3};}function extractProgressPatch(_0x3fcd7c){const _0x40a5b6=_0xc116;return{'downloadPercent':typeof _0x3fcd7c['percent']===_0x40a5b6(0x132)?_0x3fcd7c['percent']:null,'bytesPerSecond':typeof _0x3fcd7c[_0x40a5b6(0x171)+_0x40a5b6(0x15e)]===_0x40a5b6(0x132)?_0x3fcd7c[_0x40a5b6(0x171)+_0x40a5b6(0x15e)]:null,'transferredBytes':typeof _0x3fcd7c[_0x40a5b6(0x124)+_0x40a5b6(0x1b6)]===_0x40a5b6(0x132)?_0x3fcd7c[_0x40a5b6(0x124)+'red']:null,'totalBytes':typeof _0x3fcd7c[_0x40a5b6(0x10e)]==='number'?_0x3fcd7c[_0x40a5b6(0x10e)]:null};}function getErrorMessage(_0x75b610){const _0x11444b=_0xc116;if(_0x75b610 instanceof Error&&_0x75b610[_0x11444b(0x165)]['trim']())return _0x75b610[_0x11444b(0x165)][_0x11444b(0xec)]();if(typeof _0x75b610==='string'&&_0x75b610[_0x11444b(0xec)]())return _0x75b610[_0x11444b(0xec)]();return _0x11444b(0x143)+'误';}export function createUpdateController({shellConfig:_0x59407f,appName:_0x504b31,appVersion:_0x544386,broadcast:_0xe75033,logger:_0x141929}){const _0x36cb50=_0xc116,_0x9247df=_0x59407f['updates']??{},_0x1ea499=normalizeAppUpdateChannel(_0x9247df[_0x36cb50(0x140)]),_0x517038={'backgroundCheckIntervalMs':_0x9247df[_0x36cb50(0x1ae)+'ndCheckI'+_0x36cb50(0xe1)+'s']??DEFAULT_BACKGROUND_UPDATE_CHECK_INTERVAL_MS,'backgroundCheckStaleMs':_0x9247df[_0x36cb50(0x1ae)+_0x36cb50(0x190)+_0x36cb50(0xe4)]??DEFAULT_BACKGROUND_UPDATE_CHECK_STALE_MS,'installQuitTimeoutMs':_0x9247df[_0x36cb50(0x193)+_0x36cb50(0xe0)+_0x36cb50(0x149)]??DEFAULT_INSTALL_QUIT_TIMEOUT_MS,'autoDownload':_0x9247df['autoDown'+_0x36cb50(0xf9)]===!![]},_0x373442={'supported':![],'channel':_0x1ea499,'phase':'unsuppor'+_0x36cb50(0x175),'currentVersion':_0x544386(),'remoteVersion':null,'comparisonResult':_0x36cb50(0xe8),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'releaseName':null,'releaseDate':null,'releaseNotes':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null,'checkedAt':null,'message':_0x36cb50(0x14a),'error':null,'errorCode':null};let _0x470b54=![],_0x4bc2cd=null,_0x47a057=null,_0x1026cd=null,_0x1a4884=null,_0x401ee1=null,_0x567c2=![],_0x5d4773=null,_0x4ac86b=0x0;function _0x3234b6(){const _0x256a6f=_0x36cb50;if(process[_0x256a6f(0xee)]==='darwin')return join(homedir(),_0x256a6f(0x13c),'Caches');if(process[_0x256a6f(0xee)]==='win32')return process.env.LOCALAPPDATA??join(homedir(),'AppData',_0x256a6f(0x1ad));return process.env.XDG_CACHE_HOME??join(homedir(),_0x256a6f(0xf2));}function _0x272774(){const _0x7fe963=_0x36cb50;if(!app[_0x7fe963(0xfe)+'ed']||!process['resource'+_0x7fe963(0x172)])return{};const _0x2e5ca3=join(process[_0x7fe963(0xdc)+_0x7fe963(0x172)],_0x7fe963(0xfd)+'te.yml');if(!existsSync(_0x2e5ca3))return{};try{const _0x179c32=readFileSync(_0x2e5ca3,_0x7fe963(0x189)),_0x1323f6=/^\s*channel:\s*["']?([^"'\s#]+)["']?/imu[_0x7fe963(0x14c)](_0x179c32),_0x52fcfd=/^\s*updaterCacheDirName:\s*["']?([^"'\s#]+)["']?/imu[_0x7fe963(0x14c)](_0x179c32);return{'channel':normalizeAppUpdateChannel(_0x1323f6?.[0x1]),'updaterCacheDirName':normalizeString(_0x52fcfd?.[0x1])};}catch(_0x2c142c){return _0x141929?.[_0x7fe963(0x142)]?.('failed\x20t'+_0x7fe963(0x148)+_0x7fe963(0x10c)+_0x7fe963(0x196),{'error':getErrorMessage(_0x2c142c)}),{};}}const _0x1e09d6=_0x272774();_0x1e09d6['channel']&&(_0x373442[_0x36cb50(0x140)]=_0x1e09d6[_0x36cb50(0x140)]);function _0x44c789(){const _0x4432c1=_0x36cb50,_0x1968c9=_0x1e09d6[_0x4432c1(0xdd)+_0x4432c1(0x1b4)+'ame']||_0x504b31()+_0x4432c1(0xf3);return join(_0x3234b6(),_0x1968c9);}function _0x45435b(_0x13c635){const _0xf081b1=_0x36cb50;return _0x13c635==='alpha'?_0xf081b1(0x173)+_0xf081b1(0x101):_0xf081b1(0x157)+'绪';}function _0x4e546c(){const _0xfd8db4=_0x36cb50;if(_0x9247df['enabled']===![])return![];if(!app[_0xfd8db4(0xfe)+'ed'])return![];if(process[_0xfd8db4(0xee)]!==_0xfd8db4(0x186))return!![];return Boolean(process.env.APPIMAGE);}function _0x50bb8d(){const _0x2e2b2b=_0x36cb50;if(_0x9247df[_0x2e2b2b(0x13d)]===![])return _0x2e2b2b(0xda)+'hell.con'+'fig\x20中禁用';if(!app[_0x2e2b2b(0xfe)+'ed'])return _0x2e2b2b(0x109)+_0x2e2b2b(0x127);if(process['platform']==='linux')return'Linux\x20下仅'+_0x2e2b2b(0x144)+_0x2e2b2b(0xd8)+_0x2e2b2b(0x1ab);return _0x2e2b2b(0x128)+_0x2e2b2b(0x160);}function _0x556902(){const _0x3103a6=_0x36cb50;return join(_0x59407f[_0x3103a6(0x1b3)],_0x3103a6(0x178)+_0x3103a6(0x15f)+'ntext.js'+'on');}function _0x5f391b(){return{'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null};}function _0x114b70(){return{..._0x373442};}function _0x2ceceb(){const _0x39ae26=_0x36cb50,_0x93988c=_0x114b70();for(const _0x59d87b of BrowserWindow[_0x39ae26(0xe6)+_0x39ae26(0xdb)]()){!_0x59d87b[_0x39ae26(0x15c)+_0x39ae26(0x187)]()&&_0x59d87b[_0x39ae26(0x121)+_0x39ae26(0xff)]['send'](_0x39ae26(0x119)+_0x39ae26(0x17e),_0x93988c);}_0xe75033?.(_0x39ae26(0x119)+_0x39ae26(0x17e),_0x93988c);}function _0x176e01(_0x3615a2){const _0x208685=_0x36cb50,_0x4655e4={..._0x3615a2};_0x4655e4[_0x208685(0x116)]===null&&_0x4655e4[_0x208685(0x12a)+'e']===undefined&&(_0x4655e4[_0x208685(0x12a)+'e']=null),Object[_0x208685(0x11e)](_0x373442,_0x4655e4,{'currentVersion':_0x544386()}),_0x2ceceb();}function _0x141e00(){const _0x302cbc=_0x36cb50;if(!_0x373442[_0x302cbc(0x197)+'d'])throw new Error(_0x50bb8d());}function _0x3131cb(_0x343941,_0x48e0a5={}){const _0x20fec9=_0x36cb50;_0x141929?.[_0x20fec9(0x129)]?.(_0x343941,_0x48e0a5);}function _0x4e0da1(_0x478a4e,_0x496fe1={}){const _0x548369=_0x36cb50;_0x141929?.[_0x548369(0x142)]?.(_0x478a4e,_0x496fe1);}function _0x1315e0(_0x3114dd){const _0x358fcc=_0x36cb50;if(typeof _0x3114dd!==_0x358fcc(0x132)||!Number[_0x358fcc(0x163)](_0x3114dd))return null;const _0x49bc85=Math[_0x358fcc(0x125)](0x63,Math['max'](0x0,_0x3114dd));if(_0x373442[_0x358fcc(0x141)]!==_0x358fcc(0x104)+'ing'||typeof _0x373442['download'+'Percent']!==_0x358fcc(0x132))return _0x49bc85;return Math[_0x358fcc(0x137)](_0x373442[_0x358fcc(0x104)+_0x358fcc(0x10f)],_0x49bc85);}function _0xbb3250(_0x3ccc0b,_0x6f4436){const _0x44292e=_0x36cb50,_0x354c95=_0x3ccc0b?'v'+_0x3ccc0b:_0x44292e(0x100);if(typeof _0x6f4436==='number'){if(_0x6f4436>=0x63)return'正在验证安装包…';return'正在下载\x20'+_0x354c95+'\x20('+_0x6f4436[_0x44292e(0x161)](0x1)+'%)';}return _0x44292e(0x14f)+_0x354c95;}function _0xbe8340(_0xfc0383){const _0x310684=_0x36cb50;try{writeFileSync(_0x556902(),JSON['stringif'+'y'](_0xfc0383,null,0x2),_0x310684(0x189));}catch(_0x1c1f1a){_0x4e0da1(_0x310684(0x130)+_0x310684(0x1af)+_0x310684(0x19e)+_0x310684(0xf7)+_0x310684(0x107),{'error':getErrorMessage(_0x1c1f1a)});}}function _0x5a36fa(){const _0x2d0ccc=_0x36cb50;try{rmSync(_0x556902(),{'force':!![]});}catch(_0x58f90a){_0x4e0da1(_0x2d0ccc(0x130)+_0x2d0ccc(0x112)+_0x2d0ccc(0x180)+'phase\x20co'+_0x2d0ccc(0x1b2),{'error':getErrorMessage(_0x58f90a)});}}function _0x37470c(){const _0x5e48f1=_0x36cb50,_0x13e806=join(_0x44c789(),'pending');if(!existsSync(_0x13e806))return{'packageName':null,'packageBytes':null};try{const _0x53790=readdirSync(_0x13e806)[_0x5e48f1(0x117)](_0x554b7c=>/\.(zip|exe|dmg|AppImage)$/iu[_0x5e48f1(0x134)](_0x554b7c))??null;if(!_0x53790)return{'packageName':null,'packageBytes':null};const _0x5f5291=join(_0x13e806,_0x53790);return{'packageName':_0x53790,'packageBytes':statSync(_0x5f5291)['size']};}catch(_0x2aef3b){return _0x4e0da1('failed\x20t'+_0x5e48f1(0x14d)+_0x5e48f1(0x199)+_0x5e48f1(0x16d)+_0x5e48f1(0x113)+'e',{'error':getErrorMessage(_0x2aef3b)}),{'packageName':null,'packageBytes':null};}}function _0x29db09(){const _0x171c4e=_0x36cb50;if(!_0x1026cd)return null;const _0x257ee9=join(_0x44c789(),'pending'),_0x29da81=join(_0x257ee9,_0x171c4e(0xea)+_0x171c4e(0x16a));if(!existsSync(_0x29da81))return null;let _0x545865=null;try{_0x545865=JSON[_0x171c4e(0xe9)](readFileSync(_0x29da81,_0x171c4e(0x189)));}catch(_0x121c58){return _0x4e0da1(_0x171c4e(0x130)+_0x171c4e(0x159)+_0x171c4e(0x18a)+'pdate-in'+'fo.json',{'error':getErrorMessage(_0x121c58)}),null;}if(!isMatchingAppUpdatePackageMetadata(_0x1026cd,_0x545865))return null;const _0x4a719d=join(_0x257ee9,_0x1026cd[_0x171c4e(0x13e)]);if(!existsSync(_0x4a719d))return null;try{const _0x15e161=statSync(_0x4a719d);if(!_0x15e161[_0x171c4e(0xdf)]()||_0x15e161[_0x171c4e(0x19b)]===0x0)return null;return{'metadata':_0x1026cd,'packageName':_0x1026cd[_0x171c4e(0x13e)],'packageBytes':_0x15e161[_0x171c4e(0x19b)]};}catch(_0xf19e5d){return _0x4e0da1(_0x171c4e(0x130)+_0x171c4e(0x14d)+'t\x20pendin'+_0x171c4e(0xe3)+_0x171c4e(0x1b1)+'kage',{'error':getErrorMessage(_0xf19e5d)}),null;}}function _0x10f687(_0x27dfbe){const _0x524cc9=_0x36cb50,_0x4374bc=_0x29db09();if(!_0x4374bc)return![];const {metadata:_0x25a01a,packageName:_0x5c96cc,packageBytes:_0x18844d}=_0x4374bc;return _0x3131cb(_0x524cc9(0x145)+_0x524cc9(0x15d)+_0x524cc9(0xef)+'t',{'reason':_0x27dfbe,'version':_0x25a01a[_0x524cc9(0x198)],'packageName':_0x5c96cc,'packageBytes':_0x18844d}),_0x176e01({'phase':_0x524cc9(0xe2)+'e','remoteVersion':_0x25a01a[_0x524cc9(0x198)],'comparisonResult':_0x524cc9(0x12e)+_0x524cc9(0xfb),'hasUpdate':!![],'availableVersion':_0x25a01a['version'],'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':_0x18844d,'totalBytes':_0x18844d,'hasPendingPackage':!![],'pendingPackageName':_0x5c96cc,'pendingPackageBytes':_0x18844d,'error':null,'message':_0x524cc9(0xed)+'v'+_0x25a01a[_0x524cc9(0x198)]+(',请重新校验并准'+'备安装')}),!![];}function _0x50cf02(){const _0x3db748=_0x36cb50;return _0x373442['supporte'+'d']&&!_0x4bc2cd&&!_0x47a057&&[_0x3db748(0x19c),_0x3db748(0x11b)+_0x3db748(0xe5),_0x3db748(0x116)][_0x3db748(0x181)](_0x373442['phase']);}function _0x418eae(){if(!_0x401ee1)return;clearTimeout(_0x401ee1),_0x401ee1=null;}function _0x110e40(_0x1340dc){const _0x549af2=_0x36cb50,_0x3142a9=_0x373442[_0x549af2(0x104)+'edVersio'+'n'],_0x472a22=_0x373442[_0x549af2(0xe2)+_0x549af2(0x10a)];_0x1a4884=null,_0x567c2=![],_0x418eae(),_0x5a36fa(),_0x176e01({'phase':_0x549af2(0x116),'checkedAt':new Date()[_0x549af2(0x164)+_0x549af2(0x138)](),'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null,'hasUpdate':!![],'availableVersion':_0x472a22??_0x3142a9,'downloadedVersion':_0x3142a9,'error':getErrorMessage(_0x1340dc),'errorCode':_0x549af2(0x178)+_0x549af2(0x116),'message':'安装更新失败'});}function _0x156626(){const _0x1fc82c=_0x36cb50;_0x418eae(),_0x567c2=![],_0x401ee1=setTimeout(()=>{const _0x37d045=_0xc116;if(_0x567c2||_0x373442[_0x37d045(0x141)]!==_0x37d045(0x12c)+'ng')return;_0x4e0da1('quitAndI'+_0x37d045(0x136)+_0x37d045(0x139)+_0x37d045(0x19a)+_0x37d045(0x16b)+_0x37d045(0x110)+_0x37d045(0x182),{'downloadedVersion':_0x373442[_0x37d045(0x104)+_0x37d045(0x1a9)+'n'],'currentVersion':_0x373442[_0x37d045(0x152)+_0x37d045(0x153)]}),_0x110e40(new Error(_0x37d045(0x146)+_0x37d045(0x1a3)+'包后再试'));},_0x517038[_0x1fc82c(0x193)+'uitTimeo'+_0x1fc82c(0x149)]);}function _0x1e4e30(){const _0x4b98bb=_0x36cb50;if(_0x470b54)return;_0x470b54=!![],_0x373442[_0x4b98bb(0x197)+'d']=_0x4e546c(),_0x373442[_0x4b98bb(0x141)]=_0x373442[_0x4b98bb(0x197)+'d']?_0x4b98bb(0x19c):'unsuppor'+_0x4b98bb(0x175),_0x373442[_0x4b98bb(0x165)]=_0x373442[_0x4b98bb(0x197)+'d']?_0x45435b(_0x373442[_0x4b98bb(0x140)]):_0x50bb8d();if(!_0x373442['supporte'+'d']){_0x2ceceb();return;}autoUpdater[_0x4b98bb(0x150)+_0x4b98bb(0xf9)]=_0x517038[_0x4b98bb(0x150)+_0x4b98bb(0xf9)],autoUpdater[_0x4b98bb(0xf8)+'allOnApp'+_0x4b98bb(0x13a)]=![],autoUpdater[_0x4b98bb(0x140)]=_0x373442['channel'],autoUpdater['on'](_0x4b98bb(0xde)+_0x4b98bb(0x133)+_0x4b98bb(0x156),()=>{const _0x55059a=_0x4b98bb;_0x1026cd=null,_0x176e01({'phase':_0x55059a(0xde),'checkedAt':new Date()[_0x55059a(0x164)+_0x55059a(0x138)](),'remoteVersion':null,'comparisonResult':_0x55059a(0xe8),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x5f391b(),'error':null,'message':_0x55059a(0x135)});}),autoUpdater['on'](_0x4b98bb(0x1a0)+'vailable',_0x15b236=>{const _0x5c34d2=_0x4b98bb,_0xc18b90=extractUpdateInfoPatch(_0x15b236),_0x1e870f=compareAppVersions(_0x544386(),_0xc18b90[_0x5c34d2(0x19f)+_0x5c34d2(0x19d)]);if(_0x1e870f!=='remote-n'+'ewer'){_0x1026cd=null,_0x176e01({..._0xc18b90,'phase':_0x5c34d2(0x11b)+_0x5c34d2(0xe5),'comparisonResult':_0x1e870f,'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x5f391b(),'checkedAt':new Date()[_0x5c34d2(0x164)+_0x5c34d2(0x138)](),'error':null,'message':_0x5c34d2(0x17f)+'本'});return;}_0x1026cd=extractRemoteUpdatePackageMetadata(_0x15b236,_0x141929),_0x176e01({..._0xc18b90,'phase':_0x5c34d2(0xe2)+'e','comparisonResult':_0x1e870f,'hasUpdate':!![],'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x5f391b(),'checkedAt':new Date()[_0x5c34d2(0x164)+_0x5c34d2(0x138)](),'error':null,'message':_0xc18b90['availabl'+'eVersion']?'发现新版本\x20v'+_0xc18b90[_0x5c34d2(0xe2)+'eVersion']:_0x5c34d2(0x170)}),_0x10f687('update_a'+'vailable');}),autoUpdater['on'](_0x4b98bb(0x11a)+_0x4b98bb(0x12f)+_0x4b98bb(0x1aa),_0xd16f31=>{const _0x1ed62f=_0x4b98bb;_0x1026cd=null;const _0x12c676=extractUpdateInfoPatch(_0xd16f31);_0x176e01({..._0x12c676,'phase':'not-avai'+_0x1ed62f(0xe5),'comparisonResult':compareAppVersions(_0x544386(),_0x12c676[_0x1ed62f(0x19f)+'rsion']),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x5f391b(),'checkedAt':new Date()[_0x1ed62f(0x164)+'ing'](),'error':null,'message':'当前已经是最新版'+'本'});}),autoUpdater['on'](_0x4b98bb(0x104)+_0x4b98bb(0x126)+'s',_0x1ef6d7=>{const _0x259a5=_0x4b98bb,_0x24361f=extractProgressPatch(_0x1ef6d7),_0x12ab08=_0x1315e0(_0x24361f[_0x259a5(0x104)+'Percent']??null);_0x176e01({..._0x24361f,'downloadPercent':_0x12ab08,'phase':_0x259a5(0x104)+_0x259a5(0x138),..._0x5f391b(),'error':null,'message':_0xbb3250(_0x373442['availabl'+_0x259a5(0x10a)],_0x12ab08)});}),autoUpdater['on'](_0x4b98bb(0x154)+_0x4b98bb(0x122)+'d',_0x1480e=>{const _0x52cb0e=_0x4b98bb,_0x5a6a3c=extractUpdateInfoPatch(_0x1480e),_0x41d17f=extractRemoteUpdatePackageMetadata(_0x1480e,_0x141929)??_0x1026cd;_0x41d17f&&(_0x1026cd=_0x41d17f);const _0x18957f=_0x5a6a3c[_0x52cb0e(0xe2)+'eVersion']??_0x41d17f?.[_0x52cb0e(0x198)]??_0x373442['availabl'+_0x52cb0e(0x10a)];_0x176e01({..._0x5a6a3c,'phase':'download'+'ed','comparisonResult':compareAppVersions(_0x544386(),_0x18957f),'hasUpdate':!![],'downloadedVersion':_0x18957f,'downloadPercent':0x64,..._0x5f391b(),'error':null,'message':_0x18957f?_0x52cb0e(0x11c)+_0x18957f+_0x52cb0e(0xeb):_0x52cb0e(0x151)+'装'});}),autoUpdater['on'](_0x4b98bb(0x116),_0x3fa335=>{const _0x4eb97c=_0x4b98bb;if(_0x373442['phase']==='installi'+'ng'){_0x110e40(_0x3fa335);return;}_0x176e01({'phase':_0x4eb97c(0x116),'checkedAt':new Date()['toISOStr'+_0x4eb97c(0x138)](),..._0x5f391b(),'error':getErrorMessage(_0x3fa335),'errorCode':_0x373442['phase']===_0x4eb97c(0x104)+'ing'?_0x4eb97c(0x104)+'-error':_0x4eb97c(0x166)+_0x4eb97c(0x123),'message':_0x4eb97c(0x18f)});}),_0x2ceceb();}async function _0x54a968(){const _0x3e2ac4=_0x36cb50;_0x1e4e30(),_0x141e00();if(_0x4bc2cd)return _0x4bc2cd;return _0x3131cb(_0x3e2ac4(0x167)+_0x3e2ac4(0x1ac)),_0x4bc2cd=autoUpdater[_0x3e2ac4(0xf6)+_0x3e2ac4(0x120)]()['then'](()=>_0x114b70())['finally'](()=>{_0x4bc2cd=null;}),_0x4bc2cd;}async function _0x4286f1(){const _0x64d227=_0x36cb50;_0x1e4e30(),_0x141e00();if(_0x373442[_0x64d227(0x141)]===_0x64d227(0x104)+'ed'||_0x373442[_0x64d227(0x141)]===_0x64d227(0x12c)+'ng')return _0x114b70();if(!_0x373442[_0x64d227(0x17b)+'e'])throw new Error(_0x64d227(0x194)+'更新');const _0x1a60a4=_0x373442[_0x64d227(0x141)]===_0x64d227(0x116)&&_0x373442['errorCod'+'e']==='install-'+_0x64d227(0x116)&&Boolean(_0x373442[_0x64d227(0x104)+_0x64d227(0x1a9)+'n']);if(_0x373442[_0x64d227(0x141)]===_0x64d227(0x116)){if(_0x1a60a4)_0x176e01({'phase':_0x64d227(0xe2)+'e','hasUpdate':!![],'availableVersion':_0x373442[_0x64d227(0xe2)+_0x64d227(0x10a)]??_0x373442['download'+'edVersio'+'n'],'downloadedVersion':null,'downloadPercent':null,..._0x5f391b(),'error':null,'message':_0x64d227(0x1a7)+'包'});else{await _0x54a968();if(_0x373442[_0x64d227(0x141)]!==_0x64d227(0xe2)+'e')throw new Error(_0x64d227(0x194)+'更新');}}if(![_0x64d227(0xe2)+'e',_0x64d227(0x104)+'ing'][_0x64d227(0x181)](_0x373442['phase']))throw new Error(_0x64d227(0x194)+'更新');if(_0x47a057)return _0x47a057;return _0x47a057=autoUpdater[_0x64d227(0x104)+_0x64d227(0x1b5)]()['then'](()=>{const _0x2c3c08=_0x64d227;return _0x373442[_0x2c3c08(0x141)]!==_0x2c3c08(0x104)+'ed'&&_0x176e01({'phase':_0x2c3c08(0x116),'checkedAt':new Date()['toISOStr'+_0x2c3c08(0x138)](),..._0x5f391b(),'error':_0x2c3c08(0x18d)+'安装器未就绪,请'+_0x2c3c08(0x103),'errorCode':_0x2c3c08(0x104)+_0x2c3c08(0xd9),'message':_0x2c3c08(0x191)}),_0x114b70();})[_0x64d227(0x18b)](()=>{_0x47a057=null;}),_0x47a057;}function _0x497596(){const _0x1773a7=_0x36cb50;_0x1e4e30(),_0x141e00();if(![_0x1773a7(0x104)+'ed','installi'+'ng'][_0x1773a7(0x181)](_0x373442[_0x1773a7(0x141)]))throw new Error(_0x1773a7(0x162)+_0x1773a7(0x195));const _0x37a550=_0x37470c();_0x1a4884=Date[_0x1773a7(0x13b)](),_0xbe8340({'startedAt':new Date(_0x1a4884)[_0x1773a7(0x164)+'ing'](),'currentVersion':_0x373442[_0x1773a7(0x152)+_0x1773a7(0x153)],'downloadedVersion':_0x373442[_0x1773a7(0x104)+_0x1773a7(0x1a9)+'n'],'pendingPackage':_0x37a550[_0x1773a7(0x10b)+_0x1773a7(0x1a4)],'pendingPackageBytes':_0x37a550[_0x1773a7(0x183)+_0x1773a7(0x12b)]}),_0x176e01({'phase':_0x1773a7(0x12c)+'ng',..._0x5f391b(),'error':null,'message':'正在安装更新并重'+_0x1773a7(0x1a5)});try{_0x156626(),autoUpdater[_0x1773a7(0xf1)+_0x1773a7(0x111)](![],!![]);}catch(_0x3b1681){_0x110e40(_0x3b1681);throw _0x3b1681;}return{'ok':!![]};}async function _0x594653(_0x42b65d){const _0x4fff41=_0x36cb50;if(!_0x50cf02())return;_0x4ac86b=Date[_0x4fff41(0x13b)](),_0x3131cb('backgrou'+_0x4fff41(0x158)+'e\x20check\x20'+_0x4fff41(0xf0)+'d',{'reason':_0x42b65d});try{await _0x54a968();}catch(_0x5d2398){_0x4e0da1('backgrou'+_0x4fff41(0x158)+_0x4fff41(0x15a)+_0x4fff41(0x15b),{'reason':_0x42b65d,'error':getErrorMessage(_0x5d2398)});}}function _0x54aebe(_0x412e56){const _0x476155=_0x36cb50;if(!_0x373442['supporte'+'d'])return;const _0x35ad27=Date['now']()-_0x4ac86b;if(_0x35ad27<_0x517038['backgrou'+_0x476155(0x190)+_0x476155(0xe4)])return;void _0x594653(_0x412e56);}function _0x364b8c(){const _0x96d050=_0x36cb50;_0x1e4e30();if(!_0x373442[_0x96d050(0x197)+'d']||_0x5d4773)return;_0x5d4773=setInterval(()=>{void _0x594653('interval');},_0x517038[_0x96d050(0x1ae)+_0x96d050(0x106)+_0x96d050(0xe1)+'s']),void _0x594653(_0x96d050(0x185)),_0x3131cb(_0x96d050(0x1ae)+_0x96d050(0x158)+'e\x20check\x20'+_0x96d050(0x105)+_0x96d050(0x115)+'d',_0x517038);}function _0x232f3b(){const _0x22ae68=_0x36cb50;if(_0x373442[_0x22ae68(0x141)]!==_0x22ae68(0x12c)+'ng')return;_0x567c2=!![],_0x418eae();}return{'initialize':_0x1e4e30,'getState':_0x114b70,'checkForUpdates':_0x54a968,'downloadUpdate':_0x4286f1,'quitAndInstall':_0x497596,'requestBackgroundCheck':_0x54aebe,'startBackgroundChecks':_0x364b8c,'markQuitObserved':_0x232f3b};}
|
|
1
|
+
(function(_0x357af0,_0x1b886b){const _0x88bab5=_0x184e,_0x2c892c=_0x357af0();while(!![]){try{const _0x13b062=-parseInt(_0x88bab5(0x2a3))/0x1+parseInt(_0x88bab5(0x2b7))/0x2+-parseInt(_0x88bab5(0x260))/0x3*(-parseInt(_0x88bab5(0x203))/0x4)+-parseInt(_0x88bab5(0x25a))/0x5+-parseInt(_0x88bab5(0x210))/0x6+parseInt(_0x88bab5(0x224))/0x7*(parseInt(_0x88bab5(0x239))/0x8)+parseInt(_0x88bab5(0x262))/0x9*(parseInt(_0x88bab5(0x2a7))/0xa);if(_0x13b062===_0x1b886b)break;else _0x2c892c['push'](_0x2c892c['shift']());}catch(_0x512cfc){_0x2c892c['push'](_0x2c892c['shift']());}}}(_0x92e3,0xa91d6));import{existsSync,readFileSync,readdirSync,rmSync,statSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{basename,join}from'node:path';function _0x92e3(){const _0x20dbb5=['更新包已准备好安','toISOStr','nstall\x20d','104264FVQqdP','getAllWi','启应用','fileName','webConte','error','now','releaseD','Quit','ing','sha512','Library','utf8','requeste','unsuppor','app:upda','e.yml','assign','ending\x20u','nd\x20updat','phase','t\x20pendin','checking','发现新版本\x20v','idle','message','urrent\x20p','total','trim','otes','sion','channel','ndCheckI','516265UZqqzH','安装器未就绪,请','latest','then','新版本','当前没有可下载的','52827WpXAdt','currentV','7220979NHVTlf','l\x20phase\x20','cache\x20hi','sPath','更新包\x20v','backgrou','ot-avail','path','not-avai','发现本地更新包\x20',',请重新校验并准','same-ver','-error','red','ame','packageN','remote-n','自动更新失败','context','pending','Second','win32','number','rigger\x20a','releaseN','o\x20inspec','自动更新功能已就','info','failed\x20t','正在检查更新','exec','length','Percent','string','自动更新已禁用','-updater','nts','已下载更新','动更新','未知的自动更新错','percent','正在安装更新并重','eVersion','warn','e\x20版本支持应用','当前使用\x20Alp','platform','pdate-in','availabl','supporte','更新准备失败','ror','te-state','includes','Update','updaterC','ewer','resource','transfer','packageB','within\x20t','发现可用更新','phase-co','当前已经是最新版','fig\x20中禁用','678724SeBSmm','install-','finally','phase\x20co','10JdmvmS','t\x20instal','lder','AppData','ntext.js','installQ','installi','更新安装未能启动','ing\x20upda','重试下载更新','remoteVe','acheDirN','max','aded\x20pac','ate','pending\x20','2204420ByZRwm','uitTimeo','e\x20check\x20','flatMap','toFixed','edVersio','pp-updat','install\x20','\x20已准备好安装','updates','g\x20downlo','version','isFile','ndCheckS','\x20AppImag','darwin','autoDown','isPackag','url','isFinite','errorCod','parse','load','bytesPer','no\x20match','size','正在验证安装包…','dataDir','download','startup','linux','116KMekSG','test','enabled','当前没有可安装的','app-upda','pathname','Linux\x20下仅','正在下载\x20','utMs','min','taleMs','l\x20packag','rsion','6190572JqNZuK','unknown','imeout','自动更新已在\x20s','r\x20starte','自动更新仅在打包','te.yml','package\x20','lable','id\x20not\x20t','quitAndI','kage','update-n','object','quested','isArray','find','update-d','map','o\x20read\x20a','49xYFrXj','Updates','后的安装包中可用','pp\x20quit\x20','当前构建不支持自','alpha','ytes','schedule','ted','ersion','ownloade','ntervalM','nfo.json','ge\x20for\x20c','update-a',',请重新下载更新','包后再试','check-er'];_0x92e3=function(){return _0x20dbb5;};return _0x92e3();}import _0x372a17 from'electron-updater';import{app,BrowserWindow}from'electron';import{clean,compare}from'semver';const {autoUpdater}=_0x372a17,DEFAULT_INSTALL_QUIT_TIMEOUT_MS=0xea60,DEFAULT_BACKGROUND_UPDATE_CHECK_INTERVAL_MS=0x3c*0x3c*0x3e8,DEFAULT_BACKGROUND_UPDATE_CHECK_STALE_MS=0x1e*0x3c*0x3e8;function normalizeAppUpdatePackageFileName(_0x523f92){const _0x30346b=_0x184e;if(typeof _0x523f92!=='string')return null;const _0x2d042d=_0x523f92[_0x30346b(0x255)]();if(!_0x2d042d||_0x2d042d==='.'||_0x2d042d==='..'||_0x2d042d[_0x30346b(0x297)]('/')||_0x2d042d['includes']('\x5c'))return null;return _0x2d042d;}function isMatchingAppUpdatePackageMetadata(_0x58bc4a,_0x3ff145){const _0x563bef=_0x184e;if(!_0x58bc4a||!_0x3ff145||typeof _0x3ff145!==_0x563bef(0x21d))return![];const _0x3ea33c=_0x3ff145,_0x4408f7=normalizeAppUpdatePackageFileName(_0x58bc4a[_0x563bef(0x23c)]),_0x36b763=normalizeAppUpdatePackageFileName(_0x3ea33c[_0x563bef(0x23c)]),_0x5b8617=_0x58bc4a['sha512']['trim'](),_0xd387c2=typeof _0x3ea33c[_0x563bef(0x243)]==='string'?_0x3ea33c[_0x563bef(0x243)][_0x563bef(0x255)]():'';return Boolean(_0x4408f7&&_0x36b763&&_0x4408f7===_0x36b763&&_0x5b8617&&_0xd387c2&&_0x5b8617===_0xd387c2);}function _0x184e(_0x280b55,_0x2eb2ac){_0x280b55=_0x280b55-0x1e6;const _0x92e34d=_0x92e3();let _0x184e57=_0x92e34d[_0x280b55];return _0x184e57;}function normalizeAppVersion(_0x584b21){const _0x1ed569=_0x184e;return clean(String(_0x584b21??'')[_0x1ed569(0x255)]());}function compareAppVersions(_0xd0239,_0x3e0999){const _0x27c5ff=_0x184e,_0x5937c1=normalizeAppVersion(_0xd0239),_0x19dd50=normalizeAppVersion(_0x3e0999);if(!_0x5937c1||!_0x19dd50)return _0x27c5ff(0x211);const _0x4586fc=compare(_0x19dd50,_0x5937c1);if(_0x4586fc===0x0)return _0x27c5ff(0x26d)+_0x27c5ff(0x257);return _0x4586fc>0x0?_0x27c5ff(0x272)+'ewer':'remote-o'+_0x27c5ff(0x2a9);}function normalizeAppUpdateChannel(_0x557983){const _0x4bfd04=_0x184e;return _0x557983===_0x4bfd04(0x229)?_0x4bfd04(0x229):_0x4bfd04(0x25c);}function normalizeString(_0x1a42d7){const _0xc677ca=_0x184e;if(typeof _0x1a42d7!==_0xc677ca(0x283))return null;const _0x86243b=_0x1a42d7['trim']();return _0x86243b||null;}function normalizeReleaseNotes(_0x346d7d){const _0x1e4184=_0x184e;if(typeof _0x346d7d==='string')return normalizeString(_0x346d7d);if(!Array[_0x1e4184(0x21f)](_0x346d7d))return null;const _0xd11e27=_0x346d7d[_0x1e4184(0x1e7)](_0x462b04=>{const _0x2c4e6b=_0x1e4184;if(typeof _0x462b04===_0x2c4e6b(0x283)){const _0x488927=normalizeString(_0x462b04);return _0x488927?[_0x488927]:[];}if(!_0x462b04||typeof _0x462b04!=='object')return[];const _0x33dabb=normalizeString(_0x462b04[_0x2c4e6b(0x1ef)]),_0x244e07=normalizeString(_0x462b04['note']);if(_0x33dabb&&_0x244e07)return['v'+_0x33dabb+'\x0a'+_0x244e07];if(_0x244e07)return[_0x244e07];if(_0x33dabb)return['v'+_0x33dabb];return[];});return _0xd11e27[_0x1e4184(0x281)]>0x0?_0xd11e27['join']('\x0a\x0a'):null;}function extractUpdateInfoPatch(_0x562a0f){const _0x259b6c=_0x184e;if(!_0x562a0f||typeof _0x562a0f!=='object')return{};return{'remoteVersion':normalizeString(_0x562a0f[_0x259b6c(0x1ef)]),'availableVersion':normalizeString(_0x562a0f[_0x259b6c(0x1ef)]),'releaseName':normalizeString(_0x562a0f[_0x259b6c(0x27a)+_0x259b6c(0x270)]),'releaseDate':normalizeString(_0x562a0f[_0x259b6c(0x240)+_0x259b6c(0x2b5)]),'releaseNotes':normalizeReleaseNotes(_0x562a0f['releaseN'+_0x259b6c(0x256)])};}function extractPackageFileName(_0x4c54e6){const _0x3657db=_0x184e,_0x31b866=normalizeString(_0x4c54e6);if(!_0x31b866)return null;try{const _0x252f5e=new URL(_0x31b866);return normalizeAppUpdatePackageFileName(decodeURIComponent(basename(_0x252f5e[_0x3657db(0x208)])));}catch{const _0x56f71b=_0x31b866['split'](/[?#]/u,0x1)[0x0];return normalizeAppUpdatePackageFileName(basename(_0x56f71b));}}function getPreferredUpdatePackagePattern(){const _0x4081d3=_0x184e;if(process[_0x4081d3(0x290)]===_0x4081d3(0x1f3))return/\.zip$/iu;if(process[_0x4081d3(0x290)]==='win32')return/\.exe$/iu;if(process['platform']==='linux')return/\.AppImage$/u;return/\.(zip|exe|AppImage)$/u;}function extractRemoteUpdatePackageMetadata(_0x1331be,_0x4a7406){const _0x79002f=_0x184e;if(!_0x1331be||typeof _0x1331be!==_0x79002f(0x21d))return null;const _0x24ea6f=normalizeString(_0x1331be[_0x79002f(0x1ef)]);if(!_0x24ea6f)return null;const _0x41edd8=[],_0x5ed52d=Array[_0x79002f(0x21f)](_0x1331be['files'])?_0x1331be['files']:[];for(const _0x33c2a0 of _0x5ed52d){if(!_0x33c2a0||typeof _0x33c2a0!==_0x79002f(0x21d))continue;const _0x42e5e3=extractPackageFileName(_0x33c2a0[_0x79002f(0x1f6)])??extractPackageFileName(_0x33c2a0[_0x79002f(0x269)])??normalizeAppUpdatePackageFileName(_0x33c2a0[_0x79002f(0x23c)]),_0x2a7a49=normalizeString(_0x33c2a0[_0x79002f(0x243)]);_0x42e5e3&&_0x2a7a49&&_0x41edd8['push']({'fileName':_0x42e5e3,'sha512':_0x2a7a49});}const _0x1dafdb=extractPackageFileName(_0x1331be[_0x79002f(0x1f6)])??extractPackageFileName(_0x1331be[_0x79002f(0x269)])??normalizeAppUpdatePackageFileName(_0x1331be[_0x79002f(0x23c)]),_0x35c95d=normalizeString(_0x1331be[_0x79002f(0x243)]);_0x1dafdb&&_0x35c95d&&_0x41edd8['push']({'fileName':_0x1dafdb,'sha512':_0x35c95d});const _0xf5785e=_0x41edd8[_0x79002f(0x220)](_0x2e3f40=>getPreferredUpdatePackagePattern()[_0x79002f(0x204)](_0x2e3f40[_0x79002f(0x23c)]));if(!_0xf5785e)return _0x4a7406?.[_0x79002f(0x28d)]?.(_0x79002f(0x1fc)+_0x79002f(0x2af)+'te\x20packa'+_0x79002f(0x231)+_0x79002f(0x253)+'latform',{'platform':process['platform'],'candidates':_0x41edd8[_0x79002f(0x222)](_0x23757e=>_0x23757e[_0x79002f(0x23c)])}),null;return{'version':_0x24ea6f,..._0xf5785e};}function extractProgressPatch(_0x25073f){const _0x2df017=_0x184e;return{'downloadPercent':typeof _0x25073f[_0x2df017(0x28a)]===_0x2df017(0x278)?_0x25073f[_0x2df017(0x28a)]:null,'bytesPerSecond':typeof _0x25073f[_0x2df017(0x1fb)+_0x2df017(0x276)]===_0x2df017(0x278)?_0x25073f[_0x2df017(0x1fb)+_0x2df017(0x276)]:null,'transferredBytes':typeof _0x25073f[_0x2df017(0x29c)+_0x2df017(0x26f)]==='number'?_0x25073f[_0x2df017(0x29c)+'red']:null,'totalBytes':typeof _0x25073f[_0x2df017(0x254)]===_0x2df017(0x278)?_0x25073f[_0x2df017(0x254)]:null};}function getErrorMessage(_0x4b23d1){const _0x3edd3c=_0x184e;if(_0x4b23d1 instanceof Error&&_0x4b23d1['message']['trim']())return _0x4b23d1[_0x3edd3c(0x252)]['trim']();if(typeof _0x4b23d1===_0x3edd3c(0x283)&&_0x4b23d1[_0x3edd3c(0x255)]())return _0x4b23d1[_0x3edd3c(0x255)]();return _0x3edd3c(0x289)+'误';}export function createUpdateController({shellConfig:_0x12db6d,appName:_0x171f22,appVersion:_0x54928b,broadcast:_0x2d23b0,logger:_0x2af15e}){const _0x1117ff=_0x184e,_0x2250a4=_0x12db6d[_0x1117ff(0x1ed)]??{},_0x1486b2=normalizeAppUpdateChannel(_0x2250a4[_0x1117ff(0x258)]),_0x105f58={'backgroundCheckIntervalMs':_0x2250a4['backgrou'+_0x1117ff(0x259)+_0x1117ff(0x22f)+'s']??DEFAULT_BACKGROUND_UPDATE_CHECK_INTERVAL_MS,'backgroundCheckStaleMs':_0x2250a4[_0x1117ff(0x267)+'ndCheckS'+_0x1117ff(0x20d)]??DEFAULT_BACKGROUND_UPDATE_CHECK_STALE_MS,'installQuitTimeoutMs':_0x2250a4['installQ'+_0x1117ff(0x2b8)+'utMs']??DEFAULT_INSTALL_QUIT_TIMEOUT_MS,'autoDownload':_0x2250a4[_0x1117ff(0x1f4)+_0x1117ff(0x1fa)]===!![]},_0x39c0fa={'supported':![],'channel':_0x1486b2,'phase':_0x1117ff(0x247)+_0x1117ff(0x22c),'currentVersion':_0x54928b(),'remoteVersion':null,'comparisonResult':_0x1117ff(0x211),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'releaseName':null,'releaseDate':null,'releaseNotes':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null,'checkedAt':null,'message':_0x1117ff(0x284),'error':null,'errorCode':null};let _0xc8acf8=![],_0x3fe933=null,_0x2e5a71=null,_0x28c81a=null,_0x1bfd1e=null,_0x51d337=null,_0xd6cfda=![],_0x3edf0e=null,_0xfd1874=0x0;function _0x3d11ea(){const _0x33894e=_0x1117ff;if(process['platform']===_0x33894e(0x1f3))return join(homedir(),_0x33894e(0x244),'Caches');if(process[_0x33894e(0x290)]===_0x33894e(0x277))return process.env.LOCALAPPDATA??join(homedir(),_0x33894e(0x2aa),'Local');return process.env.XDG_CACHE_HOME??join(homedir(),'.cache');}function _0x348e8c(){const _0x5aaedf=_0x1117ff;if(!app[_0x5aaedf(0x1f5)+'ed']||!process[_0x5aaedf(0x29b)+_0x5aaedf(0x265)])return{};const _0x1a67cd=join(process['resource'+_0x5aaedf(0x265)],_0x5aaedf(0x207)+_0x5aaedf(0x216));if(!existsSync(_0x1a67cd))return{};try{const _0x4512ac=readFileSync(_0x1a67cd,_0x5aaedf(0x245)),_0x16a9ba=/^\s*channel:\s*["']?([^"'\s#]+)["']?/imu[_0x5aaedf(0x280)](_0x4512ac),_0x31b998=/^\s*updaterCacheDirName:\s*["']?([^"'\s#]+)["']?/imu['exec'](_0x4512ac);return{'channel':normalizeAppUpdateChannel(_0x16a9ba?.[0x1]),'updaterCacheDirName':normalizeString(_0x31b998?.[0x1])};}catch(_0x2fa51c){return _0x2af15e?.[_0x5aaedf(0x28d)]?.(_0x5aaedf(0x27e)+_0x5aaedf(0x223)+_0x5aaedf(0x1ea)+_0x5aaedf(0x249),{'error':getErrorMessage(_0x2fa51c)}),{};}}const _0x4cb66d=_0x348e8c();_0x4cb66d[_0x1117ff(0x258)]&&(_0x39c0fa[_0x1117ff(0x258)]=_0x4cb66d['channel']);function _0x5403d4(){const _0x1143fb=_0x1117ff,_0x1f8f5e=_0x4cb66d[_0x1143fb(0x299)+_0x1143fb(0x2b2)+_0x1143fb(0x270)]||_0x171f22()+_0x1143fb(0x285);return join(_0x3d11ea(),_0x1f8f5e);}function _0xef05e6(_0x4f82af){const _0x5b6bf3=_0x1117ff;return _0x4f82af===_0x5b6bf3(0x229)?_0x5b6bf3(0x28f)+'ha\x20更新渠道':_0x5b6bf3(0x27c)+'绪';}function _0x6cc34c(){const _0x69274=_0x1117ff;if(_0x2250a4[_0x69274(0x205)]===![])return![];if(!app['isPackag'+'ed'])return![];if(process[_0x69274(0x290)]!==_0x69274(0x202))return!![];return Boolean(process.env.APPIMAGE);}function _0xf414e2(){const _0x38400e=_0x1117ff;if(_0x2250a4[_0x38400e(0x205)]===![])return _0x38400e(0x213)+'hell.con'+_0x38400e(0x2a2);if(!app['isPackag'+'ed'])return _0x38400e(0x215)+_0x38400e(0x226);if(process[_0x38400e(0x290)]===_0x38400e(0x202))return _0x38400e(0x209)+_0x38400e(0x1f2)+_0x38400e(0x28e)+'内自动更新';return _0x38400e(0x228)+_0x38400e(0x288);}function _0x12ebb6(){const _0xd7cc1e=_0x1117ff;return join(_0x12db6d[_0xd7cc1e(0x1ff)],_0xd7cc1e(0x2a4)+_0xd7cc1e(0x2a0)+_0xd7cc1e(0x2ab)+'on');}function _0x38c3bf(){return{'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null};}function _0x164a37(){return{..._0x39c0fa};}function _0x4ee918(){const _0x515855=_0x1117ff,_0x5994ad=_0x164a37();for(const _0x3408bd of BrowserWindow[_0x515855(0x23a)+'ndows']()){!_0x3408bd['isDestro'+'yed']()&&_0x3408bd[_0x515855(0x23d)+_0x515855(0x286)]['send']('app:upda'+_0x515855(0x296),_0x5994ad);}_0x2d23b0?.(_0x515855(0x248)+'te-state',_0x5994ad);}function _0x138dc2(_0x303c64){const _0x48f3cb=_0x1117ff,_0x19b4de={..._0x303c64};_0x19b4de[_0x48f3cb(0x23e)]===null&&_0x19b4de['errorCod'+'e']===undefined&&(_0x19b4de[_0x48f3cb(0x1f8)+'e']=null),Object[_0x48f3cb(0x24a)](_0x39c0fa,_0x19b4de,{'currentVersion':_0x54928b()}),_0x4ee918();}function _0x529daf(){const _0x5170c8=_0x1117ff;if(!_0x39c0fa[_0x5170c8(0x293)+'d'])throw new Error(_0xf414e2());}function _0x3a0921(_0x12e3e6,_0x3b9d22={}){const _0x4048c2=_0x1117ff;_0x2af15e?.[_0x4048c2(0x27d)]?.(_0x12e3e6,_0x3b9d22);}function _0x2f5663(_0x1ef271,_0x51788f={}){const _0x4f3dc5=_0x1117ff;_0x2af15e?.[_0x4f3dc5(0x28d)]?.(_0x1ef271,_0x51788f);}function _0x4d76be(_0x43bc62){const _0x1cc03c=_0x1117ff;if(typeof _0x43bc62!==_0x1cc03c(0x278)||!Number[_0x1cc03c(0x1f7)](_0x43bc62))return null;const _0x2e28cd=Math[_0x1cc03c(0x20c)](0x63,Math[_0x1cc03c(0x2b3)](0x0,_0x43bc62));if(_0x39c0fa['phase']!=='download'+_0x1cc03c(0x242)||typeof _0x39c0fa[_0x1cc03c(0x200)+_0x1cc03c(0x282)]!=='number')return _0x2e28cd;return Math['max'](_0x39c0fa[_0x1cc03c(0x200)+_0x1cc03c(0x282)],_0x2e28cd);}function _0x17dcb3(_0x820430,_0x2596d0){const _0x2da184=_0x1117ff,_0x3bf22a=_0x820430?'v'+_0x820430:_0x2da184(0x25e);if(typeof _0x2596d0===_0x2da184(0x278)){if(_0x2596d0>=0x63)return _0x2da184(0x1fe);return'正在下载\x20'+_0x3bf22a+'\x20('+_0x2596d0[_0x2da184(0x1e8)](0x1)+'%)';}return _0x2da184(0x20a)+_0x3bf22a;}function _0x1f99c9(_0x2d4b3c){const _0x388b59=_0x1117ff;try{writeFileSync(_0x12ebb6(),JSON['stringif'+'y'](_0x2d4b3c,null,0x2),_0x388b59(0x245));}catch(_0x8340d2){_0x2f5663(_0x388b59(0x27e)+'o\x20persis'+_0x388b59(0x2a8)+_0x388b59(0x263)+_0x388b59(0x274),{'error':getErrorMessage(_0x8340d2)});}}function _0x38cb0a(){const _0x1020df=_0x1117ff;try{rmSync(_0x12ebb6(),{'force':!![]});}catch(_0x549969){_0x2f5663('failed\x20t'+'o\x20clear\x20'+_0x1020df(0x1eb)+_0x1020df(0x2a6)+'ntext',{'error':getErrorMessage(_0x549969)});}}function _0x2a1249(){const _0x31a0df=_0x1117ff,_0x267a6f=join(_0x5403d4(),_0x31a0df(0x275));if(!existsSync(_0x267a6f))return{'packageName':null,'packageBytes':null};try{const _0x12dff3=readdirSync(_0x267a6f)['find'](_0x1860e2=>/\.(zip|exe|dmg|AppImage)$/iu[_0x31a0df(0x204)](_0x1860e2))??null;if(!_0x12dff3)return{'packageName':null,'packageBytes':null};const _0x54c200=join(_0x267a6f,_0x12dff3);return{'packageName':_0x12dff3,'packageBytes':statSync(_0x54c200)[_0x31a0df(0x1fd)]};}catch(_0x1453ce){return _0x2f5663(_0x31a0df(0x27e)+_0x31a0df(0x27b)+_0x31a0df(0x24e)+'g\x20instal'+_0x31a0df(0x20e)+'e',{'error':getErrorMessage(_0x1453ce)}),{'packageName':null,'packageBytes':null};}}function _0xda3004(){const _0x4f633b=_0x1117ff;if(!_0x28c81a)return null;const _0x276666=join(_0x5403d4(),_0x4f633b(0x275)),_0x37a878=join(_0x276666,'update-i'+_0x4f633b(0x230));if(!existsSync(_0x37a878))return null;let _0xbfc77b=null;try{_0xbfc77b=JSON[_0x4f633b(0x1f9)](readFileSync(_0x37a878,'utf8'));}catch(_0xc7c27d){return _0x2f5663(_0x4f633b(0x27e)+'o\x20read\x20p'+_0x4f633b(0x24b)+_0x4f633b(0x291)+'fo.json',{'error':getErrorMessage(_0xc7c27d)}),null;}if(!isMatchingAppUpdatePackageMetadata(_0x28c81a,_0xbfc77b))return null;const _0x4bd5f9=join(_0x276666,_0x28c81a[_0x4f633b(0x23c)]);if(!existsSync(_0x4bd5f9))return null;try{const _0x12ba55=statSync(_0x4bd5f9);if(!_0x12ba55[_0x4f633b(0x1f0)]()||_0x12ba55[_0x4f633b(0x1fd)]===0x0)return null;return{'metadata':_0x28c81a,'packageName':_0x28c81a['fileName'],'packageBytes':_0x12ba55[_0x4f633b(0x1fd)]};}catch(_0xf05a4a){return _0x2f5663('failed\x20t'+'o\x20inspec'+_0x4f633b(0x24e)+_0x4f633b(0x1ee)+_0x4f633b(0x2b4)+_0x4f633b(0x21b),{'error':getErrorMessage(_0xf05a4a)}),null;}}function _0xa8f3fb(_0x1aa0a7){const _0x35f646=_0x1117ff,_0x51c5c6=_0xda3004();if(!_0x51c5c6)return![];const {metadata:_0x488b4f,packageName:_0x1327ec,packageBytes:_0x4eb158}=_0x51c5c6;return _0x3a0921(_0x35f646(0x2b6)+_0x35f646(0x217)+_0x35f646(0x264)+'t',{'reason':_0x1aa0a7,'version':_0x488b4f[_0x35f646(0x1ef)],'packageName':_0x1327ec,'packageBytes':_0x4eb158}),_0x138dc2({'phase':_0x35f646(0x292)+'e','remoteVersion':_0x488b4f[_0x35f646(0x1ef)],'comparisonResult':_0x35f646(0x272)+_0x35f646(0x29a),'hasUpdate':!![],'availableVersion':_0x488b4f['version'],'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':_0x4eb158,'totalBytes':_0x4eb158,'hasPendingPackage':!![],'pendingPackageName':_0x1327ec,'pendingPackageBytes':_0x4eb158,'error':null,'message':_0x35f646(0x26b)+'v'+_0x488b4f[_0x35f646(0x1ef)]+(_0x35f646(0x26c)+'备安装')}),!![];}function _0x4ee282(){const _0x47c1b3=_0x1117ff;return _0x39c0fa['supporte'+'d']&&!_0x3fe933&&!_0x2e5a71&&[_0x47c1b3(0x251),_0x47c1b3(0x26a)+_0x47c1b3(0x218),_0x47c1b3(0x23e)]['includes'](_0x39c0fa['phase']);}function _0xf5e560(){if(!_0x51d337)return;clearTimeout(_0x51d337),_0x51d337=null;}function _0x5b58cd(_0x1b45a2){const _0x4f5ff8=_0x1117ff,_0x179ea0=_0x39c0fa[_0x4f5ff8(0x200)+'edVersio'+'n'],_0x136c0f=_0x39c0fa[_0x4f5ff8(0x292)+_0x4f5ff8(0x28c)];_0x1bfd1e=null,_0xd6cfda=![],_0xf5e560(),_0x38cb0a(),_0x138dc2({'phase':_0x4f5ff8(0x23e),'checkedAt':new Date()['toISOStr'+_0x4f5ff8(0x242)](),'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null,'hasUpdate':!![],'availableVersion':_0x136c0f??_0x179ea0,'downloadedVersion':_0x179ea0,'error':getErrorMessage(_0x1b45a2),'errorCode':_0x4f5ff8(0x2a4)+_0x4f5ff8(0x23e),'message':'安装更新失败'});}function _0x18def7(){const _0x1d6afa=_0x1117ff;_0xf5e560(),_0xd6cfda=![],_0x51d337=setTimeout(()=>{const _0x30e81e=_0x184e;if(_0xd6cfda||_0x39c0fa[_0x30e81e(0x24d)]!==_0x30e81e(0x2ad)+'ng')return;_0x2f5663(_0x30e81e(0x21a)+_0x30e81e(0x238)+_0x30e81e(0x219)+_0x30e81e(0x279)+_0x30e81e(0x227)+_0x30e81e(0x29e)+_0x30e81e(0x212),{'downloadedVersion':_0x39c0fa[_0x30e81e(0x200)+_0x30e81e(0x1e9)+'n'],'currentVersion':_0x39c0fa[_0x30e81e(0x261)+_0x30e81e(0x22d)]}),_0x5b58cd(new Error(_0x30e81e(0x2ae)+_0x30e81e(0x233)+_0x30e81e(0x234)));},_0x105f58[_0x1d6afa(0x2ac)+_0x1d6afa(0x2b8)+_0x1d6afa(0x20b)]);}function _0x55d4d2(){const _0x32851d=_0x1117ff;if(_0xc8acf8)return;_0xc8acf8=!![],_0x39c0fa['supporte'+'d']=_0x6cc34c(),_0x39c0fa[_0x32851d(0x24d)]=_0x39c0fa['supporte'+'d']?'idle':'unsuppor'+_0x32851d(0x22c),_0x39c0fa[_0x32851d(0x252)]=_0x39c0fa[_0x32851d(0x293)+'d']?_0xef05e6(_0x39c0fa['channel']):_0xf414e2();if(!_0x39c0fa[_0x32851d(0x293)+'d']){_0x4ee918();return;}autoUpdater[_0x32851d(0x1f4)+_0x32851d(0x1fa)]=_0x105f58[_0x32851d(0x1f4)+_0x32851d(0x1fa)],autoUpdater['autoInst'+'allOnApp'+_0x32851d(0x241)]=![],autoUpdater['channel']=_0x39c0fa[_0x32851d(0x258)],autoUpdater['on']('checking'+'-for-upd'+_0x32851d(0x2b5),()=>{const _0x1a85d2=_0x32851d;_0x28c81a=null,_0x138dc2({'phase':_0x1a85d2(0x24f),'checkedAt':new Date()['toISOStr'+_0x1a85d2(0x242)](),'remoteVersion':null,'comparisonResult':_0x1a85d2(0x211),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x38c3bf(),'error':null,'message':_0x1a85d2(0x27f)});}),autoUpdater['on'](_0x32851d(0x232)+'vailable',_0x871d47=>{const _0x4a265f=_0x32851d,_0xa81e31=extractUpdateInfoPatch(_0x871d47),_0x42ac07=compareAppVersions(_0x54928b(),_0xa81e31[_0x4a265f(0x2b1)+_0x4a265f(0x20f)]);if(_0x42ac07!=='remote-n'+_0x4a265f(0x29a)){_0x28c81a=null,_0x138dc2({..._0xa81e31,'phase':_0x4a265f(0x26a)+_0x4a265f(0x218),'comparisonResult':_0x42ac07,'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x38c3bf(),'checkedAt':new Date()[_0x4a265f(0x237)+'ing'](),'error':null,'message':_0x4a265f(0x2a1)+'本'});return;}_0x28c81a=extractRemoteUpdatePackageMetadata(_0x871d47,_0x2af15e),_0x138dc2({..._0xa81e31,'phase':_0x4a265f(0x292)+'e','comparisonResult':_0x42ac07,'hasUpdate':!![],'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x38c3bf(),'checkedAt':new Date()[_0x4a265f(0x237)+_0x4a265f(0x242)](),'error':null,'message':_0xa81e31[_0x4a265f(0x292)+_0x4a265f(0x28c)]?_0x4a265f(0x250)+_0xa81e31[_0x4a265f(0x292)+'eVersion']:_0x4a265f(0x29f)}),_0xa8f3fb('update_a'+'vailable');}),autoUpdater['on'](_0x32851d(0x21c)+_0x32851d(0x268)+'able',_0x2f4f92=>{const _0x5657e2=_0x32851d;_0x28c81a=null;const _0x44288f=extractUpdateInfoPatch(_0x2f4f92);_0x138dc2({..._0x44288f,'phase':_0x5657e2(0x26a)+'lable','comparisonResult':compareAppVersions(_0x54928b(),_0x44288f[_0x5657e2(0x2b1)+_0x5657e2(0x20f)]),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,..._0x38c3bf(),'checkedAt':new Date()[_0x5657e2(0x237)+'ing'](),'error':null,'message':_0x5657e2(0x2a1)+'本'});}),autoUpdater['on']('download'+'-progres'+'s',_0x5edd54=>{const _0x5ae807=_0x32851d,_0x219a52=extractProgressPatch(_0x5edd54),_0x508829=_0x4d76be(_0x219a52[_0x5ae807(0x200)+_0x5ae807(0x282)]??null);_0x138dc2({..._0x219a52,'downloadPercent':_0x508829,'phase':_0x5ae807(0x200)+_0x5ae807(0x242),..._0x38c3bf(),'error':null,'message':_0x17dcb3(_0x39c0fa[_0x5ae807(0x292)+_0x5ae807(0x28c)],_0x508829)});}),autoUpdater['on'](_0x32851d(0x221)+_0x32851d(0x22e)+'d',_0x1d7443=>{const _0x3b07c4=_0x32851d,_0xd51745=extractUpdateInfoPatch(_0x1d7443),_0x5cb22b=extractRemoteUpdatePackageMetadata(_0x1d7443,_0x2af15e)??_0x28c81a;_0x5cb22b&&(_0x28c81a=_0x5cb22b);const _0xc69bd=_0xd51745[_0x3b07c4(0x292)+'eVersion']??_0x5cb22b?.[_0x3b07c4(0x1ef)]??_0x39c0fa[_0x3b07c4(0x292)+'eVersion'];_0x138dc2({..._0xd51745,'phase':_0x3b07c4(0x200)+'ed','comparisonResult':compareAppVersions(_0x54928b(),_0xc69bd),'hasUpdate':!![],'downloadedVersion':_0xc69bd,'downloadPercent':0x64,..._0x38c3bf(),'error':null,'message':_0xc69bd?_0x3b07c4(0x266)+_0xc69bd+_0x3b07c4(0x1ec):_0x3b07c4(0x236)+'装'});}),autoUpdater['on'](_0x32851d(0x23e),_0x21ec9a=>{const _0x268146=_0x32851d;if(_0x39c0fa[_0x268146(0x24d)]===_0x268146(0x2ad)+'ng'){_0x5b58cd(_0x21ec9a);return;}_0x138dc2({'phase':_0x268146(0x23e),'checkedAt':new Date()['toISOStr'+'ing'](),..._0x38c3bf(),'error':getErrorMessage(_0x21ec9a),'errorCode':_0x39c0fa[_0x268146(0x24d)]===_0x268146(0x200)+_0x268146(0x242)?_0x268146(0x200)+_0x268146(0x26e):_0x268146(0x235)+_0x268146(0x295),'message':_0x268146(0x273)});}),_0x4ee918();}async function _0x223628(){const _0x4e5ade=_0x1117ff;_0x55d4d2(),_0x529daf();if(_0x3fe933)return _0x3fe933;return _0x3a0921('check\x20re'+_0x4e5ade(0x21e)),_0x3fe933=autoUpdater['checkFor'+_0x4e5ade(0x225)]()[_0x4e5ade(0x25d)](()=>_0x164a37())[_0x4e5ade(0x2a5)](()=>{_0x3fe933=null;}),_0x3fe933;}async function _0x292b03(){const _0x3596f1=_0x1117ff;_0x55d4d2(),_0x529daf();if(_0x39c0fa['phase']===_0x3596f1(0x200)+'ed'||_0x39c0fa['phase']==='installi'+'ng')return _0x164a37();if(!_0x39c0fa['hasUpdat'+'e'])throw new Error(_0x3596f1(0x25f)+'更新');const _0x1bbc67=_0x39c0fa[_0x3596f1(0x24d)]===_0x3596f1(0x23e)&&_0x39c0fa[_0x3596f1(0x1f8)+'e']==='install-'+_0x3596f1(0x23e)&&Boolean(_0x39c0fa[_0x3596f1(0x200)+_0x3596f1(0x1e9)+'n']);if(_0x39c0fa[_0x3596f1(0x24d)]===_0x3596f1(0x23e)){if(_0x1bbc67)_0x138dc2({'phase':'availabl'+'e','hasUpdate':!![],'availableVersion':_0x39c0fa[_0x3596f1(0x292)+_0x3596f1(0x28c)]??_0x39c0fa['download'+_0x3596f1(0x1e9)+'n'],'downloadedVersion':null,'downloadPercent':null,..._0x38c3bf(),'error':null,'message':'正在重新准备更新'+'包'});else{await _0x223628();if(_0x39c0fa[_0x3596f1(0x24d)]!==_0x3596f1(0x292)+'e')throw new Error(_0x3596f1(0x25f)+'更新');}}if(![_0x3596f1(0x292)+'e',_0x3596f1(0x200)+_0x3596f1(0x242)][_0x3596f1(0x297)](_0x39c0fa[_0x3596f1(0x24d)]))throw new Error('当前没有可下载的'+'更新');if(_0x2e5a71)return _0x2e5a71;return _0x2e5a71=autoUpdater['download'+_0x3596f1(0x298)]()[_0x3596f1(0x25d)](()=>{const _0x5a5dd3=_0x3596f1;return _0x39c0fa[_0x5a5dd3(0x24d)]!==_0x5a5dd3(0x200)+'ed'&&_0x138dc2({'phase':_0x5a5dd3(0x23e),'checkedAt':new Date()[_0x5a5dd3(0x237)+'ing'](),..._0x38c3bf(),'error':'更新包校验完成但'+_0x5a5dd3(0x25b)+_0x5a5dd3(0x2b0),'errorCode':'download'+_0x5a5dd3(0x26e),'message':_0x5a5dd3(0x294)}),_0x164a37();})[_0x3596f1(0x2a5)](()=>{_0x2e5a71=null;}),_0x2e5a71;}function _0x54ebc9(){const _0x2ffc01=_0x1117ff;_0x55d4d2(),_0x529daf();if(![_0x2ffc01(0x200)+'ed',_0x2ffc01(0x2ad)+'ng'][_0x2ffc01(0x297)](_0x39c0fa[_0x2ffc01(0x24d)]))throw new Error(_0x2ffc01(0x206)+_0x2ffc01(0x287));const _0x27f238=_0x2a1249();_0x1bfd1e=Date['now'](),_0x1f99c9({'startedAt':new Date(_0x1bfd1e)['toISOStr'+_0x2ffc01(0x242)](),'currentVersion':_0x39c0fa[_0x2ffc01(0x261)+_0x2ffc01(0x22d)],'downloadedVersion':_0x39c0fa[_0x2ffc01(0x200)+_0x2ffc01(0x1e9)+'n'],'pendingPackage':_0x27f238[_0x2ffc01(0x271)+_0x2ffc01(0x270)],'pendingPackageBytes':_0x27f238[_0x2ffc01(0x29d)+_0x2ffc01(0x22a)]}),_0x138dc2({'phase':_0x2ffc01(0x2ad)+'ng',..._0x38c3bf(),'error':null,'message':_0x2ffc01(0x28b)+_0x2ffc01(0x23b)});try{_0x18def7(),autoUpdater[_0x2ffc01(0x21a)+'nstall'](![],!![]);}catch(_0x56109b){_0x5b58cd(_0x56109b);throw _0x56109b;}return{'ok':!![]};}async function _0xfa6a79(_0xf32082){const _0x20cc95=_0x1117ff;if(!_0x4ee282())return;_0xfd1874=Date['now'](),_0x3a0921(_0x20cc95(0x267)+_0x20cc95(0x24c)+'e\x20check\x20'+_0x20cc95(0x246)+'d',{'reason':_0xf32082});try{await _0x223628();}catch(_0x36f197){_0x2f5663(_0x20cc95(0x267)+'nd\x20updat'+'e\x20check\x20'+'failed',{'reason':_0xf32082,'error':getErrorMessage(_0x36f197)});}}function _0x4aae4c(_0xd81555){const _0x2e9fd3=_0x1117ff;if(!_0x39c0fa['supporte'+'d'])return;const _0x297855=Date[_0x2e9fd3(0x23f)]()-_0xfd1874;if(_0x297855<_0x105f58[_0x2e9fd3(0x267)+_0x2e9fd3(0x1f1)+_0x2e9fd3(0x20d)])return;void _0xfa6a79(_0xd81555);}function _0x22ac3a(){const _0x2f3619=_0x1117ff;_0x55d4d2();if(!_0x39c0fa[_0x2f3619(0x293)+'d']||_0x3edf0e)return;_0x3edf0e=setInterval(()=>{void _0xfa6a79('interval');},_0x105f58[_0x2f3619(0x267)+_0x2f3619(0x259)+_0x2f3619(0x22f)+'s']),void _0xfa6a79(_0x2f3619(0x201)),_0x3a0921('backgrou'+_0x2f3619(0x24c)+_0x2f3619(0x1e6)+_0x2f3619(0x22b)+_0x2f3619(0x214)+'d',_0x105f58);}function _0x31cd25(){const _0x10d405=_0x1117ff;if(_0x39c0fa[_0x10d405(0x24d)]!==_0x10d405(0x2ad)+'ng')return;_0xd6cfda=!![],_0xf5e560();}return{'initialize':_0x55d4d2,'getState':_0x164a37,'checkForUpdates':_0x223628,'downloadUpdate':_0x292b03,'quitAndInstall':_0x54ebc9,'requestBackgroundCheck':_0x4aae4c,'startBackgroundChecks':_0x22ac3a,'markQuitObserved':_0x31cd25};}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(_0x24b954,_0x202408){const _0x2a8337=_0x3b15,_0x10de90=_0x24b954();while(!![]){try{const _0x23a633=parseInt(_0x2a8337(0xa7))/0x1+-parseInt(_0x2a8337(0xcd))/0x2*(-parseInt(_0x2a8337(0xd6))/0x3)+-parseInt(_0x2a8337(0xb4))/0x4*(parseInt(_0x2a8337(0xbd))/0x5)+parseInt(_0x2a8337(0xcc))/0x6+parseInt(_0x2a8337(0xdf))/0x7*(-parseInt(_0x2a8337(0xb5))/0x8)+-parseInt(_0x2a8337(0xaf))/0x9+parseInt(_0x2a8337(0xb1))/0xa;if(_0x23a633===_0x202408)break;else _0x10de90['push'](_0x10de90['shift']());}catch(_0x2c0976){_0x10de90['push'](_0x10de90['shift']());}}}(_0x1069,0xebbe2));function _0x3b15(_0x52a536,_0x2658e0){_0x52a536=_0x52a536-0xa6;const _0x106929=_0x1069();let _0x3b1579=_0x106929[_0x52a536];return _0x3b1579;}import{BrowserWindow}from'electron';function getErrorMessage(_0x5771fe){const _0x15a6de=_0x3b15;if(_0x5771fe instanceof Error&&_0x5771fe[_0x15a6de(0xd3)]['trim']())return _0x5771fe[_0x15a6de(0xd3)][_0x15a6de(0xaa)]();if(typeof _0x5771fe===_0x15a6de(0xb7)&&_0x5771fe[_0x15a6de(0xaa)]())return _0x5771fe['trim']();return _0x15a6de(0xca)+'误';}function createUnavailableUpdateController({shellConfig:_0x279234,appVersion:_0x1b8d6b,broadcast:_0xf201d2,logger:_0x535294,reason:_0x1b363f}){const _0x43b285=_0x3b15,_0x599592=_0x279234[_0x43b285(0xd1)]??{},_0x20bb78={'supported':![],'channel':_0x599592[_0x43b285(0xb0)]===_0x43b285(0xc8)?_0x43b285(0xc8):_0x43b285(0xdd),'phase':_0x43b285(0xcf)+_0x43b285(0xc1),'currentVersion':_0x1b8d6b(),'remoteVersion':null,'comparisonResult':_0x43b285(0xc9),'hasUpdate':![],'availableVersion':null,'downloadedVersion':null,'releaseName':null,'releaseDate':null,'releaseNotes':null,'downloadPercent':null,'bytesPerSecond':null,'transferredBytes':null,'totalBytes':null,'hasPendingPackage':![],'pendingPackageName':null,'pendingPackageBytes':null,'checkedAt':null,'message':_0x1b363f,'error':null,'errorCode':'missing-'+'dependen'+'cy'};let _0x2ed7a4=![];function _0xa72627(){return{..._0x20bb78,'currentVersion':_0x1b8d6b()};}function _0x40bf75(){const _0x1c22a2=_0x43b285,_0x397902=_0xa72627();for(const _0x5813cf of BrowserWindow[_0x1c22a2(0xe0)+'ndows']()){!_0x5813cf[_0x1c22a2(0xc4)+'yed']()&&_0x5813cf[_0x1c22a2(0xdc)+_0x1c22a2(0xab)]['send'](_0x1c22a2(0xd2)+_0x1c22a2(0xc0),_0x397902);}_0xf201d2?.(_0x1c22a2(0xd2)+_0x1c22a2(0xc0),_0x397902);}function _0xf6018b(){const _0x1ddc5f=_0x43b285;if(_0x2ed7a4)return;_0x2ed7a4=!![],_0x535294?.[_0x1ddc5f(0xa9)]?.(_0x1ddc5f(0xb6)+_0x1ddc5f(0xde)+'bled\x20bec'+_0x1ddc5f(0xae)+_0x1ddc5f(0xa6)+_0x1ddc5f(0xac)+_0x1ddc5f(0xd7)+'able',{'reason':_0x1b363f}),_0x40bf75();}function _0x52dcc4(){throw new Error(_0x1b363f);}async function _0xa012c8(){_0xf6018b(),_0x52dcc4();}async function _0x121288(){_0xf6018b(),_0x52dcc4();}async function _0x4c87d6(){_0xf6018b(),_0x52dcc4();}function _0x135691(){}function _0x1fa693(){_0xf6018b();}function _0x1e3ca6(){}return{'initialize':_0xf6018b,'getState':_0xa72627,'checkForUpdates':_0xa012c8,'downloadUpdate':_0x121288,'quitAndInstall':_0x4c87d6,'requestBackgroundCheck':_0x135691,'startBackgroundChecks':_0x1fa693,'markQuitObserved':_0x1e3ca6};}function isElectronUpdaterMissingError(_0x273ccd){const _0x4f4bd0=_0x3b15;if(!_0x273ccd)return![];if(_0x273ccd&&typeof _0x273ccd===_0x4f4bd0(0xb8)&&_0x4f4bd0(0xc3)in _0x273ccd&&(_0x273ccd[_0x4f4bd0(0xc3)]==='ERR_MODU'+_0x4f4bd0(0xbf)+'OUND'||_0x273ccd[_0x4f4bd0(0xc3)]===_0x4f4bd0(0xd9)+_0x4f4bd0(0xc2))){const _0x52e105=getErrorMessage(_0x273ccd);return _0x52e105[_0x4f4bd0(0xbb)](_0x4f4bd0(0xdb)+_0x4f4bd0(0xc6)+'r\x27')||_0x52e105[_0x4f4bd0(0xbb)](_0x4f4bd0(0xb9)+_0x4f4bd0(0xc6)+'r\x22');}return![];}export async function loadCreateUpdateController({logger:_0x7c204e,importer:importer=_0x9dda10=>import(_0x9dda10)}={}){const _0x36fbe2=_0x3b15;try{const _0x23bd75=await importer(_0x36fbe2(0xbc)+'ller.mjs');if(typeof _0x23bd75[_0x36fbe2(0xd4)+_0x36fbe2(0xad)+_0x36fbe2(0xa8)]!==_0x36fbe2(0xd8))throw new TypeError(_0x36fbe2(0xda)+_0x36fbe2(0xd5)+'er.mjs\x20d'+_0x36fbe2(0xbe)+_0x36fbe2(0xb3)+'reateUpd'+'ateContr'+_0x36fbe2(0xc5));return _0x23bd75['createUp'+_0x36fbe2(0xad)+'roller'];}catch(_0x4da773){if(!isElectronUpdaterMissingError(_0x4da773))throw _0x4da773;const _0x3a1bce=_0x36fbe2(0xcb)+_0x36fbe2(0xc7)+'updater\x20'+_0x36fbe2(0xb2)+_0x36fbe2(0xba);return _0x7c204e?.[_0x36fbe2(0xa9)]?.(_0x36fbe2(0xe1)+_0x36fbe2(0xce)+_0x36fbe2(0xc7)+_0x36fbe2(0xd0),{'error':getErrorMessage(_0x4da773),'reason':_0x3a1bce}),_0x258286=>createUnavailableUpdateController({..._0x258286,'logger':_0x258286?.['logger']??_0x7c204e,'reason':_0x3a1bce});}}export const __test__={'createUnavailableUpdateController':createUnavailableUpdateController,'isElectronUpdaterMissingError':isElectronUpdaterMissingError};function _0x1069(){const _0x428506=['ate\x20disa','4310614yDbENi','getAllWi','failed\x20t','ctron-up','1326173WaPMot','roller','warn','trim','nts','dater\x20is','dateCont','ause\x20ele','3871233YbzmjH','channel','6640490WaCoUZ','缺失,已降级为禁','export\x20c','33844YnMfwd','8IQKLfY','auto\x20upd','string','object','\x22electro','用状态','includes','./contro','535uzHueY','oes\x20not\x20','LE_NOT_F','te-state','ted','OT_FOUND','code','isDestro','oller','n-update','lectron-','alpha','unknown','未知的自动更新错','自动更新依赖\x20e','2207166gQpLVW','2vHuzzh','o\x20load\x20e','unsuppor','updater','updates','app:upda','message','createUp','controll','1676355VrSgTp','\x20unavail','function','MODULE_N','updates/','\x27electro','webConte','latest'];_0x1069=function(){return _0x428506;};return _0x1069();}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wujie-shell/core",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/src/index.mjs",
|
|
6
6
|
"exports": {
|
|
@@ -30,11 +30,12 @@
|
|
|
30
30
|
"README.md"
|
|
31
31
|
],
|
|
32
32
|
"dependencies": {
|
|
33
|
+
"electron-updater": "^6.8.3",
|
|
33
34
|
"get-port": "^7.2.0",
|
|
34
35
|
"semver": "^7.8.3",
|
|
35
36
|
"ws": "^8.20.0",
|
|
36
|
-
"@wujie-shell/
|
|
37
|
-
"@wujie-shell/
|
|
37
|
+
"@wujie-shell/config": "3.0.2",
|
|
38
|
+
"@wujie-shell/logger": "3.0.2"
|
|
38
39
|
},
|
|
39
40
|
"scripts": {
|
|
40
41
|
"build": "node ../../scripts/build-packages.mjs --package @wujie-shell/core"
|