gy-roslib
Version:
gy
6 lines • 8.82 kB
JavaScript
(function(_0xb4d212,_0x2c36e9){typeof exports==='object'&&typeof module!=='undefined'?_0x2c36e9(exports):typeof define==='function'&&define['amd']?define(['exports'],_0x2c36e9):(_0xb4d212=typeof globalThis!=='undefined'?globalThis:_0xb4d212||self,_0x2c36e9(_0xb4d212['Comlink']={}));}(this,function(_0x47438c){'use strict';/**
* @license
* Copyright 2019 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
const _0x13450f=Symbol('Comlink.proxy'),_0x1a3890=Symbol('Comlink.endpoint'),_0x591711=Symbol('Comlink.releaseProxy'),_0x180d06=Symbol('Comlink.finalizer'),_0x4a9279=Symbol('Comlink.thrown'),_0x31060a=_0x3a340f=>typeof _0x3a340f==='object'&&_0x3a340f!==null||typeof _0x3a340f==='function',_0x50b305={'canHandle':_0x2e78e7=>_0x31060a(_0x2e78e7)&&_0x2e78e7[_0x13450f],'serialize'(_0x109da6){const {port1:_0x5c7031,port2:_0x4eab49}=new MessageChannel();return _0x1e7314(_0x109da6,_0x5c7031),[_0x4eab49,[_0x4eab49]];},'deserialize'(_0xd0327){return _0xd0327['start'](),_0xb1c4b3(_0xd0327);}},_0x4735d9={'canHandle':_0x28d59d=>_0x31060a(_0x28d59d)&&_0x4a9279 in _0x28d59d,'serialize'({value:_0x414b37}){let _0x31ef1d;return _0x414b37 instanceof Error?_0x31ef1d={'isError':!![],'value':{'message':_0x414b37['message'],'name':_0x414b37['name'],'stack':_0x414b37['stack']}}:_0x31ef1d={'isError':![],'value':_0x414b37},[_0x31ef1d,[]];},'deserialize'(_0x59a671){if(_0x59a671['isError'])throw Object['assign'](new Error(_0x59a671['value']['message']),_0x59a671['value']);throw _0x59a671['value'];}},_0x319dec=new Map([['proxy',_0x50b305],['throw',_0x4735d9]]);function _0x55ab82(_0x5d3d10,_0x1e90be){for(const _0x5c3e28 of _0x5d3d10){if(_0x1e90be===_0x5c3e28||_0x5c3e28==='*')return!![];if(_0x5c3e28 instanceof RegExp&&_0x5c3e28['test'](_0x1e90be))return!![];}return![];}function _0x1e7314(_0x1aa69c,_0x2f3631=globalThis,_0x523b2f=['*']){_0x2f3631['addEventListener']('message',function _0xa698c8(_0x2df6c2){if(!_0x2df6c2||!_0x2df6c2['data'])return;if(!_0x55ab82(_0x523b2f,_0x2df6c2['origin'])){console['warn']('Invalid\x20origin\x20\x27'+_0x2df6c2['origin']+'\x27\x20for\x20comlink\x20proxy');return;}const {id:_0x34b7f6,type:_0x1a829f,path:_0x27ca65}=Object['assign']({'path':[]},_0x2df6c2['data']),_0x1e9a6c=(_0x2df6c2['data']['argumentList']||[])['map'](_0x22d51d);let _0x147c44;try{const _0x18ab41=_0x27ca65['slice'](0x0,-0x1)['reduce']((_0x118984,_0x599f79)=>_0x118984[_0x599f79],_0x1aa69c),_0x2d927d=_0x27ca65['reduce']((_0x465e21,_0x4e6214)=>_0x465e21[_0x4e6214],_0x1aa69c);switch(_0x1a829f){case'GET':{_0x147c44=_0x2d927d;}break;case'SET':{_0x18ab41[_0x27ca65['slice'](-0x1)[0x0]]=_0x22d51d(_0x2df6c2['data']['value']),_0x147c44=!![];}break;case'APPLY':{_0x147c44=_0x2d927d['apply'](_0x18ab41,_0x1e9a6c);}break;case'CONSTRUCT':{const _0x10b69a=new _0x2d927d(..._0x1e9a6c);_0x147c44=_0x5d3b4c(_0x10b69a);}break;case'ENDPOINT':{const {port1:_0x298ae0,port2:_0x3da751}=new MessageChannel();_0x1e7314(_0x1aa69c,_0x3da751),_0x147c44=_0x4a11a0(_0x298ae0,[_0x298ae0]);}break;case'RELEASE':{_0x147c44=undefined;}break;default:return;}}catch(_0x27bdc8){_0x147c44={'value':_0x27bdc8,[_0x4a9279]:0x0};}Promise['resolve'](_0x147c44)['catch'](_0x446db8=>{return{'value':_0x446db8,[_0x4a9279]:0x0};})['then'](_0x4c5529=>{const [_0x5b971b,_0x2b88aa]=_0x3483f7(_0x4c5529);_0x2f3631['postMessage'](Object['assign'](Object['assign']({},_0x5b971b),{'id':_0x34b7f6}),_0x2b88aa),_0x1a829f==='RELEASE'&&(_0x2f3631['removeEventListener']('message',_0xa698c8),_0x44b7c7(_0x2f3631),_0x180d06 in _0x1aa69c&&typeof _0x1aa69c[_0x180d06]==='function'&&_0x1aa69c[_0x180d06]());})['catch'](_0x21b830=>{const [_0x3af45f,_0x382d17]=_0x3483f7({'value':new TypeError('Unserializable\x20return\x20value'),[_0x4a9279]:0x0});_0x2f3631['postMessage'](Object['assign'](Object['assign']({},_0x3af45f),{'id':_0x34b7f6}),_0x382d17);});}),_0x2f3631['start']&&_0x2f3631['start']();}function _0x56061a(_0x93350f){return _0x93350f['constructor']['name']==='MessagePort';}function _0x44b7c7(_0x240361){if(_0x56061a(_0x240361))_0x240361['close']();}function _0xb1c4b3(_0x4d0353,_0xff1b99){return _0x5efe92(_0x4d0353,[],_0xff1b99);}function _0x4779f8(_0x2e9a29){if(_0x2e9a29)throw new Error('Proxy\x20has\x20been\x20released\x20and\x20is\x20not\x20useable');}function _0x30bc89(_0x2c210a){return _0x8bb25e(_0x2c210a,{'type':'RELEASE'})['then'](()=>{_0x44b7c7(_0x2c210a);});}const _0x238024=new WeakMap(),_0x1d1b7c='FinalizationRegistry'in globalThis&&new FinalizationRegistry(_0x37e935=>{const _0x29e407=(_0x238024['get'](_0x37e935)||0x0)-0x1;_0x238024['set'](_0x37e935,_0x29e407),_0x29e407===0x0&&_0x30bc89(_0x37e935);});function _0x19c596(_0xc9e8ef,_0x103fc5){const _0x59299b=(_0x238024['get'](_0x103fc5)||0x0)+0x1;_0x238024['set'](_0x103fc5,_0x59299b),_0x1d1b7c&&_0x1d1b7c['register'](_0xc9e8ef,_0x103fc5,_0xc9e8ef);}function _0x23e02f(_0x22495c){_0x1d1b7c&&_0x1d1b7c['unregister'](_0x22495c);}function _0x5efe92(_0x4d81bc,_0xba04da=[],_0x4d7d9c=function(){}){let _0xe53c77=![];const _0x482974=new Proxy(_0x4d7d9c,{'get'(_0x2c51f0,_0x54c8f6){_0x4779f8(_0xe53c77);if(_0x54c8f6===_0x591711)return()=>{_0x23e02f(_0x482974),_0x30bc89(_0x4d81bc),_0xe53c77=!![];};if(_0x54c8f6==='then'){if(_0xba04da['length']===0x0)return{'then':()=>_0x482974};const _0x2b3749=_0x8bb25e(_0x4d81bc,{'type':'GET','path':_0xba04da['map'](_0x37ab79=>_0x37ab79['toString']())})['then'](_0x22d51d);return _0x2b3749['then']['bind'](_0x2b3749);}return _0x5efe92(_0x4d81bc,[..._0xba04da,_0x54c8f6]);},'set'(_0x567f4a,_0x2083b4,_0x366592){_0x4779f8(_0xe53c77);const [_0x156002,_0x5df540]=_0x3483f7(_0x366592);return _0x8bb25e(_0x4d81bc,{'type':'SET','path':[..._0xba04da,_0x2083b4]['map'](_0x4bfe4f=>_0x4bfe4f['toString']()),'value':_0x156002},_0x5df540)['then'](_0x22d51d);},'apply'(_0xd1d2d7,_0x5626d0,_0xd82a50){_0x4779f8(_0xe53c77);const _0x289f47=_0xba04da[_0xba04da['length']-0x1];if(_0x289f47===_0x1a3890)return _0x8bb25e(_0x4d81bc,{'type':'ENDPOINT'})['then'](_0x22d51d);if(_0x289f47==='bind')return _0x5efe92(_0x4d81bc,_0xba04da['slice'](0x0,-0x1));const [_0x16d2e6,_0x307143]=_0x307d82(_0xd82a50);return _0x8bb25e(_0x4d81bc,{'type':'APPLY','path':_0xba04da['map'](_0x1c3ce7=>_0x1c3ce7['toString']()),'argumentList':_0x16d2e6},_0x307143)['then'](_0x22d51d);},'construct'(_0x184f30,_0x2c4431){_0x4779f8(_0xe53c77);const [_0x22aec1,_0x204f98]=_0x307d82(_0x2c4431);return _0x8bb25e(_0x4d81bc,{'type':'CONSTRUCT','path':_0xba04da['map'](_0x410167=>_0x410167['toString']()),'argumentList':_0x22aec1},_0x204f98)['then'](_0x22d51d);}});return _0x19c596(_0x482974,_0x4d81bc),_0x482974;}function _0x5b897b(_0x1021c5){return Array['prototype']['concat']['apply']([],_0x1021c5);}function _0x307d82(_0x341d5a){const _0x46d9d8=_0x341d5a['map'](_0x3483f7);return[_0x46d9d8['map'](_0x4d5a46=>_0x4d5a46[0x0]),_0x5b897b(_0x46d9d8['map'](_0x4b8e2f=>_0x4b8e2f[0x1]))];}const _0x328fda=new WeakMap();function _0x4a11a0(_0x1cc937,_0x2d9c4a){return _0x328fda['set'](_0x1cc937,_0x2d9c4a),_0x1cc937;}function _0x5d3b4c(_0x3a8ad5){return Object['assign'](_0x3a8ad5,{[_0x13450f]:!![]});}function _0x5ed18a(_0x30960f,_0x30eaea=globalThis,_0xb69e0a='*'){return{'postMessage':(_0x43aa6e,_0x33c278)=>_0x30960f['postMessage'](_0x43aa6e,_0xb69e0a,_0x33c278),'addEventListener':_0x30eaea['addEventListener']['bind'](_0x30eaea),'removeEventListener':_0x30eaea['removeEventListener']['bind'](_0x30eaea)};}function _0x3483f7(_0x10a644){for(const [_0x21fc3a,_0x2b830a]of _0x319dec){if(_0x2b830a['canHandle'](_0x10a644)){const [_0x3a5c0a,_0x55092f]=_0x2b830a['serialize'](_0x10a644);return[{'type':'HANDLER','name':_0x21fc3a,'value':_0x3a5c0a},_0x55092f];}}return[{'type':'RAW','value':_0x10a644},_0x328fda['get'](_0x10a644)||[]];}function _0x22d51d(_0x10ef34){switch(_0x10ef34['type']){case'HANDLER':return _0x319dec['get'](_0x10ef34['name'])['deserialize'](_0x10ef34['value']);case'RAW':return _0x10ef34['value'];}}function _0x8bb25e(_0x32c057,_0x162905,_0x5d3948){return new Promise(_0x2bedd4=>{const _0x1f0604=_0x3af8fd();_0x32c057['addEventListener']('message',function _0x5ae9ef(_0x1fb924){if(!_0x1fb924['data']||!_0x1fb924['data']['id']||_0x1fb924['data']['id']!==_0x1f0604)return;_0x32c057['removeEventListener']('message',_0x5ae9ef),_0x2bedd4(_0x1fb924['data']);}),_0x32c057['start']&&_0x32c057['start'](),_0x32c057['postMessage'](Object['assign']({'id':_0x1f0604},_0x162905),_0x5d3948);});}function _0x3af8fd(){return new Array(0x4)['fill'](0x0)['map'](()=>Math['floor'](Math['random']()*Number['MAX_SAFE_INTEGER'])['toString'](0x10))['join']('-');}_0x47438c['createEndpoint']=_0x1a3890,_0x47438c['expose']=_0x1e7314,_0x47438c['finalizer']=_0x180d06,_0x47438c['proxy']=_0x5d3b4c,_0x47438c['proxyMarker']=_0x13450f,_0x47438c['releaseProxy']=_0x591711,_0x47438c['transfer']=_0x4a11a0,_0x47438c['transferHandlers']=_0x319dec,_0x47438c['windowEndpoint']=_0x5ed18a,_0x47438c['wrap']=_0xb1c4b3;}));