@reltio/components 1.4.2006 → 1.4.2008

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.
Files changed (83) hide show
  1. package/Drawer/Drawer.test.js +1 -0
  2. package/EditModeAttributesView/IntegrationEditModeAttributesView.test.js +1 -2
  3. package/HierarchyNodeTitle/useEntityDetails.test.js +3 -2
  4. package/LineChart/LineChart.test.js +1 -0
  5. package/MapChart/components/Legend/styles.d.ts +1 -1
  6. package/ProfileResizablePanes/styles.d.ts +1 -1
  7. package/ReactSortableTree/ReactSortableTree.test.js +3 -1
  8. package/ReltioMap/ReltioMap.d.ts +15 -11
  9. package/ReltioMap/ReltioMap.js +49 -39
  10. package/ReltioMap/ReltioMap.spec.js +232 -116
  11. package/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.d.ts +11 -0
  12. package/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.js +58 -0
  13. package/ReltioMap/components/ClusteredMarkers/CustomClusterRenderer.d.ts +8 -0
  14. package/ReltioMap/components/ClusteredMarkers/CustomClusterRenderer.js +18 -0
  15. package/ReltioMap/components/ClusteredMarkers/index.d.ts +1 -0
  16. package/ReltioMap/components/ClusteredMarkers/index.js +1 -0
  17. package/ReltioMap/components/DrawingManager/DrawingManager.d.ts +2 -0
  18. package/ReltioMap/components/DrawingManager/DrawingManager.js +5 -0
  19. package/ReltioMap/components/DrawingManager/index.d.ts +1 -0
  20. package/ReltioMap/components/DrawingManager/index.js +1 -0
  21. package/ReltioMap/components/DrawingManager/useDrawingManager.d.ts +7 -0
  22. package/ReltioMap/components/DrawingManager/useDrawingManager.js +36 -0
  23. package/ReltioMap/components/EntityMarker/EntityMarker.d.ts +8 -7
  24. package/ReltioMap/components/EntityMarker/EntityMarker.js +23 -23
  25. package/ReltioMap/components/EntityMarker/EntityMarker.spec.js +151 -66
  26. package/ReltioMap/components/Polygon/Polygon.d.ts +7 -0
  27. package/ReltioMap/components/Polygon/Polygon.js +8 -0
  28. package/ReltioMap/components/Polygon/index.d.ts +1 -0
  29. package/ReltioMap/components/Polygon/index.js +1 -0
  30. package/ReltioMap/components/Polygon/usePolygon.d.ts +10 -0
  31. package/ReltioMap/components/Polygon/usePolygon.js +35 -0
  32. package/ReltioMap/components/TopCenterMapControls/TopCenterMapControls.d.ts +2 -1
  33. package/ReltioMap/components/TopCenterMapControls/TopCenterMapControls.js +6 -5
  34. package/ReltioMap/components/TopRightMapControls/TopRightMapControls.d.ts +2 -1
  35. package/ReltioMap/components/TopRightMapControls/TopRightMapControls.js +3 -2
  36. package/ReltioMap/components/TopRightMapControls/styles.js +1 -1
  37. package/ReltioMap/helpers.d.ts +3 -2
  38. package/ReltioMap/types.d.ts +6 -3
  39. package/cjs/Drawer/Drawer.test.js +1 -0
  40. package/cjs/EditModeAttributesView/IntegrationEditModeAttributesView.test.js +1 -2
  41. package/cjs/HierarchyNodeTitle/useEntityDetails.test.js +3 -2
  42. package/cjs/LineChart/LineChart.test.js +1 -0
  43. package/cjs/MapChart/components/Legend/styles.d.ts +1 -1
  44. package/cjs/ProfileResizablePanes/styles.d.ts +1 -1
  45. package/cjs/ReactSortableTree/ReactSortableTree.test.js +3 -1
  46. package/cjs/ReltioMap/ReltioMap.d.ts +15 -11
  47. package/cjs/ReltioMap/ReltioMap.js +48 -38
  48. package/cjs/ReltioMap/ReltioMap.spec.js +230 -114
  49. package/cjs/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.d.ts +11 -0
  50. package/cjs/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.js +84 -0
  51. package/cjs/ReltioMap/components/ClusteredMarkers/CustomClusterRenderer.d.ts +8 -0
  52. package/cjs/ReltioMap/components/ClusteredMarkers/CustomClusterRenderer.js +21 -0
  53. package/cjs/ReltioMap/components/ClusteredMarkers/index.d.ts +1 -0
  54. package/cjs/ReltioMap/components/ClusteredMarkers/index.js +5 -0
  55. package/cjs/ReltioMap/components/DrawingManager/DrawingManager.d.ts +2 -0
  56. package/cjs/ReltioMap/components/DrawingManager/DrawingManager.js +9 -0
  57. package/cjs/ReltioMap/components/DrawingManager/index.d.ts +1 -0
  58. package/cjs/ReltioMap/components/DrawingManager/index.js +5 -0
  59. package/cjs/ReltioMap/components/DrawingManager/useDrawingManager.d.ts +7 -0
  60. package/cjs/ReltioMap/components/DrawingManager/useDrawingManager.js +40 -0
  61. package/cjs/ReltioMap/components/EntityMarker/EntityMarker.d.ts +8 -7
  62. package/cjs/ReltioMap/components/EntityMarker/EntityMarker.js +22 -22
  63. package/cjs/ReltioMap/components/EntityMarker/EntityMarker.spec.js +151 -66
  64. package/cjs/ReltioMap/components/Polygon/Polygon.d.ts +7 -0
  65. package/cjs/ReltioMap/components/Polygon/Polygon.js +11 -0
  66. package/cjs/ReltioMap/components/Polygon/index.d.ts +1 -0
  67. package/cjs/ReltioMap/components/Polygon/index.js +5 -0
  68. package/cjs/ReltioMap/components/Polygon/usePolygon.d.ts +10 -0
  69. package/cjs/ReltioMap/components/Polygon/usePolygon.js +39 -0
  70. package/cjs/ReltioMap/components/TopCenterMapControls/TopCenterMapControls.d.ts +2 -1
  71. package/cjs/ReltioMap/components/TopCenterMapControls/TopCenterMapControls.js +6 -5
  72. package/cjs/ReltioMap/components/TopRightMapControls/TopRightMapControls.d.ts +2 -1
  73. package/cjs/ReltioMap/components/TopRightMapControls/TopRightMapControls.js +3 -2
  74. package/cjs/ReltioMap/components/TopRightMapControls/styles.js +1 -1
  75. package/cjs/ReltioMap/helpers.d.ts +3 -2
  76. package/cjs/ReltioMap/types.d.ts +6 -3
  77. package/cjs/features/graph/DataModelGraph/hooks/useFakeCenterNode.test.js +1 -0
  78. package/cjs/hooks/useMarkers/referenceHelpers.js +25 -2
  79. package/cjs/hooks/useMarkers/referenceHelpers.test.js +10 -1
  80. package/features/graph/DataModelGraph/hooks/useFakeCenterNode.test.js +1 -0
  81. package/hooks/useMarkers/referenceHelpers.js +25 -2
  82. package/hooks/useMarkers/referenceHelpers.test.js +10 -1
  83. package/package.json +3 -2
