mahal_map 1.0.9 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -58,13 +58,13 @@ interface IRoute {
58
58
  };
59
59
  }
60
60
 
61
- declare function createMap(options: IMahalMapOptions): Map$1;
62
- declare const createMarker: (coords: [number, number]) => void;
61
+ declare function createMap(options: IMahalMapOptions, maplibreObject?: {
62
+ Map: typeof Map$1;
63
+ } | typeof Map$1): Map$1;
63
64
 
64
65
  declare const Map_createMap: typeof createMap;
65
- declare const Map_createMarker: typeof createMarker;
66
66
  declare namespace Map {
67
- export { Map_createMap as createMap, Map_createMarker as createMarker };
67
+ export { Map_createMap as createMap };
68
68
  }
69
69
 
70
70
  declare function saveKey(param: string): void;
package/dist/index.d.ts CHANGED
@@ -58,13 +58,13 @@ interface IRoute {
58
58
  };
59
59
  }
60
60
 
61
- declare function createMap(options: IMahalMapOptions): Map$1;
62
- declare const createMarker: (coords: [number, number]) => void;
61
+ declare function createMap(options: IMahalMapOptions, maplibreObject?: {
62
+ Map: typeof Map$1;
63
+ } | typeof Map$1): Map$1;
63
64
 
64
65
  declare const Map_createMap: typeof createMap;
65
- declare const Map_createMarker: typeof createMarker;
66
66
  declare namespace Map {
67
- export { Map_createMap as createMap, Map_createMarker as createMarker };
67
+ export { Map_createMap as createMap };
68
68
  }
69
69
 
70
70
  declare function saveKey(param: string): void;
