mahal_map 1.0.5 → 1.0.7
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/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -5
- package/dist/mahal_map.sdk.js +0 -1
package/dist/index.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
'use strict';var a0_0x19b696=a0_0x26db;(function(_0x575685,_0x49acb5){var _0xfd9a37=a0_0x26db,_0x117b78=_0x575685();while(!![]){try{var _0x4c6633=-parseInt(_0xfd9a37(0x1fb))/0x1+-parseInt(_0xfd9a37(0x1e5))/0x2+parseInt(_0xfd9a37(0x20b))/0x3*(-parseInt(_0xfd9a37(0x20f))/0x4)+-parseInt(_0xfd9a37(0x1e9))/0x5+parseInt(_0xfd9a37(0x1ce))/0x6*(-parseInt(_0xfd9a37(0x1f6))/0x7)+parseInt(_0xfd9a37(0x1f8))/0x8*(parseInt(_0xfd9a37(0x1d2))/0x9)+parseInt(_0xfd9a37(0x227))/0xa*(parseInt(_0xfd9a37(0x1d3))/0xb);if(_0x4c6633===_0x49acb5)break;else _0x117b78['push'](_0x117b78['shift']());}catch(_0xbe5d65){_0x117b78['push'](_0x117b78['shift']());}}}(a0_0x3374,0x6a0d2));var U=Object[a0_0x19b696(0x21f)],c=Object[a0_0x19b696(0x1f5)],X=Object[a0_0x19b696(0x228)],_=Object['getOwnPropertyNames'],v=Object['getPrototypeOf'],z=Object[a0_0x19b696(0x21a)][a0_0x19b696(0x1d8)],l=(_0x1dd149,_0x386a23)=>{for(var _0x446c53 in _0x386a23)c(_0x1dd149,_0x446c53,{'get':_0x386a23[_0x446c53],'enumerable':!0x0});},R=(_0x118d07,_0xfab30a,_0x23dca7,_0x586d92)=>{var _0x31164b=a0_0x19b696,_0x49e0fc={'MJcqN':'object','OdpNj':function(_0x13fab4,_0xb101c1){return _0x13fab4==_0xb101c1;},'nhbKW':'function','jKVAG':function(_0x35465f,_0x1fe860){return _0x35465f!==_0x1fe860;},'izjCs':function(_0x6063ee,_0x40b7a4,_0x4cb2a1,_0x127995){return _0x6063ee(_0x40b7a4,_0x4cb2a1,_0x127995);},'ndCoa':function(_0x1204a6,_0x37b5a4,_0x533f3c){return _0x1204a6(_0x37b5a4,_0x533f3c);}};if(_0xfab30a&&typeof _0xfab30a==_0x49e0fc[_0x31164b(0x1ea)]||_0x49e0fc[_0x31164b(0x1a1)](typeof _0xfab30a,_0x49e0fc[_0x31164b(0x1bf)])){for(let _0x2ea86d of _(_0xfab30a))!z['call'](_0x118d07,_0x2ea86d)&&_0x49e0fc[_0x31164b(0x1b9)](_0x2ea86d,_0x23dca7)&&_0x49e0fc['izjCs'](c,_0x118d07,_0x2ea86d,{'get':()=>_0xfab30a[_0x2ea86d],'enumerable':!(_0x586d92=_0x49e0fc['ndCoa'](X,_0xfab30a,_0x2ea86d))||_0x586d92[_0x31164b(0x210)]});}return _0x118d07;},A=(_0x2550d7,_0x2fa2e3,_0x72c2ce)=>(_0x72c2ce=_0x2550d7!=null?U(v(_0x2550d7)):{},R(_0x2fa2e3||!_0x2550d7||!_0x2550d7[a0_0x19b696(0x1c8)]?c(_0x72c2ce,a0_0x19b696(0x1a7),{'value':_0x2550d7,'enumerable':!0x0}):_0x72c2ce,_0x2550d7)),B=_0x2d38f5=>R(c({},'__esModule',{'value':!0x0}),_0x2d38f5),J={};l(J,{'Map':()=>u,'default':()=>F,'keyUtils':()=>f,'routerUtils':()=>h,'searchUtils':()=>d}),module[a0_0x19b696(0x207)]=B(J);var u={};l(u,{'createMap':()=>O});var L=a0_0x19b696(0x1c2),g=/^([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?)),\s*([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?))$/,y=/^([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?)),\s*([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?))$/,b=/^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/,w=a0_0x19b696(0x20a),M=a0_0x19b696(0x224),T='https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json';function P(_0x460e54){var _0x419b6e=a0_0x19b696,_0x4b89d9={'NTaAW':function(_0x4f48cb,_0x332407){return _0x4f48cb-_0x332407;},'trqpN':function(_0x73d4bd,_0x146733){return _0x73d4bd>=_0x146733;},'laboG':function(_0x251949,_0x2be14f){return _0x251949&_0x2be14f;},'vgVKy':function(_0x29a14a,_0x412225){return _0x29a14a>>_0x412225;},'wpFrC':function(_0x3c47f8,_0xd062c4){return _0x3c47f8-_0xd062c4;},'MrocK':function(_0x7f9001,_0x10be26){return _0x7f9001<<_0x10be26;},'UbPVy':function(_0x348bcd,_0xd9b63e){return _0x348bcd>=_0xd9b63e;},'NADtW':function(_0x51cad6,_0x41590f){return _0x51cad6&_0x41590f;},'vYeNY':function(_0x331e86,_0x237f8f){return _0x331e86>>_0x237f8f;},'LrOQN':function(_0x383c13,_0x78598d){return _0x383c13>>_0x78598d;},'MTlYo':function(_0x826444,_0x266ee9){return _0x826444*_0x266ee9;}};let _0x524e39=[],_0x5d874d=0x0,_0x48bd0a=_0x460e54['length'],_0x471196=0x0,_0x342c52=0x0;for(;_0x5d874d<_0x48bd0a;){let _0x1ff068,_0x1e520b=0x0,_0x370a8d=0x0;do _0x1ff068=_0x4b89d9[_0x419b6e(0x19e)](_0x460e54[_0x419b6e(0x1ba)](_0x5d874d++),0x3f),_0x370a8d|=(_0x1ff068&0x1f)<<_0x1e520b,_0x1e520b+=0x5;while(_0x4b89d9['trqpN'](_0x1ff068,0x20));let _0xe5aedf=_0x4b89d9[_0x419b6e(0x1ff)](_0x370a8d,0x1)?~_0x4b89d9[_0x419b6e(0x1af)](_0x370a8d,0x1):_0x4b89d9['vgVKy'](_0x370a8d,0x1);_0x471196+=_0xe5aedf,_0x1e520b=0x0,_0x370a8d=0x0;do _0x1ff068=_0x4b89d9['wpFrC'](_0x460e54['charCodeAt'](_0x5d874d++),0x3f),_0x370a8d|=_0x4b89d9[_0x419b6e(0x1e8)](_0x4b89d9['laboG'](_0x1ff068,0x1f),_0x1e520b),_0x1e520b+=0x5;while(_0x4b89d9[_0x419b6e(0x1cb)](_0x1ff068,0x20));let _0x5b3971=_0x4b89d9['NADtW'](_0x370a8d,0x1)?~_0x4b89d9['vYeNY'](_0x370a8d,0x1):_0x4b89d9[_0x419b6e(0x1b4)](_0x370a8d,0x1);_0x342c52+=_0x5b3971,_0x524e39[_0x419b6e(0x1a5)]([_0x4b89d9[_0x419b6e(0x1ec)](_0x342c52,0.00001),_0x4b89d9[_0x419b6e(0x1ec)](_0x471196,0.00001)]);}return _0x524e39;}var G=A(require(a0_0x19b696(0x204))),j={'dark':w,'light':M};function O(_0x58fb6b){var _0x345f4c=a0_0x19b696,_0x5088d0={'UwjQD':function(_0x150fb2,_0xbdc200){return _0x150fb2===_0xbdc200;},'wsluW':_0x345f4c(0x1b5),'mXwNt':_0x345f4c(0x1fc)};let _0x189dc7;return _0x58fb6b['autoAddVectorSource']?_0x189dc7=T:_0x189dc7=_0x58fb6b[_0x345f4c(0x1f0)]?_0x58fb6b['style']:_0x5088d0['UwjQD'](_0x58fb6b[_0x345f4c(0x1bc)],_0x5088d0[_0x345f4c(0x1c9)])?j[_0x345f4c(0x1b5)]:j[_0x345f4c(0x21e)],new G[(_0x345f4c(0x1a7))]['Map']({'container':_0x58fb6b[_0x345f4c(0x1b8)]||_0x5088d0[_0x345f4c(0x1c5)],'style':_0x189dc7,'center':_0x58fb6b[_0x345f4c(0x1cf)]||[69.624024,40.279687],'zoom':_0x58fb6b[_0x345f4c(0x1d1)]||0x5});}var f={};l(f,{'clearKey':()=>x,'getApiKey':()=>D,'saveKey':()=>$});var I=A(require(a0_0x19b696(0x1cc))),i=I[a0_0x19b696(0x1a7)][a0_0x19b696(0x21f)]({'baseURL':L});i[a0_0x19b696(0x19c)][a0_0x19b696(0x218)][a0_0x19b696(0x201)](_0x50f946=>_0x50f946,_0x2c197e=>(_0x2c197e[a0_0x19b696(0x218)]?.[a0_0x19b696(0x203)]===0x191&&x(),Promise[a0_0x19b696(0x1ca)](_0x2c197e)));function S(_0x330135){var _0x2aec59=a0_0x19b696,_0x52950e={'WtdWm':_0x2aec59(0x1f2)};let _0x445b75,_0x3e5b7d;if(g[_0x2aec59(0x1c4)](_0x330135)){let _0x3f159b=_0x330135[_0x2aec59(0x1ab)](g);_0x3f159b&&([,_0x445b75,_0x3e5b7d]=_0x3f159b);}else{if(y['test'](_0x330135)){let _0x4c3c97=_0x330135[_0x2aec59(0x1ab)](y);_0x4c3c97&&([,_0x3e5b7d,_0x445b75]=_0x4c3c97);}else return console[_0x2aec59(0x214)](_0x52950e['WtdWm']),null;}return{'lat':_0x445b75,'lng':_0x3e5b7d};}var E='';function $(_0x43febe){var _0x5d0c0d=a0_0x19b696;_0x43febe!==''&&(E=_0x43febe,i['defaults'][_0x5d0c0d(0x223)][_0x5d0c0d(0x1e7)][_0x5d0c0d(0x221)]=_0x5d0c0d(0x1aa)+_0x43febe);}function x(){var _0x49be0d=a0_0x19b696,_0x41a9cf={'cUbGw':function(_0x115688,_0x5bda12){return _0x115688!==_0x5bda12;},'RbsGI':_0x49be0d(0x21d),'zIzNa':_0x49be0d(0x212),'jdccy':_0x49be0d(0x1e6),'dRVcA':function(_0x1acae2,_0x387145){return _0x1acae2(_0x387145);},'qIBVm':function(_0x1c9c27,_0x159168){return _0x1c9c27+_0x159168;},'tRiap':_0x49be0d(0x214),'cVcYo':_0x49be0d(0x19f),'SOALy':_0x49be0d(0x200),'KGMCb':_0x49be0d(0x1bb),'AkBfA':_0x49be0d(0x1ac),'qFiPB':'trace','uLNzS':function(_0x39d52b){return _0x39d52b();}},_0x29086a=(function(){var _0x2e2f9f={'rOnMX':function(_0x47b183,_0x341666){return _0x41a9cf['cUbGw'](_0x47b183,_0x341666);},'VApRN':_0x41a9cf['RbsGI']},_0x4e645d=!![];return function(_0xa63ad2,_0xef9ea0){var _0x60b2f=_0x4e645d?function(){var _0x5ecfbc=a0_0x26db;if(_0x2e2f9f['rOnMX'](_0x2e2f9f['VApRN'],_0x5ecfbc(0x19d))){if(_0xef9ea0){var _0x27ac7c=_0xef9ea0[_0x5ecfbc(0x1a8)](_0xa63ad2,arguments);return _0xef9ea0=null,_0x27ac7c;}}else{var _0x30cbab=_0x239c9d[_0x5ecfbc(0x1a8)](_0x2cd982,arguments);return _0x2f3649=null,_0x30cbab;}}:function(){};return _0x4e645d=![],_0x60b2f;};}()),_0x2f257d=_0x29086a(this,function(){var _0x523af8=_0x49be0d,_0x5f2761={'AUisJ':_0x41a9cf['zIzNa'],'LokLy':_0x41a9cf['jdccy'],'LDABd':function(_0x59d186,_0x4d78a5){var _0x569576=a0_0x26db;return _0x41a9cf[_0x569576(0x1ed)](_0x59d186,_0x4d78a5);},'QJmgQ':function(_0x49174a,_0x2d9650){var _0x4f93b8=a0_0x26db;return _0x41a9cf[_0x4f93b8(0x216)](_0x49174a,_0x2d9650);}};if(_0x523af8(0x1ee)!==_0x523af8(0x1a6)){var _0x518264=function(){var _0x52dc3a=_0x523af8,_0x4fab6a={'cyoqi':_0x5f2761['AUisJ']};if(_0x5f2761[_0x52dc3a(0x1d9)]===_0x5f2761[_0x52dc3a(0x1d9)]){var _0x152f85;try{_0x152f85=_0x5f2761['LDABd'](Function,_0x5f2761['QJmgQ'](_0x52dc3a(0x1c0),_0x52dc3a(0x222))+');')();}catch(_0x4982ce){_0x152f85=window;}return _0x152f85;}else{let _0x198a5c=new _0x400328(_0x242142[_0x52dc3a(0x1cd)])[_0x52dc3a(0x1dd)][_0x52dc3a(0x1e2)](_0x4fab6a[_0x52dc3a(0x21b)]);if(_0x198a5c)return _0x198a5c;}},_0x21d06c=_0x518264(),_0x1fa191=_0x21d06c[_0x523af8(0x1c7)]=_0x21d06c[_0x523af8(0x1c7)]||{},_0x131d27=[_0x41a9cf[_0x523af8(0x225)],_0x41a9cf[_0x523af8(0x1c3)],_0x41a9cf['SOALy'],_0x41a9cf[_0x523af8(0x1a2)],_0x523af8(0x1b2),_0x41a9cf[_0x523af8(0x1d5)],_0x41a9cf['qFiPB']];for(var _0x58a323=0x0;_0x58a323<_0x131d27[_0x523af8(0x1a0)];_0x58a323++){var _0x3293db=_0x29086a[_0x523af8(0x1d4)][_0x523af8(0x21a)][_0x523af8(0x20c)](_0x29086a),_0x486741=_0x131d27[_0x58a323],_0x1ebc1a=_0x1fa191[_0x486741]||_0x3293db;_0x3293db[_0x523af8(0x226)]=_0x29086a[_0x523af8(0x20c)](_0x29086a),_0x3293db['toString']=_0x1ebc1a[_0x523af8(0x1bd)][_0x523af8(0x20c)](_0x1ebc1a),_0x1fa191[_0x486741]=_0x3293db;}}else{if(_0x550497){var _0x594b5e=_0x5003b3[_0x523af8(0x1a8)](_0x286881,arguments);return _0xdf1db0=null,_0x594b5e;}}});_0x41a9cf[_0x49be0d(0x1e0)](_0x2f257d),(E='',i[_0x49be0d(0x1c1)]['headers'][_0x49be0d(0x1e7)][_0x49be0d(0x221)]='');}var D=()=>E,d={};l(d,{'search':()=>V});function a0_0x3374(){var _0x1cdb39=['zoom','261wvyOcW','781fUdOoO','constructor','AkBfA','includes','call','hasOwnProperty','LokLy','services/getRoutes','data','pwNrK','searchParams','QauDO','NOhcU','uLNzS','EoqXl','get','MAedm','yopDv','304872MYsQHq','bSHEv','common','MrocK','4066770GdWjRg','MJcqN','object','MTlYo','dRVcA','ybUii','function','style','Ошибка\x20при\x20выполнении\x20поиска:','Неверный\x20формат\x20координат','routes','text','defineProperty','181538vFVOky','getElementsByTagName','81368SKIVpA','QcDlp','jeowh','472471FMEzUN','map','lng','post','laboG','info','use','UFWvM','status','maplibre-gl','dhYZf','geojson','exports','Ошибка\x20при\x20поиске\x20адреса:','string','https://mtile.gram.tj/custom-styles/dark-style.json','162fKyCOI','bind','Sezka','eaQUL','20356YrDzlP','enumerable','elastic/search','apikey','BeCEM','log','MqDAg','qIBVm','ceyvg','request','GQZID','prototype','cyoqi','eEplL','GcXXk','light','create','JPUbp','Authorization','{}.constructor(\x22return\x20this\x22)(\x20)','headers','https://mtile.gram.tj/custom-styles/mapstyle.json','tRiap','__proto__','268220QkeEus','getOwnPropertyDescriptor','odraq','interceptors','SLCbj','NTaAW','warn','length','OdpNj','KGMCb','forEach','route','push','UCeCY','default','apply','QseDt','Bearer\x20','match','table','geometry','split','vgVKy','ZUyfn','script','exception','nqvaW','LrOQN','dark','1|0|3|4|5|2','iZoWl','container','jKVAG','charCodeAt','error','theme','toString','tCGHI','nhbKW','return\x20(function()\x20','defaults','https://platform.mahal.tj/api/','cVcYo','test','mXwNt','RXina','console','__esModule','wsluW','reject','UbPVy','axios','src','12YHeDlI','center','uFlcF'];a0_0x3374=function(){return _0x1cdb39;};return a0_0x3374();}var C=async _0x5dc9af=>{var _0x2d8cce=a0_0x19b696,_0x1a123f={'rCHYn':function(_0x26007,_0xc7bf97){return _0x26007!==_0xc7bf97;},'MAedm':_0x2d8cce(0x21c),'GQZID':_0x2d8cce(0x211),'QauDO':_0x2d8cce(0x208)};try{if(_0x1a123f['rCHYn'](_0x1a123f[_0x2d8cce(0x1e3)],_0x2d8cce(0x21c))){let _0x2f9484=_0x43a995[_0x2d8cce(0x1ab)](_0x1bbf71);_0x2f9484&&([,_0x429297,_0x40c4cb]=_0x2f9484);}else{let _0x18c212={'params':_0x5dc9af};return(await i[_0x2d8cce(0x1e2)](_0x1a123f[_0x2d8cce(0x219)],_0x18c212))['data'];}}catch(_0x54d605){throw console[_0x2d8cce(0x1bb)](_0x1a123f[_0x2d8cce(0x1de)],_0x54d605),_0x54d605;}};async function V(_0x342ed2,_0x2a0182){var _0x53bf9d=a0_0x19b696,_0x4dead4={'MqDAg':_0x53bf9d(0x1b6),'ceyvg':function(_0x427be7,_0x4bf80e){return _0x427be7!==_0x4bf80e;},'NoNGP':_0x53bf9d(0x1d0),'odraq':function(_0x5a3df4,_0x31a145){return _0x5a3df4(_0x31a145);},'JPUbp':_0x53bf9d(0x1c6),'dhYZf':function(_0x4c10fc,_0x227c5c){return _0x4c10fc(_0x227c5c);}};let _0xac4b94={'text':'',..._0x2a0182};if(_0x342ed2!==''){if(b[_0x53bf9d(0x1c4)](_0x342ed2)){if(_0x4dead4[_0x53bf9d(0x217)](_0x53bf9d(0x1d0),_0x4dead4['NoNGP'])){var _0x226a63=_0x4dead4[_0x53bf9d(0x215)][_0x53bf9d(0x1ae)]('|'),_0x17062f=0x0;while(!![]){switch(_0x226a63[_0x17062f++]){case'0':var _0x4c4346=_0x345b23[_0x25497f];continue;case'1':var _0x10d9c6=_0x51022f[_0x53bf9d(0x1d4)][_0x53bf9d(0x21a)]['bind'](_0x3a6d3e);continue;case'2':_0x200069[_0x4c4346]=_0x10d9c6;continue;case'3':var _0x338c57=_0x16848d[_0x4c4346]||_0x10d9c6;continue;case'4':_0x10d9c6[_0x53bf9d(0x226)]=_0x1ad598[_0x53bf9d(0x20c)](_0x2bc526);continue;case'5':_0x10d9c6[_0x53bf9d(0x1bd)]=_0x338c57[_0x53bf9d(0x1bd)]['bind'](_0x338c57);continue;}break;}}else{let _0x504017=await _0x4dead4[_0x53bf9d(0x19b)](S,_0x342ed2);_0x504017&&(_0xac4b94={'lat':_0x504017['lat']??'','lng':_0x504017[_0x53bf9d(0x1fd)]??''});}}else _0xac4b94[_0x53bf9d(0x1f4)]=_0x342ed2;}else _0xac4b94['text']='';try{if(_0x4dead4[_0x53bf9d(0x217)](_0x4dead4[_0x53bf9d(0x220)],_0x4dead4[_0x53bf9d(0x220)])){var _0x9ecd6b=_0x2d49?function(){var _0x3e2d35=_0x53bf9d;if(_0x3313f8){var _0x3417d0=_0x1497c2[_0x3e2d35(0x1a8)](_0x5b83f8,arguments);return _0x373350=null,_0x3417d0;}}:function(){};return _0x250f6f=![],_0x9ecd6b;}else return await _0x4dead4[_0x53bf9d(0x205)](C,_0xac4b94);}catch(_0x1bfdf3){throw console['error'](_0x53bf9d(0x1f1),_0x1bfdf3),_0x1bfdf3;}}var h={};function a0_0x26db(_0x96df00,_0x2385aa){var _0x657dcf=a0_0x3374();return a0_0x26db=function(_0xa714,_0x56a44f){_0xa714=_0xa714-0x19b;var _0x35a940=_0x657dcf[_0xa714];return _0x35a940;},a0_0x26db(_0x96df00,_0x2385aa);}l(h,{'getrouter':()=>q});var k=async _0x4e5875=>{var _0x48f76d=a0_0x19b696,_0x24603a={'EoqXl':_0x48f76d(0x1da)};try{let _0x207a1a=[];return _0x4e5875[_0x48f76d(0x1a3)](_0x194d9e=>{_0x207a1a['push']({'lng':_0x194d9e[0x0],'lat':_0x194d9e[0x1]});}),(await i[_0x48f76d(0x1fe)](_0x24603a[_0x48f76d(0x1e1)],{'points':_0x207a1a}))[_0x48f76d(0x1db)];}catch(_0x3de7b1){throw console['error'](_0x3de7b1),_0x3de7b1;}};async function q(_0x36af55,_0x31fe6b){var _0x59a103=a0_0x19b696,_0x393900={'BeCEM':_0x59a103(0x1eb),'cgsQv':function(_0x5dee94,_0x1e54fd){return _0x5dee94==_0x1e54fd;},'Sezka':_0x59a103(0x1ef),'jeowh':function(_0x33f850,_0x139c69){return _0x33f850(_0x139c69);},'tCGHI':function(_0x5e6663,_0x657e60){return _0x5e6663!==_0x657e60;},'NOhcU':function(_0x86fe6e,_0x16eb40,_0x24ca87,_0x3b4237){return _0x86fe6e(_0x16eb40,_0x24ca87,_0x3b4237);},'pBEek':function(_0x558c7a,_0x1f29f2,_0x1f907a){return _0x558c7a(_0x1f29f2,_0x1f907a);},'QseDt':function(_0x24c141,_0x16dfcd){return _0x24c141(_0x16dfcd);},'pwNrK':function(_0xf6b7b6,_0x591bf7){return _0xf6b7b6+_0x591bf7;},'eaQUL':_0x59a103(0x1c0),'QcDlp':'{}.constructor(\x22return\x20this\x22)(\x20)','UFWvM':function(_0x30e68f,_0x8ccdb){return _0x30e68f===_0x8ccdb;},'UbNpP':'jINzD','yQbvg':_0x59a103(0x1b0),'nqvaW':_0x59a103(0x1e4)};try{if(_0x393900[_0x59a103(0x202)](_0x393900['UbNpP'],_0x393900['yQbvg'])){if(_0x3a86d1&&typeof _0x101993==_0x393900[_0x59a103(0x213)]||_0x393900['cgsQv'](typeof _0x56a16f,_0x393900[_0x59a103(0x20d)])){for(let _0x18d6bd of _0x393900[_0x59a103(0x1fa)](_0x535527,_0xa87b7d))!_0x553c6c[_0x59a103(0x1d7)](_0x5262cb,_0x18d6bd)&&_0x393900[_0x59a103(0x1be)](_0x18d6bd,_0x20a8fe)&&_0x393900[_0x59a103(0x1df)](_0x409c93,_0x299102,_0x18d6bd,{'get':()=>_0x2b733e[_0x18d6bd],'enumerable':!(_0x4d00b7=_0x393900['pBEek'](_0x1b5c12,_0x2095ed,_0x18d6bd))||_0x2d0021[_0x59a103(0x210)]});}return _0x10b042;}else{let _0x37c395=await _0x393900[_0x59a103(0x1fa)](k,_0x36af55);return _0x37c395?.[_0x59a103(0x1db)]?_0x37c395['data'][_0x59a103(0x1fc)](_0x53493b=>{var _0x593314=_0x59a103;let _0x24e975={..._0x53493b};return _0x24e975[_0x593314(0x1a4)]?.['routes']?.[_0x593314(0x1a0)]&&(_0x24e975[_0x593314(0x1a4)]['routes']=_0x24e975[_0x593314(0x1a4)][_0x593314(0x1f3)][_0x593314(0x1fc)](_0xcf507c=>({..._0xcf507c,'geometry':_0x31fe6b===_0x593314(0x206)&&typeof _0xcf507c[_0x593314(0x1ad)]==_0x593314(0x209)?P(_0xcf507c['geometry']):_0xcf507c[_0x593314(0x1ad)]}))),_0x24e975;}):_0x37c395;}}catch(_0x5b6fe9){if(_0x393900[_0x59a103(0x1b3)]!==_0x59a103(0x1e4))_0x50618f=FpUhRZ[_0x59a103(0x1a9)](_0x40891f,FpUhRZ['pwNrK'](FpUhRZ[_0x59a103(0x1dc)](FpUhRZ[_0x59a103(0x20e)],FpUhRZ[_0x59a103(0x1f9)]),');'))();else throw console[_0x59a103(0x1bb)](_0x5b6fe9),_0x5b6fe9;}}var H={'Map':u,'keyUtils':f,'searchUtils':d,'routerUtils':h,'loadKeyFromScriptUrl':()=>{var _0x211031=a0_0x19b696,_0x81f56d={'iZoWl':_0x211031(0x212)};let _0x672278=document[_0x211031(0x1f7)](_0x211031(0x1b1));for(let _0x56f5b4 of _0x672278)if(_0x56f5b4['src'][_0x211031(0x1d6)]('mahal_map.umd.js')){let _0x4e9207=new URL(_0x56f5b4['src'])[_0x211031(0x1dd)]['get'](_0x81f56d[_0x211031(0x1b7)]);if(_0x4e9207)return _0x4e9207;}return'';}},F=H;0x0&&(module[a0_0x19b696(0x207)]={'Map':Map,'keyUtils':keyUtils,'routerUtils':routerUtils,'searchUtils':searchUtils});
|
|
1
|
+
"use strict";var X=Object.create;var c=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var z=Object.getPrototypeOf,B=Object.prototype.hasOwnProperty;var p=(t,e)=>{for(var r in e)c(t,r,{get:e[r],enumerable:!0})},R=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of v(e))!B.call(t,a)&&a!==r&&c(t,a,{get:()=>e[a],enumerable:!(o=_(e,a))||o.enumerable});return t};var A=(t,e,r)=>(r=t!=null?X(z(t)):{},R(e||!t||!t.__esModule?c(r,"default",{value:t,enumerable:!0}):r,t)),O=t=>R(c({},"__esModule",{value:!0}),t);var J={};p(J,{Map:()=>u,default:()=>H,keyUtils:()=>f,routerUtils:()=>h,searchUtils:()=>d});module.exports=O(J);var u={};p(u,{createMap:()=>$});var G=A(require("maplibre-gl"));var L="https://platform.mahal.tj/api/",y=/^([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?)),\s*([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?))$/,g=/^([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?)),\s*([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?))$/,b=/^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/,w="https://mtile.gram.tj/custom-styles/dark-style.json",M="https://mtile.gram.tj/custom-styles/mapstyle.json",T="https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json";function P(t){let e=[],r=0,o=t.length,a=0,m=0;for(;r<o;){let s,l=0,n=0;do s=t.charCodeAt(r++)-63,n|=(s&31)<<l,l+=5;while(s>=32);let U=n&1?~(n>>1):n>>1;a+=U,l=0,n=0;do s=t.charCodeAt(r++)-63,n|=(s&31)<<l,l+=5;while(s>=32);let N=n&1?~(n>>1):n>>1;m+=N,e.push([m*1e-5,a*1e-5])}return e}var j={dark:w,light:M};function $(t){let e;return t.autoAddVectorSource?e=T:e=t.style?t.style:t.theme==="dark"?j.dark:j.light,new G.default.Map({container:t.container||"map",style:e,center:t.center||[69.624024,40.279687],zoom:t.zoom||5})}var f={};p(f,{clearKey:()=>x,getApiKey:()=>V,saveKey:()=>D});var I=A(require("axios"));var i=I.default.create({baseURL:L});i.interceptors.request.use(t=>t,t=>(t.request?.status===401&&x(),Promise.reject(t)));function S(t){let e,r;if(y.test(t)){let o=t.match(y);o&&([,e,r]=o)}else if(g.test(t)){let o=t.match(g);o&&([,r,e]=o)}else return console.log("\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u043A\u043E\u043E\u0440\u0434\u0438\u043D\u0430\u0442"),null;return{lat:e,lng:r}}var E="";function D(t){t!==""&&(E=t,i.defaults.headers.common.Authorization=`Bearer ${t}`)}function x(){E="",i.defaults.headers.common.Authorization=""}var V=()=>E;var d={};p(d,{search:()=>q});var C=async t=>{try{let e={params:t};return(await i.get("elastic/search",e)).data}catch(e){throw console.error("\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043F\u043E\u0438\u0441\u043A\u0435 \u0430\u0434\u0440\u0435\u0441\u0430:",e),e}};async function q(t,e){let r={text:"",...e};if(t!=="")if(b.test(t)){let o=await S(t);o&&(r={lat:o.lat??"",lng:o.lng??""})}else r.text=t;else r.text="";try{return await C(r)}catch(o){throw console.error("\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u0438 \u043F\u043E\u0438\u0441\u043A\u0430:",o),o}}var h={};p(h,{getrouter:()=>F});var k=async t=>{try{let e=[];return t.forEach(o=>{e.push({lng:o[0],lat:o[1]})}),(await i.post("services/getRoutes",{points:e})).data}catch(e){throw console.error(e),e}};async function F(t,e){try{let r=await k(t);return r?.data?r.data.map(a=>{let m={...a};return m.route?.routes?.length&&(m.route.routes=m.route.routes.map(s=>({...s,geometry:e==="geojson"&&typeof s.geometry=="string"?P(s.geometry):s.geometry}))),m}):r}catch(r){throw console.error(r),r}}var K={Map:u,keyUtils:f,searchUtils:d,routerUtils:h,loadKeyFromScriptUrl:()=>{let t=document.getElementsByTagName("script");for(let e of t)if(e.src.includes("mahal_map.umd.js")){let o=new URL(e.src).searchParams.get("apikey");if(o)return o}return""}};K.loadKeyFromScriptUrl();var H=K;0&&(module.exports={Map,keyUtils,routerUtils,searchUtils});
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/lib/map/utils.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/checking-coordinates/utils.ts","../src/app/lib/saveKey/utils.ts","../src/lib/search/utils.ts","../src/lib/search/api.ts","../src/lib/routing/utils.ts","../src/lib/routing/api.ts"],"sourcesContent":["import * as Map from \"@lib/map/utils\";\r\nimport * as keyUtils from \"@app/lib/saveKey\";\r\nimport * as searchUtils from \"@lib/search/utils\";\r\nimport * as routerUtils from \"@lib/routing/utils\";\r\n\r\nexport { Map, keyUtils, searchUtils, routerUtils };\r\n\r\nconst MahalMap = {\r\n Map,\r\n keyUtils,\r\n searchUtils,\r\n routerUtils,\r\n loadKeyFromScriptUrl: () => {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.umd.js\")) {\r\n const url = new URL(script.src);\r\n const apikey = url.searchParams.get(\"apikey\");\r\n if (apikey) return apikey;\r\n }\r\n }\r\n return \"\";\r\n },\r\n};\r\n\r\nexport default MahalMap;\r\n","import type { Map as MapType } from \"maplibre-gl\";\r\nimport type { IMahalMapOptions } from \"@app/types\";\r\nimport { DARK, LIGHT, VECTOR } from \"@app/config\";\r\nimport maplibregl from \"maplibre-gl\";\r\n\r\nconst defaultStyles = { dark: DARK, light: LIGHT };\r\n\r\nfunction createMap(options: IMahalMapOptions): MapType {\r\n let finalStyle;\r\n\r\n if (options.autoAddVectorSource) {\r\n finalStyle = VECTOR;\r\n } else {\r\n finalStyle = options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n }\r\n\r\n const map: MapType = new maplibregl.Map({\r\n container: options.container || \"map\",\r\n style: finalStyle as string,\r\n center: options.center || [69.624024, 40.279687],\r\n zoom: options.zoom || 5,\r\n });\r\n\r\n return map;\r\n}\r\n\r\nexport { createMap };\r\n","const BASE_URL = \"https://platform.mahal.tj/api/\";\r\nconst LATLNGREGEX =\r\n /^([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?)),\\s*([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?))$/;\r\nconst LNGLATREGEX =\r\n /^([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?)),\\s*([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?))$/;\r\n\r\nconst REGEX =\r\n /^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?),\\s*[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$/;\r\n\r\nconst DARK = \"https://mtile.gram.tj/custom-styles/dark-style.json\";\r\nconst LIGHT = \"https://mtile.gram.tj/custom-styles/mapstyle.json\";\r\nconst VECTOR =\r\n \"https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json\";\r\n\r\nexport { BASE_URL, LATLNGREGEX, LNGLATREGEX, REGEX, DARK, LIGHT, VECTOR };\r\n","function geojsonPolyline(encoded: string): number[][] {\r\n let points = [];\r\n let index = 0,\r\n len = encoded.length;\r\n let lat = 0,\r\n lng = 0;\r\n\r\n while (index < len) {\r\n let b,\r\n shift = 0,\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlat = result & 1 ? ~(result >> 1) : result >> 1;\r\n lat += dlat;\r\n\r\n shift = 0;\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlng = result & 1 ? ~(result >> 1) : result >> 1;\r\n lng += dlng;\r\n\r\n points.push([lng * 1e-5, lat * 1e-5]);\r\n }\r\n\r\n return points;\r\n}\r\n\r\nexport { geojsonPolyline };\r\n\r\n// Пример использования:\r\n\r\n// geojsonPolyline(\"yzocFzynhVq}@n}@o}@nzD\")\r\n\r\n// Вернёт массив вида [\r\n// [102.0, 0.5],\r\n// [103.0, 1.0],\r\n// [104.0, 0.5],\r\n// [105.0, 0.0]\r\n// ].\r\n","export * from \"./utils\";\r\n","import axios from \"axios\";\r\nimport { BASE_URL } from \"@app/config/index\";\r\nimport { clearKey } from \"@app/lib\";\r\n\r\nexport const api = axios.create({\r\n baseURL: BASE_URL,\r\n});\r\n\r\napi.interceptors.request.use(\r\n (response) => response,\r\n (error) => {\r\n if (error.request?.status === 401) {\r\n clearKey();\r\n }\r\n return Promise.reject(error);\r\n }\r\n);\r\n","import { LATLNGREGEX, LNGLATREGEX } from \"@app/config/index\";\r\n\r\nexport function checkCoordinates(coordinates: string) {\r\n let lat, lng;\r\n if (LATLNGREGEX.test(coordinates)) {\r\n const match = coordinates.match(LATLNGREGEX);\r\n if (match) {\r\n [, lat, lng] = match; // Первый элемент — полное совпадение, пропускаем его\r\n }\r\n } else if (LNGLATREGEX.test(coordinates)) {\r\n const match = coordinates.match(LNGLATREGEX);\r\n if (match) {\r\n [, lng, lat] = match; // Меняем местами\r\n }\r\n } else {\r\n console.log(\"Неверный формат координат\");\r\n return null;\r\n }\r\n return { lat, lng };\r\n}\r\n","import { api } from \"@app/lib\";\r\n\r\nlet apiKey: string = \"\";\r\n\r\nfunction saveKey(param: string) {\r\n if (param === \"\") return;\r\n apiKey = param;\r\n api.defaults.headers.common[\"Authorization\"] = `Bearer ${param}`;\r\n}\r\n\r\nfunction clearKey() {\r\n apiKey = \"\";\r\n api.defaults.headers.common[\"Authorization\"] = \"\";\r\n}\r\n\r\nconst getApiKey = () => apiKey;\r\n\r\nexport { saveKey, clearKey, getApiKey };\r\n","import { searchPost } from \"./api\";\r\nimport { IAdditionalParamType } from \"@app/types/index\";\r\nimport { checkCoordinates } from \"@app/lib/index\";\r\nimport { REGEX } from \"@app/config\";\r\n\r\nasync function search(\r\n param: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<any> {\r\n let searchData: any = {\r\n text: \"\",\r\n ...additionalParam,\r\n };\r\n\r\n if (param !== \"\") {\r\n if (REGEX.test(param)) {\r\n let coordinates = await checkCoordinates(param);\r\n if (coordinates) {\r\n searchData = {\r\n lat: coordinates.lat ?? \"\",\r\n lng: coordinates.lng ?? \"\",\r\n };\r\n }\r\n } else {\r\n searchData.text = param;\r\n }\r\n } else {\r\n searchData.text = \"\";\r\n }\r\n\r\n try {\r\n const res = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n console.error(\"Ошибка при выполнении поиска:\", error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { search };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam } from \"@app/types\";\r\n\r\nexport const searchPost = async (param: ISearchParam) => {\r\n try {\r\n const params = { params: param };\r\n const response = await api.get(\"elastic/search\", params);\r\n return response.data;\r\n } catch (error) {\r\n console.error(\"Ошибка при поиске адреса:\", error);\r\n throw error;\r\n }\r\n};\r\n","import { routingApi } from \"@lib/routing/api\";\r\nimport { geojsonPolyline } from \"@app/config/index\";\r\nimport type { IRoute } from \"@app/types/index\";\r\n\r\nasync function getrouter(\r\n param: number[][],\r\n typeData: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param);\r\n\r\n if (!res?.data) return res;\r\n\r\n const data: IRoute[] = res.data;\r\n\r\n return data.map((route) => {\r\n const updated = { ...route };\r\n\r\n if (updated.route?.routes?.length) {\r\n updated.route.routes = updated.route.routes.map((r) => ({\r\n ...r,\r\n geometry:\r\n typeData === \"geojson\" && typeof r.geometry === \"string\"\r\n ? geojsonPolyline(r.geometry)\r\n : r.geometry,\r\n }));\r\n }\r\n\r\n return updated as IRoute;\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][]) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n param.forEach((e) => {\r\n points.push({ lng: e[0], lat: e[1] });\r\n });\r\n const response = await api.post(\"services/getRoutes\", { points });\r\n return response.data;\r\n } catch (err) {\r\n console.error(err);\r\n throw err;\r\n }\r\n};\r\n\r\nexport { routingApi };\r\n"],"mappings":"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","names":["index_exports","__export","utils_exports","index_default","saveKey_exports","__toCommonJS","utils_exports","__export","createMap","BASE_URL","LATLNGREGEX","LNGLATREGEX","REGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","import_maplibre_gl","defaultStyles","DARK","LIGHT","createMap","options","finalStyle","VECTOR","maplibregl","saveKey_exports","__export","clearKey","getApiKey","saveKey","import_axios","api","axios","BASE_URL","response","error","clearKey","checkCoordinates","coordinates","lat","lng","LATLNGREGEX","match","LNGLATREGEX","apiKey","saveKey","param","api","clearKey","getApiKey","utils_exports","__export","search","searchPost","param","params","api","error","search","param","additionalParam","searchData","REGEX","coordinates","checkCoordinates","searchPost","error","utils_exports","__export","getrouter","routingApi","param","points","e","api","err","getrouter","param","typeData","res","routingApi","route","updated","r","geojsonPolyline","error","MahalMap","utils_exports","saveKey_exports","scripts","script","apikey","index_default"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/lib/map/utils.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/checking-coordinates/utils.ts","../src/app/lib/saveKey/utils.ts","../src/lib/search/utils.ts","../src/lib/search/api.ts","../src/lib/routing/utils.ts","../src/lib/routing/api.ts"],"sourcesContent":["import * as Map from \"@lib/map/utils\";\r\nimport * as keyUtils from \"@app/lib/saveKey\";\r\nimport * as searchUtils from \"@lib/search/utils\";\r\nimport * as routerUtils from \"@lib/routing/utils\";\r\n\r\nexport { Map, keyUtils, searchUtils, routerUtils };\r\n\r\nconst MahalMap = {\r\n Map,\r\n keyUtils,\r\n searchUtils,\r\n routerUtils,\r\n loadKeyFromScriptUrl: () => {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.umd.js\")) {\r\n const url = new URL(script.src);\r\n const apikey = url.searchParams.get(\"apikey\");\r\n if (apikey) return apikey;\r\n }\r\n }\r\n return \"\";\r\n },\r\n};\r\nMahalMap.loadKeyFromScriptUrl();\r\n\r\nexport default MahalMap;\r\n","import type { Map as MapType } from \"maplibre-gl\";\r\nimport maplibregl from \"maplibre-gl\";\r\n// import \"maplibre-gl/dist/maplibre-gl.css\";\r\nimport type { IMahalMapOptions } from \"@app/types\";\r\nimport { DARK, LIGHT, VECTOR } from \"@app/config\";\r\n\r\nconst defaultStyles = { dark: DARK, light: LIGHT };\r\n\r\nfunction createMap(options: IMahalMapOptions): MapType {\r\n let finalStyle;\r\n\r\n if (options.autoAddVectorSource) {\r\n finalStyle = VECTOR;\r\n } else {\r\n finalStyle = options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n }\r\n\r\n const map: MapType = new maplibregl.Map({\r\n container: options.container || \"map\",\r\n style: finalStyle as string,\r\n center: options.center || [69.624024, 40.279687],\r\n zoom: options.zoom || 5,\r\n });\r\n\r\n return map;\r\n}\r\n\r\nexport { createMap };\r\n","const BASE_URL = \"https://platform.mahal.tj/api/\";\r\nconst LATLNGREGEX =\r\n /^([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?)),\\s*([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?))$/;\r\nconst LNGLATREGEX =\r\n /^([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?)),\\s*([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?))$/;\r\n\r\nconst REGEX =\r\n /^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?),\\s*[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$/;\r\n\r\nconst DARK = \"https://mtile.gram.tj/custom-styles/dark-style.json\";\r\nconst LIGHT = \"https://mtile.gram.tj/custom-styles/mapstyle.json\";\r\nconst VECTOR =\r\n \"https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json\";\r\n\r\nexport { BASE_URL, LATLNGREGEX, LNGLATREGEX, REGEX, DARK, LIGHT, VECTOR };\r\n","function geojsonPolyline(encoded: string): number[][] {\r\n let points = [];\r\n let index = 0,\r\n len = encoded.length;\r\n let lat = 0,\r\n lng = 0;\r\n\r\n while (index < len) {\r\n let b,\r\n shift = 0,\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlat = result & 1 ? ~(result >> 1) : result >> 1;\r\n lat += dlat;\r\n\r\n shift = 0;\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlng = result & 1 ? ~(result >> 1) : result >> 1;\r\n lng += dlng;\r\n\r\n points.push([lng * 1e-5, lat * 1e-5]);\r\n }\r\n\r\n return points;\r\n}\r\n\r\nexport { geojsonPolyline };\r\n\r\n// Пример использования:\r\n\r\n// geojsonPolyline(\"yzocFzynhVq}@n}@o}@nzD\")\r\n\r\n// Вернёт массив вида [\r\n// [102.0, 0.5],\r\n// [103.0, 1.0],\r\n// [104.0, 0.5],\r\n// [105.0, 0.0]\r\n// ].\r\n","export * from \"./utils\";\r\n","import axios from \"axios\";\r\nimport { BASE_URL } from \"@app/config/index\";\r\nimport { clearKey } from \"@app/lib\";\r\n\r\nexport const api = axios.create({\r\n baseURL: BASE_URL,\r\n});\r\n\r\napi.interceptors.request.use(\r\n (response) => response,\r\n (error) => {\r\n if (error.request?.status === 401) {\r\n clearKey();\r\n }\r\n return Promise.reject(error);\r\n }\r\n);\r\n","import { LATLNGREGEX, LNGLATREGEX } from \"@app/config/index\";\r\n\r\nexport function checkCoordinates(coordinates: string) {\r\n let lat, lng;\r\n if (LATLNGREGEX.test(coordinates)) {\r\n const match = coordinates.match(LATLNGREGEX);\r\n if (match) {\r\n [, lat, lng] = match; // Первый элемент — полное совпадение, пропускаем его\r\n }\r\n } else if (LNGLATREGEX.test(coordinates)) {\r\n const match = coordinates.match(LNGLATREGEX);\r\n if (match) {\r\n [, lng, lat] = match; // Меняем местами\r\n }\r\n } else {\r\n console.log(\"Неверный формат координат\");\r\n return null;\r\n }\r\n return { lat, lng };\r\n}\r\n","import { api } from \"@app/lib\";\r\n\r\nlet apiKey: string = \"\";\r\n\r\nfunction saveKey(param: string) {\r\n if (param === \"\") return;\r\n apiKey = param;\r\n api.defaults.headers.common[\"Authorization\"] = `Bearer ${param}`;\r\n}\r\n\r\nfunction clearKey() {\r\n apiKey = \"\";\r\n api.defaults.headers.common[\"Authorization\"] = \"\";\r\n}\r\n\r\nconst getApiKey = () => apiKey;\r\n\r\nexport { saveKey, clearKey, getApiKey };\r\n","import { searchPost } from \"./api\";\r\nimport { IAdditionalParamType } from \"@app/types/index\";\r\nimport { checkCoordinates } from \"@app/lib/index\";\r\nimport { REGEX } from \"@app/config\";\r\n\r\nasync function search(\r\n param: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<any> {\r\n let searchData: any = {\r\n text: \"\",\r\n ...additionalParam,\r\n };\r\n\r\n if (param !== \"\") {\r\n if (REGEX.test(param)) {\r\n let coordinates = await checkCoordinates(param);\r\n if (coordinates) {\r\n searchData = {\r\n lat: coordinates.lat ?? \"\",\r\n lng: coordinates.lng ?? \"\",\r\n };\r\n }\r\n } else {\r\n searchData.text = param;\r\n }\r\n } else {\r\n searchData.text = \"\";\r\n }\r\n\r\n try {\r\n const res = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n console.error(\"Ошибка при выполнении поиска:\", error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { search };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam } from \"@app/types\";\r\n\r\nexport const searchPost = async (param: ISearchParam) => {\r\n try {\r\n const params = { params: param };\r\n const response = await api.get(\"elastic/search\", params);\r\n return response.data;\r\n } catch (error) {\r\n console.error(\"Ошибка при поиске адреса:\", error);\r\n throw error;\r\n }\r\n};\r\n","import { routingApi } from \"@lib/routing/api\";\r\nimport { geojsonPolyline } from \"@app/config/index\";\r\nimport type { IRoute } from \"@app/types/index\";\r\n\r\nasync function getrouter(\r\n param: number[][],\r\n typeData: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param);\r\n\r\n if (!res?.data) return res;\r\n\r\n const data: IRoute[] = res.data;\r\n\r\n return data.map((route) => {\r\n const updated = { ...route };\r\n\r\n if (updated.route?.routes?.length) {\r\n updated.route.routes = updated.route.routes.map((r) => ({\r\n ...r,\r\n geometry:\r\n typeData === \"geojson\" && typeof r.geometry === \"string\"\r\n ? geojsonPolyline(r.geometry)\r\n : r.geometry,\r\n }));\r\n }\r\n\r\n return updated as IRoute;\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][]) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n param.forEach((e) => {\r\n points.push({ lng: e[0], lat: e[1] });\r\n });\r\n const response = await api.post(\"services/getRoutes\", { points });\r\n return response.data;\r\n } catch (err) {\r\n console.error(err);\r\n throw err;\r\n }\r\n};\r\n\r\nexport { routingApi };\r\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,SAAAE,EAAA,YAAAC,EAAA,aAAAC,EAAA,gBAAAF,EAAA,gBAAAA,IAAA,eAAAG,EAAAL,GCAA,IAAAM,EAAA,GAAAC,EAAAD,EAAA,eAAAE,IACA,IAAAC,EAAuB,0BCDvB,IAAMC,EAAW,iCACXC,EACJ,iHACIC,EACJ,iHAEIC,EACJ,2FAEIC,EAAO,sDACPC,EAAQ,oDACRC,EACJ,mECZF,SAASC,EAAgBC,EAA6B,CACpD,IAAIC,EAAS,CAAC,EACVC,EAAQ,EACVC,EAAMH,EAAQ,OACZI,EAAM,EACRC,EAAM,EAER,KAAOH,EAAQC,GAAK,CAClB,IAAIG,EACFC,EAAQ,EACRC,EAAS,EACX,GACEF,EAAIN,EAAQ,WAAWE,GAAO,EAAI,GAClCM,IAAWF,EAAI,KAASC,EACxBA,GAAS,QACFD,GAAK,IACd,IAAIG,EAAOD,EAAS,EAAI,EAAEA,GAAU,GAAKA,GAAU,EACnDJ,GAAOK,EAEPF,EAAQ,EACRC,EAAS,EACT,GACEF,EAAIN,EAAQ,WAAWE,GAAO,EAAI,GAClCM,IAAWF,EAAI,KAASC,EACxBA,GAAS,QACFD,GAAK,IACd,IAAII,EAAOF,EAAS,EAAI,EAAEA,GAAU,GAAKA,GAAU,EACnDH,GAAOK,EAEPT,EAAO,KAAK,CAACI,EAAM,KAAMD,EAAM,IAAI,CAAC,CACtC,CAEA,OAAOH,CACT,CF3BA,IAAMU,EAAgB,CAAE,KAAMC,EAAM,MAAOC,CAAM,EAEjD,SAASC,EAAUC,EAAoC,CACrD,IAAIC,EAEJ,OAAID,EAAQ,oBACVC,EAAaC,EAEbD,EAAaD,EAAQ,MACjBA,EAAQ,MACRA,EAAQ,QAAU,OAClBJ,EAAc,KACdA,EAAc,MAGC,IAAI,EAAAO,QAAW,IAAI,CACtC,UAAWH,EAAQ,WAAa,MAChC,MAAOC,EACP,OAAQD,EAAQ,QAAU,CAAC,UAAW,SAAS,EAC/C,KAAMA,EAAQ,MAAQ,CACxB,CAAC,CAGH,CG7BA,IAAAI,EAAA,GAAAC,EAAAD,EAAA,cAAAE,EAAA,cAAAC,EAAA,YAAAC,ICAA,IAAAC,EAAkB,oBAIX,IAAMC,EAAM,EAAAC,QAAM,OAAO,CAC9B,QAASC,CACX,CAAC,EAEDF,EAAI,aAAa,QAAQ,IACtBG,GAAaA,EACbC,IACKA,EAAM,SAAS,SAAW,KAC5BC,EAAS,EAEJ,QAAQ,OAAOD,CAAK,EAE/B,ECdO,SAASE,EAAiBC,EAAqB,CACpD,IAAIC,EAAKC,EACT,GAAIC,EAAY,KAAKH,CAAW,EAAG,CACjC,IAAMI,EAAQJ,EAAY,MAAMG,CAAW,EACvCC,IACF,CAAC,CAAEH,EAAKC,CAAG,EAAIE,EAEnB,SAAWC,EAAY,KAAKL,CAAW,EAAG,CACxC,IAAMI,EAAQJ,EAAY,MAAMK,CAAW,EACvCD,IACF,CAAC,CAAEF,EAAKD,CAAG,EAAIG,EAEnB,KACE,gBAAQ,IAAI,8IAA2B,EAChC,KAET,MAAO,CAAE,IAAAH,EAAK,IAAAC,CAAI,CACpB,CCjBA,IAAII,EAAiB,GAErB,SAASC,EAAQC,EAAe,CAC1BA,IAAU,KACdF,EAASE,EACTC,EAAI,SAAS,QAAQ,OAAO,cAAmB,UAAUD,CAAK,GAChE,CAEA,SAASE,GAAW,CAClBJ,EAAS,GACTG,EAAI,SAAS,QAAQ,OAAO,cAAmB,EACjD,CAEA,IAAME,EAAY,IAAML,ECfxB,IAAAM,EAAA,GAAAC,EAAAD,EAAA,YAAAE,ICGO,IAAMC,EAAa,MAAOC,GAAwB,CACvD,GAAI,CACF,IAAMC,EAAS,CAAE,OAAQD,CAAM,EAE/B,OADiB,MAAME,EAAI,IAAI,iBAAkBD,CAAM,GACvC,IAClB,OAASE,EAAO,CACd,cAAQ,MAAM,qIAA6BA,CAAK,EAC1CA,CACR,CACF,EDPA,eAAeC,EACbC,EACAC,EACc,CACd,IAAIC,EAAkB,CACpB,KAAM,GACN,GAAGD,CACL,EAEA,GAAID,IAAU,GACZ,GAAIG,EAAM,KAAKH,CAAK,EAAG,CACrB,IAAII,EAAc,MAAMC,EAAiBL,CAAK,EAC1CI,IACFF,EAAa,CACX,IAAKE,EAAY,KAAO,GACxB,IAAKA,EAAY,KAAO,EAC1B,EAEJ,MACEF,EAAW,KAAOF,OAGpBE,EAAW,KAAO,GAGpB,GAAI,CAEF,OADY,MAAMI,EAAWJ,CAAU,CAEzC,OAASK,EAAO,CACd,cAAQ,MAAM,6JAAiCA,CAAK,EAC9CA,CACR,CACF,CErCA,IAAAC,EAAA,GAAAC,EAAAD,EAAA,eAAAE,ICEA,IAAMC,EAAa,MAAOC,GAAsB,CAC9C,GAAI,CACF,IAAMC,EAAyC,CAAC,EAChD,OAAAD,EAAM,QAASE,GAAM,CACnBD,EAAO,KAAK,CAAE,IAAKC,EAAE,CAAC,EAAG,IAAKA,EAAE,CAAC,CAAE,CAAC,CACtC,CAAC,GACgB,MAAMC,EAAI,KAAK,qBAAsB,CAAE,OAAAF,CAAO,CAAC,GAChD,IAClB,OAASG,EAAK,CACZ,cAAQ,MAAMA,CAAG,EACXA,CACR,CACF,EDVA,eAAeC,EACbC,EACAC,EACmB,CACnB,GAAI,CACF,IAAMC,EAAM,MAAMC,EAAWH,CAAK,EAElC,OAAKE,GAAK,KAEaA,EAAI,KAEf,IAAKE,GAAU,CACzB,IAAMC,EAAU,CAAE,GAAGD,CAAM,EAE3B,OAAIC,EAAQ,OAAO,QAAQ,SACzBA,EAAQ,MAAM,OAASA,EAAQ,MAAM,OAAO,IAAKC,IAAO,CACtD,GAAGA,EACH,SACEL,IAAa,WAAa,OAAOK,EAAE,UAAa,SAC5CC,EAAgBD,EAAE,QAAQ,EAC1BA,EAAE,QACV,EAAE,GAGGD,CACT,CAAC,EAlBsBH,CAmBzB,OAASM,EAAO,CACd,cAAQ,MAAMA,CAAK,EACbA,CACR,CACF,CV3BA,IAAMC,EAAW,CACf,IAAAC,EACA,SAAAC,EACA,YAAAD,EACA,YAAAA,EACA,qBAAsB,IAAM,CAC1B,IAAME,EAAU,SAAS,qBAAqB,QAAQ,EACtD,QAAWC,KAAUD,EACnB,GAAIC,EAAO,IAAI,SAAS,kBAAkB,EAAG,CAE3C,IAAMC,EADM,IAAI,IAAID,EAAO,GAAG,EACX,aAAa,IAAI,QAAQ,EAC5C,GAAIC,EAAQ,OAAOA,CACrB,CAEF,MAAO,EACT,CACF,EACAL,EAAS,qBAAqB,EAE9B,IAAOM,EAAQN","names":["index_exports","__export","utils_exports","index_default","saveKey_exports","__toCommonJS","utils_exports","__export","createMap","import_maplibre_gl","BASE_URL","LATLNGREGEX","LNGLATREGEX","REGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","createMap","options","finalStyle","VECTOR","maplibregl","saveKey_exports","__export","clearKey","getApiKey","saveKey","import_axios","api","axios","BASE_URL","response","error","clearKey","checkCoordinates","coordinates","lat","lng","LATLNGREGEX","match","LNGLATREGEX","apiKey","saveKey","param","api","clearKey","getApiKey","utils_exports","__export","search","searchPost","param","params","api","error","search","param","additionalParam","searchData","REGEX","coordinates","checkCoordinates","searchPost","error","utils_exports","__export","getrouter","routingApi","param","points","e","api","err","getrouter","param","typeData","res","routingApi","route","updated","r","geojsonPolyline","error","MahalMap","utils_exports","saveKey_exports","scripts","script","apikey","index_default"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var
|
|
1
|
+
var C=Object.defineProperty;var p=(t,e)=>{for(var r in e)C(t,r,{get:e[r],enumerable:!0})};var f={};p(f,{createMap:()=>K});import k from"maplibre-gl";var E="https://platform.mahal.tj/api/",c=/^([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?)),\s*([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?))$/,u=/^([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?)),\s*([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?))$/,R=/^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/,A="https://mtile.gram.tj/custom-styles/dark-style.json",L="https://mtile.gram.tj/custom-styles/mapstyle.json",b="https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json";function w(t){let e=[],r=0,o=t.length,l=0,i=0;for(;r<o;){let s,m=0,a=0;do s=t.charCodeAt(r++)-63,a|=(s&31)<<m,m+=5;while(s>=32);let I=a&1?~(a>>1):a>>1;l+=I,m=0,a=0;do s=t.charCodeAt(r++)-63,a|=(s&31)<<m,m+=5;while(s>=32);let S=a&1?~(a>>1):a>>1;i+=S,e.push([i*1e-5,l*1e-5])}return e}var M={dark:A,light:L};function K(t){let e;return t.autoAddVectorSource?e=b:e=t.style?t.style:t.theme==="dark"?M.dark:M.light,new k.Map({container:t.container||"map",style:e,center:t.center||[69.624024,40.279687],zoom:t.zoom||5})}var y={};p(y,{clearKey:()=>d,getApiKey:()=>X,saveKey:()=>N});import U from"axios";var n=U.create({baseURL:E});n.interceptors.request.use(t=>t,t=>(t.request?.status===401&&d(),Promise.reject(t)));function T(t){let e,r;if(c.test(t)){let o=t.match(c);o&&([,e,r]=o)}else if(u.test(t)){let o=t.match(u);o&&([,r,e]=o)}else return console.log("\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u043A\u043E\u043E\u0440\u0434\u0438\u043D\u0430\u0442"),null;return{lat:e,lng:r}}var h="";function N(t){t!==""&&(h=t,n.defaults.headers.common.Authorization=`Bearer ${t}`)}function d(){h="",n.defaults.headers.common.Authorization=""}var X=()=>h;var g={};p(g,{search:()=>_});var P=async t=>{try{let e={params:t};return(await n.get("elastic/search",e)).data}catch(e){throw console.error("\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043F\u043E\u0438\u0441\u043A\u0435 \u0430\u0434\u0440\u0435\u0441\u0430:",e),e}};async function _(t,e){let r={text:"",...e};if(t!=="")if(R.test(t)){let o=await T(t);o&&(r={lat:o.lat??"",lng:o.lng??""})}else r.text=t;else r.text="";try{return await P(r)}catch(o){throw console.error("\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u0438 \u043F\u043E\u0438\u0441\u043A\u0430:",o),o}}var x={};p(x,{getrouter:()=>v});var j=async t=>{try{let e=[];return t.forEach(o=>{e.push({lng:o[0],lat:o[1]})}),(await n.post("services/getRoutes",{points:e})).data}catch(e){throw console.error(e),e}};async function v(t,e){try{let r=await j(t);return r?.data?r.data.map(l=>{let i={...l};return i.route?.routes?.length&&(i.route.routes=i.route.routes.map(s=>({...s,geometry:e==="geojson"&&typeof s.geometry=="string"?w(s.geometry):s.geometry}))),i}):r}catch(r){throw console.error(r),r}}var G={Map:f,keyUtils:y,searchUtils:g,routerUtils:x,loadKeyFromScriptUrl:()=>{let t=document.getElementsByTagName("script");for(let e of t)if(e.src.includes("mahal_map.umd.js")){let o=new URL(e.src).searchParams.get("apikey");if(o)return o}return""}};G.loadKeyFromScriptUrl();var wt=G;export{f as Map,wt as default,y as keyUtils,x as routerUtils,g as searchUtils};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/map/utils.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/checking-coordinates/utils.ts","../src/app/lib/saveKey/utils.ts","../src/lib/search/utils.ts","../src/lib/search/api.ts","../src/lib/routing/utils.ts","../src/lib/routing/api.ts","../src/index.ts"],"sourcesContent":["import type { Map as MapType } from \"maplibre-gl\";\r\nimport type { IMahalMapOptions } from \"@app/types\";\r\nimport { DARK, LIGHT, VECTOR } from \"@app/config\";\r\nimport maplibregl from \"maplibre-gl\";\r\n\r\nconst defaultStyles = { dark: DARK, light: LIGHT };\r\n\r\nfunction createMap(options: IMahalMapOptions): MapType {\r\n let finalStyle;\r\n\r\n if (options.autoAddVectorSource) {\r\n finalStyle = VECTOR;\r\n } else {\r\n finalStyle = options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n }\r\n\r\n const map: MapType = new maplibregl.Map({\r\n container: options.container || \"map\",\r\n style: finalStyle as string,\r\n center: options.center || [69.624024, 40.279687],\r\n zoom: options.zoom || 5,\r\n });\r\n\r\n return map;\r\n}\r\n\r\nexport { createMap };\r\n","const BASE_URL = \"https://platform.mahal.tj/api/\";\r\nconst LATLNGREGEX =\r\n /^([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?)),\\s*([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?))$/;\r\nconst LNGLATREGEX =\r\n /^([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?)),\\s*([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?))$/;\r\n\r\nconst REGEX =\r\n /^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?),\\s*[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$/;\r\n\r\nconst DARK = \"https://mtile.gram.tj/custom-styles/dark-style.json\";\r\nconst LIGHT = \"https://mtile.gram.tj/custom-styles/mapstyle.json\";\r\nconst VECTOR =\r\n \"https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json\";\r\n\r\nexport { BASE_URL, LATLNGREGEX, LNGLATREGEX, REGEX, DARK, LIGHT, VECTOR };\r\n","function geojsonPolyline(encoded: string): number[][] {\r\n let points = [];\r\n let index = 0,\r\n len = encoded.length;\r\n let lat = 0,\r\n lng = 0;\r\n\r\n while (index < len) {\r\n let b,\r\n shift = 0,\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlat = result & 1 ? ~(result >> 1) : result >> 1;\r\n lat += dlat;\r\n\r\n shift = 0;\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlng = result & 1 ? ~(result >> 1) : result >> 1;\r\n lng += dlng;\r\n\r\n points.push([lng * 1e-5, lat * 1e-5]);\r\n }\r\n\r\n return points;\r\n}\r\n\r\nexport { geojsonPolyline };\r\n\r\n// Пример использования:\r\n\r\n// geojsonPolyline(\"yzocFzynhVq}@n}@o}@nzD\")\r\n\r\n// Вернёт массив вида [\r\n// [102.0, 0.5],\r\n// [103.0, 1.0],\r\n// [104.0, 0.5],\r\n// [105.0, 0.0]\r\n// ].\r\n","export * from \"./utils\";\r\n","import axios from \"axios\";\r\nimport { BASE_URL } from \"@app/config/index\";\r\nimport { clearKey } from \"@app/lib\";\r\n\r\nexport const api = axios.create({\r\n baseURL: BASE_URL,\r\n});\r\n\r\napi.interceptors.request.use(\r\n (response) => response,\r\n (error) => {\r\n if (error.request?.status === 401) {\r\n clearKey();\r\n }\r\n return Promise.reject(error);\r\n }\r\n);\r\n","import { LATLNGREGEX, LNGLATREGEX } from \"@app/config/index\";\r\n\r\nexport function checkCoordinates(coordinates: string) {\r\n let lat, lng;\r\n if (LATLNGREGEX.test(coordinates)) {\r\n const match = coordinates.match(LATLNGREGEX);\r\n if (match) {\r\n [, lat, lng] = match; // Первый элемент — полное совпадение, пропускаем его\r\n }\r\n } else if (LNGLATREGEX.test(coordinates)) {\r\n const match = coordinates.match(LNGLATREGEX);\r\n if (match) {\r\n [, lng, lat] = match; // Меняем местами\r\n }\r\n } else {\r\n console.log(\"Неверный формат координат\");\r\n return null;\r\n }\r\n return { lat, lng };\r\n}\r\n","import { api } from \"@app/lib\";\r\n\r\nlet apiKey: string = \"\";\r\n\r\nfunction saveKey(param: string) {\r\n if (param === \"\") return;\r\n apiKey = param;\r\n api.defaults.headers.common[\"Authorization\"] = `Bearer ${param}`;\r\n}\r\n\r\nfunction clearKey() {\r\n apiKey = \"\";\r\n api.defaults.headers.common[\"Authorization\"] = \"\";\r\n}\r\n\r\nconst getApiKey = () => apiKey;\r\n\r\nexport { saveKey, clearKey, getApiKey };\r\n","import { searchPost } from \"./api\";\r\nimport { IAdditionalParamType } from \"@app/types/index\";\r\nimport { checkCoordinates } from \"@app/lib/index\";\r\nimport { REGEX } from \"@app/config\";\r\n\r\nasync function search(\r\n param: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<any> {\r\n let searchData: any = {\r\n text: \"\",\r\n ...additionalParam,\r\n };\r\n\r\n if (param !== \"\") {\r\n if (REGEX.test(param)) {\r\n let coordinates = await checkCoordinates(param);\r\n if (coordinates) {\r\n searchData = {\r\n lat: coordinates.lat ?? \"\",\r\n lng: coordinates.lng ?? \"\",\r\n };\r\n }\r\n } else {\r\n searchData.text = param;\r\n }\r\n } else {\r\n searchData.text = \"\";\r\n }\r\n\r\n try {\r\n const res = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n console.error(\"Ошибка при выполнении поиска:\", error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { search };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam } from \"@app/types\";\r\n\r\nexport const searchPost = async (param: ISearchParam) => {\r\n try {\r\n const params = { params: param };\r\n const response = await api.get(\"elastic/search\", params);\r\n return response.data;\r\n } catch (error) {\r\n console.error(\"Ошибка при поиске адреса:\", error);\r\n throw error;\r\n }\r\n};\r\n","import { routingApi } from \"@lib/routing/api\";\r\nimport { geojsonPolyline } from \"@app/config/index\";\r\nimport type { IRoute } from \"@app/types/index\";\r\n\r\nasync function getrouter(\r\n param: number[][],\r\n typeData: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param);\r\n\r\n if (!res?.data) return res;\r\n\r\n const data: IRoute[] = res.data;\r\n\r\n return data.map((route) => {\r\n const updated = { ...route };\r\n\r\n if (updated.route?.routes?.length) {\r\n updated.route.routes = updated.route.routes.map((r) => ({\r\n ...r,\r\n geometry:\r\n typeData === \"geojson\" && typeof r.geometry === \"string\"\r\n ? geojsonPolyline(r.geometry)\r\n : r.geometry,\r\n }));\r\n }\r\n\r\n return updated as IRoute;\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][]) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n param.forEach((e) => {\r\n points.push({ lng: e[0], lat: e[1] });\r\n });\r\n const response = await api.post(\"services/getRoutes\", { points });\r\n return response.data;\r\n } catch (err) {\r\n console.error(err);\r\n throw err;\r\n }\r\n};\r\n\r\nexport { routingApi };\r\n","import * as Map from \"@lib/map/utils\";\r\nimport * as keyUtils from \"@app/lib/saveKey\";\r\nimport * as searchUtils from \"@lib/search/utils\";\r\nimport * as routerUtils from \"@lib/routing/utils\";\r\n\r\nexport { Map, keyUtils, searchUtils, routerUtils };\r\n\r\nconst MahalMap = {\r\n Map,\r\n keyUtils,\r\n searchUtils,\r\n routerUtils,\r\n loadKeyFromScriptUrl: () => {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.umd.js\")) {\r\n const url = new URL(script.src);\r\n const apikey = url.searchParams.get(\"apikey\");\r\n if (apikey) return apikey;\r\n }\r\n }\r\n return \"\";\r\n },\r\n};\r\n\r\nexport default MahalMap;\r\n"],"mappings":"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","names":["utils_exports","__export","createMap","BASE_URL","LATLNGREGEX","LNGLATREGEX","REGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","maplibregl","defaultStyles","DARK","LIGHT","createMap","options","finalStyle","VECTOR","saveKey_exports","__export","clearKey","getApiKey","saveKey","axios","api","axios","BASE_URL","response","error","clearKey","checkCoordinates","coordinates","lat","lng","LATLNGREGEX","match","LNGLATREGEX","apiKey","saveKey","param","api","clearKey","getApiKey","utils_exports","__export","search","searchPost","param","params","api","error","search","param","additionalParam","searchData","REGEX","coordinates","checkCoordinates","searchPost","error","utils_exports","__export","getrouter","routingApi","param","points","e","api","err","getrouter","param","typeData","res","routingApi","route","updated","r","geojsonPolyline","error","MahalMap","utils_exports","saveKey_exports","scripts","script","apikey","index_default"]}
|
|
1
|
+
{"version":3,"sources":["../src/lib/map/utils.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/checking-coordinates/utils.ts","../src/app/lib/saveKey/utils.ts","../src/lib/search/utils.ts","../src/lib/search/api.ts","../src/lib/routing/utils.ts","../src/lib/routing/api.ts","../src/index.ts"],"sourcesContent":["import type { Map as MapType } from \"maplibre-gl\";\r\nimport maplibregl from \"maplibre-gl\";\r\n// import \"maplibre-gl/dist/maplibre-gl.css\";\r\nimport type { IMahalMapOptions } from \"@app/types\";\r\nimport { DARK, LIGHT, VECTOR } from \"@app/config\";\r\n\r\nconst defaultStyles = { dark: DARK, light: LIGHT };\r\n\r\nfunction createMap(options: IMahalMapOptions): MapType {\r\n let finalStyle;\r\n\r\n if (options.autoAddVectorSource) {\r\n finalStyle = VECTOR;\r\n } else {\r\n finalStyle = options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n }\r\n\r\n const map: MapType = new maplibregl.Map({\r\n container: options.container || \"map\",\r\n style: finalStyle as string,\r\n center: options.center || [69.624024, 40.279687],\r\n zoom: options.zoom || 5,\r\n });\r\n\r\n return map;\r\n}\r\n\r\nexport { createMap };\r\n","const BASE_URL = \"https://platform.mahal.tj/api/\";\r\nconst LATLNGREGEX =\r\n /^([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?)),\\s*([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?))$/;\r\nconst LNGLATREGEX =\r\n /^([-+]?(?:180(?:\\.0+)?|(?:(?:1[0-7]\\d)|(?:[1-9]?\\d))(?:\\.\\d+)?)),\\s*([-+]?(?:[1-8]?\\d(?:\\.\\d+)?|90(?:\\.0+)?))$/;\r\n\r\nconst REGEX =\r\n /^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?),\\s*[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$/;\r\n\r\nconst DARK = \"https://mtile.gram.tj/custom-styles/dark-style.json\";\r\nconst LIGHT = \"https://mtile.gram.tj/custom-styles/mapstyle.json\";\r\nconst VECTOR =\r\n \"https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json\";\r\n\r\nexport { BASE_URL, LATLNGREGEX, LNGLATREGEX, REGEX, DARK, LIGHT, VECTOR };\r\n","function geojsonPolyline(encoded: string): number[][] {\r\n let points = [];\r\n let index = 0,\r\n len = encoded.length;\r\n let lat = 0,\r\n lng = 0;\r\n\r\n while (index < len) {\r\n let b,\r\n shift = 0,\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlat = result & 1 ? ~(result >> 1) : result >> 1;\r\n lat += dlat;\r\n\r\n shift = 0;\r\n result = 0;\r\n do {\r\n b = encoded.charCodeAt(index++) - 63;\r\n result |= (b & 0x1f) << shift;\r\n shift += 5;\r\n } while (b >= 0x20);\r\n let dlng = result & 1 ? ~(result >> 1) : result >> 1;\r\n lng += dlng;\r\n\r\n points.push([lng * 1e-5, lat * 1e-5]);\r\n }\r\n\r\n return points;\r\n}\r\n\r\nexport { geojsonPolyline };\r\n\r\n// Пример использования:\r\n\r\n// geojsonPolyline(\"yzocFzynhVq}@n}@o}@nzD\")\r\n\r\n// Вернёт массив вида [\r\n// [102.0, 0.5],\r\n// [103.0, 1.0],\r\n// [104.0, 0.5],\r\n// [105.0, 0.0]\r\n// ].\r\n","export * from \"./utils\";\r\n","import axios from \"axios\";\r\nimport { BASE_URL } from \"@app/config/index\";\r\nimport { clearKey } from \"@app/lib\";\r\n\r\nexport const api = axios.create({\r\n baseURL: BASE_URL,\r\n});\r\n\r\napi.interceptors.request.use(\r\n (response) => response,\r\n (error) => {\r\n if (error.request?.status === 401) {\r\n clearKey();\r\n }\r\n return Promise.reject(error);\r\n }\r\n);\r\n","import { LATLNGREGEX, LNGLATREGEX } from \"@app/config/index\";\r\n\r\nexport function checkCoordinates(coordinates: string) {\r\n let lat, lng;\r\n if (LATLNGREGEX.test(coordinates)) {\r\n const match = coordinates.match(LATLNGREGEX);\r\n if (match) {\r\n [, lat, lng] = match; // Первый элемент — полное совпадение, пропускаем его\r\n }\r\n } else if (LNGLATREGEX.test(coordinates)) {\r\n const match = coordinates.match(LNGLATREGEX);\r\n if (match) {\r\n [, lng, lat] = match; // Меняем местами\r\n }\r\n } else {\r\n console.log(\"Неверный формат координат\");\r\n return null;\r\n }\r\n return { lat, lng };\r\n}\r\n","import { api } from \"@app/lib\";\r\n\r\nlet apiKey: string = \"\";\r\n\r\nfunction saveKey(param: string) {\r\n if (param === \"\") return;\r\n apiKey = param;\r\n api.defaults.headers.common[\"Authorization\"] = `Bearer ${param}`;\r\n}\r\n\r\nfunction clearKey() {\r\n apiKey = \"\";\r\n api.defaults.headers.common[\"Authorization\"] = \"\";\r\n}\r\n\r\nconst getApiKey = () => apiKey;\r\n\r\nexport { saveKey, clearKey, getApiKey };\r\n","import { searchPost } from \"./api\";\r\nimport { IAdditionalParamType } from \"@app/types/index\";\r\nimport { checkCoordinates } from \"@app/lib/index\";\r\nimport { REGEX } from \"@app/config\";\r\n\r\nasync function search(\r\n param: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<any> {\r\n let searchData: any = {\r\n text: \"\",\r\n ...additionalParam,\r\n };\r\n\r\n if (param !== \"\") {\r\n if (REGEX.test(param)) {\r\n let coordinates = await checkCoordinates(param);\r\n if (coordinates) {\r\n searchData = {\r\n lat: coordinates.lat ?? \"\",\r\n lng: coordinates.lng ?? \"\",\r\n };\r\n }\r\n } else {\r\n searchData.text = param;\r\n }\r\n } else {\r\n searchData.text = \"\";\r\n }\r\n\r\n try {\r\n const res = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n console.error(\"Ошибка при выполнении поиска:\", error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { search };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam } from \"@app/types\";\r\n\r\nexport const searchPost = async (param: ISearchParam) => {\r\n try {\r\n const params = { params: param };\r\n const response = await api.get(\"elastic/search\", params);\r\n return response.data;\r\n } catch (error) {\r\n console.error(\"Ошибка при поиске адреса:\", error);\r\n throw error;\r\n }\r\n};\r\n","import { routingApi } from \"@lib/routing/api\";\r\nimport { geojsonPolyline } from \"@app/config/index\";\r\nimport type { IRoute } from \"@app/types/index\";\r\n\r\nasync function getrouter(\r\n param: number[][],\r\n typeData: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param);\r\n\r\n if (!res?.data) return res;\r\n\r\n const data: IRoute[] = res.data;\r\n\r\n return data.map((route) => {\r\n const updated = { ...route };\r\n\r\n if (updated.route?.routes?.length) {\r\n updated.route.routes = updated.route.routes.map((r) => ({\r\n ...r,\r\n geometry:\r\n typeData === \"geojson\" && typeof r.geometry === \"string\"\r\n ? geojsonPolyline(r.geometry)\r\n : r.geometry,\r\n }));\r\n }\r\n\r\n return updated as IRoute;\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][]) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n param.forEach((e) => {\r\n points.push({ lng: e[0], lat: e[1] });\r\n });\r\n const response = await api.post(\"services/getRoutes\", { points });\r\n return response.data;\r\n } catch (err) {\r\n console.error(err);\r\n throw err;\r\n }\r\n};\r\n\r\nexport { routingApi };\r\n","import * as Map from \"@lib/map/utils\";\r\nimport * as keyUtils from \"@app/lib/saveKey\";\r\nimport * as searchUtils from \"@lib/search/utils\";\r\nimport * as routerUtils from \"@lib/routing/utils\";\r\n\r\nexport { Map, keyUtils, searchUtils, routerUtils };\r\n\r\nconst MahalMap = {\r\n Map,\r\n keyUtils,\r\n searchUtils,\r\n routerUtils,\r\n loadKeyFromScriptUrl: () => {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.umd.js\")) {\r\n const url = new URL(script.src);\r\n const apikey = url.searchParams.get(\"apikey\");\r\n if (apikey) return apikey;\r\n }\r\n }\r\n return \"\";\r\n },\r\n};\r\nMahalMap.loadKeyFromScriptUrl();\r\n\r\nexport default MahalMap;\r\n"],"mappings":"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","names":["utils_exports","__export","createMap","maplibregl","BASE_URL","LATLNGREGEX","LNGLATREGEX","REGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","createMap","options","finalStyle","VECTOR","maplibregl","saveKey_exports","__export","clearKey","getApiKey","saveKey","axios","api","axios","BASE_URL","response","error","clearKey","checkCoordinates","coordinates","lat","lng","LATLNGREGEX","match","LNGLATREGEX","apiKey","saveKey","param","api","clearKey","getApiKey","utils_exports","__export","search","searchPost","param","params","api","error","search","param","additionalParam","searchData","REGEX","coordinates","checkCoordinates","searchPost","error","utils_exports","__export","getrouter","routingApi","param","points","e","api","err","getrouter","param","typeData","res","routingApi","route","updated","r","geojsonPolyline","error","MahalMap","utils_exports","saveKey_exports","scripts","script","apikey","index_default"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mahal_map",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "mahal_map",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"map",
|
|
@@ -31,9 +31,6 @@
|
|
|
31
31
|
"README.md",
|
|
32
32
|
"LICENSE"
|
|
33
33
|
],
|
|
34
|
-
"peerDependencies": {
|
|
35
|
-
"maplibre-gl": "^2.0.0"
|
|
36
|
-
},
|
|
37
34
|
"main": "dist/index.js",
|
|
38
35
|
"module": "dist/index.mjs",
|
|
39
36
|
"types": "dist/index.d.ts",
|
|
@@ -42,7 +39,7 @@
|
|
|
42
39
|
"build": "tsup src/index.ts --format cjs,esm --dts --minify --sourcemap false --out-dir dist",
|
|
43
40
|
"build:sdk": "esbuild src/index.ts --bundle --minify --global-name=MahalMap --format=iife --outfile=dist/mahal_map.sdk.js",
|
|
44
41
|
"obfuscate": "javascript-obfuscator dist --output dist --config obfuscator-config.json",
|
|
45
|
-
"prepublishOnly": "npm run build
|
|
42
|
+
"prepublishOnly": "npm run build",
|
|
46
43
|
"dev": "rollup -c rollup.config.js -w"
|
|
47
44
|
},
|
|
48
45
|
"dependencies": {
|