@@ -25,5 +25,6 @@ describe('Drawer', function () {
25
25
  wrapper.update();
26
26
  expect(wrapper.find('.SOME_INNER_CONTENTS')).toHaveLength(0);
27
27
  });
28
+ jest.useRealTimers();
28
29
  });
29
30
  });
@@ -112,12 +112,11 @@ describe('EditModeAttributesView tests', function () {
112
112
  };
113
113
  return __assign({ user: user }, render(React.createElement(EditModeAttributesView, __assign({}, props)), { wrapper: Providers }));
114
114
  };
115
- beforeEach(function () {
115
+ beforeAll(function () {
116
116
  jest.useFakeTimers();
117
117
  });
118
118
  afterEach(function () {
119
119
  jest.runOnlyPendingTimers();
120
- jest.useRealTimers();
121
120
  });
122
121
  it('should highlight last added attribute', function () { return __awaiter(void 0, void 0, void 0, function () {
123
122
  var _a, user, container, moreAttributesButton, attributeMenuItem, popover;
@@ -52,14 +52,15 @@ jest.mock('@reltio/mdm-sdk', function () { return (__assign(__assign({}, jest.re
52
52
  describe('useEntityDetails', function () {
53
53
  var entity = { uri: 'entities/123', type: 'configuration/entityTypes/HCP' };
54
54
  beforeEach(function () {
55
- jest.useFakeTimers();
56
55
  getEntity.mockResolvedValue(entity);
57
56
  debounce.mockImplementation(function (fn) { return jest.requireActual('@reltio/mdm-sdk').debounce(fn, 10); });
58
57
  });
59
58
  afterEach(function () {
60
- jest.useRealTimers();
61
59
  jest.clearAllMocks();
62
60
  });
61
+ beforeAll(function () {
62
+ jest.useFakeTimers();
63
+ });
63
64
  it('should load and set entityDetails after call of showEntityDetails', function () { return __awaiter(void 0, void 0, void 0, function () {
64
65
  var result;
65
66
  return __generator(this, function (_a) {
@@ -83,6 +83,7 @@ describe('LinesChart', function () {
83
83
  jest.runAllTimers();
84
84
  fireEvent.click(container.querySelector('.recharts-active-dot > .recharts-dot'));
85
85
  expect(onItemClickSpy).toHaveBeenCalledWith('group1');
86
+ jest.useRealTimers();
86
87
  return [2 /*return*/];
87
88
  });
88
89
  }); });
@@ -2,5 +2,5 @@ type StylesProps = {
2
2
  colors: string[];
3
3
  width: number;
4
4
  };
5
- export declare const useStyles: (props: StylesProps) => import("@mui/styles").ClassNameMap<"alignBottom" | "legendContainer" | "alignTop" | "legendBar" | "legendLabel">;
5
+ export declare const useStyles: (props: StylesProps) => import("@mui/styles").ClassNameMap<"legendContainer" | "alignTop" | "alignBottom" | "legendBar" | "legendLabel">;
6
6
  export {};
@@ -1 +1 @@
1
- export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"pane" | "resizablePanesWrapper">;
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"resizablePanesWrapper" | "pane">;
@@ -62,9 +62,11 @@ SortableTreeWithDndTestBackend.propTypes = {
62
62
  current: PropTypes.object
63
63
  })
64
64
  };
65
- jest.useFakeTimers();
66
65
  jest.mock('frontend-collective-react-dnd-scrollzone', function () { return (__assign(__assign({}, jest.requireActual('frontend-collective-react-dnd-scrollzone')), { createScrollingComponent: function (component) { return component; } })); });
67
66
  describe('<SortableTree />', function () {
67
+ beforeAll(function () {
68
+ jest.useFakeTimers();
69
+ });
68
70
  it('loads using SortableTree second case', function () {
69
71
  var onDragStateChanged = jest.fn();
70
72
  var treeData = [{ title: 'a' }, { title: 'b' }];
@@ -1,12 +1,13 @@
1
1
  import React from 'react';
2
- import { GoogleMapProps, MarkerClustererProps } from '@react-google-maps/api';
3
- import { DrawingModes, EntityMarker as Marker, MapBounds, Overlay, OverlayPath } from './types';
4
- type MarkerClustererOptions = MarkerClustererProps['options'];
2
+ import { GeoPoint } from '@reltio/mdm-sdk';
3
+ import { DrawingModes, MapBounds, Overlay, ClusteredMarkersOptions, DrawingMode } from './types';
5
4
  type Props = {
6
- markers?: Marker[];
5
+ markers?: GeoPoint[];
7
6
  mapKey: string;
8
- defaultZoom?: GoogleMapProps['zoom'];
9
- defaultCenter?: GoogleMapProps['center'];
7
+ /** A map ID is required to use Advanced Markers. https://developers.google.com/maps/documentation/javascript/advanced-markers/overview */
8
+ mapId?: string;
9
+ defaultZoom?: number;
10
+ defaultCenter?: google.maps.LatLngLiteral;
10
11
  loadingElement: React.ReactElement;
11
12
  isSearchOnMapMove?: boolean;
12
13
  isSearchEnabled?: boolean;
@@ -14,15 +15,18 @@ type Props = {
14
15
  overlayOptions?: google.maps.PolygonOptions | google.maps.CircleOptions;
15
16
  drawingModes?: DrawingModes;
16
17
  markerClusterer?: boolean;
17
- markerClustererOptions?: MarkerClustererOptions;
18
+ markerClustererOptions?: ClusteredMarkersOptions;
18
19
  mapOptions?: google.maps.MapOptions;
19
20
  mapContainerClassName?: string;
20
21
  onMapBoundsChanged?: (value: MapBounds | null) => void;
21
22
  onOverlayUpdated?: (value: {
22
- data: OverlayPath;
23
- type: string;
23
+ data: number[][] | {
24
+ radius: number;
25
+ center: google.maps.LatLng;
26
+ };
27
+ type: DrawingMode;
24
28
  }) => void;
25
- onMarkerClicked?: (value: Marker) => void;
29
+ onMarkerClicked?: (value: GeoPoint) => void;
26
30
  };
27
- export declare const ReltioMap: ({ markers, mapKey, defaultZoom, defaultCenter, loadingElement, isSearchOnMapMove, isSearchEnabled, activeOverlay, overlayOptions, drawingModes, markerClusterer, markerClustererOptions, mapOptions, mapContainerClassName, onMapBoundsChanged, onOverlayUpdated, onMarkerClicked }: Props) => React.JSX.Element;
31
+ export declare const ReltioMap: ({ mapKey, ...restProps }: Props) => React.JSX.Element;
28
32
  export {};
@@ -9,33 +9,54 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- import React, { useCallback, useMemo, useRef, useState } from 'react';
13
- import { propEq, isEmpty, prop, identity } from 'ramda';
14
- import { GoogleMap, useJsApiLoader, Polygon, DrawingManager, MarkerClusterer } from '@react-google-maps/api';
15
- import { EntityMarker } from './components/EntityMarker';
16
- import { MapControlContainer } from './components/MapControlContainer';
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ import React, { memo, useCallback, useMemo, useRef, useState } from 'react';
24
+ import { propEq, isEmpty, identity } from 'ramda';
25
+ import { APIProvider, ControlPosition, Map, MapControl, useApiIsLoaded, useMap } from '@vis.gl/react-google-maps';
17
26
  import { TopRightMapControls } from './components/TopRightMapControls';
18
27
  import { TopCenterMapControls } from './components/TopCenterMapControls';
19
28
  import { getMapBoundsPolygon, getDrawingMode } from './helpers';
20
29
  import { DEFAULT_GOOGLE_MAP_OPTIONS, DEFAULT_OVERLAY_OPTIONS, MAP_DRAWING_MODES } from '../constants';
21
30
  import { useFitMapBounds } from './useFitMapBounds';
22
31
  import { useStyles } from './styles';
32
+ import { ClusteredMarkers } from './components/ClusteredMarkers';
33
+ import { Polygon } from './components/Polygon';
34
+ import { DrawingManager } from './components/DrawingManager';
23
35
  var ON_MAP_MOVE_DEBOUNCE_INTERVAL = 1000;
24
36
  var libraries = ['drawing'];
25
37
  export var ReltioMap = function (_a) {
26
- var _b = _a.markers, markers = _b === void 0 ? [] : _b, mapKey = _a.mapKey, defaultZoom = _a.defaultZoom, defaultCenter = _a.defaultCenter, loadingElement = _a.loadingElement, isSearchOnMapMove = _a.isSearchOnMapMove, isSearchEnabled = _a.isSearchEnabled, activeOverlay = _a.activeOverlay, _c = _a.overlayOptions, overlayOptions = _c === void 0 ? {} : _c, _d = _a.drawingModes, drawingModes = _d === void 0 ? [] : _d, markerClusterer = _a.markerClusterer, markerClustererOptions = _a.markerClustererOptions, _e = _a.mapOptions, mapOptions = _e === void 0 ? {} : _e, mapContainerClassName = _a.mapContainerClassName, _f = _a.onMapBoundsChanged, onMapBoundsChanged = _f === void 0 ? identity : _f, _g = _a.onOverlayUpdated, onOverlayUpdated = _g === void 0 ? identity : _g, _h = _a.onMarkerClicked, onMarkerClicked = _h === void 0 ? identity : _h;
38
+ var mapKey = _a.mapKey, restProps = __rest(_a, ["mapKey"]);
39
+ return (React.createElement(APIProvider, { apiKey: mapKey, libraries: libraries },
40
+ React.createElement(InternalReltioMap, __assign({}, restProps))));
41
+ };
42
+ var emptyObject = {};
43
+ var emptyArray = [];
44
+ var InternalReltioMap = memo(function (_a) {
45
+ var mapId = _a.mapId, _b = _a.markers, markers = _b === void 0 ? emptyArray : _b, defaultZoom = _a.defaultZoom, defaultCenter = _a.defaultCenter, loadingElement = _a.loadingElement, isSearchOnMapMove = _a.isSearchOnMapMove, isSearchEnabled = _a.isSearchEnabled, activeOverlay = _a.activeOverlay, _c = _a.overlayOptions, overlayOptions = _c === void 0 ? emptyObject : _c, _d = _a.drawingModes, drawingModes = _d === void 0 ? emptyArray : _d, markerClusterer = _a.markerClusterer, markerClustererOptions = _a.markerClustererOptions, _f = _a.mapOptions, mapOptions = _f === void 0 ? emptyObject : _f, mapContainerClassName = _a.mapContainerClassName, _g = _a.onMapBoundsChanged, onMapBoundsChanged = _g === void 0 ? identity : _g, _h = _a.onOverlayUpdated, onOverlayUpdated = _h === void 0 ? identity : _h, _j = _a.onMarkerClicked, onMarkerClicked = _j === void 0 ? identity : _j;
27
46
  var styles = useStyles();
28
- var _j = useJsApiLoader({
29
- googleMapsApiKey: mapKey,
30
- libraries: libraries
31
- }), isLoaded = _j.isLoaded, loadError = _j.loadError;
32
47
  var mapMoveEndTimer = useRef(null);
33
- var _k = useState(null), map = _k[0], setMap = _k[1];
34
- var _l = useState(null), polygon = _l[0], setPolygon = _l[1];
35
- var _m = useState(null), drawingMode = _m[0], setDrawingMode = _m[1];
48
+ var isLoaded = useApiIsLoaded();
49
+ var map = useMap();
50
+ var _k = useState(null), polygon = _k[0], setPolygon = _k[1];
51
+ var _l = useState(null), drawingMode = _l[0], setDrawingMode = _l[1];
36
52
  useFitMapBounds({ markers: markers, activeOverlay: activeOverlay, map: map, isSearchOnMapMove: isSearchOnMapMove });
37
53
  var allOverlayOptions = useMemo(function () { return (__assign(__assign({}, DEFAULT_OVERLAY_OPTIONS), overlayOptions)); }, [overlayOptions]);
38
54
  var googleMapOptions = useMemo(function () { return (__assign(__assign({}, DEFAULT_GOOGLE_MAP_OPTIONS), mapOptions)); }, [mapOptions]);
55
+ var drawingManagerOptions = useMemo(function () { return ({
56
+ drawingControl: false,
57
+ polygonOptions: allOverlayOptions
58
+ }); }, [allOverlayOptions]);
59
+ var polygonOptions = useMemo(function () { return (__assign({ paths: activeOverlay === null || activeOverlay === void 0 ? void 0 : activeOverlay.path, editable: true }, allOverlayOptions)); }, [activeOverlay, allOverlayOptions]);
39
60
  var handleChangeIsSearchOnMapMove = useCallback(function (isSearchOnMapMove) {
40
61
  onMapBoundsChanged(isSearchOnMapMove ? getMapBoundsPolygon(map) : null);
41
62
  setDrawingMode(null);
@@ -55,7 +76,7 @@ export var ReltioMap = function (_a) {
55
76
  clearTimeout(mapMoveEndTimer.current);
56
77
  mapMoveEndTimer.current = setTimeout(handleMapMoveEnd, ON_MAP_MOVE_DEBOUNCE_INTERVAL);
57
78
  }, [handleMapMoveEnd, isSearchOnMapMove]);
58
- var handleOverlayChange = useCallback(function (e, propOverlay) {
79
+ var handleOverlayChange = useCallback(function (_e, propOverlay) {
59
80
  var _a;
60
81
  var _b;
61
82
  var polygonStateOverlay = polygon && { type: MAP_DRAWING_MODES.POLYGON, overlay: polygon };
@@ -69,7 +90,10 @@ export var ReltioMap = function (_a) {
69
90
  .getArray()
70
91
  .map(function (latlng) { return [latlng.lat(), latlng.lng()]; });
71
92
  };
72
- var getCircleParameters = function () { return ({ radius: overlay.getRadius() / 1000, center: overlay.getCenter() }); };
93
+ var getCircleParameters = function () { return ({
94
+ radius: overlay.getRadius() / 1000,
95
+ center: overlay.getCenter()
96
+ }); };
73
97
  var typeActions = (_a = {},
74
98
  _a[MAP_DRAWING_MODES.POLYGON] = getPolygonLatLngCoordinates,
75
99
  _a[MAP_DRAWING_MODES.CIRCLE] = getCircleParameters,
@@ -87,17 +111,6 @@ export var ReltioMap = function (_a) {
87
111
  var handleClearOverlay = useCallback(function () {
88
112
  onOverlayUpdated(null);
89
113
  }, [onOverlayUpdated]);
90
- var renderMarkers = function (clusterer) {
91
- return markers
92
- .filter(prop('point'))
93
- .map(function (marker) { return (React.createElement(EntityMarker, { key: marker.id, marker: marker, clusterer: clusterer, onClick: onMarkerClicked })); });
94
- };
95
- var renderMarkerClusterer = function (options) {
96
- return React.createElement(MarkerClusterer, { options: options }, renderMarkers);
97
- };
98
- if (loadError) {
99
- return null;
100
- }
101
114
  if (!isLoaded) {
102
115
  return loadingElement;
103
116
  }
@@ -105,16 +118,13 @@ export var ReltioMap = function (_a) {
105
118
  var shouldRenderRightMapControls = map && isSearchEnabled && Boolean(drawingModes.length);
106
119
  var shouldRenderCenterMapControls = map && isSearchEnabled;
107
120
  var shouldRenderPolygon = !getDrawingMode(drawingMode) && activeOverlay && propEq('type', MAP_DRAWING_MODES.POLYGON, activeOverlay);
108
- return (React.createElement(GoogleMap, { mapTypeId: window.google.maps.MapTypeId.ROADMAP, options: googleMapOptions, onLoad: setMap, zoom: defaultZoom, center: defaultCenter, onZoomChanged: handleMapMoveStart, onDragStart: handleMapMoveStart, onIdle: handleMapIdle, mapContainerClassName: mapContainerClassName },
109
- shouldRenderRightMapControls && (React.createElement(MapControlContainer, { className: styles.mapControlContainer, position: window.google.maps.ControlPosition.TOP_RIGHT, map: map },
110
- React.createElement(TopRightMapControls, { hasActiveOverlay: !!activeOverlay, drawingModes: drawingModes, drawingMode: drawingMode, onDrawingModeChanged: setDrawingMode, onClearOverlay: handleClearOverlay }))),
111
- shouldRenderCenterMapControls && (React.createElement(MapControlContainer, { className: styles.mapControlContainer, position: window.google.maps.ControlPosition.TOP_CENTER, map: map },
112
- React.createElement(TopCenterMapControls, { onChangeIsSearchOnMapMove: handleChangeIsSearchOnMapMove, isSearchOnMapMove: isSearchOnMapMove }))),
113
- markerClusterer ? renderMarkerClusterer(markerClustererOptions) : renderMarkers(),
114
- shouldRenderPolygon && (React.createElement(Polygon, { onLoad: setPolygon, path: activeOverlay.path, editable: true, options: allOverlayOptions, onMouseUp: handleOverlayChange, onDragEnd: handleOverlayChange })),
115
- shouldRenderDrawingManager && (React.createElement(DrawingManager, { onPolygonComplete: handleOverlayComplete(MAP_DRAWING_MODES.POLYGON), onCircleComplete: handleOverlayComplete(MAP_DRAWING_MODES.CIRCLE), drawingMode: getDrawingMode(drawingMode), options: {
116
- drawingControl: false,
117
- circleOptions: allOverlayOptions,
118
- polygonOptions: allOverlayOptions
119
- } }))));
120
- };
121
+ return (React.createElement(Map, __assign({ mapId: mapId || 'mapId' }, googleMapOptions, { defaultZoom: defaultZoom, defaultCenter: defaultCenter, onZoomChanged: handleMapMoveStart, onDragstart: handleMapMoveStart, onIdle: handleMapIdle, className: mapContainerClassName }),
122
+ shouldRenderRightMapControls && (React.createElement(MapControl, { position: ControlPosition.TOP_RIGHT },
123
+ React.createElement(TopRightMapControls, { className: styles.mapControlContainer, hasActiveOverlay: !!activeOverlay, drawingModes: drawingModes, drawingMode: drawingMode, onDrawingModeChanged: setDrawingMode, onClearOverlay: handleClearOverlay }))),
124
+ shouldRenderCenterMapControls && (React.createElement(MapControl, { position: ControlPosition.TOP_CENTER },
125
+ React.createElement(TopCenterMapControls, { className: styles.mapControlContainer, onChangeIsSearchOnMapMove: handleChangeIsSearchOnMapMove, isSearchOnMapMove: isSearchOnMapMove }))),
126
+ React.createElement(ClusteredMarkers, { entityMarkers: markers, enabledClustering: markerClusterer, options: markerClustererOptions, onMarkerClick: onMarkerClicked }),
127
+ shouldRenderPolygon && (React.createElement(Polygon, { onInit: setPolygon, options: polygonOptions, onMouseUp: handleOverlayChange, onDragEnd: handleOverlayChange })),
128
+ shouldRenderDrawingManager && (React.createElement(DrawingManager, { onPolygonComplete: handleOverlayComplete(MAP_DRAWING_MODES.POLYGON), onCircleComplete: handleOverlayComplete(MAP_DRAWING_MODES.CIRCLE), drawingMode: getDrawingMode(drawingMode), options: drawingManagerOptions }))));
129
+ });
130
+ InternalReltioMap.displayName = 'InternalReltioMap';