mahal_map 1.2.2 → 1.2.4
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 +12 -27
- package/dist/index.d.ts +12 -27
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -79,15 +79,15 @@ declare class CameraController {
|
|
|
79
79
|
setZoom(zoom: number, smooth?: boolean): void;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
declare class MahalMap {
|
|
82
|
+
declare class MahalMap$1 {
|
|
83
83
|
private static instance;
|
|
84
84
|
private map;
|
|
85
85
|
private options;
|
|
86
86
|
private constructor();
|
|
87
87
|
static create(options: IMahalMapOptions, maplibreObject?: {
|
|
88
88
|
Map: typeof Map;
|
|
89
|
-
} | typeof Map): MahalMap;
|
|
90
|
-
static getInstance(): MahalMap;
|
|
89
|
+
} | typeof Map): MahalMap$1;
|
|
90
|
+
static getInstance(): MahalMap$1;
|
|
91
91
|
destroy(): void;
|
|
92
92
|
getMap(): Map;
|
|
93
93
|
setStyle(theme: "dark" | "light"): void;
|
|
@@ -99,30 +99,18 @@ declare const routingApi: (param: number[][], token: string) => Promise<any>;
|
|
|
99
99
|
|
|
100
100
|
declare function getrouter(param: number[][], typeData: string, token: string): Promise<IRoute[]>;
|
|
101
101
|
|
|
102
|
-
declare const routerUtils_getrouter: typeof getrouter;
|
|
103
|
-
declare namespace routerUtils {
|
|
104
|
-
export { routerUtils_getrouter as getrouter };
|
|
105
|
-
}
|
|
106
|
-
|
|
107
102
|
declare const searchPost: (params: ISearchParam) => Promise<ISearch[]>;
|
|
108
103
|
|
|
109
104
|
declare function search(param: string, token: string, additionalParam?: IAdditionalParamType): Promise<ISearch[]>;
|
|
110
105
|
|
|
111
|
-
|
|
112
|
-
declare
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
declare
|
|
118
|
-
|
|
119
|
-
declare const controller_MahalMap: typeof MahalMap;
|
|
120
|
-
declare const controller_getrouter: typeof getrouter;
|
|
121
|
-
declare const controller_routingApi: typeof routingApi;
|
|
122
|
-
declare const controller_search: typeof search;
|
|
123
|
-
declare const controller_searchPost: typeof searchPost;
|
|
124
|
-
declare namespace controller {
|
|
125
|
-
export { controller_CameraController as CameraController, controller_MahalMap as MahalMap, controller_getrouter as getrouter, controller_routingApi as routingApi, controller_search as search, controller_searchPost as searchPost };
|
|
106
|
+
type MahalMap_CameraController = CameraController;
|
|
107
|
+
declare const MahalMap_CameraController: typeof CameraController;
|
|
108
|
+
declare const MahalMap_getrouter: typeof getrouter;
|
|
109
|
+
declare const MahalMap_routingApi: typeof routingApi;
|
|
110
|
+
declare const MahalMap_search: typeof search;
|
|
111
|
+
declare const MahalMap_searchPost: typeof searchPost;
|
|
112
|
+
declare namespace MahalMap {
|
|
113
|
+
export { MahalMap_CameraController as CameraController, MahalMap$1 as MahalMap, MahalMap_getrouter as getrouter, MahalMap_routingApi as routingApi, MahalMap_search as search, MahalMap_searchPost as searchPost };
|
|
126
114
|
}
|
|
127
115
|
|
|
128
116
|
declare const api: axios.AxiosInstance;
|
|
@@ -150,11 +138,8 @@ declare namespace keyUtils {
|
|
|
150
138
|
|
|
151
139
|
declare const MMap: {
|
|
152
140
|
MahalMap: typeof MahalMap;
|
|
153
|
-
controller: typeof controller;
|
|
154
141
|
keyUtils: typeof keyUtils;
|
|
155
|
-
searchUtils: typeof searchUtils;
|
|
156
|
-
routerUtils: typeof routerUtils;
|
|
157
142
|
loadKeyFromScriptUrl: () => string;
|
|
158
143
|
};
|
|
159
144
|
|
|
160
|
-
export { type IAdditionalParamType, type IMahalMapOptions, type IRoute, type ISearch, type ISearchParam, MahalMap,
|
|
145
|
+
export { type IAdditionalParamType, type IMahalMapOptions, type IRoute, type ISearch, type ISearchParam, MahalMap, MMap as default, keyUtils };
|
package/dist/index.d.ts
CHANGED
|
@@ -79,15 +79,15 @@ declare class CameraController {
|
|
|
79
79
|
setZoom(zoom: number, smooth?: boolean): void;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
declare class MahalMap {
|
|
82
|
+
declare class MahalMap$1 {
|
|
83
83
|
private static instance;
|
|
84
84
|
private map;
|
|
85
85
|
private options;
|
|
86
86
|
private constructor();
|
|
87
87
|
static create(options: IMahalMapOptions, maplibreObject?: {
|
|
88
88
|
Map: typeof Map;
|
|
89
|
-
} | typeof Map): MahalMap;
|
|
90
|
-
static getInstance(): MahalMap;
|
|
89
|
+
} | typeof Map): MahalMap$1;
|
|
90
|
+
static getInstance(): MahalMap$1;
|
|
91
91
|
destroy(): void;
|
|
92
92
|
getMap(): Map;
|
|
93
93
|
setStyle(theme: "dark" | "light"): void;
|
|
@@ -99,30 +99,18 @@ declare const routingApi: (param: number[][], token: string) => Promise<any>;
|
|
|
99
99
|
|
|
100
100
|
declare function getrouter(param: number[][], typeData: string, token: string): Promise<IRoute[]>;
|
|
101
101
|
|
|
102
|
-
declare const routerUtils_getrouter: typeof getrouter;
|
|
103
|
-
declare namespace routerUtils {
|
|
104
|
-
export { routerUtils_getrouter as getrouter };
|
|
105
|
-
}
|
|
106
|
-
|
|
107
102
|
declare const searchPost: (params: ISearchParam) => Promise<ISearch[]>;
|
|
108
103
|
|
|
109
104
|
declare function search(param: string, token: string, additionalParam?: IAdditionalParamType): Promise<ISearch[]>;
|
|
110
105
|
|
|
111
|
-
|
|
112
|
-
declare
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
declare
|
|
118
|
-
|
|
119
|
-
declare const controller_MahalMap: typeof MahalMap;
|
|
120
|
-
declare const controller_getrouter: typeof getrouter;
|
|
121
|
-
declare const controller_routingApi: typeof routingApi;
|
|
122
|
-
declare const controller_search: typeof search;
|
|
123
|
-
declare const controller_searchPost: typeof searchPost;
|
|
124
|
-
declare namespace controller {
|
|
125
|
-
export { controller_CameraController as CameraController, controller_MahalMap as MahalMap, controller_getrouter as getrouter, controller_routingApi as routingApi, controller_search as search, controller_searchPost as searchPost };
|
|
106
|
+
type MahalMap_CameraController = CameraController;
|
|
107
|
+
declare const MahalMap_CameraController: typeof CameraController;
|
|
108
|
+
declare const MahalMap_getrouter: typeof getrouter;
|
|
109
|
+
declare const MahalMap_routingApi: typeof routingApi;
|
|
110
|
+
declare const MahalMap_search: typeof search;
|
|
111
|
+
declare const MahalMap_searchPost: typeof searchPost;
|
|
112
|
+
declare namespace MahalMap {
|
|
113
|
+
export { MahalMap_CameraController as CameraController, MahalMap$1 as MahalMap, MahalMap_getrouter as getrouter, MahalMap_routingApi as routingApi, MahalMap_search as search, MahalMap_searchPost as searchPost };
|
|
126
114
|
}
|
|
127
115
|
|
|
128
116
|
declare const api: axios.AxiosInstance;
|
|
@@ -150,11 +138,8 @@ declare namespace keyUtils {
|
|
|
150
138
|
|
|
151
139
|
declare const MMap: {
|
|
152
140
|
MahalMap: typeof MahalMap;
|
|
153
|
-
controller: typeof controller;
|
|
154
141
|
keyUtils: typeof keyUtils;
|
|
155
|
-
searchUtils: typeof searchUtils;
|
|
156
|
-
routerUtils: typeof routerUtils;
|
|
157
142
|
loadKeyFromScriptUrl: () => string;
|
|
158
143
|
};
|
|
159
144
|
|
|
160
|
-
export { type IAdditionalParamType, type IMahalMapOptions, type IRoute, type ISearch, type ISearchParam, MahalMap,
|
|
145
|
+
export { type IAdditionalParamType, type IMahalMapOptions, type IRoute, type ISearch, type ISearchParam, MahalMap, MMap as default, keyUtils };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var a0_0x295f01=a0_0x1e58;function a0_0x1e58(_0x2ade27,_0xcf1a56){var _0x30c037=a0_0x4956();return a0_0x1e58=function(_0x37add5,_0x5d5879){_0x37add5=_0x37add5-0x116;var _0x114dcf=_0x30c037[_0x37add5];return _0x114dcf;},a0_0x1e58(_0x2ade27,_0xcf1a56);}(function(_0x141743,_0x2beab5){var _0x4fe9be=a0_0x1e58,_0x1760dc=_0x141743();while(!![]){try{var _0x124a8a=-parseInt(_0x4fe9be(0x171))/0x1+-parseInt(_0x4fe9be(0x19c))/0x2+parseInt(_0x4fe9be(0x11d))/0x3+parseInt(_0x4fe9be(0x182))/0x4+-parseInt(_0x4fe9be(0x143))/0x5+parseInt(_0x4fe9be(0x175))/0x6*(-parseInt(_0x4fe9be(0x187))/0x7)+parseInt(_0x4fe9be(0x15d))/0x8;if(_0x124a8a===_0x2beab5)break;else _0x1760dc['push'](_0x1760dc['shift']());}catch(_0x442475){_0x1760dc['push'](_0x1760dc['shift']());}}}(a0_0x4956,0x78024));var U=Object[a0_0x295f01(0x131)],f=Object['defineProperty'],F=Object['getOwnPropertyDescriptor'],D=Object['getOwnPropertyNames'],O=Object[a0_0x295f01(0x129)],X=Object[a0_0x295f01(0x168)]['hasOwnProperty'],u=(_0x7ddaf0,_0x233a8d)=>{var _0x462b3a={'unbTa':function(_0x668942,_0x52e35a,_0x564a17,_0xb5dd48){return _0x668942(_0x52e35a,_0x564a17,_0xb5dd48);}};for(var _0x4e7ada in _0x233a8d)_0x462b3a['unbTa'](f,_0x7ddaf0,_0x4e7ada,{'get':_0x233a8d[_0x4e7ada],'enumerable':!0x0});},P=(_0x507860,_0x1d01db,_0x12d49f,_0x552df5)=>{var _0x1ed062=a0_0x295f01,_0x5933b3={'tKmef':function(_0xc139b7,_0x4d2c77){return _0xc139b7==_0x4d2c77;},'QxYBg':_0x1ed062(0x165),'naqiE':function(_0x582387,_0x2624b2){return _0x582387==_0x2624b2;},'XZPsr':_0x1ed062(0x18d),'ZzDHm':function(_0x5517dd,_0x5f4fcc){return _0x5517dd(_0x5f4fcc);},'WjEEk':function(_0x15f659,_0x124c84){return _0x15f659!==_0x124c84;},'TteaC':function(_0x2a4e03,_0x32d379,_0x5771b0,_0x3ebaa3){return _0x2a4e03(_0x32d379,_0x5771b0,_0x3ebaa3);},'AIXSE':function(_0x4ecc24,_0x2bbf6e,_0x411c37){return _0x4ecc24(_0x2bbf6e,_0x411c37);}};if(_0x1d01db&&_0x5933b3[_0x1ed062(0x14c)](typeof _0x1d01db,_0x5933b3[_0x1ed062(0x197)])||_0x5933b3['naqiE'](typeof _0x1d01db,_0x5933b3['XZPsr'])){for(let _0x38565e of _0x5933b3[_0x1ed062(0x14f)](D,_0x1d01db))!X['call'](_0x507860,_0x38565e)&&_0x5933b3['WjEEk'](_0x38565e,_0x12d49f)&&_0x5933b3[_0x1ed062(0x14b)](f,_0x507860,_0x38565e,{'get':()=>_0x1d01db[_0x38565e],'enumerable':!(_0x552df5=_0x5933b3[_0x1ed062(0x157)](F,_0x1d01db,_0x38565e))||_0x552df5['enumerable']});}return _0x507860;},B=(_0x38b3e1,_0x57cfa2,_0x5a0cf5)=>(_0x5a0cf5=_0x38b3e1!=null?U(O(_0x38b3e1)):{},P(_0x57cfa2||!_0x38b3e1||!_0x38b3e1[a0_0x295f01(0x13e)]?f(_0x5a0cf5,a0_0x295f01(0x181),{'value':_0x38b3e1,'enumerable':!0x0}):_0x5a0cf5,_0x38b3e1)),Z=_0x7d6a3f=>P(f({},a0_0x295f01(0x13e),{'value':!0x0}),_0x7d6a3f),Q={};u(Q,{'MahalMap':()=>d,'controller':()=>T,'keyUtils':()=>w,'routerUtils':()=>A,'searchUtils':()=>I}),module[a0_0x295f01(0x17e)]=Z(Q);function a0_0x4956(){var _0x3be8aa=['QxYBg','pmLmz','route','apply','dark','1445038bnVuxR','pxhTg','lIaCu','string','QZJtB','mMRQU','PHrPi','TGOoP','center','2624502FZWTIw','setZoom','test','constructor','searchParams','status','services/getRoutes','VKduu','mahal_map.sdk.js','return\x20(function()\x20','remove','Map','getPrototypeOf','info','container','xuCKT','post','autoAddVectorSource','theme','length','create','Ошибка\x20при\x20поиске\x20адреса:','light','mMfwV','request','nvmAb','error','cacuN','src','[MahalMap\x20SDK]\x20MapLibre\x20GL\x20не\x20найден.\x20Передай\x20его\x20вторым\x20аргументом\x20или\x20подключи\x20через\x20script.','match','https://mtile.gram.tj/custom-styles/dark-style.json','vJDgF','__esModule','style','reject','xiLua','qyPfV','140875LoFWly','SlhSf','qlcGt','vObyw','eStNU','InvEX','getInstance','getMap','TteaC','tKmef','console','ALIdf','ZzDHm','oCElb','IdgHU','YjvET','ekRiX','split','common','Authorization','AIXSE','headers','RkqsK','zbRay','txiMU','table','12829920oELEnQ','bind','oHiyb','geometry','interceptors','fSADC','destroy','includes','object','uFIaU','Tnxyc','prototype','map','toString','__proto__','services/getAddress','log','kmxim','bZaWo','MbLjX','731290zyYsPJ','defaults','Fhfhv','data','3894XnMvmb','zoom','getElementsByTagName','routes','Bearer\x20','apikey','warn','[MahalMap\x20SDK]\x20Карта\x20ещё\x20не\x20создана','vXlTx','exports','instance','iGFeL','default','879596BvaTqf','4|0|2|1|5|3','2|3|4|1|0','AnqCo','maplibregl','7819zVdlwK','WhZHd','kJZwA','setStyle','saPrO','UZlHc','function','https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json','yHaJM','get','push','nwRkZ','xNtWE','PxskH','aFAHA','rCDIR'];a0_0x4956=function(){return _0x3be8aa;};return a0_0x4956();}var E='https://platform.mahal.tj/api/',x=/^([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?)),\s*([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?))$/,b=/^([-+]?(?:180(?:\.0+)?|(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d+)?)),\s*([-+]?(?:[1-8]?\d(?:\.\d+)?|90(?:\.0+)?))$/,L=a0_0x295f01(0x13c),R='https://mtile.gram.tj/custom-styles/mapstyle.json',k=a0_0x295f01(0x18e);function K(_0x30cd69){var _0x57bc69=a0_0x295f01,_0x5d6f67={'YjvET':function(_0x50462b,_0x49a704){return _0x50462b<_0x49a704;},'SlhSf':function(_0x5a3adc,_0x9efb9b){return _0x5a3adc-_0x9efb9b;},'AnqCo':function(_0x4f4c7d,_0x5d8f08){return _0x4f4c7d<<_0x5d8f08;},'InvEX':function(_0x5caec1,_0x27b4ee){return _0x5caec1&_0x27b4ee;},'oCElb':function(_0x419c2b,_0x500d62){return _0x419c2b>=_0x500d62;},'UZlHc':function(_0x1d4b1e,_0x575eef){return _0x1d4b1e>>_0x575eef;},'VKduu':function(_0x1cc1a2,_0x4154a3){return _0x1cc1a2-_0x4154a3;},'kzmcy':function(_0x4b5e56,_0x5c49b9){return _0x4b5e56&_0x5c49b9;},'kJZwA':function(_0x1a5b4a,_0x2c5f79){return _0x1a5b4a&_0x2c5f79;},'xuCKT':function(_0x5992d0,_0x6b5335){return _0x5992d0*_0x6b5335;}};let _0x46e5fe=[],_0x534834=0x0,_0x61630f=_0x30cd69['length'],_0x4dab22=0x0,_0xa89a1c=0x0;for(;_0x5d6f67[_0x57bc69(0x152)](_0x534834,_0x61630f);){let _0x11b698,_0x30c930=0x0,_0x424d42=0x0;do _0x11b698=_0x5d6f67[_0x57bc69(0x144)](_0x30cd69['charCodeAt'](_0x534834++),0x3f),_0x424d42|=_0x5d6f67['AnqCo'](_0x5d6f67['InvEX'](_0x11b698,0x1f),_0x30c930),_0x30c930+=0x5;while(_0x5d6f67[_0x57bc69(0x150)](_0x11b698,0x20));let _0x35d961=_0x5d6f67[_0x57bc69(0x148)](_0x424d42,0x1)?~(_0x424d42>>0x1):_0x5d6f67[_0x57bc69(0x18c)](_0x424d42,0x1);_0x4dab22+=_0x35d961,_0x30c930=0x0,_0x424d42=0x0;do _0x11b698=_0x5d6f67[_0x57bc69(0x124)](_0x30cd69['charCodeAt'](_0x534834++),0x3f),_0x424d42|=_0x5d6f67[_0x57bc69(0x185)](_0x5d6f67['kzmcy'](_0x11b698,0x1f),_0x30c930),_0x30c930+=0x5;while(_0x11b698>=0x20);let _0x1cb1ab=_0x5d6f67[_0x57bc69(0x189)](_0x424d42,0x1)?~(_0x424d42>>0x1):_0x5d6f67[_0x57bc69(0x18c)](_0x424d42,0x1);_0xa89a1c+=_0x1cb1ab,_0x46e5fe[_0x57bc69(0x191)]([_0x5d6f67['xuCKT'](_0xa89a1c,0.00001),_0x5d6f67[_0x57bc69(0x12c)](_0x4dab22,0.00001)]);}return _0x46e5fe;}var h={'dark':L,'light':R},i=class i{constructor(){}static[a0_0x295f01(0x131)](_0x37fd1e,_0x295837){var _0x35f2ec=a0_0x295f01,_0x516921={'xgogO':_0x35f2ec(0x13a),'TGOoP':function(_0x4ffc9c,_0x29b920){return _0x4ffc9c===_0x29b920;},'uZnLQ':_0x35f2ec(0x19b),'AKgff':_0x35f2ec(0x169)};if(i[_0x35f2ec(0x17f)])return i[_0x35f2ec(0x17f)];let _0x388c6e=window[_0x35f2ec(0x186)]||_0x295837;if(!_0x388c6e)throw new Error(_0x516921['xgogO']);let _0x341949=_0x37fd1e[_0x35f2ec(0x12e)]?k:_0x37fd1e[_0x35f2ec(0x13f)]?_0x37fd1e[_0x35f2ec(0x13f)]:_0x516921[_0x35f2ec(0x11b)](_0x37fd1e[_0x35f2ec(0x12f)],_0x516921['uZnLQ'])?h[_0x35f2ec(0x19b)]:h[_0x35f2ec(0x133)],_0x1e2787=new i();return _0x1e2787['options']=_0x37fd1e,_0x1e2787[_0x35f2ec(0x169)]=new _0x388c6e[(_0x35f2ec(0x128))]({'container':_0x37fd1e[_0x35f2ec(0x12b)]||_0x516921['AKgff'],'style':_0x341949,'center':_0x37fd1e[_0x35f2ec(0x11c)]||[69.624024,40.279687],'zoom':_0x37fd1e[_0x35f2ec(0x176)]||0x5}),i['instance']=_0x1e2787,_0x1e2787;}static[a0_0x295f01(0x149)](){var _0x184c28=a0_0x295f01;if(!i['instance'])throw new Error(_0x184c28(0x17c));return i[_0x184c28(0x17f)];}[a0_0x295f01(0x163)](){var _0x7721a0=a0_0x295f01;this[_0x7721a0(0x169)][_0x7721a0(0x127)](),i[_0x7721a0(0x17f)]=null;}[a0_0x295f01(0x14a)](){var _0x4709ba=a0_0x295f01;return this[_0x4709ba(0x169)];}[a0_0x295f01(0x18a)](_0x99b721){var _0x377661=a0_0x295f01,_0x489989={'ALIdf':function(_0x53df54,_0x50fb59){return _0x53df54===_0x50fb59;},'fwtVz':_0x377661(0x19b)};this['map'][_0x377661(0x18a)](_0x489989[_0x377661(0x14e)](_0x99b721,_0x489989['fwtVz'])?h[_0x377661(0x19b)]:h[_0x377661(0x133)]);}['setCenter'](_0x13fea4){this['map']['setCenter'](_0x13fea4);}[a0_0x295f01(0x11e)](_0x1c6070){var _0x4b379b=a0_0x295f01;this[_0x4b379b(0x169)][_0x4b379b(0x11e)](_0x1c6070);}};i[a0_0x295f01(0x17f)]=null;var d=i,T={};u(T,{'api':()=>m,'checkCoordinates':()=>$,'clearKey':()=>y,'debounce':()=>S,'getApiKey':()=>l,'saveKey':()=>g});var j=B(require('axios')),m=j[a0_0x295f01(0x181)][a0_0x295f01(0x131)]({'baseURL':E});m[a0_0x295f01(0x161)][a0_0x295f01(0x135)]['use'](_0x23cd03=>_0x23cd03,_0x5474a4=>(_0x5474a4['request']?.[a0_0x295f01(0x122)]===0x191&&y(),Promise[a0_0x295f01(0x140)](_0x5474a4)));function $(_0x5d1474){var _0x296429=a0_0x295f01,_0x35c0d3={'EyPog':'Ошибка\x20при\x20поиске\x20адреса:','pmLmz':function(_0x1d5ebb,_0x457041){return _0x1d5ebb===_0x457041;},'kmxim':_0x296429(0x162),'snvVR':'Неверный\x20формат\x20координат'};let _0x330077,_0x1ef2da;if(x['test'](_0x5d1474)){let _0x3f9754=_0x5d1474[_0x296429(0x13b)](x);_0x3f9754&&([,_0x330077,_0x1ef2da]=_0x3f9754);}else{if(b[_0x296429(0x11f)](_0x5d1474)){if(_0x35c0d3[_0x296429(0x198)](_0x35c0d3[_0x296429(0x16e)],_0x35c0d3[_0x296429(0x16e)])){let _0x5f3f04=_0x5d1474[_0x296429(0x13b)](b);_0x5f3f04&&([,_0x1ef2da,_0x330077]=_0x5f3f04);}else throw _0x549064[_0x296429(0x137)](_0x35c0d3['EyPog'],_0x3f3f99),_0x1c2756;}else return console['log'](_0x35c0d3['snvVR']),null;}return{'lat':_0x330077,'lng':_0x1ef2da};}var w={};u(w,{'clearKey':()=>y,'getApiKey':()=>l,'saveKey':()=>g});var M='';function g(_0x1ebdeb){var _0x350286=a0_0x295f01;_0x1ebdeb!==''&&(M=_0x1ebdeb,m[_0x350286(0x172)][_0x350286(0x158)]['common']['Authorization']='Bearer\x20'+_0x1ebdeb);}function y(){var _0x2c9c61=a0_0x295f01,_0x156088={'KDEup':function(_0x492dcd){return _0x492dcd();},'PHrPi':function(_0x155b01,_0x4cff1e){return _0x155b01(_0x4cff1e);},'zbRay':_0x2c9c61(0x126),'orLeq':'{}.constructor(\x22return\x20this\x22)(\x20)','mMRQU':_0x2c9c61(0x12a),'xiLua':'trace','mMfwV':function(_0x3bb275,_0x22c4db){return _0x3bb275<_0x22c4db;},'lIaCu':_0x2c9c61(0x183)},_0x1b83e2=_0x2c9c61(0x184)[_0x2c9c61(0x154)]('|'),_0x3b949d=0x0;while(!![]){switch(_0x1b83e2[_0x3b949d++]){case'0':M='',m[_0x2c9c61(0x172)]['headers']['common'][_0x2c9c61(0x156)]='';continue;case'1':_0x156088['KDEup'](_0x263f2a);continue;case'2':var _0x1e3ac9={'vJDgF':function(_0x2fabb6,_0x2da49e){var _0x36b6ba=_0x2c9c61;return _0x156088[_0x36b6ba(0x11a)](_0x2fabb6,_0x2da49e);},'uFIaU':_0x156088[_0x2c9c61(0x15a)],'PxskH':_0x156088['orLeq'],'vXlTx':function(_0x31f81e){return _0x31f81e();},'ekRiX':_0x156088[_0x2c9c61(0x119)],'iGFeL':_0x2c9c61(0x137),'MbLjX':'exception','qyPfV':_0x2c9c61(0x15c),'tNzfD':_0x156088[_0x2c9c61(0x141)],'tmAVB':function(_0x515d96,_0x23a876){var _0x237668=_0x2c9c61;return _0x156088[_0x237668(0x134)](_0x515d96,_0x23a876);},'lpHXl':_0x156088[_0x2c9c61(0x116)]};continue;case'3':var _0x13b213=(function(){var _0x4173a6=!![];return function(_0xf22231,_0x169c88){var _0x4a71b8=_0x4173a6?function(){var _0x341b64=a0_0x1e58;if(_0x169c88){var _0x59a409=_0x169c88[_0x341b64(0x19a)](_0xf22231,arguments);return _0x169c88=null,_0x59a409;}}:function(){};return _0x4173a6=![],_0x4a71b8;};}());continue;case'4':var _0x263f2a=_0x13b213(this,function(){var _0x3d32ae=_0x2c9c61,_0x1e7946='1|0|3|2|4'[_0x3d32ae(0x154)]('|'),_0x5126f9=0x0;while(!![]){switch(_0x1e7946[_0x5126f9++]){case'0':try{var _0x332d89=_0x1e3ac9[_0x3d32ae(0x13d)](Function,_0x1e3ac9[_0x3d32ae(0x166)]+_0x1e3ac9[_0x3d32ae(0x194)]+');');_0x4a4312=_0x1e3ac9[_0x3d32ae(0x17d)](_0x332d89);}catch(_0x3ff135){_0x4a4312=window;}continue;case'1':var _0x4a4312;continue;case'2':var _0x315ab5=[_0x3d32ae(0x16d),_0x3d32ae(0x17b),_0x1e3ac9[_0x3d32ae(0x153)],_0x1e3ac9[_0x3d32ae(0x180)],_0x1e3ac9[_0x3d32ae(0x170)],_0x1e3ac9[_0x3d32ae(0x142)],_0x1e3ac9['tNzfD']];continue;case'3':var _0x2ead07=_0x4a4312[_0x3d32ae(0x14d)]=_0x4a4312['console']||{};continue;case'4':for(var _0x51344c=0x0;_0x1e3ac9['tmAVB'](_0x51344c,_0x315ab5['length']);_0x51344c++){var _0x105406=_0x1e3ac9['lpHXl'][_0x3d32ae(0x154)]('|'),_0x2c4400=0x0;while(!![]){switch(_0x105406[_0x2c4400++]){case'0':var _0x553c6c=_0x315ab5[_0x51344c];continue;case'1':_0x36926d[_0x3d32ae(0x16b)]=_0x13b213['bind'](_0x13b213);continue;case'2':var _0x8d7baa=_0x2ead07[_0x553c6c]||_0x36926d;continue;case'3':_0x2ead07[_0x553c6c]=_0x36926d;continue;case'4':var _0x36926d=_0x13b213[_0x3d32ae(0x120)]['prototype'][_0x3d32ae(0x15e)](_0x13b213);continue;case'5':_0x36926d['toString']=_0x8d7baa[_0x3d32ae(0x16a)][_0x3d32ae(0x15e)](_0x8d7baa);continue;}break;}}continue;}break;}});continue;}break;}}var l=()=>M;function S(_0x4d87bb,_0x582fd3){var _0x6ba96f={'vObyw':function(_0x5bd24c,..._0xab9b61){return _0x5bd24c(..._0xab9b61);},'omDYr':function(_0x11be3f,_0x5604cf,_0x5242c9){return _0x11be3f(_0x5604cf,_0x5242c9);}};let _0x39bf31;return(..._0x4acf61)=>(_0x39bf31&&clearTimeout(_0x39bf31),new Promise(_0x56fe24=>{_0x39bf31=_0x6ba96f['omDYr'](setTimeout,async()=>{var _0x2f7944=a0_0x1e58,_0x10e0cf=await _0x6ba96f[_0x2f7944(0x146)](_0x4d87bb,..._0x4acf61);_0x56fe24(_0x10e0cf);},_0x582fd3);}));}var v=async(_0x45c349,_0x4e1a22)=>{var _0x2c1e1d=a0_0x295f01,_0x7a8561={'txiMU':_0x2c1e1d(0x17a),'nvmAb':_0x2c1e1d(0x159),'nhkZH':_0x2c1e1d(0x192),'aFAHA':_0x2c1e1d(0x123),'saPrO':function(_0x271cd7){return _0x271cd7();},'EyFfg':function(_0x4f7f11,_0x3e1eaf){return _0x4f7f11!==_0x3e1eaf;},'QZJtB':_0x2c1e1d(0x173)};try{if(_0x7a8561[_0x2c1e1d(0x136)]===_0x7a8561['nhkZH']){let _0x3f06b8=new _0x3352f7(_0x38579d['src'])[_0x2c1e1d(0x121)][_0x2c1e1d(0x190)](_0x7a8561[_0x2c1e1d(0x15b)]);if(_0x3f06b8)return _0x3f06b8;}else{let _0x2af885=[];return _0x45c349['forEach'](_0x4c5b30=>{var _0x410d3e=_0x2c1e1d;_0x2af885[_0x410d3e(0x191)]({'lng':_0x4c5b30[0x0],'lat':_0x4c5b30[0x1]});}),(await m[_0x2c1e1d(0x12d)](_0x7a8561[_0x2c1e1d(0x195)],{'points':_0x2af885,'token':_0x4e1a22||_0x7a8561[_0x2c1e1d(0x18b)](l)}))['data'];}}catch(_0x1f0a1d){if(_0x7a8561['EyFfg'](_0x7a8561['QZJtB'],_0x7a8561[_0x2c1e1d(0x118)])){if(_0x2284f6){var _0x286a1f=_0x5f4d11[_0x2c1e1d(0x19a)](_0x1d8ab5,arguments);return _0x49d74e=null,_0x286a1f;}}else throw console[_0x2c1e1d(0x137)](_0x1f0a1d),_0x1f0a1d;}},A={};u(A,{'getrouter':()=>z});async function z(_0x238754,_0x171e6f,_0x22cbe9){var _0x11a56b=a0_0x295f01;try{let _0x439b91=await v(_0x238754,_0x22cbe9);return _0x439b91?.[_0x11a56b(0x174)]?_0x439b91['data'][_0x11a56b(0x169)](_0x83a9a3=>{var _0x467f22=_0x11a56b;let _0xb50193={..._0x83a9a3};return _0xb50193[_0x467f22(0x199)]?.[_0x467f22(0x178)]?.[_0x467f22(0x130)]&&(_0xb50193[_0x467f22(0x199)][_0x467f22(0x178)]=_0xb50193[_0x467f22(0x199)][_0x467f22(0x178)]['map'](_0x17c291=>({..._0x17c291,'geometry':_0x171e6f==='geojson'&&typeof _0x17c291[_0x467f22(0x160)]==_0x467f22(0x117)?K(_0x17c291[_0x467f22(0x160)]):_0x17c291['geometry']}))),_0xb50193;}):_0x439b91;}catch(_0x2abfcf){throw _0x2abfcf;}}var G=async _0x4c7555=>{var _0x575b1f=a0_0x295f01,_0x450d40={'oHiyb':_0x575b1f(0x16c),'IdgHU':_0x575b1f(0x16f),'pxhTg':_0x575b1f(0x132)};try{return(await m[_0x575b1f(0x12d)](_0x450d40[_0x575b1f(0x15f)],_0x4c7555))['data'];}catch(_0x25829c){if('LXEXy'!==_0x450d40[_0x575b1f(0x151)])throw console[_0x575b1f(0x137)](_0x450d40[_0x575b1f(0x19d)],_0x25829c),_0x25829c;else this[_0x575b1f(0x169)][_0x575b1f(0x127)](),_0x5a9cdc['instance']=null;}},I={};u(I,{'search':()=>H});async function V(_0x5cc295,_0x460553,_0x12726e){var _0x598cd4=a0_0x295f01,_0x1fde05={'yHaJM':function(_0x378810){return _0x378810();},'cacuN':function(_0x3b82a1,_0x21bb2e){return _0x3b82a1(_0x21bb2e);}};let _0xd845fe={'text':_0x5cc295,'token':_0x460553||_0x1fde05[_0x598cd4(0x18f)](l),..._0x12726e};try{return await _0x1fde05[_0x598cd4(0x138)](G,_0xd845fe);}catch(_0x369e85){throw _0x369e85;}}var q=S(V,0x1f4);async function H(_0x19286d,_0x4a2793,_0x3b63ac){var _0x136e21=a0_0x295f01,_0x500ece={'eStNU':function(_0x43d88b,_0x525ff5,_0x209fb4,_0x45cf7c){return _0x43d88b(_0x525ff5,_0x209fb4,_0x45cf7c);}};return await _0x500ece[_0x136e21(0x147)](q,_0x19286d,_0x4a2793,_0x3b63ac);}function J(){var _0x1e871a=a0_0x295f01,_0x4583a8={'IXVbF':function(_0x553323,_0x534bc1){return _0x553323!==_0x534bc1;},'xNtWE':'script','Tnxyc':_0x1e871a(0x125),'WhZHd':_0x1e871a(0x145),'rCDIR':_0x1e871a(0x17a)};let _0x522d40=document[_0x1e871a(0x177)](_0x4583a8[_0x1e871a(0x193)]);for(let _0x4230d9 of _0x522d40)if(_0x4230d9[_0x1e871a(0x139)][_0x1e871a(0x164)](_0x4583a8[_0x1e871a(0x167)])){if(_0x4583a8[_0x1e871a(0x188)]===_0x4583a8['WhZHd']){let _0x47b968=new URL(_0x4230d9[_0x1e871a(0x139)])['searchParams'][_0x1e871a(0x190)](_0x4583a8[_0x1e871a(0x196)]);if(_0x47b968)return _0x47b968;}else _0x4583a8['IXVbF'](_0x1c387a,'')&&(_0x8e479d=_0x15bff9,_0x4c17f6[_0x1e871a(0x172)]['headers'][_0x1e871a(0x155)][_0x1e871a(0x156)]=_0x1e871a(0x179)+_0x58c276);}return'';}g(J()),0x0&&(module[a0_0x295f01(0x17e)]={'MahalMap':MahalMap,'controller':controller,'keyUtils':keyUtils,'routerUtils':routerUtils,'searchUtils':searchUtils});
|
|
1
|
+
'use strict';var a0_0x47e228=a0_0x459f;(function(_0x1cf899,_0x2f1d1b){var _0x511f88=a0_0x459f,_0x44ed91=_0x1cf899();while(!![]){try{var _0x548a7c=-parseInt(_0x511f88(0x1ee))/0x1*(parseInt(_0x511f88(0x25c))/0x2)+-parseInt(_0x511f88(0x243))/0x3*(-parseInt(_0x511f88(0x1f0))/0x4)+-parseInt(_0x511f88(0x1f9))/0x5*(parseInt(_0x511f88(0x1cf))/0x6)+-parseInt(_0x511f88(0x1dd))/0x7*(parseInt(_0x511f88(0x255))/0x8)+parseInt(_0x511f88(0x239))/0x9+parseInt(_0x511f88(0x1e5))/0xa+parseInt(_0x511f88(0x221))/0xb*(parseInt(_0x511f88(0x22d))/0xc);if(_0x548a7c===_0x2f1d1b)break;else _0x44ed91['push'](_0x44ed91['shift']());}catch(_0x541f72){_0x44ed91['push'](_0x44ed91['shift']());}}}(a0_0x4b85,0x6e264));var G=Object[a0_0x47e228(0x258)],u=Object[a0_0x47e228(0x1d6)],C=Object[a0_0x47e228(0x1e8)],N=Object[a0_0x47e228(0x21d)],F=Object[a0_0x47e228(0x22a)],U=Object[a0_0x47e228(0x224)][a0_0x47e228(0x250)],h=(_0x385479,_0x1b7689)=>{var _0x3ad780=a0_0x47e228,_0xd6194b={'cvYVc':function(_0x8e8b48,_0x3b446e,_0x1e3d1b,_0x64a1f6){return _0x8e8b48(_0x3b446e,_0x1e3d1b,_0x64a1f6);}};for(var _0x37fb4b in _0x1b7689)_0xd6194b[_0x3ad780(0x247)](u,_0x385479,_0x37fb4b,{'get':_0x1b7689[_0x37fb4b],'enumerable':!0x0});},A=(_0x31d13d,_0x4642cb,_0x3d5593,_0x1f97a2)=>{var _0x362095=a0_0x47e228,_0x33545e={'UteaG':function(_0x29fc3f,_0x52ca15){return _0x29fc3f==_0x52ca15;},'gloUj':function(_0x1d3300,_0x580c5d){return _0x1d3300==_0x580c5d;},'JNTfL':_0x362095(0x1d7),'hKTiB':function(_0x12c424,_0x2b6715){return _0x12c424!==_0x2b6715;},'QDnVS':function(_0x3fdc54,_0x350ed8,_0x19babd,_0x2f95f0){return _0x3fdc54(_0x350ed8,_0x19babd,_0x2f95f0);},'sayXr':function(_0x407b03,_0x492993,_0x13c176){return _0x407b03(_0x492993,_0x13c176);}};if(_0x4642cb&&_0x33545e['UteaG'](typeof _0x4642cb,_0x362095(0x220))||_0x33545e['gloUj'](typeof _0x4642cb,_0x33545e[_0x362095(0x1c9)])){for(let _0x384936 of N(_0x4642cb))!U[_0x362095(0x241)](_0x31d13d,_0x384936)&&_0x33545e['hKTiB'](_0x384936,_0x3d5593)&&_0x33545e[_0x362095(0x213)](u,_0x31d13d,_0x384936,{'get':()=>_0x4642cb[_0x384936],'enumerable':!(_0x1f97a2=_0x33545e['sayXr'](C,_0x4642cb,_0x384936))||_0x1f97a2[_0x362095(0x1fa)]});}return _0x31d13d;},D=(_0x2888eb,_0x2e423f,_0x5dd120)=>(_0x5dd120=_0x2888eb!=null?G(F(_0x2888eb)):{},A(_0x2e423f||!_0x2888eb||!_0x2888eb[a0_0x47e228(0x20e)]?u(_0x5dd120,'default',{'value':_0x2888eb,'enumerable':!0x0}):_0x5dd120,_0x2888eb)),O=_0x1deda7=>A(u({},a0_0x47e228(0x20e),{'value':!0x0}),_0x1deda7),V={};h(V,{'MahalMap':()=>T,'keyUtils':()=>M}),module[a0_0x47e228(0x1cc)]=O(V);var T={};h(T,{'CameraController':()=>d,'MahalMap':()=>y,'getrouter':()=>X,'routingApi':()=>w,'search':()=>$,'searchPost':()=>S});var d=class{constructor(_0x4726b6){this['map']=_0x4726b6;}[a0_0x47e228(0x238)](_0x999f92,_0x2ca149=!0x0){var _0x3933ce=a0_0x47e228;_0x2ca149?this['map'][_0x3933ce(0x1ff)]({'zoom':_0x999f92}):this[_0x3933ce(0x208)][_0x3933ce(0x238)](_0x999f92);}},I=a0_0x47e228(0x215),P='https://mtile.gram.tj/custom-styles/dark-style.json',E=a0_0x47e228(0x246),L=a0_0x47e228(0x251);function R(_0x1c8e72){var _0x26ee1c=a0_0x47e228,_0x101405={'QMnDa':function(_0x3500c2,_0x2985e6){return _0x3500c2===_0x2985e6;},'WRAbN':_0x26ee1c(0x1eb),'mzYXN':'map','sLtKL':function(_0x1969ba,_0x1de32c){return _0x1969ba<_0x1de32c;},'rQqsM':_0x26ee1c(0x24c),'rOwPm':function(_0x531415,_0x49f21f){return _0x531415-_0x49f21f;},'bXHeV':function(_0xf6d1fc,_0x280908){return _0xf6d1fc&_0x280908;},'cNYYB':function(_0x4325c1,_0x195e20){return _0x4325c1>=_0x195e20;},'WTqTa':function(_0xb012f0,_0x113ad0){return _0xb012f0&_0x113ad0;},'jbsjx':function(_0x3cc78b,_0x559203){return _0x3cc78b<<_0x559203;},'UzBIr':function(_0x2fb146,_0x4adc49){return _0x2fb146>=_0x4adc49;},'yZgbS':function(_0x51742d,_0x104264){return _0x51742d>>_0x104264;},'MJTev':function(_0x30361e,_0xd731f0){return _0x30361e>>_0xd731f0;},'MwWJN':function(_0x515735,_0x44f79e){return _0x515735*_0x44f79e;},'ujCcn':function(_0xba3299,_0x13e165){return _0xba3299*_0x13e165;}};let _0x16c071=[],_0x5202fa=0x0,_0x5dd1cd=_0x1c8e72[_0x26ee1c(0x23d)],_0x4b5e1c=0x0,_0x2abe0a=0x0;for(;_0x101405[_0x26ee1c(0x207)](_0x5202fa,_0x5dd1cd);){if(_0x26ee1c(0x24c)===_0x101405[_0x26ee1c(0x222)]){let _0x363a9f,_0x16f04a=0x0,_0x2715e4=0x0;do _0x363a9f=_0x101405[_0x26ee1c(0x259)](_0x1c8e72[_0x26ee1c(0x25f)](_0x5202fa++),0x3f),_0x2715e4|=_0x101405['bXHeV'](_0x363a9f,0x1f)<<_0x16f04a,_0x16f04a+=0x5;while(_0x101405['cNYYB'](_0x363a9f,0x20));let _0x452eab=_0x101405['WTqTa'](_0x2715e4,0x1)?~(_0x2715e4>>0x1):_0x2715e4>>0x1;_0x4b5e1c+=_0x452eab,_0x16f04a=0x0,_0x2715e4=0x0;do _0x363a9f=_0x1c8e72['charCodeAt'](_0x5202fa++)-0x3f,_0x2715e4|=_0x101405[_0x26ee1c(0x261)](_0x363a9f&0x1f,_0x16f04a),_0x16f04a+=0x5;while(_0x101405[_0x26ee1c(0x22f)](_0x363a9f,0x20));let _0x5d79c0=_0x2715e4&0x1?~_0x101405[_0x26ee1c(0x21b)](_0x2715e4,0x1):_0x101405['MJTev'](_0x2715e4,0x1);_0x2abe0a+=_0x5d79c0,_0x16c071[_0x26ee1c(0x1d9)]([_0x101405[_0x26ee1c(0x1ea)](_0x2abe0a,0.00001),_0x101405[_0x26ee1c(0x200)](_0x4b5e1c,0.00001)]);}else{if(_0x30e5bb[_0x26ee1c(0x1d3)])return _0x15ef8c[_0x26ee1c(0x1d3)];let _0x5a858f=_0x4127a6[_0x26ee1c(0x1ed)]||_0x311cb9;if(!_0x5a858f)throw new _0x4bd687(_0x26ee1c(0x230));let _0x1d6090=_0x4e23c1[_0x26ee1c(0x20d)]?_0x3684a7:_0x68332d[_0x26ee1c(0x249)]?_0x2c5c2d['style']:_0x101405[_0x26ee1c(0x232)](_0x200e60['theme'],_0x101405[_0x26ee1c(0x21a)])?_0xb67d0f[_0x26ee1c(0x1eb)]:_0x196ee5[_0x26ee1c(0x206)],_0x38f19b=new _0x44c54b();return _0x38f19b[_0x26ee1c(0x25a)]=_0x2b8eb1,_0x38f19b[_0x26ee1c(0x208)]=new _0x5a858f[(_0x26ee1c(0x210))]({'container':_0x26a83c[_0x26ee1c(0x240)]||_0x101405['mzYXN'],'style':_0x1d6090,'center':_0x3ee620[_0x26ee1c(0x212)]||[69.624024,40.279687],'zoom':_0x2b185c[_0x26ee1c(0x1fc)]||0x5}),_0xb9fe27[_0x26ee1c(0x1d3)]=_0x38f19b,_0x38f19b;}}return _0x16c071;}var f={'dark':P,'light':E},i=class i{constructor(){}static[a0_0x47e228(0x258)](_0x3de5e0,_0x284142){var _0x3217e8=a0_0x47e228,_0x249018={'KxDXH':'[MahalMap\x20SDK]\x20MapLibre\x20GL\x20не\x20найден.\x20Передай\x20его\x20вторым\x20аргументом\x20или\x20подключи\x20через\x20script.','TubNd':function(_0x2cb782,_0x358a0a){return _0x2cb782===_0x358a0a;},'qRDhd':'dark','zfSHC':_0x3217e8(0x208)};if(i[_0x3217e8(0x1d3)])return i[_0x3217e8(0x1d3)];let _0x356dcb=window[_0x3217e8(0x1ed)]||_0x284142;if(!_0x356dcb)throw new Error(_0x249018[_0x3217e8(0x228)]);let _0x39570e=_0x3de5e0['autoAddVectorSource']?L:_0x3de5e0[_0x3217e8(0x249)]?_0x3de5e0['style']:_0x249018[_0x3217e8(0x20c)](_0x3de5e0[_0x3217e8(0x248)],_0x249018[_0x3217e8(0x204)])?f['dark']:f['light'],_0x47bdf6=new i();return _0x47bdf6['options']=_0x3de5e0,_0x47bdf6['map']=new _0x356dcb[(_0x3217e8(0x210))]({'container':_0x3de5e0[_0x3217e8(0x240)]||_0x249018[_0x3217e8(0x1ec)],'style':_0x39570e,'center':_0x3de5e0[_0x3217e8(0x212)]||[69.624024,40.279687],'zoom':_0x3de5e0['zoom']||0x5}),i[_0x3217e8(0x1d3)]=_0x47bdf6,_0x47bdf6;}static[a0_0x47e228(0x24a)](){var _0x4a591b=a0_0x47e228,_0x413f5b={'TJfHr':_0x4a591b(0x233)};if(!i[_0x4a591b(0x1d3)])throw new Error(_0x413f5b[_0x4a591b(0x203)]);return i[_0x4a591b(0x1d3)];}[a0_0x47e228(0x1f3)](){var _0x1f6e7d=a0_0x47e228;this[_0x1f6e7d(0x208)]['remove'](),i['instance']=null;}[a0_0x47e228(0x1ef)](){return this['map'];}[a0_0x47e228(0x1f4)](_0x3b3baa){var _0x502bcc=a0_0x47e228,_0x4bb042={'TJbDS':_0x502bcc(0x1eb)};this['map'][_0x502bcc(0x1f4)](_0x3b3baa===_0x4bb042[_0x502bcc(0x25b)]?f[_0x502bcc(0x1eb)]:f[_0x502bcc(0x206)]);}['setCenter'](_0x366345){var _0x2ad52d=a0_0x47e228;this[_0x2ad52d(0x208)][_0x2ad52d(0x245)](_0x366345);}['setZoom'](_0x286b4c){var _0x5595e4=a0_0x47e228;this['map'][_0x5595e4(0x238)](_0x286b4c);}};i[a0_0x47e228(0x1d3)]=null;var y=i,k=D(require('axios')),c=k[a0_0x47e228(0x1db)]['create']({'baseURL':I});c[a0_0x47e228(0x219)]['request'][a0_0x47e228(0x256)](_0x31b853=>_0x31b853,_0xe4b3d2=>(_0xe4b3d2['request']?.[a0_0x47e228(0x1f6)]===0x191&&g(),Promise[a0_0x47e228(0x229)](_0xe4b3d2)));var M={};h(M,{'clearKey':()=>g,'getApiKey':()=>l,'saveKey':()=>b});var x='';function b(_0x5e84a0){var _0x16e7bd=a0_0x47e228,_0x581a62={'oYPwM':function(_0x15073a,_0x4e88a2){return _0x15073a!==_0x4e88a2;}};_0x581a62[_0x16e7bd(0x260)](_0x5e84a0,'')&&(x=_0x5e84a0,c[_0x16e7bd(0x1de)]['headers']['common'][_0x16e7bd(0x235)]=_0x16e7bd(0x1f1)+_0x5e84a0);}function g(){var _0x2c972e=a0_0x47e228,_0x2296ea={'KNKHL':_0x2c972e(0x217),'owqcr':function(_0x5035d9,_0x2be2a6){return _0x5035d9(_0x2be2a6);},'MbkFE':'return\x20(function()\x20','XtNqG':'{}.constructor(\x22return\x20this\x22)(\x20)','LvQUs':_0x2c972e(0x1cd),'cGMVJ':_0x2c972e(0x21f),'YFcxP':_0x2c972e(0x201),'LXsgJ':'info','YzMza':_0x2c972e(0x1d4),'BnjXt':_0x2c972e(0x21c),'NWTVM':_0x2c972e(0x1e2),'ITXxG':_0x2c972e(0x223),'JcSkS':function(_0x205171,_0x2475e9,_0x263a0d){return _0x205171(_0x2475e9,_0x263a0d);},'oCvwX':function(_0x592ed5){return _0x592ed5();}},_0x50206f=(function(){var _0x3f86b4=!![];return function(_0xb405ef,_0x452418){var _0x4ebfb5=_0x3f86b4?function(){var _0x387345=a0_0x459f;if(_0x452418){var _0x342b6a=_0x452418[_0x387345(0x1f2)](_0xb405ef,arguments);return _0x452418=null,_0x342b6a;}}:function(){};return _0x3f86b4=![],_0x4ebfb5;};}()),_0x356157=_0x2296ea['JcSkS'](_0x50206f,this,function(){var _0x4e36c0=_0x2c972e,_0x574b0a={'OgYJn':function(_0x1efc67,_0x225986){return _0x1efc67!==_0x225986;},'rMyDQ':_0x2296ea[_0x4e36c0(0x234)],'kAYVs':function(_0x5c57c4,_0x379a0a){return _0x2296ea['owqcr'](_0x5c57c4,_0x379a0a);},'OAYrw':_0x2296ea[_0x4e36c0(0x216)],'QJpkb':_0x2296ea[_0x4e36c0(0x1f8)],'Uiuks':_0x2296ea[_0x4e36c0(0x1fe)],'GTkMd':_0x2296ea['cGMVJ']},_0x4a9985=function(){var _0x275802=_0x4e36c0,_0x5d2717;try{_0x574b0a['OgYJn'](_0x275802(0x217),_0x574b0a['rMyDQ'])?(this[_0x275802(0x208)][_0x275802(0x1fd)](),_0x3d0664[_0x275802(0x1d3)]=null):_0x5d2717=_0x574b0a['kAYVs'](Function,_0x574b0a['OAYrw']+_0x574b0a[_0x275802(0x226)]+');')();}catch(_0x24c9cf){_0x574b0a[_0x275802(0x209)]===_0x574b0a[_0x275802(0x20f)]?_0x79c6f3=_0x3e3955:_0x5d2717=window;}return _0x5d2717;},_0x1cd6bf=_0x4a9985(),_0xce8e20=_0x1cd6bf['console']=_0x1cd6bf[_0x4e36c0(0x1d8)]||{},_0x2943c7=[_0x4e36c0(0x24f),_0x2296ea[_0x4e36c0(0x244)],_0x2296ea['LXsgJ'],_0x2296ea['YzMza'],_0x2296ea[_0x4e36c0(0x242)],_0x4e36c0(0x262),_0x2296ea['NWTVM']];for(var _0x498f69=0x0;_0x498f69<_0x2943c7[_0x4e36c0(0x23d)];_0x498f69++){var _0x44f9f1=_0x2296ea['ITXxG'][_0x4e36c0(0x1da)]('|'),_0x48a6f4=0x0;while(!![]){switch(_0x44f9f1[_0x48a6f4++]){case'0':var _0x865399=_0x2943c7[_0x498f69];continue;case'1':_0xce8e20[_0x865399]=_0x546339;continue;case'2':var _0x510f90=_0xce8e20[_0x865399]||_0x546339;continue;case'3':var _0x546339=_0x50206f[_0x4e36c0(0x25e)][_0x4e36c0(0x224)][_0x4e36c0(0x23f)](_0x50206f);continue;case'4':_0x546339[_0x4e36c0(0x22e)]=_0x50206f['bind'](_0x50206f);continue;case'5':_0x546339[_0x4e36c0(0x1cb)]=_0x510f90[_0x4e36c0(0x1cb)][_0x4e36c0(0x23f)](_0x510f90);continue;}break;}}});_0x2296ea[_0x2c972e(0x236)](_0x356157),(x='',c['defaults']['headers'][_0x2c972e(0x24e)][_0x2c972e(0x235)]='');}function a0_0x459f(_0x14b0c4,_0x27719d){var _0x4b3808=a0_0x4b85();return a0_0x459f=function(_0x332246,_0x2b7568){_0x332246=_0x332246-0x1c9;var _0x32ac2a=_0x4b3808[_0x332246];return _0x32ac2a;},a0_0x459f(_0x14b0c4,_0x27719d);}var l=()=>x;function K(_0x75173f,_0x1c5663){var _0x534c93={'hxCsS':function(_0x569e38,..._0x1b8be5){return _0x569e38(..._0x1b8be5);},'qiPaz':function(_0x23c031,_0x2eede6,_0xe4fff1){return _0x23c031(_0x2eede6,_0xe4fff1);}};let _0x421f47;return(..._0x337e99)=>(_0x421f47&&clearTimeout(_0x421f47),new Promise(_0xc1c606=>{var _0x228d9f=a0_0x459f,_0x514d33={'LYqLu':function(_0x8b70b8,..._0x2d5eb2){var _0xbba1b9=a0_0x459f;return _0x534c93[_0xbba1b9(0x20b)](_0x8b70b8,..._0x2d5eb2);}};_0x421f47=_0x534c93[_0x228d9f(0x23c)](setTimeout,async()=>{var _0x13b03d=_0x228d9f,_0x37e9ce=await _0x514d33['LYqLu'](_0x75173f,..._0x337e99);_0x514d33[_0x13b03d(0x1fb)](_0xc1c606,_0x37e9ce);},_0x1c5663);}));}var w=async(_0x5d4295,_0xda21ec)=>{var _0x270456=a0_0x47e228,_0x4203b6={'SMoPN':function(_0x5db632,_0x6c4535,_0x523cd8,_0x169fa4){return _0x5db632(_0x6c4535,_0x523cd8,_0x169fa4);},'iWVxv':_0x270456(0x253),'ROHpR':_0x270456(0x1e9),'QBOGg':_0x270456(0x231),'zGstj':function(_0x2bd001){return _0x2bd001();},'ukIlK':function(_0x51c7ed,_0x20bf0f){return _0x51c7ed===_0x20bf0f;},'bJItm':_0x270456(0x1ca)};try{if(_0x4203b6[_0x270456(0x1e1)]!==_0x4203b6[_0x270456(0x1e7)]){let _0x39a5f8=[];return _0x5d4295[_0x270456(0x1d2)](_0x116d4a=>{var _0x187354=_0x270456;_0x39a5f8[_0x187354(0x1d9)]({'lng':_0x116d4a[0x0],'lat':_0x116d4a[0x1]});}),(await c[_0x270456(0x227)](_0x4203b6[_0x270456(0x1df)],{'points':_0x39a5f8,'token':_0xda21ec||_0x4203b6['zGstj'](l)}))[_0x270456(0x1e0)];}else this[_0x270456(0x208)][_0x270456(0x245)](_0xba40a4);}catch(_0x412c27){if(_0x4203b6[_0x270456(0x24b)](_0x4203b6[_0x270456(0x25d)],_0x270456(0x1e3))){for(var _0x7ff6ee in _0x4db8fc)_0x4203b6[_0x270456(0x254)](_0x2dae92,_0x4fa95f,_0x7ff6ee,{'get':_0x39f555[_0x7ff6ee],'enumerable':!0x0});}else throw console['error'](_0x412c27),_0x412c27;}};async function X(_0x25f5ac,_0x33baca,_0x254f26){var _0x1232fd=a0_0x47e228,_0x6fba32={'eGgJZ':function(_0x3d2632,_0x2285ba){return _0x3d2632===_0x2285ba;},'sWvPT':_0x1232fd(0x21e),'ekinr':_0x1232fd(0x23e),'lchCQ':_0x1232fd(0x23b)};try{if(_0x6fba32[_0x1232fd(0x257)](_0x6fba32[_0x1232fd(0x1d1)],_0x6fba32[_0x1232fd(0x1d1)])){let _0xd84337=await w(_0x25f5ac,_0x254f26);return _0xd84337?.[_0x1232fd(0x1e0)]?_0xd84337[_0x1232fd(0x1e0)][_0x1232fd(0x208)](_0x49c899=>{var _0x3e219c=_0x1232fd;let _0x7df1d3={..._0x49c899};return _0x7df1d3[_0x3e219c(0x225)]?.[_0x3e219c(0x23a)]?.['length']&&(_0x7df1d3['route']['routes']=_0x7df1d3[_0x3e219c(0x225)][_0x3e219c(0x23a)][_0x3e219c(0x208)](_0x2b89e5=>({..._0x2b89e5,'geometry':_0x33baca==='geojson'&&typeof _0x2b89e5[_0x3e219c(0x1e6)]==_0x3e219c(0x22c)?R(_0x2b89e5[_0x3e219c(0x1e6)]):_0x2b89e5[_0x3e219c(0x1e6)]}))),_0x7df1d3;}):_0xd84337;}else{var _0x4df9a4=_0x518288?function(){var _0x4c475d=_0x1232fd;if(_0x1f48af){var _0x50a2ff=_0x2b55cb[_0x4c475d(0x1f2)](_0x24f6ba,arguments);return _0x4c59af=null,_0x50a2ff;}}:function(){};return _0x931a9=![],_0x4df9a4;}}catch(_0x169609){if(_0x6fba32[_0x1232fd(0x1d0)]!==_0x6fba32[_0x1232fd(0x1dc)])throw _0x169609;else this['map'][_0x1232fd(0x238)](_0x4cc3e6);}}var S=async _0x445b75=>{var _0x2268b9=a0_0x47e228,_0x17c29e={'Drfes':function(_0x4f24c1,_0x569c4b){return _0x4f24c1===_0x569c4b;},'RWPiX':_0x2268b9(0x211),'NPEDm':_0x2268b9(0x24d)};try{if(_0x17c29e['Drfes'](_0x17c29e[_0x2268b9(0x1f5)],_0x2268b9(0x1d5)))throw _0xeeb9a1;else return(await c[_0x2268b9(0x227)](_0x2268b9(0x22b),_0x445b75))[_0x2268b9(0x1e0)];}catch(_0x2c1b06){throw console[_0x2268b9(0x1d4)](_0x17c29e[_0x2268b9(0x214)],_0x2c1b06),_0x2c1b06;}};async function B(_0x169c94,_0x45343b,_0x5f3a73){var _0x4780bf=a0_0x47e228,_0x158ef6={'gWAbI':function(_0x3ab1ec){return _0x3ab1ec();},'uDfeS':'ZbisK','JGktK':function(_0x3ea535,_0x2b32df){return _0x3ea535(_0x2b32df);}};let _0x5b7e59={'text':_0x169c94,'token':_0x45343b||_0x158ef6[_0x4780bf(0x237)](l),..._0x5f3a73};try{if(_0x158ef6['uDfeS']===_0x158ef6['uDfeS'])return await _0x158ef6[_0x4780bf(0x1f7)](S,_0x5b7e59);else _0x275f55?this[_0x4780bf(0x208)][_0x4780bf(0x1ff)]({'zoom':_0x16769b}):this['map'][_0x4780bf(0x238)](_0x338869);}catch(_0x3b8137){throw _0x3b8137;}}var Z=K(B,0x1f4);async function $(_0xea34fe,_0xf9c8c,_0x197b93){var _0x288bd0=a0_0x47e228,_0x4f5311={'SooFn':function(_0x530c5c,_0xcc59ad,_0x1b9e1f,_0x5569f5){return _0x530c5c(_0xcc59ad,_0x1b9e1f,_0x5569f5);}};return await _0x4f5311[_0x288bd0(0x218)](Z,_0xea34fe,_0xf9c8c,_0x197b93);}function a0_0x4b85(){var _0x5b6972=['dark','zfSHC','maplibregl','43vxuGSu','getMap','8088OKebDo','Bearer\x20','apply','destroy','setStyle','RWPiX','status','JGktK','XtNqG','5yuwngR','enumerable','LYqLu','zoom','remove','LvQUs','easeTo','ujCcn','warn','apikey','TJfHr','qRDhd','src','light','sLtKL','map','Uiuks','mahal_map.sdk.js','hxCsS','TubNd','autoAddVectorSource','__esModule','GTkMd','Map','nlLkr','center','QDnVS','NPEDm','https://platform.mahal.tj/api/','MbkFE','NhtLq','SooFn','interceptors','WRAbN','yZgbS','exception','getOwnPropertyNames','bCVds','SJzWt','object','11577335csLQtO','rQqsM','3|0|2|4|5|1','prototype','route','QJpkb','post','KxDXH','reject','getPrototypeOf','services/getAddress','string','12cEhxll','__proto__','UzBIr','[MahalMap\x20SDK]\x20MapLibre\x20GL\x20не\x20найден.\x20Передай\x20его\x20вторым\x20аргументом\x20или\x20подключи\x20через\x20script.','services/getRoutes','QMnDa','[MahalMap\x20SDK]\x20Карта\x20ещё\x20не\x20создана','KNKHL','Authorization','oCvwX','gWAbI','setZoom','5820273hhBdBX','routes','luRIx','qiPaz','length','cJboE','bind','container','call','BnjXt','39tZnoCa','YFcxP','setCenter','https://mtile.gram.tj/custom-styles/mapstyle.json','cvYVc','theme','style','getInstance','ukIlK','HDwIe','Ошибка\x20при\x20поиске\x20адреса:','common','log','hasOwnProperty','https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json','script','EaYhd','SMoPN','136UUvvBK','use','eGgJZ','create','rOwPm','options','TJbDS','28174iYRHXr','bJItm','constructor','charCodeAt','oYPwM','jbsjx','table','JNTfL','SlVDE','toString','exports','Afspi','getElementsByTagName','4078878SySvQr','ekinr','sWvPT','forEach','instance','error','kFQuQ','defineProperty','function','console','push','split','default','lchCQ','307748zKFPzv','defaults','QBOGg','data','iWVxv','trace','ikCvW','rhvfV','7586460bFfkCU','geometry','ROHpR','getOwnPropertyDescriptor','YpXgc','MwWJN'];a0_0x4b85=function(){return _0x5b6972;};return a0_0x4b85();}function z(){var _0x258eeb=a0_0x47e228,_0x5d305a={'wHkNo':_0x258eeb(0x20a),'rhvfV':_0x258eeb(0x202)};let _0x427a0a=document[_0x258eeb(0x1ce)](_0x258eeb(0x252));for(let _0xa45888 of _0x427a0a)if(_0xa45888[_0x258eeb(0x205)]['includes'](_0x5d305a['wHkNo'])){let _0xf464f7=new URL(_0xa45888[_0x258eeb(0x205)])['searchParams']['get'](_0x5d305a[_0x258eeb(0x1e4)]);if(_0xf464f7)return _0xf464f7;}return'';}b(z()),0x0&&(module['exports']={'MahalMap':MahalMap,'keyUtils':keyUtils});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/lib/map/MahalMap.ts","../src/app/lib/index.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/checking-coordinates/utils.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/saveKey/utils.ts","../src/app/lib/debounce/index.ts","../src/lib/routing/api.ts","../src/lib/routing/utils.ts","../src/lib/search/api.ts","../src/lib/search/utils.ts"],"sourcesContent":["import { MahalMap } from \"@lib/index\";\r\nimport * as controller from \"@app/lib\";\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 { MahalMap, keyUtils, searchUtils, routerUtils, controller };\r\n\r\nfunction loadKeyFromScriptUrl() {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.sdk.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\nkeyUtils.saveKey(loadKeyFromScriptUrl());\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","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\nexport class MahalMap {\r\n private static instance: MahalMap | null = null;\r\n\r\n private map!: MapType;\r\n private options!: IMahalMapOptions;\r\n\r\n private constructor() {}\r\n\r\n static create(\r\n options: IMahalMapOptions,\r\n maplibreObject?: { Map: typeof MapType } | typeof MapType,\r\n ) {\r\n if (MahalMap.instance) return MahalMap.instance;\r\n\r\n const globalMaplibre = (window as any).maplibregl;\r\n const maplibre = globalMaplibre || maplibreObject;\r\n\r\n if (!maplibre) {\r\n throw new Error(\r\n \"[MahalMap SDK] MapLibre GL не найден. Передай его вторым аргументом или подключи через script.\",\r\n );\r\n }\r\n\r\n const finalStyle = options.autoAddVectorSource\r\n ? VECTOR\r\n : options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n\r\n const instance = new MahalMap();\r\n\r\n instance.options = options;\r\n instance.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 MahalMap.instance = instance;\r\n return instance;\r\n }\r\n\r\n static getInstance(): MahalMap {\r\n if (!MahalMap.instance) {\r\n throw new Error(\"[MahalMap SDK] Карта ещё не создана\");\r\n }\r\n return MahalMap.instance;\r\n }\r\n\r\n destroy() {\r\n this.map.remove();\r\n MahalMap.instance = null;\r\n }\r\n getMap(): MapType {\r\n return this.map;\r\n }\r\n\r\n setStyle(theme: \"dark\" | \"light\") {\r\n this.map.setStyle(\r\n theme === \"dark\" ? defaultStyles.dark : defaultStyles.light,\r\n );\r\n }\r\n\r\n setCenter(center: [number, number]) {\r\n this.map.setCenter(center);\r\n }\r\n\r\n setZoom(zoom: number) {\r\n this.map.setZoom(zoom);\r\n }\r\n}\r\n","export * from \"./axios\";\r\nexport * from \"./checking-coordinates\";\r\nexport * from \"./saveKey\";\r\nexport * from \"./debounce\";\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","export * from \"./utils\";\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","function debounce<F extends (...args: any[]) => Promise<any>>(\r\n fn: F,\r\n delay: number\r\n) {\r\n let timer: NodeJS.Timeout;\r\n\r\n return (...args: Parameters<F>): Promise<ReturnType<F>> => {\r\n if (timer) clearTimeout(timer);\r\n return new Promise((resolve) => {\r\n timer = setTimeout(async () => {\r\n const result = await fn(...args);\r\n resolve(result);\r\n }, delay);\r\n }) as Promise<ReturnType<F>>;\r\n };\r\n}\r\n\r\nexport { debounce };\r\n","import { api, getApiKey } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][], token: string) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n\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\", {\r\n points,\r\n token: token ? token : getApiKey(),\r\n });\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 { 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 token: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param, token);\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 throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam, ISearch } from \"@app/types\";\r\n\r\nexport const searchPost = async (params: ISearchParam): Promise<ISearch[]> => {\r\n try {\r\n const response = await api.post(\"services/getAddress\", 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 { searchPost } from \"./api\";\r\nimport { IAdditionalParamType, ISearch, ISearchParam } from \"@app/types/index\";\r\nimport { debounce, getApiKey } from \"@app/lib\";\r\n// import { checkCoordinates } from \"@app/lib/index\";\r\n// import { REGEX } from \"@app/config\";\r\n\r\nasync function getSearch(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<ISearch[]> {\r\n let searchData: ISearchParam = {\r\n text: param,\r\n token: token ? token : getApiKey(),\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: ISearch[] = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n throw error;\r\n }\r\n}\r\n\r\nconst debouncedFn = debounce(getSearch, 500);\r\n\r\nasync function search(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n) {\r\n return await debouncedFn(param, token, additionalParam);\r\n}\r\n\r\nexport { search };\r\n"],"mappings":"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","names":["index_exports","__export","MahalMap","lib_exports","saveKey_exports","utils_exports","__toCommonJS","BASE_URL","LATLNGREGEX","LNGLATREGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","_MahalMap","options","maplibreObject","maplibre","finalStyle","VECTOR","instance","theme","center","zoom","MahalMap","lib_exports","__export","api","checkCoordinates","clearKey","debounce","getApiKey","saveKey","import_axios","api","axios","BASE_URL","response","error","clearKey","checkCoordinates","coordinates","lat","lng","LATLNGREGEX","match","LNGLATREGEX","saveKey_exports","__export","clearKey","getApiKey","saveKey","apiKey","saveKey","param","api","clearKey","getApiKey","debounce","fn","delay","timer","args","resolve","result","routingApi","param","token","points","e","api","getApiKey","err","utils_exports","__export","getrouter","getrouter","param","typeData","token","res","routingApi","route","updated","r","geojsonPolyline","error","searchPost","params","api","error","utils_exports","__export","search","getSearch","param","token","additionalParam","searchData","getApiKey","searchPost","error","debouncedFn","debounce","search","loadKeyFromScriptUrl","scripts","script","apikey","saveKey"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/lib/index.ts","../src/lib/controller/camera/index.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/lib/map/MahalMap.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/saveKey/utils.ts","../src/app/lib/debounce/index.ts","../src/lib/routing/api.ts","../src/lib/routing/utils.ts","../src/lib/search/api.ts","../src/lib/search/utils.ts"],"sourcesContent":["// Lib\r\nimport * as MahalMap from \"@lib/index\";\r\n\r\n// utils\r\nimport * as keyUtils from \"@app/lib/saveKey\";\r\n\r\nexport { MahalMap, keyUtils };\r\n\r\nfunction loadKeyFromScriptUrl() {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.sdk.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\nkeyUtils.saveKey(loadKeyFromScriptUrl());\r\n","export * from \"./controller\";\r\n// export * from './layers'\r\nexport * from \"./map\";\r\nexport * from \"./routing\";\r\nexport * from \"./search\";\r\n","import type { Map } from \"maplibre-gl\";\r\n\r\nexport class CameraController {\r\n constructor(private map: Map) {}\r\n\r\n setZoom(zoom: number, smooth = true) {\r\n if (smooth) {\r\n this.map.easeTo({ zoom });\r\n } else {\r\n this.map.setZoom(zoom);\r\n }\r\n }\r\n}\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","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\nexport class MahalMap {\r\n private static instance: MahalMap | null = null;\r\n\r\n private map!: MapType;\r\n private options!: IMahalMapOptions;\r\n\r\n private constructor() {}\r\n\r\n static create(\r\n options: IMahalMapOptions,\r\n maplibreObject?: { Map: typeof MapType } | typeof MapType,\r\n ) {\r\n if (MahalMap.instance) return MahalMap.instance;\r\n\r\n const globalMaplibre = (window as any).maplibregl;\r\n const maplibre = globalMaplibre || maplibreObject;\r\n\r\n if (!maplibre) {\r\n throw new Error(\r\n \"[MahalMap SDK] MapLibre GL не найден. Передай его вторым аргументом или подключи через script.\",\r\n );\r\n }\r\n\r\n const finalStyle = options.autoAddVectorSource\r\n ? VECTOR\r\n : options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n\r\n const instance = new MahalMap();\r\n\r\n instance.options = options;\r\n instance.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 MahalMap.instance = instance;\r\n return instance;\r\n }\r\n\r\n static getInstance(): MahalMap {\r\n if (!MahalMap.instance) {\r\n throw new Error(\"[MahalMap SDK] Карта ещё не создана\");\r\n }\r\n return MahalMap.instance;\r\n }\r\n\r\n destroy() {\r\n this.map.remove();\r\n MahalMap.instance = null;\r\n }\r\n getMap(): MapType {\r\n return this.map;\r\n }\r\n\r\n setStyle(theme: \"dark\" | \"light\") {\r\n this.map.setStyle(\r\n theme === \"dark\" ? defaultStyles.dark : defaultStyles.light,\r\n );\r\n }\r\n\r\n setCenter(center: [number, number]) {\r\n this.map.setCenter(center);\r\n }\r\n\r\n setZoom(zoom: number) {\r\n this.map.setZoom(zoom);\r\n }\r\n}\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","export * from \"./utils\";\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","function debounce<F extends (...args: any[]) => Promise<any>>(\r\n fn: F,\r\n delay: number\r\n) {\r\n let timer: NodeJS.Timeout;\r\n\r\n return (...args: Parameters<F>): Promise<ReturnType<F>> => {\r\n if (timer) clearTimeout(timer);\r\n return new Promise((resolve) => {\r\n timer = setTimeout(async () => {\r\n const result = await fn(...args);\r\n resolve(result);\r\n }, delay);\r\n }) as Promise<ReturnType<F>>;\r\n };\r\n}\r\n\r\nexport { debounce };\r\n","import { api, getApiKey } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][], token: string) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n\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\", {\r\n points,\r\n token: token ? token : getApiKey(),\r\n });\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 { 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 token: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param, token);\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 throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam, ISearch } from \"@app/types\";\r\n\r\nexport const searchPost = async (params: ISearchParam): Promise<ISearch[]> => {\r\n try {\r\n const response = await api.post(\"services/getAddress\", 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 { searchPost } from \"./api\";\r\nimport { IAdditionalParamType, ISearch, ISearchParam } from \"@app/types/index\";\r\nimport { debounce, getApiKey } from \"@app/lib\";\r\n// import { checkCoordinates } from \"@app/lib/index\";\r\n// import { REGEX } from \"@app/config\";\r\n\r\nasync function getSearch(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<ISearch[]> {\r\n let searchData: ISearchParam = {\r\n text: param,\r\n token: token ? token : getApiKey(),\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: ISearch[] = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n throw error;\r\n }\r\n}\r\n\r\nconst debouncedFn = debounce(getSearch, 500);\r\n\r\nasync function search(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n) {\r\n return await debouncedFn(param, token, additionalParam);\r\n}\r\n\r\nexport { search };\r\n"],"mappings":"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","names":["index_exports","__export","lib_exports","saveKey_exports","__toCommonJS","lib_exports","__export","CameraController","MahalMap","getrouter","routingApi","search","searchPost","CameraController","map","zoom","smooth","BASE_URL","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","_MahalMap","options","maplibreObject","maplibre","finalStyle","VECTOR","instance","theme","center","zoom","MahalMap","import_axios","api","axios","BASE_URL","response","error","clearKey","saveKey_exports","__export","clearKey","getApiKey","saveKey","apiKey","saveKey","param","api","clearKey","getApiKey","debounce","fn","delay","timer","args","resolve","result","routingApi","param","token","points","e","api","getApiKey","err","getrouter","param","typeData","token","res","routingApi","route","updated","r","geojsonPolyline","error","searchPost","params","api","error","getSearch","param","token","additionalParam","searchData","getApiKey","searchPost","error","debouncedFn","debounce","search","loadKeyFromScriptUrl","scripts","script","apikey","saveKey"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var
|
|
1
|
+
var K=Object.defineProperty;var M=(e,t)=>{for(var r in t)K(e,r,{get:t[r],enumerable:!0})};var L={};M(L,{CameraController:()=>f,MahalMap:()=>h,getrouter:()=>v,routingApi:()=>x,search:()=>N,searchPost:()=>b});var f=class{constructor(t){this.map=t}setZoom(t,r=!0){r?this.map.easeTo({zoom:t}):this.map.setZoom(t)}};var w="https://platform.mahal.tj/api/";var S="https://mtile.gram.tj/custom-styles/dark-style.json",T="https://mtile.gram.tj/custom-styles/mapstyle.json",A="https://mtile.gram.tj/custom-styles/style_maptiler_basic_hn.json";function I(e){let t=[],r=0,o=e.length,s=0,m=0;for(;r<o;){let a,n=0,p=0;do a=e.charCodeAt(r++)-63,p|=(a&31)<<n,n+=5;while(a>=32);let R=p&1?~(p>>1):p>>1;s+=R,n=0,p=0;do a=e.charCodeAt(r++)-63,p|=(a&31)<<n,n+=5;while(a>=32);let k=p&1?~(p>>1):p>>1;m+=k,t.push([m*1e-5,s*1e-5])}return t}var u={dark:S,light:T},i=class i{constructor(){}static create(t,r){if(i.instance)return i.instance;let s=window.maplibregl||r;if(!s)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 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0438 \u0447\u0435\u0440\u0435\u0437 script.");let m=t.autoAddVectorSource?A:t.style?t.style:t.theme==="dark"?u.dark:u.light,a=new i;return a.options=t,a.map=new s.Map({container:t.container||"map",style:m,center:t.center||[69.624024,40.279687],zoom:t.zoom||5}),i.instance=a,a}static getInstance(){if(!i.instance)throw new Error("[MahalMap SDK] \u041A\u0430\u0440\u0442\u0430 \u0435\u0449\u0451 \u043D\u0435 \u0441\u043E\u0437\u0434\u0430\u043D\u0430");return i.instance}destroy(){this.map.remove(),i.instance=null}getMap(){return this.map}setStyle(t){this.map.setStyle(t==="dark"?u.dark:u.light)}setCenter(t){this.map.setCenter(t)}setZoom(t){this.map.setZoom(t)}};i.instance=null;var h=i;import j from"axios";var c=j.create({baseURL:w});c.interceptors.request.use(e=>e,e=>(e.request?.status===401&&d(),Promise.reject(e)));var P={};M(P,{clearKey:()=>d,getApiKey:()=>l,saveKey:()=>g});var y="";function g(e){e!==""&&(y=e,c.defaults.headers.common.Authorization=`Bearer ${e}`)}function d(){y="",c.defaults.headers.common.Authorization=""}var l=()=>y;function E(e,t){let r;return(...o)=>(r&&clearTimeout(r),new Promise(s=>{r=setTimeout(async()=>{let m=await e(...o);s(m)},t)}))}var x=async(e,t)=>{try{let r=[];return e.forEach(s=>{r.push({lng:s[0],lat:s[1]})}),(await c.post("services/getRoutes",{points:r,token:t||l()})).data}catch(r){throw console.error(r),r}};async function v(e,t,r){try{let o=await x(e,r);return o?.data?o.data.map(m=>{let a={...m};return a.route?.routes?.length&&(a.route.routes=a.route.routes.map(n=>({...n,geometry:t==="geojson"&&typeof n.geometry=="string"?I(n.geometry):n.geometry}))),a}):o}catch(o){throw o}}var b=async e=>{try{return(await c.post("services/getAddress",e)).data}catch(t){throw console.error("\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043F\u043E\u0438\u0441\u043A\u0435 \u0430\u0434\u0440\u0435\u0441\u0430:",t),t}};async function G(e,t,r){let o={text:e,token:t||l(),...r};try{return await b(o)}catch(s){throw s}}var C=E(G,500);async function N(e,t,r){return await C(e,t,r)}function F(){let e=document.getElementsByTagName("script");for(let t of e)if(t.src.includes("mahal_map.sdk.js")){let o=new URL(t.src).searchParams.get("apikey");if(o)return o}return""}g(F());export{L as MahalMap,P as keyUtils};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/lib/map/MahalMap.ts","../src/app/lib/index.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/checking-coordinates/utils.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/saveKey/utils.ts","../src/app/lib/debounce/index.ts","../src/lib/routing/api.ts","../src/lib/routing/utils.ts","../src/lib/search/api.ts","../src/lib/search/utils.ts","../src/index.ts"],"sourcesContent":["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","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\nexport class MahalMap {\r\n private static instance: MahalMap | null = null;\r\n\r\n private map!: MapType;\r\n private options!: IMahalMapOptions;\r\n\r\n private constructor() {}\r\n\r\n static create(\r\n options: IMahalMapOptions,\r\n maplibreObject?: { Map: typeof MapType } | typeof MapType,\r\n ) {\r\n if (MahalMap.instance) return MahalMap.instance;\r\n\r\n const globalMaplibre = (window as any).maplibregl;\r\n const maplibre = globalMaplibre || maplibreObject;\r\n\r\n if (!maplibre) {\r\n throw new Error(\r\n \"[MahalMap SDK] MapLibre GL не найден. Передай его вторым аргументом или подключи через script.\",\r\n );\r\n }\r\n\r\n const finalStyle = options.autoAddVectorSource\r\n ? VECTOR\r\n : options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n\r\n const instance = new MahalMap();\r\n\r\n instance.options = options;\r\n instance.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 MahalMap.instance = instance;\r\n return instance;\r\n }\r\n\r\n static getInstance(): MahalMap {\r\n if (!MahalMap.instance) {\r\n throw new Error(\"[MahalMap SDK] Карта ещё не создана\");\r\n }\r\n return MahalMap.instance;\r\n }\r\n\r\n destroy() {\r\n this.map.remove();\r\n MahalMap.instance = null;\r\n }\r\n getMap(): MapType {\r\n return this.map;\r\n }\r\n\r\n setStyle(theme: \"dark\" | \"light\") {\r\n this.map.setStyle(\r\n theme === \"dark\" ? defaultStyles.dark : defaultStyles.light,\r\n );\r\n }\r\n\r\n setCenter(center: [number, number]) {\r\n this.map.setCenter(center);\r\n }\r\n\r\n setZoom(zoom: number) {\r\n this.map.setZoom(zoom);\r\n }\r\n}\r\n","export * from \"./axios\";\r\nexport * from \"./checking-coordinates\";\r\nexport * from \"./saveKey\";\r\nexport * from \"./debounce\";\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","export * from \"./utils\";\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","function debounce<F extends (...args: any[]) => Promise<any>>(\r\n fn: F,\r\n delay: number\r\n) {\r\n let timer: NodeJS.Timeout;\r\n\r\n return (...args: Parameters<F>): Promise<ReturnType<F>> => {\r\n if (timer) clearTimeout(timer);\r\n return new Promise((resolve) => {\r\n timer = setTimeout(async () => {\r\n const result = await fn(...args);\r\n resolve(result);\r\n }, delay);\r\n }) as Promise<ReturnType<F>>;\r\n };\r\n}\r\n\r\nexport { debounce };\r\n","import { api, getApiKey } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][], token: string) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n\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\", {\r\n points,\r\n token: token ? token : getApiKey(),\r\n });\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 { 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 token: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param, token);\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 throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam, ISearch } from \"@app/types\";\r\n\r\nexport const searchPost = async (params: ISearchParam): Promise<ISearch[]> => {\r\n try {\r\n const response = await api.post(\"services/getAddress\", 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 { searchPost } from \"./api\";\r\nimport { IAdditionalParamType, ISearch, ISearchParam } from \"@app/types/index\";\r\nimport { debounce, getApiKey } from \"@app/lib\";\r\n// import { checkCoordinates } from \"@app/lib/index\";\r\n// import { REGEX } from \"@app/config\";\r\n\r\nasync function getSearch(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<ISearch[]> {\r\n let searchData: ISearchParam = {\r\n text: param,\r\n token: token ? token : getApiKey(),\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: ISearch[] = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n throw error;\r\n }\r\n}\r\n\r\nconst debouncedFn = debounce(getSearch, 500);\r\n\r\nasync function search(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n) {\r\n return await debouncedFn(param, token, additionalParam);\r\n}\r\n\r\nexport { search };\r\n","import { MahalMap } from \"@lib/index\";\r\nimport * as controller from \"@app/lib\";\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 { MahalMap, keyUtils, searchUtils, routerUtils, controller };\r\n\r\nfunction loadKeyFromScriptUrl() {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.sdk.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\nkeyUtils.saveKey(loadKeyFromScriptUrl());\r\n"],"mappings":"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","names":["BASE_URL","LATLNGREGEX","LNGLATREGEX","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","_MahalMap","options","maplibreObject","maplibre","finalStyle","VECTOR","instance","theme","center","zoom","MahalMap","lib_exports","__export","api","checkCoordinates","clearKey","debounce","getApiKey","saveKey","axios","api","axios","BASE_URL","response","error","clearKey","checkCoordinates","coordinates","lat","lng","LATLNGREGEX","match","LNGLATREGEX","saveKey_exports","__export","clearKey","getApiKey","saveKey","apiKey","saveKey","param","api","clearKey","getApiKey","debounce","fn","delay","timer","args","resolve","result","routingApi","param","token","points","e","api","getApiKey","err","utils_exports","__export","getrouter","getrouter","param","typeData","token","res","routingApi","route","updated","r","geojsonPolyline","error","searchPost","params","api","error","utils_exports","__export","search","getSearch","param","token","additionalParam","searchData","getApiKey","searchPost","error","debouncedFn","debounce","search","loadKeyFromScriptUrl","scripts","script","apikey","saveKey"]}
|
|
1
|
+
{"version":3,"sources":["../src/lib/index.ts","../src/lib/controller/camera/index.ts","../src/app/config/constants.ts","../src/app/config/geojson-polyline.ts","../src/lib/map/MahalMap.ts","../src/app/lib/axios/api/axios.ts","../src/app/lib/saveKey/index.ts","../src/app/lib/saveKey/utils.ts","../src/app/lib/debounce/index.ts","../src/lib/routing/api.ts","../src/lib/routing/utils.ts","../src/lib/search/api.ts","../src/lib/search/utils.ts","../src/index.ts"],"sourcesContent":["export * from \"./controller\";\r\n// export * from './layers'\r\nexport * from \"./map\";\r\nexport * from \"./routing\";\r\nexport * from \"./search\";\r\n","import type { Map } from \"maplibre-gl\";\r\n\r\nexport class CameraController {\r\n constructor(private map: Map) {}\r\n\r\n setZoom(zoom: number, smooth = true) {\r\n if (smooth) {\r\n this.map.easeTo({ zoom });\r\n } else {\r\n this.map.setZoom(zoom);\r\n }\r\n }\r\n}\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","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\nexport class MahalMap {\r\n private static instance: MahalMap | null = null;\r\n\r\n private map!: MapType;\r\n private options!: IMahalMapOptions;\r\n\r\n private constructor() {}\r\n\r\n static create(\r\n options: IMahalMapOptions,\r\n maplibreObject?: { Map: typeof MapType } | typeof MapType,\r\n ) {\r\n if (MahalMap.instance) return MahalMap.instance;\r\n\r\n const globalMaplibre = (window as any).maplibregl;\r\n const maplibre = globalMaplibre || maplibreObject;\r\n\r\n if (!maplibre) {\r\n throw new Error(\r\n \"[MahalMap SDK] MapLibre GL не найден. Передай его вторым аргументом или подключи через script.\",\r\n );\r\n }\r\n\r\n const finalStyle = options.autoAddVectorSource\r\n ? VECTOR\r\n : options.style\r\n ? options.style\r\n : options.theme === \"dark\"\r\n ? defaultStyles.dark\r\n : defaultStyles.light;\r\n\r\n const instance = new MahalMap();\r\n\r\n instance.options = options;\r\n instance.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 MahalMap.instance = instance;\r\n return instance;\r\n }\r\n\r\n static getInstance(): MahalMap {\r\n if (!MahalMap.instance) {\r\n throw new Error(\"[MahalMap SDK] Карта ещё не создана\");\r\n }\r\n return MahalMap.instance;\r\n }\r\n\r\n destroy() {\r\n this.map.remove();\r\n MahalMap.instance = null;\r\n }\r\n getMap(): MapType {\r\n return this.map;\r\n }\r\n\r\n setStyle(theme: \"dark\" | \"light\") {\r\n this.map.setStyle(\r\n theme === \"dark\" ? defaultStyles.dark : defaultStyles.light,\r\n );\r\n }\r\n\r\n setCenter(center: [number, number]) {\r\n this.map.setCenter(center);\r\n }\r\n\r\n setZoom(zoom: number) {\r\n this.map.setZoom(zoom);\r\n }\r\n}\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","export * from \"./utils\";\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","function debounce<F extends (...args: any[]) => Promise<any>>(\r\n fn: F,\r\n delay: number\r\n) {\r\n let timer: NodeJS.Timeout;\r\n\r\n return (...args: Parameters<F>): Promise<ReturnType<F>> => {\r\n if (timer) clearTimeout(timer);\r\n return new Promise((resolve) => {\r\n timer = setTimeout(async () => {\r\n const result = await fn(...args);\r\n resolve(result);\r\n }, delay);\r\n }) as Promise<ReturnType<F>>;\r\n };\r\n}\r\n\r\nexport { debounce };\r\n","import { api, getApiKey } from \"@app/lib\";\r\n\r\nconst routingApi = async (param: number[][], token: string) => {\r\n try {\r\n const points: { lng: number; lat: number }[] = [];\r\n\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\", {\r\n points,\r\n token: token ? token : getApiKey(),\r\n });\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 { 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 token: string\r\n): Promise<IRoute[]> {\r\n try {\r\n const res = await routingApi(param, token);\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 throw error;\r\n }\r\n}\r\n\r\nexport { getrouter };\r\n","import { api } from \"@app/lib\";\r\nimport type { ISearchParam, ISearch } from \"@app/types\";\r\n\r\nexport const searchPost = async (params: ISearchParam): Promise<ISearch[]> => {\r\n try {\r\n const response = await api.post(\"services/getAddress\", 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 { searchPost } from \"./api\";\r\nimport { IAdditionalParamType, ISearch, ISearchParam } from \"@app/types/index\";\r\nimport { debounce, getApiKey } from \"@app/lib\";\r\n// import { checkCoordinates } from \"@app/lib/index\";\r\n// import { REGEX } from \"@app/config\";\r\n\r\nasync function getSearch(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n): Promise<ISearch[]> {\r\n let searchData: ISearchParam = {\r\n text: param,\r\n token: token ? token : getApiKey(),\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: ISearch[] = await searchPost(searchData);\r\n return res;\r\n } catch (error) {\r\n throw error;\r\n }\r\n}\r\n\r\nconst debouncedFn = debounce(getSearch, 500);\r\n\r\nasync function search(\r\n param: string,\r\n token: string,\r\n additionalParam?: IAdditionalParamType\r\n) {\r\n return await debouncedFn(param, token, additionalParam);\r\n}\r\n\r\nexport { search };\r\n","// Lib\r\nimport * as MahalMap from \"@lib/index\";\r\n\r\n// utils\r\nimport * as keyUtils from \"@app/lib/saveKey\";\r\n\r\nexport { MahalMap, keyUtils };\r\n\r\nfunction loadKeyFromScriptUrl() {\r\n const scripts = document.getElementsByTagName(\"script\");\r\n for (const script of scripts) {\r\n if (script.src.includes(\"mahal_map.sdk.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\nkeyUtils.saveKey(loadKeyFromScriptUrl());\r\n"],"mappings":"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","names":["lib_exports","__export","CameraController","MahalMap","getrouter","routingApi","search","searchPost","CameraController","map","zoom","smooth","BASE_URL","DARK","LIGHT","VECTOR","geojsonPolyline","encoded","points","index","len","lat","lng","b","shift","result","dlat","dlng","defaultStyles","DARK","LIGHT","_MahalMap","options","maplibreObject","maplibre","finalStyle","VECTOR","instance","theme","center","zoom","MahalMap","axios","api","axios","BASE_URL","response","error","clearKey","saveKey_exports","__export","clearKey","getApiKey","saveKey","apiKey","saveKey","param","api","clearKey","getApiKey","debounce","fn","delay","timer","args","resolve","result","routingApi","param","token","points","e","api","getApiKey","err","getrouter","param","typeData","token","res","routingApi","route","updated","r","geojsonPolyline","error","searchPost","params","api","error","getSearch","param","token","additionalParam","searchData","getApiKey","searchPost","error","debouncedFn","debounce","search","loadKeyFromScriptUrl","scripts","script","apikey","saveKey"]}
|