@chayns-components/maps 5.0.0-beta.1097 → 5.0.0-beta.1099

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.
@@ -11,8 +11,7 @@ var _api = require("@react-google-maps/api");
11
11
  var _Marker = _interopRequireDefault(require("./map/marker/Marker"));
12
12
  var _Map = _interopRequireDefault(require("./map/Map"));
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
15
  const MapWrapper = ({
17
16
  apiToken,
18
17
  polygonOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"MapWrapper.js","names":["_react","_interopRequireWildcard","require","_reactWrapper","_MapWrapper","_api","_Marker","_interopRequireDefault","_Map","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","MapWrapper","apiToken","polygonOptions","initialZoom","initialPosition","markers","onMarkerAdd","onMarkerRemove","onMarkerChange","polygonPath","setPolygonPath","useState","canPolyDraw","setCanPolyDraw","zoom","setZoom","center","setCenter","internalMarkers","setInternalMarkers","map","setMap","useEffect","handleClick","useCallback","_e$latLng","latLng","toJSON","prevState","length","newMarker","position","lat","lng","id","_internalMarkers$","_internalMarkers$2","_internalMarkers$3","_internalMarkers$4","_internalMarkers$5","_internalMarkers$6","_internalMarkers$7","_internalMarkers$8","path","maxLat","reduce","prev","current","minLat","maxLng","minLng","topLeft","find","item","bottomRight","centerLat","centerLng","polygonCenter","handleIdle","m","_m$getCenter","getZoom","getCenter","handlePositionChange","handleMarkerChange","marker","updatedMarkers","prevMarker","handleMarkerRemove","filter","markerList","useMemo","items","forEach","push","createElement","key","isDraggable","onChange","onRemove","StyledMapWrapper","Wrapper","apiKey","libraries","onClick","onIdle","onPositionChange","fullscreenControl","mapTypeControl","streetViewControl","Polygon","options","displayName","_default","exports"],"sources":["../../../../../src/components/position-input/map-wrapper/MapWrapper.tsx"],"sourcesContent":["import React, { FC, type ReactElement, useCallback, useEffect, useMemo, useState } from 'react';\nimport { Wrapper } from '@googlemaps/react-wrapper';\nimport { StyledMapWrapper } from './MapWrapper.styles';\nimport type { IMarker, PolygonOptions, Position } from '../../../types/positionInput';\nimport { Polygon } from '@react-google-maps/api';\nimport Marker from './map/marker/Marker';\nimport Map from './map/Map';\n\nexport type MapWrapperProps = {\n apiToken: string;\n polygonOptions: PolygonOptions;\n initialZoom: number;\n initialPosition: Position;\n markers?: IMarker[];\n onMarkerAdd?: (marker: IMarker) => void;\n onMarkerRemove?: (id: number) => void;\n onMarkerChange?: (markers: IMarker[]) => void;\n};\n\nconst MapWrapper: FC<MapWrapperProps> = ({\n apiToken,\n polygonOptions,\n initialZoom,\n initialPosition,\n markers,\n onMarkerAdd,\n onMarkerRemove,\n onMarkerChange,\n}) => {\n const [polygonPath, setPolygonPath] = useState<Position[]>();\n const [canPolyDraw, setCanPolyDraw] = useState(false);\n const [zoom, setZoom] = useState(initialZoom);\n const [center, setCenter] = useState<Position>(initialPosition);\n const [internalMarkers, setInternalMarkers] = useState<IMarker[]>();\n const [map, setMap] = useState<google.maps.Map>();\n\n useEffect(() => {\n if (markers) {\n setInternalMarkers(markers);\n }\n }, [markers]);\n\n const handleClick = useCallback(\n (e: google.maps.MapMouseEvent) => {\n const latLng = e.latLng?.toJSON();\n\n if (!latLng) {\n return;\n }\n\n setInternalMarkers((prevState) => {\n if (prevState && prevState.length >= 2) {\n return prevState;\n }\n\n const newMarker: IMarker = {\n position: { lat: latLng.lat, lng: latLng.lng },\n id: prevState ? prevState.length : 0,\n };\n\n if (typeof onMarkerAdd === 'function') {\n onMarkerAdd(newMarker);\n }\n\n return prevState ? [...prevState, newMarker] : [newMarker];\n });\n },\n [onMarkerAdd],\n );\n\n useEffect(() => {\n if (!internalMarkers) {\n return;\n }\n\n if (internalMarkers.length !== 2) {\n setCanPolyDraw(false);\n\n return;\n }\n\n const path: Position[] = [\n {\n lat: internalMarkers[0]?.position.lat ?? 0,\n lng: internalMarkers[0]?.position.lng ?? 0,\n },\n {\n lat: internalMarkers[0]?.position.lat ?? 0,\n lng: internalMarkers[1]?.position.lng ?? 0,\n },\n {\n lat: internalMarkers[1]?.position.lat ?? 0,\n lng: internalMarkers[1]?.position.lng ?? 0,\n },\n {\n lat: internalMarkers[1]?.position.lat ?? 0,\n lng: internalMarkers[0]?.position.lng ?? 0,\n },\n ];\n\n const maxLat = path.reduce((prev, current) => (prev.lat > current.lat ? prev : current));\n const minLat = path.reduce((prev, current) => (prev.lat < current.lat ? prev : current));\n const maxLng = path.reduce((prev, current) => (prev.lng > current.lng ? prev : current));\n const minLng = path.reduce((prev, current) => (prev.lng < current.lng ? prev : current));\n\n const topLeft = path.find((item) => item.lat === maxLat.lat && item.lng === minLng.lng);\n const bottomRight = path.find((item) => item.lat === minLat.lat && item.lng === maxLng.lng);\n\n if (!topLeft || !bottomRight) {\n return;\n }\n\n const centerLat = (topLeft.lat + bottomRight.lat) / 2;\n const centerLng = (topLeft.lng + bottomRight.lng) / 2;\n\n const polygonCenter = {\n lat: centerLat,\n lng: centerLng,\n };\n\n if (!polygonCenter) {\n return;\n }\n\n setCanPolyDraw(true);\n setPolygonPath(path);\n }, [internalMarkers]);\n\n const handleIdle = (m: google.maps.Map) => {\n setMap(m);\n setZoom(m.getZoom() ?? 0);\n setCenter(m.getCenter()?.toJSON() ?? { lat: 0, lng: 0 });\n };\n\n const handlePositionChange = (position: Position) => {\n setCenter(position);\n };\n\n const handleMarkerChange = useCallback(\n (marker: IMarker) => {\n setInternalMarkers((prevState) => {\n const updatedMarkers = (prevState ?? []).map((prevMarker) => {\n if (prevMarker.id === marker.id) {\n return { ...prevMarker, position: marker.position };\n }\n return prevMarker;\n });\n\n if (typeof onMarkerChange === 'function') {\n onMarkerChange(updatedMarkers);\n }\n\n return updatedMarkers;\n });\n },\n [onMarkerChange],\n );\n\n const handleMarkerRemove = useCallback(\n (id: number) => {\n setInternalMarkers((prevState) => {\n if (typeof onMarkerRemove === 'function') {\n onMarkerRemove(id);\n }\n\n return prevState ? prevState.filter((marker) => marker.id !== id) : [];\n });\n },\n [onMarkerRemove],\n );\n\n const markerList = useMemo(() => {\n const items: ReactElement[] = [];\n\n if (!internalMarkers) {\n return items;\n }\n\n internalMarkers.forEach(({ id, position }) => {\n items.push(\n <Marker\n key={`marker_${id}`}\n id={id}\n position={position}\n isDraggable\n map={map}\n onChange={handleMarkerChange}\n onRemove={handleMarkerRemove}\n />,\n );\n });\n\n return items;\n }, [handleMarkerChange, handleMarkerRemove, internalMarkers, map]);\n\n return useMemo(\n () => (\n <StyledMapWrapper>\n <Wrapper apiKey={apiToken} libraries={['places']}>\n {/* ToDo find better solution */}\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <Map\n onClick={handleClick}\n onIdle={handleIdle}\n onPositionChange={handlePositionChange}\n center={center}\n zoom={zoom}\n fullscreenControl={false}\n mapTypeControl={false}\n streetViewControl={false}\n >\n {markerList}\n {canPolyDraw && <Polygon path={polygonPath} options={polygonOptions} />}\n </Map>\n </Wrapper>\n </StyledMapWrapper>\n ),\n [apiToken, handleClick, center, zoom, markerList, canPolyDraw, polygonPath, polygonOptions],\n );\n};\n\nMapWrapper.displayName = 'MapWrapper';\n\nexport default MapWrapper;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAEA,IAAAG,IAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,IAAA,GAAAD,sBAAA,CAAAL,OAAA;AAA4B,SAAAK,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAa5B,MAAMW,UAA+B,GAAGA,CAAC;EACrCC,QAAQ;EACRC,cAAc;EACdC,WAAW;EACXC,eAAe;EACfC,OAAO;EACPC,WAAW;EACXC,cAAc;EACdC;AACJ,CAAC,KAAK;EACF,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAAa,CAAC;EAC5D,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EACrD,MAAM,CAACG,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAJ,eAAQ,EAACR,WAAW,CAAC;EAC7C,MAAM,CAACa,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAN,eAAQ,EAAWP,eAAe,CAAC;EAC/D,MAAM,CAACc,eAAe,EAAEC,kBAAkB,CAAC,GAAG,IAAAR,eAAQ,EAAY,CAAC;EACnE,MAAM,CAACS,GAAG,EAAEC,MAAM,CAAC,GAAG,IAAAV,eAAQ,EAAkB,CAAC;EAEjD,IAAAW,gBAAS,EAAC,MAAM;IACZ,IAAIjB,OAAO,EAAE;MACTc,kBAAkB,CAACd,OAAO,CAAC;IAC/B;EACJ,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,MAAMkB,WAAW,GAAG,IAAAC,kBAAW,EAC1B5C,CAA4B,IAAK;IAAA,IAAA6C,SAAA;IAC9B,MAAMC,MAAM,IAAAD,SAAA,GAAG7C,CAAC,CAAC8C,MAAM,cAAAD,SAAA,uBAARA,SAAA,CAAUE,MAAM,CAAC,CAAC;IAEjC,IAAI,CAACD,MAAM,EAAE;MACT;IACJ;IAEAP,kBAAkB,CAAES,SAAS,IAAK;MAC9B,IAAIA,SAAS,IAAIA,SAAS,CAACC,MAAM,IAAI,CAAC,EAAE;QACpC,OAAOD,SAAS;MACpB;MAEA,MAAME,SAAkB,GAAG;QACvBC,QAAQ,EAAE;UAAEC,GAAG,EAAEN,MAAM,CAACM,GAAG;UAAEC,GAAG,EAAEP,MAAM,CAACO;QAAI,CAAC;QAC9CC,EAAE,EAAEN,SAAS,GAAGA,SAAS,CAACC,MAAM,GAAG;MACvC,CAAC;MAED,IAAI,OAAOvB,WAAW,KAAK,UAAU,EAAE;QACnCA,WAAW,CAACwB,SAAS,CAAC;MAC1B;MAEA,OAAOF,SAAS,GAAG,CAAC,GAAGA,SAAS,EAAEE,SAAS,CAAC,GAAG,CAACA,SAAS,CAAC;IAC9D,CAAC,CAAC;EACN,CAAC,EACD,CAACxB,WAAW,CAChB,CAAC;EAED,IAAAgB,gBAAS,EAAC,MAAM;IAAA,IAAAa,iBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA;IACZ,IAAI,CAACxB,eAAe,EAAE;MAClB;IACJ;IAEA,IAAIA,eAAe,CAACW,MAAM,KAAK,CAAC,EAAE;MAC9BhB,cAAc,CAAC,KAAK,CAAC;MAErB;IACJ;IAEA,MAAM8B,IAAgB,GAAG,CACrB;MACIX,GAAG,EAAE,EAAAG,iBAAA,GAAAjB,eAAe,CAAC,CAAC,CAAC,cAAAiB,iBAAA,uBAAlBA,iBAAA,CAAoBJ,QAAQ,CAACC,GAAG,KAAI,CAAC;MAC1CC,GAAG,EAAE,EAAAG,kBAAA,GAAAlB,eAAe,CAAC,CAAC,CAAC,cAAAkB,kBAAA,uBAAlBA,kBAAA,CAAoBL,QAAQ,CAACE,GAAG,KAAI;IAC7C,CAAC,EACD;MACID,GAAG,EAAE,EAAAK,kBAAA,GAAAnB,eAAe,CAAC,CAAC,CAAC,cAAAmB,kBAAA,uBAAlBA,kBAAA,CAAoBN,QAAQ,CAACC,GAAG,KAAI,CAAC;MAC1CC,GAAG,EAAE,EAAAK,kBAAA,GAAApB,eAAe,CAAC,CAAC,CAAC,cAAAoB,kBAAA,uBAAlBA,kBAAA,CAAoBP,QAAQ,CAACE,GAAG,KAAI;IAC7C,CAAC,EACD;MACID,GAAG,EAAE,EAAAO,kBAAA,GAAArB,eAAe,CAAC,CAAC,CAAC,cAAAqB,kBAAA,uBAAlBA,kBAAA,CAAoBR,QAAQ,CAACC,GAAG,KAAI,CAAC;MAC1CC,GAAG,EAAE,EAAAO,kBAAA,GAAAtB,eAAe,CAAC,CAAC,CAAC,cAAAsB,kBAAA,uBAAlBA,kBAAA,CAAoBT,QAAQ,CAACE,GAAG,KAAI;IAC7C,CAAC,EACD;MACID,GAAG,EAAE,EAAAS,kBAAA,GAAAvB,eAAe,CAAC,CAAC,CAAC,cAAAuB,kBAAA,uBAAlBA,kBAAA,CAAoBV,QAAQ,CAACC,GAAG,KAAI,CAAC;MAC1CC,GAAG,EAAE,EAAAS,kBAAA,GAAAxB,eAAe,CAAC,CAAC,CAAC,cAAAwB,kBAAA,uBAAlBA,kBAAA,CAAoBX,QAAQ,CAACE,GAAG,KAAI;IAC7C,CAAC,CACJ;IAED,MAAMW,MAAM,GAAGD,IAAI,CAACE,MAAM,CAAC,CAACC,IAAI,EAAEC,OAAO,KAAMD,IAAI,CAACd,GAAG,GAAGe,OAAO,CAACf,GAAG,GAAGc,IAAI,GAAGC,OAAQ,CAAC;IACxF,MAAMC,MAAM,GAAGL,IAAI,CAACE,MAAM,CAAC,CAACC,IAAI,EAAEC,OAAO,KAAMD,IAAI,CAACd,GAAG,GAAGe,OAAO,CAACf,GAAG,GAAGc,IAAI,GAAGC,OAAQ,CAAC;IACxF,MAAME,MAAM,GAAGN,IAAI,CAACE,MAAM,CAAC,CAACC,IAAI,EAAEC,OAAO,KAAMD,IAAI,CAACb,GAAG,GAAGc,OAAO,CAACd,GAAG,GAAGa,IAAI,GAAGC,OAAQ,CAAC;IACxF,MAAMG,MAAM,GAAGP,IAAI,CAACE,MAAM,CAAC,CAACC,IAAI,EAAEC,OAAO,KAAMD,IAAI,CAACb,GAAG,GAAGc,OAAO,CAACd,GAAG,GAAGa,IAAI,GAAGC,OAAQ,CAAC;IAExF,MAAMI,OAAO,GAAGR,IAAI,CAACS,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACrB,GAAG,KAAKY,MAAM,CAACZ,GAAG,IAAIqB,IAAI,CAACpB,GAAG,KAAKiB,MAAM,CAACjB,GAAG,CAAC;IACvF,MAAMqB,WAAW,GAAGX,IAAI,CAACS,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACrB,GAAG,KAAKgB,MAAM,CAAChB,GAAG,IAAIqB,IAAI,CAACpB,GAAG,KAAKgB,MAAM,CAAChB,GAAG,CAAC;IAE3F,IAAI,CAACkB,OAAO,IAAI,CAACG,WAAW,EAAE;MAC1B;IACJ;IAEA,MAAMC,SAAS,GAAG,CAACJ,OAAO,CAACnB,GAAG,GAAGsB,WAAW,CAACtB,GAAG,IAAI,CAAC;IACrD,MAAMwB,SAAS,GAAG,CAACL,OAAO,CAAClB,GAAG,GAAGqB,WAAW,CAACrB,GAAG,IAAI,CAAC;IAErD,MAAMwB,aAAa,GAAG;MAClBzB,GAAG,EAAEuB,SAAS;MACdtB,GAAG,EAAEuB;IACT,CAAC;IAED,IAAI,CAACC,aAAa,EAAE;MAChB;IACJ;IAEA5C,cAAc,CAAC,IAAI,CAAC;IACpBH,cAAc,CAACiC,IAAI,CAAC;EACxB,CAAC,EAAE,CAACzB,eAAe,CAAC,CAAC;EAErB,MAAMwC,UAAU,GAAIC,CAAkB,IAAK;IAAA,IAAAC,YAAA;IACvCvC,MAAM,CAACsC,CAAC,CAAC;IACT5C,OAAO,CAAC4C,CAAC,CAACE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;IACzB5C,SAAS,CAAC,EAAA2C,YAAA,GAAAD,CAAC,CAACG,SAAS,CAAC,CAAC,cAAAF,YAAA,uBAAbA,YAAA,CAAejC,MAAM,CAAC,CAAC,KAAI;MAAEK,GAAG,EAAE,CAAC;MAAEC,GAAG,EAAE;IAAE,CAAC,CAAC;EAC5D,CAAC;EAED,MAAM8B,oBAAoB,GAAIhC,QAAkB,IAAK;IACjDd,SAAS,CAACc,QAAQ,CAAC;EACvB,CAAC;EAED,MAAMiC,kBAAkB,GAAG,IAAAxC,kBAAW,EACjCyC,MAAe,IAAK;IACjB9C,kBAAkB,CAAES,SAAS,IAAK;MAC9B,MAAMsC,cAAc,GAAG,CAACtC,SAAS,IAAI,EAAE,EAAER,GAAG,CAAE+C,UAAU,IAAK;QACzD,IAAIA,UAAU,CAACjC,EAAE,KAAK+B,MAAM,CAAC/B,EAAE,EAAE;UAC7B,OAAO;YAAE,GAAGiC,UAAU;YAAEpC,QAAQ,EAAEkC,MAAM,CAAClC;UAAS,CAAC;QACvD;QACA,OAAOoC,UAAU;MACrB,CAAC,CAAC;MAEF,IAAI,OAAO3D,cAAc,KAAK,UAAU,EAAE;QACtCA,cAAc,CAAC0D,cAAc,CAAC;MAClC;MAEA,OAAOA,cAAc;IACzB,CAAC,CAAC;EACN,CAAC,EACD,CAAC1D,cAAc,CACnB,CAAC;EAED,MAAM4D,kBAAkB,GAAG,IAAA5C,kBAAW,EACjCU,EAAU,IAAK;IACZf,kBAAkB,CAAES,SAAS,IAAK;MAC9B,IAAI,OAAOrB,cAAc,KAAK,UAAU,EAAE;QACtCA,cAAc,CAAC2B,EAAE,CAAC;MACtB;MAEA,OAAON,SAAS,GAAGA,SAAS,CAACyC,MAAM,CAAEJ,MAAM,IAAKA,MAAM,CAAC/B,EAAE,KAAKA,EAAE,CAAC,GAAG,EAAE;IAC1E,CAAC,CAAC;EACN,CAAC,EACD,CAAC3B,cAAc,CACnB,CAAC;EAED,MAAM+D,UAAU,GAAG,IAAAC,cAAO,EAAC,MAAM;IAC7B,MAAMC,KAAqB,GAAG,EAAE;IAEhC,IAAI,CAACtD,eAAe,EAAE;MAClB,OAAOsD,KAAK;IAChB;IAEAtD,eAAe,CAACuD,OAAO,CAAC,CAAC;MAAEvC,EAAE;MAAEH;IAAS,CAAC,KAAK;MAC1CyC,KAAK,CAACE,IAAI,cACNvG,MAAA,CAAAW,OAAA,CAAA6F,aAAA,CAAClG,OAAA,CAAAK,OAAM;QACH8F,GAAG,EAAE,UAAU1C,EAAE,EAAG;QACpBA,EAAE,EAAEA,EAAG;QACPH,QAAQ,EAAEA,QAAS;QACnB8C,WAAW;QACXzD,GAAG,EAAEA,GAAI;QACT0D,QAAQ,EAAEd,kBAAmB;QAC7Be,QAAQ,EAAEX;MAAmB,CAChC,CACL,CAAC;IACL,CAAC,CAAC;IAEF,OAAOI,KAAK;EAChB,CAAC,EAAE,CAACR,kBAAkB,EAAEI,kBAAkB,EAAElD,eAAe,EAAEE,GAAG,CAAC,CAAC;EAElE,OAAO,IAAAmD,cAAO,EACV,mBACIpG,MAAA,CAAAW,OAAA,CAAA6F,aAAA,CAACpG,WAAA,CAAAyG,gBAAgB,qBACb7G,MAAA,CAAAW,OAAA,CAAA6F,aAAA,CAACrG,aAAA,CAAA2G,OAAO;IAACC,MAAM,EAAEjF,QAAS;IAACkF,SAAS,EAAE,CAAC,QAAQ;EAAE,gBAI7ChH,MAAA,CAAAW,OAAA,CAAA6F,aAAA,CAAChG,IAAA,CAAAG,OAAG;IACAsG,OAAO,EAAE7D,WAAY;IACrB8D,MAAM,EAAE3B,UAAW;IACnB4B,gBAAgB,EAAEvB,oBAAqB;IACvC/C,MAAM,EAAEA,MAAO;IACfF,IAAI,EAAEA,IAAK;IACXyE,iBAAiB,EAAE,KAAM;IACzBC,cAAc,EAAE,KAAM;IACtBC,iBAAiB,EAAE;EAAM,GAExBnB,UAAU,EACV1D,WAAW,iBAAIzC,MAAA,CAAAW,OAAA,CAAA6F,aAAA,CAACnG,IAAA,CAAAkH,OAAO;IAAC/C,IAAI,EAAElC,WAAY;IAACkF,OAAO,EAAEzF;EAAe,CAAE,CACrE,CACA,CACK,CACrB,EACD,CAACD,QAAQ,EAAEsB,WAAW,EAAEP,MAAM,EAAEF,IAAI,EAAEwD,UAAU,EAAE1D,WAAW,EAAEH,WAAW,EAAEP,cAAc,CAC9F,CAAC;AACL,CAAC;AAEDF,UAAU,CAAC4F,WAAW,GAAG,YAAY;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAhH,OAAA,GAEvBkB,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"MapWrapper.js","names":["_react","_interopRequireWildcard","require","_reactWrapper","_MapWrapper","_api","_Marker","_interopRequireDefault","_Map","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MapWrapper","apiToken","polygonOptions","initialZoom","initialPosition","markers","onMarkerAdd","onMarkerRemove","onMarkerChange","polygonPath","setPolygonPath","useState","canPolyDraw","setCanPolyDraw","zoom","setZoom","center","setCenter","internalMarkers","setInternalMarkers","map","setMap","useEffect","handleClick","useCallback","_e$latLng","latLng","toJSON","prevState","length","newMarker","position","lat","lng","id","_internalMarkers$","_internalMarkers$2","_internalMarkers$3","_internalMarkers$4","_internalMarkers$5","_internalMarkers$6","_internalMarkers$7","_internalMarkers$8","path","maxLat","reduce","prev","current","minLat","maxLng","minLng","topLeft","find","item","bottomRight","centerLat","centerLng","polygonCenter","handleIdle","m","_m$getCenter","getZoom","getCenter","handlePositionChange","handleMarkerChange","marker","updatedMarkers","prevMarker","handleMarkerRemove","filter","markerList","useMemo","items","forEach","push","createElement","key","isDraggable","onChange","onRemove","StyledMapWrapper","Wrapper","apiKey","libraries","onClick","onIdle","onPositionChange","fullscreenControl","mapTypeControl","streetViewControl","Polygon","options","displayName","_default","exports"],"sources":["../../../../../src/components/position-input/map-wrapper/MapWrapper.tsx"],"sourcesContent":["import React, { FC, type ReactElement, useCallback, useEffect, useMemo, useState } from 'react';\nimport { Wrapper } from '@googlemaps/react-wrapper';\nimport { StyledMapWrapper } from './MapWrapper.styles';\nimport type { IMarker, PolygonOptions, Position } from '../../../types/positionInput';\nimport { Polygon } from '@react-google-maps/api';\nimport Marker from './map/marker/Marker';\nimport Map from './map/Map';\n\nexport type MapWrapperProps = {\n apiToken: string;\n polygonOptions: PolygonOptions;\n initialZoom: number;\n initialPosition: Position;\n markers?: IMarker[];\n onMarkerAdd?: (marker: IMarker) => void;\n onMarkerRemove?: (id: number) => void;\n onMarkerChange?: (markers: IMarker[]) => void;\n};\n\nconst MapWrapper: FC<MapWrapperProps> = ({\n apiToken,\n polygonOptions,\n initialZoom,\n initialPosition,\n markers,\n onMarkerAdd,\n onMarkerRemove,\n onMarkerChange,\n}) => {\n const [polygonPath, setPolygonPath] = useState<Position[]>();\n const [canPolyDraw, setCanPolyDraw] = useState(false);\n const [zoom, setZoom] = useState(initialZoom);\n const [center, setCenter] = useState<Position>(initialPosition);\n const [internalMarkers, setInternalMarkers] = useState<IMarker[]>();\n const [map, setMap] = useState<google.maps.Map>();\n\n useEffect(() => {\n if (markers) {\n setInternalMarkers(markers);\n }\n }, [markers]);\n\n const handleClick = useCallback(\n (e: google.maps.MapMouseEvent) => {\n const latLng = e.latLng?.toJSON();\n\n if (!latLng) {\n return;\n }\n\n setInternalMarkers((prevState) => {\n if (prevState && prevState.length >= 2) {\n return prevState;\n }\n\n const newMarker: IMarker = {\n position: { lat: latLng.lat, lng: latLng.lng },\n id: prevState ? prevState.length : 0,\n };\n\n if (typeof onMarkerAdd === 'function') {\n onMarkerAdd(newMarker);\n }\n\n return prevState ? [...prevState, newMarker] : [newMarker];\n });\n },\n [onMarkerAdd],\n );\n\n useEffect(() => {\n if (!internalMarkers) {\n return;\n }\n\n if (internalMarkers.length !== 2) {\n setCanPolyDraw(false);\n\n return;\n }\n\n const path: Position[] = [\n {\n lat: internalMarkers[0]?.position.lat ?? 0,\n lng: internalMarkers[0]?.position.lng ?? 0,\n },\n {\n lat: internalMarkers[0]?.position.lat ?? 0,\n lng: internalMarkers[1]?.position.lng ?? 0,\n },\n {\n lat: internalMarkers[1]?.position.lat ?? 0,\n lng: internalMarkers[1]?.position.lng ?? 0,\n },\n {\n lat: internalMarkers[1]?.position.lat ?? 0,\n lng: internalMarkers[0]?.position.lng ?? 0,\n },\n ];\n\n const maxLat = path.reduce((prev, current) => (prev.lat > current.lat ? prev : current));\n const minLat = path.reduce((prev, current) => (prev.lat < current.lat ? prev : current));\n const maxLng = path.reduce((prev, current) => (prev.lng > current.lng ? prev : current));\n const minLng = path.reduce((prev, current) => (prev.lng < current.lng ? prev : current));\n\n const topLeft = path.find((item) => item.lat === maxLat.lat && item.lng === minLng.lng);\n const bottomRight = path.find((item) => item.lat === minLat.lat && item.lng === maxLng.lng);\n\n if (!topLeft || !bottomRight) {\n return;\n }\n\n const centerLat = (topLeft.lat + bottomRight.lat) / 2;\n const centerLng = (topLeft.lng + bottomRight.lng) / 2;\n\n const polygonCenter = {\n lat: centerLat,\n lng: centerLng,\n };\n\n if (!polygonCenter) {\n return;\n }\n\n setCanPolyDraw(true);\n setPolygonPath(path);\n }, [internalMarkers]);\n\n const handleIdle = (m: google.maps.Map) => {\n setMap(m);\n setZoom(m.getZoom() ?? 0);\n setCenter(m.getCenter()?.toJSON() ?? { lat: 0, lng: 0 });\n };\n\n const handlePositionChange = (position: Position) => {\n setCenter(position);\n };\n\n const handleMarkerChange = useCallback(\n (marker: IMarker) => {\n setInternalMarkers((prevState) => {\n const updatedMarkers = (prevState ?? []).map((prevMarker) => {\n if (prevMarker.id === marker.id) {\n return { ...prevMarker, position: marker.position };\n }\n return prevMarker;\n });\n\n if (typeof onMarkerChange === 'function') {\n onMarkerChange(updatedMarkers);\n }\n\n return updatedMarkers;\n });\n },\n [onMarkerChange],\n );\n\n const handleMarkerRemove = useCallback(\n (id: number) => {\n setInternalMarkers((prevState) => {\n if (typeof onMarkerRemove === 'function') {\n onMarkerRemove(id);\n }\n\n return prevState ? prevState.filter((marker) => marker.id !== id) : [];\n });\n },\n [onMarkerRemove],\n );\n\n const markerList = useMemo(() => {\n const items: ReactElement[] = [];\n\n if (!internalMarkers) {\n return items;\n }\n\n internalMarkers.forEach(({ id, position }) => {\n items.push(\n <Marker\n key={`marker_${id}`}\n id={id}\n position={position}\n isDraggable\n map={map}\n onChange={handleMarkerChange}\n onRemove={handleMarkerRemove}\n />,\n );\n });\n\n return items;\n }, [handleMarkerChange, handleMarkerRemove, internalMarkers, map]);\n\n return useMemo(\n () => (\n <StyledMapWrapper>\n <Wrapper apiKey={apiToken} libraries={['places']}>\n {/* ToDo find better solution */}\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <Map\n onClick={handleClick}\n onIdle={handleIdle}\n onPositionChange={handlePositionChange}\n center={center}\n zoom={zoom}\n fullscreenControl={false}\n mapTypeControl={false}\n streetViewControl={false}\n >\n {markerList}\n {canPolyDraw && <Polygon path={polygonPath} options={polygonOptions} />}\n </Map>\n </Wrapper>\n </StyledMapWrapper>\n ),\n [apiToken, handleClick, center, zoom, markerList, canPolyDraw, polygonPath, polygonOptions],\n );\n};\n\nMapWrapper.displayName = 'MapWrapper';\n\nexport default MapWrapper;\n"],"mappings":"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","ignoreList":[]}
@@ -7,8 +7,7 @@ exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _Map = require("./Map.styles");
9
9
  var _positionInput = require("../../../../hooks/positionInput");
10
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
11
  const Map = ({
13
12
  mapTypeControl,
14
13
  fullscreenControl,
@@ -1 +1 @@
1
- {"version":3,"file":"Map.js","names":["_react","_interopRequireWildcard","require","_Map","_positionInput","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Map","mapTypeControl","fullscreenControl","streetViewControl","children","onClick","onIdle","zoom","center","onPositionChange","map","setMap","useState","ref","useRef","useEffect","current","window","google","maps","input","document","getElementById","autoComplete","places","Autocomplete","fields","types","placeholder","addListener","_place$geometry","place","getPlace","placeLocation","geometry","location","lat","lng","setCenter","useDeepCompareEffectForMaps","setOptions","forEach","eventName","event","clearListeners","createElement","Fragment","StyledMap","React","Children","child","isValidElement","cloneElement","displayName","_default","exports"],"sources":["../../../../../../src/components/position-input/map-wrapper/map/Map.tsx"],"sourcesContent":["import React, { FC, type ReactElement, useEffect, useRef, useState } from 'react';\nimport { StyledMap } from './Map.styles';\nimport type { Position } from '../../../../types/positionInput';\nimport { useDeepCompareEffectForMaps } from '../../../../hooks/positionInput';\n\nexport type MapProps = {\n onClick: (event: google.maps.MapMouseEvent) => void;\n onIdle: (event: google.maps.Map) => void;\n onPositionChange: (position: Position) => void;\n children: ReactElement;\n center: Position;\n zoom: number;\n fullscreenControl: boolean;\n mapTypeControl: boolean;\n streetViewControl: boolean;\n};\n\nconst Map: FC<MapProps> = ({\n mapTypeControl,\n fullscreenControl,\n streetViewControl,\n children,\n onClick,\n onIdle,\n zoom,\n center,\n onPositionChange,\n}) => {\n const [map, setMap] = useState<google.maps.Map>();\n\n const ref = useRef(null);\n\n useEffect(() => {\n if (ref.current && !map) {\n setMap(new window.google.maps.Map(ref.current, {}));\n\n const input = document.getElementById('auto-complete-input') as HTMLInputElement;\n\n if (!input) {\n return;\n }\n\n const autoComplete = new google.maps.places.Autocomplete(input, {\n // componentRestrictions: { country: [\"de\"] },\n fields: ['address_component', 'geometry'],\n types: ['(cities)'],\n });\n\n input.placeholder = '';\n\n autoComplete.addListener('place_changed', () => {\n const place = autoComplete.getPlace();\n\n const placeLocation = place.geometry?.location;\n\n if (!placeLocation) {\n return;\n }\n\n onPositionChange({ lat: placeLocation.lat(), lng: placeLocation.lng() });\n });\n }\n }, [ref, map, onPositionChange]);\n\n useEffect(() => {\n if (map) {\n map.setCenter(center);\n }\n }, [center, map]);\n\n // because React does not do deep comparisons, a custom hook is used\n // see discussion in https://github.com/googlemaps/js-samples/issues/946\n useDeepCompareEffectForMaps(() => {\n if (map) {\n map.setOptions({ mapTypeControl, fullscreenControl, streetViewControl, zoom });\n }\n }, [map]);\n\n useEffect(() => {\n if (map) {\n ['click', 'idle'].forEach((eventName) =>\n google.maps.event.clearListeners(map, eventName),\n );\n\n if (onClick) {\n map.addListener('click', onClick);\n }\n\n if (onIdle) {\n map.addListener('idle', () => onIdle(map));\n }\n }\n }, [map, onClick, onIdle]);\n\n return (\n <>\n <StyledMap ref={ref} />\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n // set the map prop on the child component\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return React.cloneElement(child, { map });\n }\n return null;\n })}\n </>\n );\n};\n\nMap.displayName = 'Map';\n\nexport default Map;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Map.js","names":["_react","_interopRequireWildcard","require","_Map","_positionInput","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Map","mapTypeControl","fullscreenControl","streetViewControl","children","onClick","onIdle","zoom","center","onPositionChange","map","setMap","useState","ref","useRef","useEffect","current","window","google","maps","input","document","getElementById","autoComplete","places","Autocomplete","fields","types","placeholder","addListener","_place$geometry","place","getPlace","placeLocation","geometry","location","lat","lng","setCenter","useDeepCompareEffectForMaps","setOptions","forEach","eventName","event","clearListeners","createElement","Fragment","StyledMap","React","Children","child","isValidElement","cloneElement","displayName","_default","exports"],"sources":["../../../../../../src/components/position-input/map-wrapper/map/Map.tsx"],"sourcesContent":["import React, { FC, type ReactElement, useEffect, useRef, useState } from 'react';\nimport { StyledMap } from './Map.styles';\nimport type { Position } from '../../../../types/positionInput';\nimport { useDeepCompareEffectForMaps } from '../../../../hooks/positionInput';\n\nexport type MapProps = {\n onClick: (event: google.maps.MapMouseEvent) => void;\n onIdle: (event: google.maps.Map) => void;\n onPositionChange: (position: Position) => void;\n children: ReactElement;\n center: Position;\n zoom: number;\n fullscreenControl: boolean;\n mapTypeControl: boolean;\n streetViewControl: boolean;\n};\n\nconst Map: FC<MapProps> = ({\n mapTypeControl,\n fullscreenControl,\n streetViewControl,\n children,\n onClick,\n onIdle,\n zoom,\n center,\n onPositionChange,\n}) => {\n const [map, setMap] = useState<google.maps.Map>();\n\n const ref = useRef(null);\n\n useEffect(() => {\n if (ref.current && !map) {\n setMap(new window.google.maps.Map(ref.current, {}));\n\n const input = document.getElementById('auto-complete-input') as HTMLInputElement;\n\n if (!input) {\n return;\n }\n\n const autoComplete = new google.maps.places.Autocomplete(input, {\n // componentRestrictions: { country: [\"de\"] },\n fields: ['address_component', 'geometry'],\n types: ['(cities)'],\n });\n\n input.placeholder = '';\n\n autoComplete.addListener('place_changed', () => {\n const place = autoComplete.getPlace();\n\n const placeLocation = place.geometry?.location;\n\n if (!placeLocation) {\n return;\n }\n\n onPositionChange({ lat: placeLocation.lat(), lng: placeLocation.lng() });\n });\n }\n }, [ref, map, onPositionChange]);\n\n useEffect(() => {\n if (map) {\n map.setCenter(center);\n }\n }, [center, map]);\n\n // because React does not do deep comparisons, a custom hook is used\n // see discussion in https://github.com/googlemaps/js-samples/issues/946\n useDeepCompareEffectForMaps(() => {\n if (map) {\n map.setOptions({ mapTypeControl, fullscreenControl, streetViewControl, zoom });\n }\n }, [map]);\n\n useEffect(() => {\n if (map) {\n ['click', 'idle'].forEach((eventName) =>\n google.maps.event.clearListeners(map, eventName),\n );\n\n if (onClick) {\n map.addListener('click', onClick);\n }\n\n if (onIdle) {\n map.addListener('idle', () => onIdle(map));\n }\n }\n }, [map, onClick, onIdle]);\n\n return (\n <>\n <StyledMap ref={ref} />\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n // set the map prop on the child component\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return React.cloneElement(child, { map });\n }\n return null;\n })}\n </>\n );\n};\n\nMap.displayName = 'Map';\n\nexport default Map;\n"],"mappings":"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","ignoreList":[]}
@@ -7,8 +7,7 @@ exports.useDeepCompareEffectForMaps = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _fastEquals = require("fast-equals");
9
9
  var _typescriptGuards = require("@googlemaps/typescript-guards");
10
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
11
  // Note do not touch!
13
12
 
14
13
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -1 +1 @@
1
- {"version":3,"file":"positionInput.js","names":["_react","_interopRequireWildcard","require","_fastEquals","_typescriptGuards","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","deepCompareEqualsForMaps","createCustomEqual","deepEqual","b","isLatLngLiteral","google","maps","LatLng","equals","useDeepCompareMemoize","value","ref","React","useRef","current","useDeepCompareEffectForMaps","callback","dependencies","useEffect","map","exports"],"sources":["../../../src/hooks/positionInput.tsx"],"sourcesContent":["import React, { type EffectCallback, useEffect } from 'react';\nimport { createCustomEqual } from 'fast-equals';\nimport { isLatLngLiteral } from '@googlemaps/typescript-guards';\n\n// Note do not touch!\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nconst deepCompareEqualsForMaps = createCustomEqual((deepEqual) => (a, b) => {\n if (\n isLatLngLiteral(a) ||\n a instanceof google.maps.LatLng ||\n isLatLngLiteral(b) ||\n b instanceof google.maps.LatLng\n ) {\n return new google.maps.LatLng(a).equals(new google.maps.LatLng(b));\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-return\n return deepEqual(a, b);\n});\n\nconst useDeepCompareMemoize = (value: any) => {\n const ref = React.useRef();\n\n if (!deepCompareEqualsForMaps(value, ref.current)) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n ref.current = value;\n }\n\n return ref.current;\n};\n\nexport const useDeepCompareEffectForMaps = (callback: EffectCallback, dependencies: any[]) => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(callback, dependencies.map(useDeepCompareMemoize));\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAAgE,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEhE;;AAEA;AACA;AACA,MAAMW,wBAAwB,GAAG,IAAAC,6BAAiB,EAAEC,SAAS,IAAK,CAACX,CAAC,EAAEY,CAAC,KAAK;EACxE,IACI,IAAAC,iCAAe,EAACb,CAAC,CAAC,IAClBA,CAAC,YAAYc,MAAM,CAACC,IAAI,CAACC,MAAM,IAC/B,IAAAH,iCAAe,EAACD,CAAC,CAAC,IAClBA,CAAC,YAAYE,MAAM,CAACC,IAAI,CAACC,MAAM,EACjC;IACE,OAAO,IAAIF,MAAM,CAACC,IAAI,CAACC,MAAM,CAAChB,CAAC,CAAC,CAACiB,MAAM,CAAC,IAAIH,MAAM,CAACC,IAAI,CAACC,MAAM,CAACJ,CAAC,CAAC,CAAC;EACtE;;EAEA;EACA,OAAOD,SAAS,CAACX,CAAC,EAAEY,CAAC,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAMM,qBAAqB,GAAIC,KAAU,IAAK;EAC1C,MAAMC,GAAG,GAAGC,cAAK,CAACC,MAAM,CAAC,CAAC;EAE1B,IAAI,CAACb,wBAAwB,CAACU,KAAK,EAAEC,GAAG,CAACG,OAAO,CAAC,EAAE;IAC/C;IACAH,GAAG,CAACG,OAAO,GAAGJ,KAAK;EACvB;EAEA,OAAOC,GAAG,CAACG,OAAO;AACtB,CAAC;AAEM,MAAMC,2BAA2B,GAAGA,CAACC,QAAwB,EAAEC,YAAmB,KAAK;EAC1F;EACA,IAAAC,gBAAS,EAACF,QAAQ,EAAEC,YAAY,CAACE,GAAG,CAACV,qBAAqB,CAAC,CAAC;AAChE,CAAC;AAACW,OAAA,CAAAL,2BAAA,GAAAA,2BAAA","ignoreList":[]}
1
+ {"version":3,"file":"positionInput.js","names":["_react","_interopRequireWildcard","require","_fastEquals","_typescriptGuards","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","deepCompareEqualsForMaps","createCustomEqual","deepEqual","a","b","isLatLngLiteral","google","maps","LatLng","equals","useDeepCompareMemoize","value","ref","React","useRef","current","useDeepCompareEffectForMaps","callback","dependencies","useEffect","map","exports"],"sources":["../../../src/hooks/positionInput.tsx"],"sourcesContent":["import React, { type EffectCallback, useEffect } from 'react';\nimport { createCustomEqual } from 'fast-equals';\nimport { isLatLngLiteral } from '@googlemaps/typescript-guards';\n\n// Note do not touch!\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nconst deepCompareEqualsForMaps = createCustomEqual((deepEqual) => (a, b) => {\n if (\n isLatLngLiteral(a) ||\n a instanceof google.maps.LatLng ||\n isLatLngLiteral(b) ||\n b instanceof google.maps.LatLng\n ) {\n return new google.maps.LatLng(a).equals(new google.maps.LatLng(b));\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-return\n return deepEqual(a, b);\n});\n\nconst useDeepCompareMemoize = (value: any) => {\n const ref = React.useRef();\n\n if (!deepCompareEqualsForMaps(value, ref.current)) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n ref.current = value;\n }\n\n return ref.current;\n};\n\nexport const useDeepCompareEffectForMaps = (callback: EffectCallback, dependencies: any[]) => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(callback, dependencies.map(useDeepCompareMemoize));\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAAgE,SAAAD,wBAAAI,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAN,uBAAA,YAAAA,CAAAI,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAEhE;;AAEA;AACA;AACA,MAAMkB,wBAAwB,GAAG,IAAAC,6BAAiB,EAAEC,SAAS,IAAK,CAACC,CAAC,EAAEC,CAAC,KAAK;EACxE,IACI,IAAAC,iCAAe,EAACF,CAAC,CAAC,IAClBA,CAAC,YAAYG,MAAM,CAACC,IAAI,CAACC,MAAM,IAC/B,IAAAH,iCAAe,EAACD,CAAC,CAAC,IAClBA,CAAC,YAAYE,MAAM,CAACC,IAAI,CAACC,MAAM,EACjC;IACE,OAAO,IAAIF,MAAM,CAACC,IAAI,CAACC,MAAM,CAACL,CAAC,CAAC,CAACM,MAAM,CAAC,IAAIH,MAAM,CAACC,IAAI,CAACC,MAAM,CAACJ,CAAC,CAAC,CAAC;EACtE;;EAEA;EACA,OAAOF,SAAS,CAACC,CAAC,EAAEC,CAAC,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAMM,qBAAqB,GAAIC,KAAU,IAAK;EAC1C,MAAMC,GAAG,GAAGC,cAAK,CAACC,MAAM,CAAC,CAAC;EAE1B,IAAI,CAACd,wBAAwB,CAACW,KAAK,EAAEC,GAAG,CAACG,OAAO,CAAC,EAAE;IAC/C;IACAH,GAAG,CAACG,OAAO,GAAGJ,KAAK;EACvB;EAEA,OAAOC,GAAG,CAACG,OAAO;AACtB,CAAC;AAEM,MAAMC,2BAA2B,GAAGA,CAACC,QAAwB,EAAEC,YAAmB,KAAK;EAC1F;EACA,IAAAC,gBAAS,EAACF,QAAQ,EAAEC,YAAY,CAACE,GAAG,CAACV,qBAAqB,CAAC,CAAC;AAChE,CAAC;AAACW,OAAA,CAAAL,2BAAA,GAAAA,2BAAA","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chayns-components/maps",
3
- "version": "5.0.0-beta.1097",
3
+ "version": "5.0.0-beta.1099",
4
4
  "description": "A set of beautiful React components for developing your own applications with chayns.",
5
5
  "sideEffects": false,
6
6
  "browserslist": [
@@ -51,26 +51,26 @@
51
51
  "url": "https://github.com/TobitSoftware/chayns-components/issues"
52
52
  },
53
53
  "devDependencies": {
54
- "@babel/cli": "^7.27.0",
55
- "@babel/core": "^7.26.10",
56
- "@babel/preset-env": "^7.26.9",
57
- "@babel/preset-react": "^7.26.3",
58
- "@babel/preset-typescript": "^7.27.0",
54
+ "@babel/cli": "^7.27.1",
55
+ "@babel/core": "^7.27.1",
56
+ "@babel/preset-env": "^7.27.1",
57
+ "@babel/preset-react": "^7.27.1",
58
+ "@babel/preset-typescript": "^7.27.1",
59
59
  "@types/google.maps": "^3.58.1",
60
- "@types/react": "^18.3.20",
61
- "@types/react-dom": "^18.3.6",
60
+ "@types/react": "^18.3.21",
61
+ "@types/react-dom": "^18.3.7",
62
62
  "@types/styled-components": "^5.1.34",
63
63
  "@types/uuid": "^10.0.0",
64
64
  "babel-loader": "^9.2.1",
65
65
  "cross-env": "^7.0.3",
66
- "lerna": "^8.2.1",
66
+ "lerna": "^8.2.2",
67
67
  "react": "^18.3.1",
68
68
  "react-dom": "^18.3.1",
69
69
  "styled-components": "^6.1.17",
70
70
  "typescript": "^5.8.3"
71
71
  },
72
72
  "dependencies": {
73
- "@chayns-components/core": "^5.0.0-beta.1097",
73
+ "@chayns-components/core": "^5.0.0-beta.1099",
74
74
  "@googlemaps/react-wrapper": "^1.2.0",
75
75
  "@googlemaps/typescript-guards": "^2.0.3",
76
76
  "@react-google-maps/api": "^2.20.6",
@@ -86,5 +86,5 @@
86
86
  "publishConfig": {
87
87
  "access": "public"
88
88
  },
89
- "gitHead": "7285157718c4e5c2eea7053c2992a0f531553c78"
89
+ "gitHead": "5501dffde010cd9e57bf9bc858736d5cd21fe364"
90
90
  }