{"version":3,"file":"mousePositong.mjs","sources":["../../../../../../packages/sdk/plugins/utils/mousePositong.ts"],"sourcesContent":["import L from 'leaflet'\n\nconst MousePosition = L.Control.extend({\n  _pos: null,\n\n  options: {\n    position: 'bottomleft',\n    separator: ' : ',\n    emptyString: 'Unavailable',\n    lngFirst: false,\n    numDigits: 5,\n    lngFormatter: undefined,\n    latFormatter: undefined,\n    formatter: undefined,\n    prefix: '',\n    wrapLng: true,\n  },\n\n  onAdd(map: { on: (arg0: string, arg1: any, arg2: any) => void }) {\n    this._container = L.DomUtil.create('div', 'leaflet-control-mouseposition')\n    L.DomEvent.disableClickPropagation(this._container)\n    map.on('mousemove', this._onMouseMove, this)\n    this._container.innerHTML = this.options.emptyString\n    return this._container\n  },\n\n  onRemove(map: { off: (arg0: string, arg1: any) => void }) {\n    map.off('mousemove', this._onMouseMove)\n  },\n\n  getLatLng() {\n    return this._pos\n  },\n\n  _onMouseMove(e: {\n    latlng: {\n      wrap: () => { (): any; new (): any; lng: any }\n      lng: any\n      lat: any\n    }\n  }) {\n    this._pos = e.latlng.wrap()\n    const lngValue = this.options.wrapLng ? e.latlng.wrap().lng : e.latlng.lng\n    const latValue = e.latlng.lat\n    let lng\n    let lat\n    let value\n    let prefixAndValue\n\n    if (this.options.formatter) {\n      prefixAndValue = this.options.formatter(lngValue, latValue)\n    } else {\n      lng = this.options.lngFormatter\n        ? this.options.lngFormatter(lngValue)\n        : L.Util.formatNum(lngValue, this.options.numDigits)\n      lat = this.options.latFormatter\n        ? this.options.latFormatter(latValue)\n        : L.Util.formatNum(latValue, this.options.numDigits)\n      value = this.options.lngFirst\n        ? lng + this.options.separator + lat\n        : lat + this.options.separator + lng\n      prefixAndValue = `${this.options.prefix} ${value}`\n    }\n\n    this._container.innerHTML = prefixAndValue\n  },\n})\n\nL.Map.mergeOptions({\n  positionControl: false,\n})\n\nL.Map.addInitHook(function () {\n  if (this.options.positionControl) {\n    this.positionControl = new MousePosition()\n    this.addControl(this.positionControl)\n  }\n})\n\nexport const mousePosition = (options: any) => {\n  return new MousePosition(options)\n}\n"],"names":["l","o","Control","extend","_pos","options","position","separator","emptyString","lngFirst","numDigits","lngFormatter","latFormatter","formatter","prefix","wrapLng","onAdd","t","this","_container","DomUtil","create","DomEvent","disableClickPropagation","on","_onMouseMove","innerHTML","onRemove","off","getLatLng","latlng","wrap","n","lng","i","lat","s","e","r","a","Util","formatNum","Map","mergeOptions","positionControl","addInitHook","addControl","mousePosition"],"mappings":"uBAAuB,MAAMA,EAAEC,EAAEC,QAAQC,OAAO,CAACC,KAAK,KAAKC,QAAQ,CAACC,SAAS,aAAaC,UAAU,MAAMC,YAAY,cAAcC,UAAS,EAAGC,UAAU,EAAEC,kBAAa,EAAOC,kBAAa,EAAOC,eAAU,EAAOC,OAAO,GAAGC,SAAQ,GAAI,KAAAC,CAAMC,GAAG,OAAOC,KAAKC,WAAWlB,EAAEmB,QAAQC,OAAO,MAAM,iCAAiCpB,EAAEqB,SAASC,wBAAwBL,KAAKC,YAAYF,EAAEO,GAAG,YAAYN,KAAKO,aAAaP,MAAMA,KAAKC,WAAWO,UAAUR,KAAKb,QAAQG,YAAYU,KAAKC,UAAU,EAAE,QAAAQ,CAASV,GAAGA,EAAEW,IAAI,YAAYV,KAAKO,aAAa,EAAE,SAAAI,GAAY,OAAOX,KAAKd,IAAI,EAAE,YAAAqB,CAAaR,GAAGC,KAAKd,KAAKa,EAAEa,OAAOC,OAAO,MAAMC,EAAEd,KAAKb,QAAQU,QAAQE,EAAEa,OAAOC,OAAOE,IAAIhB,EAAEa,OAAOG,IAAIC,EAAEjB,EAAEa,OAAOK,IAAI,IAAIC,EAAEC,EAAEC,EAAEC,EAAErB,KAAKb,QAAQQ,UAAU0B,EAAErB,KAAKb,QAAQQ,UAAUmB,EAAEE,IAAIE,EAAElB,KAAKb,QAAQM,aAAaO,KAAKb,QAAQM,aAAaqB,GAAG/B,EAAEuC,KAAKC,UAAUT,EAAEd,KAAKb,QAAQK,WAAW2B,EAAEnB,KAAKb,QAAQO,aAAaM,KAAKb,QAAQO,aAAasB,GAAGjC,EAAEuC,KAAKC,UAAUP,EAAEhB,KAAKb,QAAQK,WAAW4B,EAAEpB,KAAKb,QAAQI,SAAS2B,EAAElB,KAAKb,QAAQE,UAAU8B,EAAEA,EAAEnB,KAAKb,QAAQE,UAAU6B,EAAEG,EAAE,GAAGrB,KAAKb,QAAQS,UAAUwB,KAAKpB,KAAKC,WAAWO,UAAUa,CAAC,IAAItC,EAAEyC,IAAIC,aAAa,CAACC,iBAAgB,IAAK3C,EAAEyC,IAAIG,aAAY,WAAW3B,KAAKb,QAAQuC,kBAAkB1B,KAAK0B,gBAAgB,IAAI5C,EAAEkB,KAAK4B,WAAW5B,KAAK0B,iBAAiB,IAAe,MAACG,EAAc9B,GAAG,IAAIjB,EAAEiB"}