package/dist/index.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";var _=Object.create;var c=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var z=Object.getOwnPropertyNames;var B=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var p=(t,e)=>{for(var r in e)c(t,r,{get:e[r],enumerable:!0})},A=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of z(e))!O.call(t,a)&&a!==r&&c(t,a,{get:()=>e[a],enumerable:!(o=v(e,a))||o.enumerable});return t};var b=(t,e,r)=>(r=t!=null?_(B(t)):{},A(e||!t||!t.__esModule?c(r,"default",{value:t,enumerable:!0}):r,t)),$=t=>A(c({},"__esModule",{value:!0}),t);var W={};p(W,{Map:()=>u,default:()=>Q,keyUtils:()=>f,routerUtils:()=>h,searchUtils:()=>d});module.exports=$(W);var u={};p(u,{createMap:()=>D,createMarker:()=>V});var E=b(require("maplibre-gl"));var M="https://platform.mahal.tj/api/",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+)?))$/,w=/^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/,T="https://mtile.gram.tj/custom-styles/dark-style.json",P="https://mtile.gram.tj/custom-styles/mapstyle.json",j="https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json";function k(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 N=n&1?~(n>>1):n>>1;a+=N,l=0,n=0;do s=t.charCodeAt(r++)-63,n|=(s&31)<<l,l+=5;while(s>=32);let X=n&1?~(n>>1):n>>1;m+=X,e.push([m*1e-5,a*1e-5])}return e}var G={dark:T,light:P},x;function D(t){let e;return t.autoAddVectorSource?e=j:e=t.style?t.style:t.theme==="dark"?G.dark:G.light,x=new E.default.Map({container:t.container||"map",style:e,center:t.center||[69.624024,40.279687],zoom:t.zoom||5}),x}var V=t=>{let e=new E.default.Marker().setLngLat(t).addTo(x)};var f={};p(f,{clearKey:()=>L,getApiKey:()=>F,saveKey:()=>q});var I=b(require("axios"));var i=I.default.create({baseURL:M});i.interceptors.request.use(t=>t,t=>(t.request?.status===401&&L(),Promise.reject(t)));function S(t){let e,r;if(g.test(t)){let o=t.match(g);o&&([,e,r]=o)}else if(y.test(t)){let o=t.match(y);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 R="";function q(t){t!==""&&(R=t,i.defaults.headers.common.Authorization=`Bearer ${t}`)}function L(){R="",i.defaults.headers.common.Authorization=""}var F=()=>R;var d={};p(d,{search:()=>H});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 H(t,e){let r={text:"",...e};if(t!=="")if(w.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:()=>J});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 J(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"?k(s.geometry):s.geometry}))),m}):r}catch(r){throw console.error(r),r}}var U={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""}};U.loadKeyFromScriptUrl();var Q=U;0&&(module.exports={Map,keyUtils,routerUtils,searchUtils});
2
- //# sourceMappingURL=index.js.map
1
+ 'use strict';var a0_0x3681b4=a0_0x13fe;(function(_0x5fe8c7,_0x2e2d9e){var _0x158d11=a0_0x13fe,_0x27b9c6=_0x5fe8c7();while(!![]){try{var _0x1450ee=-parseInt(_0x158d11(0x149))/0x1+-parseInt(_0x158d11(0x1cc))/0x2+parseInt(_0x158d11(0x153))/0x3+-parseInt(_0x158d11(0x19f))/0x4+-parseInt(_0x158d11(0x15d))/0x5+parseInt(_0x158d11(0x18f))/0x6+parseInt(_0x158d11(0x16d))/0x7;if(_0x1450ee===_0x2e2d9e)break;else _0x27b9c6['push'](_0x27b9c6['shift']());}catch(_0x482483){_0x27b9c6['push'](_0x27b9c6['shift']());}}}(a0_0x5425,0x552d1));var U=Object[a0_0x3681b4(0x1bd)],c=Object[a0_0x3681b4(0x1cf)],N=Object[a0_0x3681b4(0x1cb)],X=Object[a0_0x3681b4(0x17a)],_=Object[a0_0x3681b4(0x1dd)],v=Object[a0_0x3681b4(0x156)][a0_0x3681b4(0x155)],m=(_0x1c3710,_0x43d807)=>{var _0x12630d=a0_0x3681b4,_0xf0ed4c={'xvLpE':function(_0x2a54bf,_0x40dc13,_0x5e58e1,_0x240981){return _0x2a54bf(_0x40dc13,_0x5e58e1,_0x240981);}};for(var _0x5097a3 in _0x43d807)_0xf0ed4c[_0x12630d(0x1a6)](c,_0x1c3710,_0x5097a3,{'get':_0x43d807[_0x5097a3],'enumerable':!0x0});},M=(_0x3e52f9,_0xf5f053,_0x36adee,_0x137721)=>{var _0x3fc119=a0_0x3681b4,_0x11b403={'XEMCl':function(_0x3ef680,_0x4e5500){return _0x3ef680==_0x4e5500;},'KeuID':_0x3fc119(0x150),'ujBnQ':_0x3fc119(0x1b1),'hCxKB':function(_0x3de44b,_0x4c69db){return _0x3de44b(_0x4c69db);},'xDkVf':function(_0x41df52,_0x4557df){return _0x41df52!==_0x4557df;},'TFIqN':function(_0x43400d,_0x28d009,_0x124de5,_0x26cd09){return _0x43400d(_0x28d009,_0x124de5,_0x26cd09);},'oyMlM':function(_0x10ee93,_0x59dd7a,_0x2623b4){return _0x10ee93(_0x59dd7a,_0x2623b4);}};if(_0xf5f053&&_0x11b403[_0x3fc119(0x187)](typeof _0xf5f053,_0x11b403[_0x3fc119(0x1de)])||typeof _0xf5f053==_0x11b403[_0x3fc119(0x14d)]){for(let _0x18f28c of _0x11b403['hCxKB'](X,_0xf5f053))!v['call'](_0x3e52f9,_0x18f28c)&&_0x11b403[_0x3fc119(0x14c)](_0x18f28c,_0x36adee)&&_0x11b403['TFIqN'](c,_0x3e52f9,_0x18f28c,{'get':()=>_0xf5f053[_0x18f28c],'enumerable':!(_0x137721=_0x11b403[_0x3fc119(0x186)](N,_0xf5f053,_0x18f28c))||_0x137721[_0x3fc119(0x198)]});}return _0x3e52f9;},z=(_0x20317d,_0x16991e,_0x909a7a)=>(_0x909a7a=_0x20317d!=null?U(_(_0x20317d)):{},M(_0x16991e||!_0x20317d||!_0x20317d['__esModule']?c(_0x909a7a,'default',{'value':_0x20317d,'enumerable':!0x0}):_0x909a7a,_0x20317d)),B=_0x57a7b0=>M(c({},'__esModule',{'value':!0x0}),_0x57a7b0),F={};m(F,{'Map':()=>f,'default':()=>q,'keyUtils':()=>u,'routerUtils':()=>h,'searchUtils':()=>d}),module['exports']=B(F);var f={};m(f,{'createMap':()=>D});var E=a0_0x3681b4(0x1df),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+)?))$/,L=/^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/,w=a0_0x3681b4(0x14f),R='https://mtile.gram.tj/custom-styles/mapstyle.json',A=a0_0x3681b4(0x178);function T(_0x57915b){var _0x2014f1=a0_0x3681b4,_0x45db6b={'CbwHv':function(_0x39cc39,_0x35daab){return _0x39cc39<_0x35daab;},'TLjMK':function(_0x353354,_0x18d05d){return _0x353354<<_0x18d05d;},'rZxXZ':function(_0x3c6d51,_0x3cfc75){return _0x3c6d51&_0x3cfc75;},'HoBth':function(_0x246f8b,_0x2a7808){return _0x246f8b>=_0x2a7808;},'tJfMe':function(_0x2e8d8f,_0x4638f0){return _0x2e8d8f&_0x4638f0;},'WivTb':function(_0xdfa997,_0x248797){return _0xdfa997>>_0x248797;},'GyUTQ':function(_0x5e4e64,_0x434c61){return _0x5e4e64-_0x434c61;},'ozIrm':function(_0x4c9187,_0x5f0b68){return _0x4c9187<<_0x5f0b68;},'cPdCY':function(_0xbe18e,_0x405b2a){return _0xbe18e&_0x405b2a;},'aJTgH':function(_0x10ac26,_0xb00c1f){return _0x10ac26&_0xb00c1f;},'nhAvc':function(_0xd69df2,_0x154ce0){return _0xd69df2>>_0x154ce0;},'GLHpn':function(_0x346247,_0x387390){return _0x346247*_0x387390;}};let _0x43652f=[],_0x102a45=0x0,_0x4d1d66=_0x57915b[_0x2014f1(0x1a9)],_0x3f05d3=0x0,_0x117338=0x0;for(;_0x45db6b[_0x2014f1(0x16e)](_0x102a45,_0x4d1d66);){let _0x5cab69,_0x2e79d1=0x0,_0x2ae859=0x0;do _0x5cab69=_0x57915b[_0x2014f1(0x1c7)](_0x102a45++)-0x3f,_0x2ae859|=_0x45db6b[_0x2014f1(0x1e5)](_0x45db6b[_0x2014f1(0x182)](_0x5cab69,0x1f),_0x2e79d1),_0x2e79d1+=0x5;while(_0x45db6b['HoBth'](_0x5cab69,0x20));let _0x30184c=_0x45db6b['tJfMe'](_0x2ae859,0x1)?~_0x45db6b['WivTb'](_0x2ae859,0x1):_0x45db6b[_0x2014f1(0x175)](_0x2ae859,0x1);_0x3f05d3+=_0x30184c,_0x2e79d1=0x0,_0x2ae859=0x0;do _0x5cab69=_0x45db6b[_0x2014f1(0x14a)](_0x57915b[_0x2014f1(0x1c7)](_0x102a45++),0x3f),_0x2ae859|=_0x45db6b[_0x2014f1(0x167)](_0x45db6b['cPdCY'](_0x5cab69,0x1f),_0x2e79d1),_0x2e79d1+=0x5;while(_0x45db6b[_0x2014f1(0x173)](_0x5cab69,0x20));let _0x1e70e9=_0x45db6b[_0x2014f1(0x1da)](_0x2ae859,0x1)?~(_0x2ae859>>0x1):_0x45db6b[_0x2014f1(0x143)](_0x2ae859,0x1);_0x117338+=_0x1e70e9,_0x43652f['push']([_0x45db6b[_0x2014f1(0x194)](_0x117338,0.00001),_0x3f05d3*0.00001]);}return _0x43652f;}function a0_0x5425(){var _0x5d53d4=['script','lODLc','jfEtq','routes','constructor','3920728GpdySQ','CbwHv','use','ogQvn','JHTps','PVsrV','HoBth','console','WivTb','Mbfyc','Authorization','https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json','Map','getOwnPropertyNames','push','autoAddVectorSource','services/getRoutes','rrzFl','cHVrE','mukLH','MXEXk','rZxXZ','OrKNm','voJxK','zPaFZ','oyMlM','XEMCl','ChBbO','elJtd','Ошибка\x20при\x20поиске\x20адреса:','Ошибка\x20при\x20выполнении\x20поиска:','getElementsByTagName','geometry','MFQBH','1413702GyLBwt','sYbrr','loadKeyFromScriptUrl','common','qNBUK','GLHpn','PVoaR','kLjEF','lng','enumerable','map','[MahalMap\x20SDK]\x20MapLibre\x20GL\x20не\x20найден.\x20Передай\x20его\x20вторым\x20аргументом\x20или\x20добавь\x20<script\x20src=\x27https://unpkg.com/maplibre-gl@latest/dist/maplibre-gl.js\x27>\x20в\x20HTML.','light','HDPIc','oTFry','maplibregl','2410808dOVMKR','Faile','khSXl','olmyI','Неверный\x20формат\x20координат','PUWSj','exception','xvLpE','vtauH','IOAJp','length','theme','kuCGR','bind','UJApL','NtIAv','test','XFvSh','function','QxuLb','text','src','OempT','post','defaults','tIEEl','exports','__proto__','WXvlE','xjLMm','create','style','gTgFQ','ANQqv','rfoyy','route','GjNAM','return\x20(function()\x20','OrORn','VbAgj','charCodeAt','error','yBOGn','info','getOwnPropertyDescriptor','410212tgSqUQ','LVLIr','pYVmA','defineProperty','rWsXP','Bearer\x20','Ksfai','toString','center','container','zoom','JCBYk','headers','default','aJTgH','data','gqzEa','getPrototypeOf','KeuID','https://platform.mahal.tj/api/','includes','split','request','get','XsSEp','TLjMK','GezeX','trace','5|3|4|1|0|2','okkkc','nqIxi','jFEZy','ljwPK','nhAvc','Dcios','match','kPjfX','cZZBs','string','29739xbWFtX','GyUTQ','elastic/search','xDkVf','ujBnQ','DHnKB','https://mtile.gram.tj/custom-styles/dark-style.json','object','MoUfp','dark','2017665yKPGHN','PBAtu','hasOwnProperty','prototype','YcgvC','mhAuL','sEQtP','uMtRq','PEJgu','status','1409240ouERNz','nrbsx','geojson','interceptors','BVaTQ','reject','KKzpf','apply','table','EDAwV','ozIrm'];a0_0x5425=function(){return _0x5d53d4;};return a0_0x5425();}var j={'dark':w,'light':R};function a0_0x13fe(_0x580d1d,_0x374e4a){var _0x3e5604=a0_0x5425();return a0_0x13fe=function(_0x4da8fc,_0x3d6a14){_0x4da8fc=_0x4da8fc-0x13f;var _0x5d6152=_0x3e5604[_0x4da8fc];return _0x5d6152;},a0_0x13fe(_0x580d1d,_0x374e4a);}function D(_0x45e579,_0x44299c){var _0x231898=a0_0x3681b4,_0x54e203={'fuFaU':'[MahalMap\x20SDK]\x20MapLibre\x20GL\x20не\x20найден.\x20Передай\x20его\x20вторым\x20аргументом\x20или\x20добавь\x20<script\x20src=\x27https://unpkg.com/maplibre-gl@latest/dist/maplibre-gl.js\x27>\x20в\x20HTML.','sYbrr':function(_0x5dc48c,_0x57fffb){return _0x5dc48c===_0x57fffb;},'iMqcJ':_0x231898(0x152),'PEJgu':'map'};let _0x99d56,_0x45eca3=window['maplibregl']||_0x44299c;if(!_0x45eca3)throw new Error(_0x54e203['fuFaU']);return _0x45e579[_0x231898(0x17c)]?_0x99d56=A:_0x99d56=_0x45e579[_0x231898(0x1be)]?_0x45e579[_0x231898(0x1be)]:_0x54e203[_0x231898(0x190)](_0x45e579[_0x231898(0x1aa)],_0x54e203['iMqcJ'])?j[_0x231898(0x152)]:j['light'],new _0x45eca3[(_0x231898(0x179))]({'container':_0x45e579['container']||_0x54e203[_0x231898(0x15b)],'style':_0x99d56,'center':_0x45e579[_0x231898(0x1d4)]||[69.624024,40.279687],'zoom':_0x45e579[_0x231898(0x1d6)]||0x5});}var u={};m(u,{'clearKey':()=>x,'getApiKey':()=>$,'saveKey':()=>O});var G=z(require('axios')),p=G[a0_0x3681b4(0x1d9)][a0_0x3681b4(0x1bd)]({'baseURL':E});p[a0_0x3681b4(0x160)][a0_0x3681b4(0x1e2)][a0_0x3681b4(0x16f)](_0x262b62=>_0x262b62,_0x309722=>(_0x309722[a0_0x3681b4(0x1e2)]?.[a0_0x3681b4(0x15c)]===0x191&&x(),Promise[a0_0x3681b4(0x162)](_0x309722)));function P(_0x1ed31f){var _0x1f6b4f=a0_0x3681b4,_0x5ea97a={'KKzpf':_0x1f6b4f(0x1a3)};let _0x3cc982,_0x5b8c41;if(g[_0x1f6b4f(0x1af)](_0x1ed31f)){let _0x53506d=_0x1ed31f['match'](g);_0x53506d&&([,_0x3cc982,_0x5b8c41]=_0x53506d);}else{if(y[_0x1f6b4f(0x1af)](_0x1ed31f)){let _0x1823b9=_0x1ed31f['match'](y);_0x1823b9&&([,_0x5b8c41,_0x3cc982]=_0x1823b9);}else return console['log'](_0x5ea97a[_0x1f6b4f(0x163)]),null;}return{'lat':_0x3cc982,'lng':_0x5b8c41};}var b='';function O(_0x34682a){var _0x3923d1=a0_0x3681b4,_0x1fb8a4={'DHnKB':function(_0x40231d,_0x3242a7){return _0x40231d!==_0x3242a7;}};_0x1fb8a4[_0x3923d1(0x14e)](_0x34682a,'')&&(b=_0x34682a,p[_0x3923d1(0x1b7)]['headers'][_0x3923d1(0x192)][_0x3923d1(0x177)]=_0x3923d1(0x1d1)+_0x34682a);}function x(){var _0x346dd2=a0_0x3681b4,_0x2e31c1={'xjLMm':function(_0x443f2e,_0x581267){return _0x443f2e==_0x581267;},'GjNAM':_0x346dd2(0x150),'LVLIr':_0x346dd2(0x1b1),'JCBYk':_0x346dd2(0x151),'WXvlE':_0x346dd2(0x158),'khSXl':function(_0x3bd00f,_0x2f82e3){return _0x3bd00f!==_0x2f82e3;},'YcgvC':_0x346dd2(0x19d),'PUWSj':function(_0x276715,_0x4f3ffd){return _0x276715-_0x4f3ffd;},'cZZBs':function(_0x4451da,_0xafabc0){return _0x4451da&_0xafabc0;},'pYVmA':function(_0x55220f,_0x1a01d6){return _0x55220f>>_0x1a01d6;},'OrKNm':function(_0x592566,_0x6886e3){return _0x592566>=_0x6886e3;},'uMtRq':function(_0x2313ee,_0x270cb0){return _0x2313ee&_0x270cb0;},'unZNl':function(_0x52b387,_0xaf4c86){return _0x52b387*_0xaf4c86;},'ogQvn':_0x346dd2(0x1b2),'KhTfW':_0x346dd2(0x15e),'vtauH':function(_0x495fe3,_0x1d847d){return _0x495fe3!==_0x1d847d;},'kuCGR':_0x346dd2(0x1dc),'OrORn':function(_0x2d8531,_0x20838e){return _0x2d8531+_0x20838e;},'qNBUK':_0x346dd2(0x1c4),'UJApL':'{}.constructor(\x22return\x20this\x22)(\x20)','rfoyy':'iVyVv','zUbtM':'RLCul','GezeX':function(_0x170857){return _0x170857();},'UCBgc':'warn','MXEXk':_0x346dd2(0x1ca),'cGJLn':_0x346dd2(0x1c8),'kPjfX':_0x346dd2(0x165),'OempT':function(_0x4dfd8d,_0x18eb5b){return _0x4dfd8d<_0x18eb5b;},'iwatJ':function(_0x27a2dc,_0x88bb4b,_0x1593bf){return _0x27a2dc(_0x88bb4b,_0x1593bf);}},_0x51a1a5=(function(){var _0x9963f7=!![];return function(_0x45f0a2,_0x4a6c16){var _0x2373ce=a0_0x13fe,_0x5ac2af={'jFEZy':function(_0x58f658,_0x335b2d){var _0x1c21f9=a0_0x13fe;return _0x2e31c1[_0x1c21f9(0x1bc)](_0x58f658,_0x335b2d);},'Ksfai':_0x2e31c1[_0x2373ce(0x1c3)],'kLjEF':function(_0x1df74e,_0x250e62){var _0x33e7a9=_0x2373ce;return _0x2e31c1[_0x33e7a9(0x1bc)](_0x1df74e,_0x250e62);},'HDPIc':_0x2e31c1[_0x2373ce(0x1cd)],'gTgFQ':function(_0x4f3592,_0x2eb3cc){return _0x4f3592(_0x2eb3cc);},'VbAgj':function(_0x44f8a0,_0xdf2101,_0x46db54,_0x30f8e6){return _0x44f8a0(_0xdf2101,_0x46db54,_0x30f8e6);},'LPDWU':function(_0xbeb222,_0x32d64e){return _0xbeb222===_0x32d64e;},'ANQqv':_0x2e31c1[_0x2373ce(0x1d7)],'ChBbO':_0x2e31c1[_0x2373ce(0x1bb)],'tIEEl':function(_0x4303dd,_0x3a0daa){var _0x17e198=_0x2373ce;return _0x2e31c1[_0x17e198(0x1a1)](_0x4303dd,_0x3a0daa);},'ZsoxU':_0x2e31c1[_0x2373ce(0x157)]},_0x23f72d=_0x9963f7?function(){var _0x3e0006=_0x2373ce;if(_0x5ac2af['LPDWU'](_0x5ac2af[_0x3e0006(0x1c0)],_0x5ac2af[_0x3e0006(0x188)])){if(_0x436f92&&_0x5ac2af[_0x3e0006(0x141)](typeof _0x3ef686,_0x5ac2af[_0x3e0006(0x1d2)])||_0x5ac2af[_0x3e0006(0x196)](typeof _0x3d65cd,_0x5ac2af[_0x3e0006(0x19c)])){for(let _0x13e098 of _0x5ac2af[_0x3e0006(0x1bf)](_0x1054ea,_0x459675))!_0x5dbcc7['call'](_0xe6b3ce,_0x13e098)&&_0x13e098!==_0x3d1145&&_0x5ac2af[_0x3e0006(0x1c6)](_0x56b924,_0x35a077,_0x13e098,{'get':()=>_0x23eb8e[_0x13e098],'enumerable':!(_0x5380c0=_0xc10f8e(_0xffaab0,_0x13e098))||_0x5b85e0['enumerable']});}return _0x2d9b70;}else{if(_0x4a6c16){if(_0x5ac2af[_0x3e0006(0x1b8)](_0x5ac2af['ZsoxU'],_0x3e0006(0x19d)))throw _0x4725f3['error'](_0x43bfc6),_0x5596d1;else{var _0xc6ab24=_0x4a6c16[_0x3e0006(0x164)](_0x45f0a2,arguments);return _0x4a6c16=null,_0xc6ab24;}}}}:function(){};return _0x9963f7=![],_0x23f72d;};}()),_0x9c49ad=_0x2e31c1['iwatJ'](_0x51a1a5,this,function(){var _0x3e5ad0=_0x346dd2,_0x3d2c47=function(){var _0x2d53c5=a0_0x13fe,_0x25af96={'Mbfyc':function(_0x2839f5,_0x177751){var _0x244da3=a0_0x13fe;return _0x2e31c1[_0x244da3(0x1a4)](_0x2839f5,_0x177751);},'fvvBQ':function(_0x3eb3e5,_0x13dcd1){return _0x3eb3e5<<_0x13dcd1;},'NtIAv':function(_0x205912,_0x522806){var _0x1586c1=a0_0x13fe;return _0x2e31c1[_0x1586c1(0x147)](_0x205912,_0x522806);},'BVaTQ':function(_0x2309df,_0x2d3f18){return _0x2e31c1['pYVmA'](_0x2309df,_0x2d3f18);},'ZBuPM':function(_0xb93f03,_0x59919f){return _0x2e31c1['PUWSj'](_0xb93f03,_0x59919f);},'tOZPW':function(_0x3f4350,_0x2f390f){return _0x3f4350&_0x2f390f;},'XFvSh':function(_0x10809c,_0x1c8c2d){var _0x43031f=a0_0x13fe;return _0x2e31c1[_0x43031f(0x183)](_0x10809c,_0x1c8c2d);},'jfEtq':function(_0x11862c,_0x57f209){var _0x7b1dd0=a0_0x13fe;return _0x2e31c1[_0x7b1dd0(0x15a)](_0x11862c,_0x57f209);},'ljwPK':function(_0x32f104,_0x3cb5b6){var _0x4009bb=a0_0x13fe;return _0x2e31c1[_0x4009bb(0x1ce)](_0x32f104,_0x3cb5b6);},'PVsrV':function(_0x5aabf3,_0x4e0562){return _0x2e31c1['unZNl'](_0x5aabf3,_0x4e0562);}};if(_0x2e31c1[_0x2d53c5(0x170)]===_0x2e31c1['KhTfW'])_0x21cffa!==''&&(_0x3bd612=_0x2c8627,_0x559fa3[_0x2d53c5(0x1b7)][_0x2d53c5(0x1d8)]['common']['Authorization']=_0x2d53c5(0x1d1)+_0x8ba047);else{var _0x1e6db1;try{if(_0x2e31c1[_0x2d53c5(0x1a7)](_0x2e31c1[_0x2d53c5(0x1ab)],_0x2d53c5(0x1a8)))_0x1e6db1=Function(_0x2e31c1[_0x2d53c5(0x1c5)](_0x2e31c1[_0x2d53c5(0x1c5)](_0x2e31c1[_0x2d53c5(0x193)],_0x2e31c1[_0x2d53c5(0x1ad)]),');'))();else{var _0x26748f,_0x58525e;if(_0x3f9812[_0x2d53c5(0x1af)](_0x56a95c)){var _0x31dffc=_0x3a4eaa[_0x2d53c5(0x145)](_0x2b2472);_0x31dffc&&([,_0x26748f,_0x58525e]=_0x31dffc);}else{if(_0x5450e7[_0x2d53c5(0x1af)](_0x56aa09)){var _0x42538b=_0xbe98d['match'](_0x225b8d);_0x42538b&&([,_0x58525e,_0x26748f]=_0x42538b);}else return _0x4df92e['log'](_0x2d53c5(0x1a3)),null;}return{'lat':_0x26748f,'lng':_0x58525e};}}catch(_0xeeac65){if(_0x2e31c1[_0x2d53c5(0x1c1)]!==_0x2e31c1['zUbtM'])_0x1e6db1=window;else{var _0x1d34df,_0xdf6ee6=0x0,_0x3b2fc3=0x0;do _0x1d34df=_0x25af96[_0x2d53c5(0x176)](_0x1c342d[_0x2d53c5(0x1c7)](_0x54f5a5++),0x3f),_0x3b2fc3|=_0x25af96['fvvBQ'](_0x1d34df&0x1f,_0xdf6ee6),_0xdf6ee6+=0x5;while(_0x1d34df>=0x20);var _0x1f76ab=_0x25af96[_0x2d53c5(0x1ae)](_0x3b2fc3,0x1)?~(_0x3b2fc3>>0x1):_0x25af96[_0x2d53c5(0x161)](_0x3b2fc3,0x1);_0x1010dd+=_0x1f76ab,_0xdf6ee6=0x0,_0x3b2fc3=0x0;do _0x1d34df=_0x25af96['ZBuPM'](_0x52de19[_0x2d53c5(0x1c7)](_0x147c33++),0x3f),_0x3b2fc3|=_0x25af96['tOZPW'](_0x1d34df,0x1f)<<_0xdf6ee6,_0xdf6ee6+=0x5;while(_0x25af96[_0x2d53c5(0x1b0)](_0x1d34df,0x20));var _0x571d32=_0x25af96[_0x2d53c5(0x16a)](_0x3b2fc3,0x1)?~_0x25af96[_0x2d53c5(0x142)](_0x3b2fc3,0x1):_0x25af96['BVaTQ'](_0x3b2fc3,0x1);_0x5ceba9+=_0x571d32,_0x464d5e[_0x2d53c5(0x17b)]([_0x25af96['PVsrV'](_0x404462,0.00001),_0x25af96[_0x2d53c5(0x172)](_0x346559,0.00001)]);}}return _0x1e6db1;}},_0x410621=_0x2e31c1[_0x3e5ad0(0x1e6)](_0x3d2c47),_0x360679=_0x410621[_0x3e5ad0(0x174)]=_0x410621[_0x3e5ad0(0x174)]||{},_0x1375e6=['log',_0x2e31c1['UCBgc'],_0x2e31c1[_0x3e5ad0(0x181)],_0x2e31c1['cGJLn'],_0x3e5ad0(0x1a5),_0x2e31c1[_0x3e5ad0(0x146)],_0x3e5ad0(0x1e7)];for(var _0x59b9eb=0x0;_0x2e31c1[_0x3e5ad0(0x1b5)](_0x59b9eb,_0x1375e6[_0x3e5ad0(0x1a9)]);_0x59b9eb++){var _0xee3cd4=_0x51a1a5['constructor'][_0x3e5ad0(0x156)][_0x3e5ad0(0x1ac)](_0x51a1a5),_0x2dd955=_0x1375e6[_0x59b9eb],_0x55df9b=_0x360679[_0x2dd955]||_0xee3cd4;_0xee3cd4[_0x3e5ad0(0x1ba)]=_0x51a1a5[_0x3e5ad0(0x1ac)](_0x51a1a5),_0xee3cd4[_0x3e5ad0(0x1d3)]=_0x55df9b['toString']['bind'](_0x55df9b),_0x360679[_0x2dd955]=_0xee3cd4;}});_0x2e31c1[_0x346dd2(0x1e6)](_0x9c49ad),(b='',p[_0x346dd2(0x1b7)][_0x346dd2(0x1d8)][_0x346dd2(0x192)]['Authorization']='');}var $=()=>b,d={};m(d,{'search':()=>H});var S=async _0x8fe778=>{var _0x4e2136=a0_0x3681b4,_0xddf3d7={'EDAwV':_0x4e2136(0x14b),'olmyI':_0x4e2136(0x18a)};try{let _0x449753={'params':_0x8fe778};return(await p[_0x4e2136(0x1e3)](_0xddf3d7[_0x4e2136(0x166)],_0x449753))[_0x4e2136(0x1db)];}catch(_0x1e1f48){throw console[_0x4e2136(0x1c8)](_0xddf3d7[_0x4e2136(0x1a2)],_0x1e1f48),_0x1e1f48;}};async function H(_0x253974,_0x3ff9ce){var _0x493131=a0_0x3681b4,_0x13e6bc={'elJtd':function(_0x725f63,_0x4e9ac3){return _0x725f63===_0x4e9ac3;},'PBAtu':_0x493131(0x1e4),'Faile':function(_0x1fd0cf,_0x15ea47){return _0x1fd0cf(_0x15ea47);},'sEQtP':_0x493131(0x18b)};let _0x3af7f5={'text':'',..._0x3ff9ce};if(_0x253974!==''){if(L[_0x493131(0x1af)](_0x253974)){if(_0x13e6bc[_0x493131(0x189)](_0x13e6bc[_0x493131(0x154)],_0x493131(0x169)))_0x1695a6[_0x493131(0x17b)]({'lng':_0xc79dcc[0x0],'lat':_0x47b229[0x1]});else{let _0x3955ca=await _0x13e6bc[_0x493131(0x1a0)](P,_0x253974);_0x3955ca&&(_0x3af7f5={'lat':_0x3955ca['lat']??'','lng':_0x3955ca[_0x493131(0x197)]??''});}}else _0x3af7f5[_0x493131(0x1b3)]=_0x253974;}else _0x3af7f5[_0x493131(0x1b3)]='';try{return await _0x13e6bc['Faile'](S,_0x3af7f5);}catch(_0xad57f5){throw console[_0x493131(0x1c8)](_0x13e6bc[_0x493131(0x159)],_0xad57f5),_0xad57f5;}}var h={};m(h,{'getrouter':()=>V});var I=async _0x5cca81=>{var _0x5969bb=a0_0x3681b4,_0x36c9a9={'mukLH':function(_0x25231e,_0xeca34f){return _0x25231e!==_0xeca34f;},'rrzFl':'bhdLU','yBOGn':_0x5969bb(0x17f),'voJxK':_0x5969bb(0x17d)};try{if(_0x36c9a9[_0x5969bb(0x180)](_0x36c9a9[_0x5969bb(0x17e)],_0x36c9a9[_0x5969bb(0x1c9)])){let _0x440001=[];return _0x5cca81['forEach'](_0x56dabf=>{_0x440001['push']({'lng':_0x56dabf[0x0],'lat':_0x56dabf[0x1]});}),(await p[_0x5969bb(0x1b6)](_0x36c9a9[_0x5969bb(0x184)],{'points':_0x440001}))[_0x5969bb(0x1db)];}else{var _0x4e3c96=_0x5969bb(0x1e8)[_0x5969bb(0x1e1)]('|'),_0x112209=0x0;while(!![]){switch(_0x4e3c96[_0x112209++]){case'0':_0x3da45c[_0x5969bb(0x1d3)]=_0xd11c61[_0x5969bb(0x1d3)][_0x5969bb(0x1ac)](_0xd11c61);continue;case'1':_0x3da45c[_0x5969bb(0x1ba)]=_0x16c9a5['bind'](_0x13a235);continue;case'2':_0x1831b3[_0x2270dd]=_0x3da45c;continue;case'3':var _0x2270dd=_0x63b280[_0x7cdb29];continue;case'4':var _0xd11c61=_0x57360e[_0x2270dd]||_0x3da45c;continue;case'5':var _0x3da45c=_0x359c26[_0x5969bb(0x16c)][_0x5969bb(0x156)]['bind'](_0x4ab138);continue;}break;}}}catch(_0x48a6f4){throw console['error'](_0x48a6f4),_0x48a6f4;}};async function V(_0x494187,_0x4e3f1b){var _0x13ddd4=a0_0x3681b4,_0x3d2aef={'JHTps':_0x13ddd4(0x19a),'mKoYM':'map','zPaFZ':function(_0x4922d0,_0x590f6f){return _0x4922d0!==_0x590f6f;},'okkkc':'HdidI','rWsXP':_0x13ddd4(0x195),'fjqtA':function(_0x594ce6,_0x2cd740){return _0x594ce6(_0x2cd740);},'nqIxi':_0x13ddd4(0x18e)};try{let _0xd3bbb=await _0x3d2aef['fjqtA'](I,_0x494187);return _0xd3bbb?.[_0x13ddd4(0x1db)]?_0xd3bbb[_0x13ddd4(0x1db)]['map'](_0x26ca8f=>{var _0x2257fb=_0x13ddd4;if(_0x3d2aef[_0x2257fb(0x185)](_0x3d2aef[_0x2257fb(0x13f)],_0x3d2aef[_0x2257fb(0x1d0)])){let _0x5c7071={..._0x26ca8f};return _0x5c7071[_0x2257fb(0x1c2)]?.['routes']?.[_0x2257fb(0x1a9)]&&(_0x5c7071[_0x2257fb(0x1c2)][_0x2257fb(0x16b)]=_0x5c7071[_0x2257fb(0x1c2)][_0x2257fb(0x16b)][_0x2257fb(0x199)](_0x2f4e94=>({..._0x2f4e94,'geometry':_0x4e3f1b===_0x2257fb(0x15f)&&typeof _0x2f4e94[_0x2257fb(0x18d)]==_0x2257fb(0x148)?T(_0x2f4e94[_0x2257fb(0x18d)]):_0x2f4e94['geometry']}))),_0x5c7071;}else{let _0x262c50,_0x2c819f=_0x46a26d[_0x2257fb(0x19e)]||_0x15a24d;if(!_0x2c819f)throw new _0x1b7ba7(_0x3d2aef[_0x2257fb(0x171)]);return _0x121172['autoAddVectorSource']?_0x262c50=_0x2d4a60:_0x262c50=_0x1acd2d[_0x2257fb(0x1be)]?_0x552dbc[_0x2257fb(0x1be)]:_0x45cdd7[_0x2257fb(0x1aa)]===_0x2257fb(0x152)?_0x35a3a3[_0x2257fb(0x152)]:_0x28cb5e[_0x2257fb(0x19b)],new _0x2c819f['Map']({'container':_0x379567[_0x2257fb(0x1d5)]||_0x3d2aef['mKoYM'],'style':_0x262c50,'center':_0x4aa3b8[_0x2257fb(0x1d4)]||[69.624024,40.279687],'zoom':_0x20306d[_0x2257fb(0x1d6)]||0x5});}}):_0xd3bbb;}catch(_0x42fa64){if(_0x3d2aef[_0x13ddd4(0x185)](_0x3d2aef[_0x13ddd4(0x140)],_0x13ddd4(0x144)))throw console[_0x13ddd4(0x1c8)](_0x42fa64),_0x42fa64;else{var _0x5c1426=_0x220984['apply'](_0x593737,arguments);return _0x411096=null,_0x5c1426;}}}var k={'Map':f,'keyUtils':u,'searchUtils':d,'routerUtils':h,'loadKeyFromScriptUrl':()=>{var _0x4fe6a1=a0_0x3681b4,_0x401350={'RaPbA':_0x4fe6a1(0x168),'OTAvs':'mahal_map.umd.js'};let _0x4b2747=document[_0x4fe6a1(0x18c)](_0x401350['RaPbA']);for(let _0x543744 of _0x4b2747)if(_0x543744[_0x4fe6a1(0x1b4)][_0x4fe6a1(0x1e0)](_0x401350['OTAvs'])){let _0x3cc74e=new URL(_0x543744[_0x4fe6a1(0x1b4)])['searchParams'][_0x4fe6a1(0x1e3)]('apikey');if(_0x3cc74e)return _0x3cc74e;}return'';}};k[a0_0x3681b4(0x191)]();var q=k;0x0&&(module[a0_0x3681b4(0x1b9)]={'Map':Map,'keyUtils':keyUtils,'routerUtils':routerUtils,'searchUtils':searchUtils});
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\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\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\nvar map: MapType;\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 map = 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\nconst createMarker = (coords: [number, number]) => {\r\n const marker = new maplibregl.Marker().setLngLat(coords).addTo(map!);\r\n};\r\n\r\nexport { createMap, createMarker };\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","createMarker","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","map","createMap","options","finalStyle","VECTOR","maplibregl","createMarker","coords","marker","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 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(\r\n options: IMahalMapOptions,\r\n maplibreObject?: { Map: typeof MapType } | typeof MapType\r\n): MapType {\r\n let finalStyle;\r\n\r\n const globalMaplibre = (window as any).maplibregl;\r\n\r\n const maplibre = globalMaplibre || maplibreObject;\r\n\r\n if (!maplibre) {\r\n throw new Error(\r\n \"[MahalMap SDK] MapLibre GL не найден. Передай его вторым аргументом или добавь <script src='https://unpkg.com/maplibre-gl@latest/dist/maplibre-gl.js'> в HTML.\"\r\n );\r\n }\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 = new maplibre.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","defaultStyles","DARK","LIGHT","createMap","options","maplibreObject","finalStyle","maplibre","VECTOR","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 K=Object.defineProperty;var p=(t,e)=>{for(var r in e)K(t,r,{get:e[r],enumerable:!0})};var d={};p(d,{createMap:()=>U,createMarker:()=>N});import P from"maplibre-gl";var L="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",b="https://mtile.gram.tj/custom-styles/mapstyle.json",M="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 S=a&1?~(a>>1):a>>1;l+=S,m=0,a=0;do s=t.charCodeAt(r++)-63,a|=(s&31)<<m,m+=5;while(s>=32);let C=a&1?~(a>>1):a>>1;i+=C,e.push([i*1e-5,l*1e-5])}return e}var T={dark:A,light:b},f;function U(t){let e;return t.autoAddVectorSource?e=M:e=t.style?t.style:t.theme==="dark"?T.dark:T.light,f=new P.Map({container:t.container||"map",style:e,center:t.center||[69.624024,40.279687],zoom:t.zoom||5}),f}var N=t=>{let e=new P.Marker().setLngLat(t).addTo(f)};var y={};p(y,{clearKey:()=>h,getApiKey:()=>v,saveKey:()=>_});import X from"axios";var n=X.create({baseURL:L});n.interceptors.request.use(t=>t,t=>(t.request?.status===401&&h(),Promise.reject(t)));function j(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 g="";function _(t){t!==""&&(g=t,n.defaults.headers.common.Authorization=`Bearer ${t}`)}function h(){g="",n.defaults.headers.common.Authorization=""}var v=()=>g;var x={};p(x,{search:()=>z});var k=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 z(t,e){let r={text:"",...e};if(t!=="")if(R.test(t)){let o=await j(t);o&&(r={lat:o.lat??"",lng:o.lng??""})}else r.text=t;else r.text="";try{return await k(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 E={};p(E,{getrouter:()=>B});var G=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 B(t,e){try{let r=await G(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 I={Map:d,keyUtils:y,searchUtils:x,routerUtils:E,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""}};I.loadKeyFromScriptUrl();var Tt=I;export{d as Map,Tt as default,y as keyUtils,E as routerUtils,x as searchUtils};
1
+ var k=Object.defineProperty;var m=(t,e)=>{for(var r in e)k(t,r,{get:e[r],enumerable:!0})};var u={};m(u,{createMap:()=>C});var b="https://platform.mahal.tj/api/",c=/^([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?)),\s*([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?))$/,f=/^([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?)),\s*([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?))$/,M=/^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/,E="https://mtile.gram.tj/custom-styles/dark-style.json",L="https://mtile.gram.tj/custom-styles/mapstyle.json",w="https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json";function R(t){let e=[],r=0,o=t.length,p=0,n=0;for(;r<o;){let a,l=0,s=0;do a=t.charCodeAt(r++)-63,s|=(a&31)<<l,l+=5;while(a>=32);let S=s&1?~(s>>1):s>>1;p+=S,l=0,s=0;do a=t.charCodeAt(r++)-63,s|=(a&31)<<l,l+=5;while(a>=32);let I=s&1?~(s>>1):s>>1;n+=I,e.push([n*1e-5,p*1e-5])}return e}var A={dark:E,light:L};function C(t,e){let r,p=window.maplibregl||e;if(!p)throw new Error("[MahalMap SDK] MapLibre GL \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D. \u041F\u0435\u0440\u0435\u0434\u0430\u0439 \u0435\u0433\u043E \u0432\u0442\u043E\u0440\u044B\u043C \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442\u043E\u043C \u0438\u043B\u0438 \u0434\u043E\u0431\u0430\u0432\u044C <script src='https://unpkg.com/maplibre-gl@latest/dist/maplibre-gl.js'> \u0432 HTML.");return t.autoAddVectorSource?r=w:r=t.style?t.style:t.theme==="dark"?A.dark:A.light,new p.Map({container:t.container||"map",style:r,center:t.center||[69.624024,40.279687],zoom:t.zoom||5})}var g={};m(g,{clearKey:()=>d,getApiKey:()=>N,saveKey:()=>U});import K from"axios";var i=K.create({baseURL:b});i.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(f.test(t)){let o=t.match(f);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 U(t){t!==""&&(h=t,i.defaults.headers.common.Authorization=`Bearer ${t}`)}function d(){h="",i.defaults.headers.common.Authorization=""}var N=()=>h;var y={};m(y,{search:()=>X});var j=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 X(t,e){let r={text:"",...e};if(t!=="")if(M.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 j(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={};m(x,{getrouter:()=>_});var G=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 _(t,e){try{let r=await G(t);return r?.data?r.data.map(p=>{let n={...p};return n.route?.routes?.length&&(n.route.routes=n.route.routes.map(a=>({...a,geometry:e==="geojson"&&typeof a.geometry=="string"?R(a.geometry):a.geometry}))),n}):r}catch(r){throw console.error(r),r}}var P={Map:u,keyUtils:g,searchUtils:y,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""}};P.loadKeyFromScriptUrl();var Lt=P;export{u as Map,Lt as default,g as keyUtils,x as routerUtils,y as searchUtils};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -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 maplibregl from \"maplibre-gl\";\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\nvar map: MapType;\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 map = 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\nconst createMarker = (coords: [number, number]) => {\r\n const marker = new maplibregl.Marker().setLngLat(coords).addTo(map!);\r\n};\r\n\r\nexport { createMap, createMarker };\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","createMarker","maplibregl","BASE_URL","LATLNGREGEX","LNGLATREGEX","REGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","map","createMap","options","finalStyle","VECTOR","maplibregl","createMarker","coords","marker","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 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(\r\n options: IMahalMapOptions,\r\n maplibreObject?: { Map: typeof MapType } | typeof MapType\r\n): MapType {\r\n let finalStyle;\r\n\r\n const globalMaplibre = (window as any).maplibregl;\r\n\r\n const maplibre = globalMaplibre || maplibreObject;\r\n\r\n if (!maplibre) {\r\n throw new Error(\r\n \"[MahalMap SDK] MapLibre GL не найден. Передай его вторым аргументом или добавь <script src='https://unpkg.com/maplibre-gl@latest/dist/maplibre-gl.js'> в HTML.\"\r\n );\r\n }\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 = new maplibre.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","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","maplibreObject","finalStyle","maplibre","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"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mahal_map",
3
- "version": "1.0.9",
3
+ "version": "1.1.1",
4
4
  "description": "mahal_map",
5
5
  "keywords": [
6
6
  "map",
@@ -31,6 +31,9 @@
31
31
  "README.md",
32
32
  "LICENSE"
33
33
  ],
34
+ "peerDependencies": {
35
+ "maplibre-gl": "^2.0.0"
36
+ },
34
37
  "main": "dist/index.js",
35
38
  "module": "dist/index.mjs",
36
39
  "types": "dist/index.d.ts",
@@ -39,17 +42,12 @@
39
42
  "build": "tsup src/index.ts --format cjs,esm --dts --minify --sourcemap false --out-dir dist",
40
43
  "build:sdk": "esbuild src/index.ts --bundle --minify --global-name=MahalMap --format=iife --outfile=dist/mahal_map.sdk.js",
41
44
  "obfuscate": "javascript-obfuscator dist --output dist --config obfuscator-config.json",
42
- "prepublishOnly": "npm run build",
45
+ "prepublishOnly": "npm run build && npm run obfuscate",
43
46
  "dev": "rollup -c rollup.config.js -w"
44
47
  },
45
48
  "dependencies": {
46
49
  "@rollup/plugin-commonjs": "^28.0.3",
47
50
  "axios": "^1.8.4",
48
- "body-parser": "^2.2.0",
49
- "cors": "^2.8.5",
50
- "dotenv": "^17.2.3",
51
- "express": "^5.1.0",
52
- "maplibre-gl": "^2.0.0",
53
51
  "rollup-plugin-json": "^4.0.0",
54
52
  "rollup-plugin-node-resolve": "^5.2.0",
55
53
  "tslib": "^2.8.1"
@@ -57,9 +55,6 @@
57
55
  "devDependencies": {
58
56
  "@rollup/plugin-node-resolve": "^16.0.0",
59
57
  "@rollup/plugin-typescript": "^12.1.4",
60
- "@types/cors": "^2.8.19",
61
- "@types/express": "^5.0.3",
62
- "@types/node": "^24.8.1",
63
58
  "javascript-obfuscator": "^4.1.1",
64
59
  "rollup": "^2.79.2",
65
60
  "rollup-plugin-terser": "^7.0.2",