@progress/kendo-react-map 5.4.0 → 5.5.0-dev.202206221002

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 (75) hide show
  1. package/dist/cdn/js/kendo-react-map.js +1 -1
  2. package/dist/es/Map.d.ts +9 -0
  3. package/dist/es/Map.js +32 -2
  4. package/dist/es/components/BubbleLayer.d.ts +2 -1
  5. package/dist/es/components/BubbleLayer.js +7 -0
  6. package/dist/es/components/BubbleLayerTooltip.d.ts +15 -0
  7. package/dist/es/components/BubbleLayerTooltip.js +18 -0
  8. package/dist/es/components/Layers.js +1 -1
  9. package/dist/es/components/MarkerLayer.d.ts +2 -1
  10. package/dist/es/components/MarkerLayer.js +7 -0
  11. package/dist/es/components/MarkerLayerTooltip.d.ts +15 -0
  12. package/dist/es/components/MarkerLayerTooltip.js +18 -0
  13. package/dist/es/components/ShapeLayer.d.ts +2 -1
  14. package/dist/es/components/ShapeLayer.js +7 -0
  15. package/dist/es/components/ShapeLayerTooltip.d.ts +15 -0
  16. package/dist/es/components/ShapeLayerTooltip.js +18 -0
  17. package/dist/es/components/main.d.ts +4 -1
  18. package/dist/es/components/main.js +4 -1
  19. package/dist/es/events/dom-event.d.ts +23 -0
  20. package/dist/es/events/dom-event.js +21 -0
  21. package/dist/es/main.d.ts +3 -3
  22. package/dist/es/main.js +2 -2
  23. package/dist/es/package-metadata.js +1 -1
  24. package/dist/es/tooltip/BubbleTooltipContext.d.ts +22 -0
  25. package/dist/es/tooltip/BubbleTooltipContext.js +1 -0
  26. package/dist/es/tooltip/MapTooltip.d.ts +37 -0
  27. package/dist/es/tooltip/MapTooltip.js +123 -0
  28. package/dist/es/tooltip/MarkerTooltipContext.d.ts +22 -0
  29. package/dist/es/tooltip/MarkerTooltipContext.js +1 -0
  30. package/dist/es/tooltip/Popup.d.ts +29 -0
  31. package/dist/es/tooltip/Popup.js +76 -0
  32. package/dist/es/tooltip/ShapeTooltipContext.d.ts +18 -0
  33. package/dist/es/tooltip/ShapeTooltipContext.js +1 -0
  34. package/dist/es/tooltip/main.d.ts +5 -0
  35. package/dist/es/tooltip/main.js +2 -0
  36. package/dist/es/utils/main.d.ts +10 -0
  37. package/dist/es/utils/main.js +28 -0
  38. package/dist/npm/Map.d.ts +9 -0
  39. package/dist/npm/Map.js +32 -2
  40. package/dist/npm/components/BubbleLayer.d.ts +2 -1
  41. package/dist/npm/components/BubbleLayer.js +7 -0
  42. package/dist/npm/components/BubbleLayerTooltip.d.ts +15 -0
  43. package/dist/npm/components/BubbleLayerTooltip.js +21 -0
  44. package/dist/npm/components/Layers.js +1 -1
  45. package/dist/npm/components/MarkerLayer.d.ts +2 -1
  46. package/dist/npm/components/MarkerLayer.js +7 -0
  47. package/dist/npm/components/MarkerLayerTooltip.d.ts +15 -0
  48. package/dist/npm/components/MarkerLayerTooltip.js +21 -0
  49. package/dist/npm/components/ShapeLayer.d.ts +2 -1
  50. package/dist/npm/components/ShapeLayer.js +7 -0
  51. package/dist/npm/components/ShapeLayerTooltip.d.ts +15 -0
  52. package/dist/npm/components/ShapeLayerTooltip.js +21 -0
  53. package/dist/npm/components/main.d.ts +4 -1
  54. package/dist/npm/components/main.js +7 -1
  55. package/dist/npm/events/dom-event.d.ts +23 -0
  56. package/dist/npm/events/dom-event.js +24 -0
  57. package/dist/npm/main.d.ts +3 -3
  58. package/dist/npm/main.js +1 -0
  59. package/dist/npm/package-metadata.js +1 -1
  60. package/dist/npm/tooltip/BubbleTooltipContext.d.ts +22 -0
  61. package/dist/npm/tooltip/BubbleTooltipContext.js +2 -0
  62. package/dist/npm/tooltip/MapTooltip.d.ts +37 -0
  63. package/dist/npm/tooltip/MapTooltip.js +126 -0
  64. package/dist/npm/tooltip/MarkerTooltipContext.d.ts +22 -0
  65. package/dist/npm/tooltip/MarkerTooltipContext.js +2 -0
  66. package/dist/npm/tooltip/Popup.d.ts +29 -0
  67. package/dist/npm/tooltip/Popup.js +79 -0
  68. package/dist/npm/tooltip/ShapeTooltipContext.d.ts +18 -0
  69. package/dist/npm/tooltip/ShapeTooltipContext.js +2 -0
  70. package/dist/npm/tooltip/main.d.ts +5 -0
  71. package/dist/npm/tooltip/main.js +5 -0
  72. package/dist/npm/utils/main.d.ts +10 -0
  73. package/dist/npm/utils/main.js +32 -0
  74. package/dist/systemjs/kendo-react-map.js +1 -1
  75. package/package.json +2 -2
@@ -0,0 +1,76 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
17
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
18
+ if (ar || !(i in from)) {
19
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
20
+ ar[i] = from[i];
21
+ }
22
+ }
23
+ return to.concat(ar || Array.prototype.slice.call(from));
24
+ };
25
+ import * as React from 'react';
26
+ import { InstanceObserver } from '@progress/kendo-charts';
27
+ import { hasParent } from '../utils/main';
28
+ import { Popup } from '@progress/kendo-react-popup';
29
+ import { MapContext } from '../MapContext';
30
+ var COLLISION = { horizontal: 'fit', vertical: 'fit' };
31
+ var TOOLTIP_CLASSES = ['k-tooltip', 'k-map-tooltip'];
32
+ var POPUP_WRAPPER_CLASS = 'k-tooltip-wrapper';
33
+ /**
34
+ * @hidden
35
+ */
36
+ var TooltipPopup = /** @class */ (function (_super) {
37
+ __extends(TooltipPopup, _super);
38
+ function TooltipPopup(props, context) {
39
+ var _this = _super.call(this, props, context) || this;
40
+ _this.context = null;
41
+ _this.element = null;
42
+ _this.onMapMouseLeave = function (e) {
43
+ var syntheticEvent = e.syntheticEvent;
44
+ if (hasParent(syntheticEvent.relatedTarget, _this.element)) {
45
+ /* prevent default behavior so that the tooltip won't be hidden */
46
+ return true;
47
+ }
48
+ return false;
49
+ };
50
+ _this.mapObserver = new InstanceObserver(_this, {
51
+ onMouseLeave: 'onMapMouseLeave'
52
+ });
53
+ context.observersStore.dispatch({
54
+ type: 'add',
55
+ payload: _this.mapObserver
56
+ });
57
+ return _this;
58
+ }
59
+ TooltipPopup.prototype.render = function () {
60
+ var _this = this;
61
+ var _a = this.props, popupShown = _a.popupShown, popupAlign = _a.popupAlign, popupOffset = _a.popupOffset, popupStyles = _a.popupStyles, popupContent = _a.popupContent, className = _a.className;
62
+ var wrapperClass = __spreadArray(__spreadArray([], TOOLTIP_CLASSES, true), [className], false).join(' ').trim();
63
+ var popupComponent = (React.createElement(Popup, { animate: true, popupAlign: popupAlign, offset: popupOffset, show: popupShown, collision: COLLISION, className: POPUP_WRAPPER_CLASS },
64
+ React.createElement("div", { className: wrapperClass, style: popupStyles, ref: function (el) { return _this.element = el; } }, popupContent())));
65
+ return popupComponent;
66
+ };
67
+ TooltipPopup.prototype.componentWillUnmount = function () {
68
+ this.context.observersStore.dispatch({
69
+ type: 'remove',
70
+ payload: this.mapObserver
71
+ });
72
+ };
73
+ TooltipPopup.contextType = MapContext;
74
+ return TooltipPopup;
75
+ }(React.Component));
76
+ export { TooltipPopup };
@@ -0,0 +1,18 @@
1
+ import { Location } from '../main';
2
+ /**
3
+ * Context object for shape layer tooltips.
4
+ */
5
+ export interface ShapeTooltipContext {
6
+ /**
7
+ * The original GeoJSON data item used to create the shape.
8
+ */
9
+ dataItem: any;
10
+ /**
11
+ * The index of the shape layer in the map.
12
+ */
13
+ layerIndex: number;
14
+ /**
15
+ * The location (center point) of the shape.
16
+ */
17
+ location: Location;
18
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ import { MapTooltip } from './MapTooltip';
2
+ import { MarkerTooltipContext } from './MarkerTooltipContext';
3
+ import { BubbleTooltipContext } from './BubbleTooltipContext';
4
+ import { ShapeTooltipContext } from './ShapeTooltipContext';
5
+ export { BubbleTooltipContext, MarkerTooltipContext, MapTooltip, ShapeTooltipContext };
@@ -0,0 +1,2 @@
1
+ import { MapTooltip } from './MapTooltip';
2
+ export { MapTooltip };
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * @hidden
4
+ */
5
+ declare function hasParent(element: any, parent: any): boolean;
6
+ /**
7
+ * @hidden
8
+ */
9
+ declare function validateChildren<P>(props: P, propName: string, componentName: string, childType: React.FunctionComponent): Error | null;
10
+ export { hasParent, validateChildren };
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @hidden
3
+ */
4
+ function hasParent(element, parent) {
5
+ var current = element;
6
+ while (current && current !== parent) {
7
+ current = current.parentNode;
8
+ }
9
+ return current ? true : false;
10
+ }
11
+ /**
12
+ * @hidden
13
+ */
14
+ function validateChildren(props, propName, componentName, childType) {
15
+ var prop = props[propName];
16
+ if (prop) {
17
+ if (Array.isArray(prop)) {
18
+ for (var _i = 0, prop_1 = prop; _i < prop_1.length; _i++) {
19
+ var value = prop_1[_i];
20
+ if (!value.type || value.type !== childType) {
21
+ return new Error("".concat(componentName, " children should be Array of type ").concat(childType.displayName, "."));
22
+ }
23
+ }
24
+ }
25
+ }
26
+ return null;
27
+ }
28
+ export { hasParent, validateChildren };
package/dist/npm/Map.d.ts CHANGED
@@ -4,6 +4,7 @@ import { InstanceObserver, Map as KendoMap } from '@progress/kendo-charts';
4
4
  import './defaults';
5
5
  import { MapProps } from './MapProps';
6
6
  import { MapContextType } from './MapContext';
7
+ import { DomEvent } from './events/dom-event';
7
8
  /**
8
9
  * Represents the [KendoReact Map component]({% slug overview_map %}).
9
10
  */
@@ -70,10 +71,18 @@ export declare class Map extends React.Component<MapProps, {}> {
70
71
  * @hidden
71
72
  */
72
73
  requiresHandlers(names: string[]): boolean;
74
+ /**
75
+ * @hidden
76
+ */
77
+ triggerDomEvent<T>(name: string, e: DomEvent<T>): boolean;
73
78
  /**
74
79
  * @hidden
75
80
  */
76
81
  onRender: (e: any) => void;
82
+ /**
83
+ * @hidden
84
+ */
85
+ onMapMouseLeave: (e: React.MouseEvent<HTMLDivElement>) => void;
77
86
  /**
78
87
  * @hidden
79
88
  */
package/dist/npm/Map.js CHANGED
@@ -35,8 +35,10 @@ var store_1 = require("./store/store");
35
35
  var reducer_1 = require("./store/reducer");
36
36
  require("./defaults");
37
37
  var MapContext_1 = require("./MapContext");
38
+ var MapTooltip_1 = require("./tooltip/MapTooltip");
38
39
  var kendo_react_common_1 = require("@progress/kendo-react-common");
39
40
  var package_metadata_1 = require("./package-metadata");
41
+ var dom_event_1 = require("./events/dom-event");
40
42
  /**
41
43
  * Represents the [KendoReact Map component]({% slug overview_map %}).
42
44
  */
@@ -62,6 +64,19 @@ var Map = /** @class */ (function (_super) {
62
64
  }
63
65
  };
64
66
  /* Dom event handlers */
67
+ /**
68
+ * @hidden
69
+ */
70
+ _this.onMapMouseLeave = function (e) {
71
+ var domEvent = (0, dom_event_1.toDomEvent)(_this, e);
72
+ var isDefaultPrevented = _this.triggerDomEvent('onMouseLeave', domEvent);
73
+ if (isDefaultPrevented) {
74
+ e.preventDefault();
75
+ }
76
+ else if (_this.mapInstance !== null) {
77
+ _this.mapInstance.hideTooltip();
78
+ }
79
+ };
65
80
  /**
66
81
  * @hidden
67
82
  */
@@ -145,8 +160,10 @@ var Map = /** @class */ (function (_super) {
145
160
  className: className,
146
161
  style: mapStyles,
147
162
  key: 'mapElement'
148
- }, (React.createElement("div", { ref: function (el) { return _this._element = el; }, className: "k-map" }, children)));
149
- return (React.createElement(MapContext_1.MapContext.Provider, { value: this.contextValue }, content));
163
+ }, (React.createElement("div", { ref: function (el) { return _this._element = el; }, className: "k-map", onMouseLeave: this.onMapMouseLeave }, children)));
164
+ return (React.createElement(MapContext_1.MapContext.Provider, { value: this.contextValue },
165
+ React.createElement(MapTooltip_1.MapTooltip, { key: "tooltip" }),
166
+ content));
150
167
  };
151
168
  /**
152
169
  * @hidden
@@ -227,6 +244,19 @@ var Map = /** @class */ (function (_super) {
227
244
  }
228
245
  return false;
229
246
  };
247
+ /**
248
+ * @hidden
249
+ */
250
+ Map.prototype.triggerDomEvent = function (name, e) {
251
+ var observers = this.observersStore.getState();
252
+ var isDefaultPrevented = false;
253
+ for (var idx = 0; idx < observers.length; idx++) {
254
+ if (observers[idx].trigger(name, e)) {
255
+ isDefaultPrevented = true;
256
+ }
257
+ }
258
+ return isDefaultPrevented;
259
+ };
230
260
  /**
231
261
  * @hidden
232
262
  */
@@ -1,9 +1,10 @@
1
- import * as React from 'react';
2
1
  import { BubbleLayerOptions } from '@progress/kendo-charts';
2
+ import * as React from 'react';
3
3
  /**
4
4
  * Represents the props of the KendoReact MapBubbleLayer component.
5
5
  */
6
6
  export interface MapBubbleLayerProps extends BubbleLayerOptions {
7
+ children?: React.ReactNode;
7
8
  }
8
9
  declare const MapBubbleLayer: React.FunctionComponent<MapBubbleLayerProps>;
9
10
  export { MapBubbleLayer };
@@ -13,9 +13,16 @@ var __assign = (this && this.__assign) || function () {
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.MapBubbleLayer = void 0;
15
15
  var React = require("react");
16
+ var main_1 = require("../utils/main");
16
17
  var ConfigurationComponent_1 = require("./base/ConfigurationComponent");
18
+ var BubbleLayerTooltip_1 = require("./BubbleLayerTooltip");
17
19
  var MapBubbleLayer = function (props) {
18
20
  return (React.createElement(ConfigurationComponent_1.default, __assign({ type: "bubble" }, props)));
19
21
  };
20
22
  exports.MapBubbleLayer = MapBubbleLayer;
21
23
  MapBubbleLayer.displayName = 'MapBubbleLayer';
24
+ MapBubbleLayer.propTypes = {
25
+ children: function (props, propName, componentName) {
26
+ return (0, main_1.validateChildren)(props, propName, componentName, BubbleLayerTooltip_1.MapBubbleLayerTooltip);
27
+ }
28
+ };
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ import { BubbleTooltipContext } from '../tooltip/BubbleTooltipContext';
3
+ /**
4
+ * Represents the props of the KendoReact BubbleTooltip component.
5
+ */
6
+ export interface MapBubbleLayerTooltipProps {
7
+ /**
8
+ * The renderer for the bubble layer tooltip.
9
+ *
10
+ * @return the content of the tooltip.
11
+ */
12
+ render?: (props: BubbleTooltipContext) => React.ReactNode;
13
+ }
14
+ declare const MapBubbleLayerTooltip: React.FunctionComponent<MapBubbleLayerTooltipProps>;
15
+ export { MapBubbleLayerTooltip };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.MapBubbleLayerTooltip = void 0;
15
+ var React = require("react");
16
+ var ConfigurationComponent_1 = require("./base/ConfigurationComponent");
17
+ var MapBubbleLayerTooltip = function (props) {
18
+ return (React.createElement(ConfigurationComponent_1.default, __assign({}, props, { _mapKey: "tooltip" })));
19
+ };
20
+ exports.MapBubbleLayerTooltip = MapBubbleLayerTooltip;
21
+ MapBubbleLayerTooltip.defaultProps = {};
@@ -20,5 +20,5 @@ var MapLayers = function (props) {
20
20
  };
21
21
  exports.MapLayers = MapLayers;
22
22
  MapLayers.propTypes = {
23
- children: PropTypes.array
23
+ children: PropTypes.node
24
24
  };
@@ -1,9 +1,10 @@
1
- import * as React from 'react';
2
1
  import { MarkerLayerOptions } from '@progress/kendo-charts';
2
+ import * as React from 'react';
3
3
  /**
4
4
  * Represents the props of the KendoReact MapMarkerLayer component.
5
5
  */
6
6
  export interface MapMarkerLayerProps extends MarkerLayerOptions {
7
+ children?: React.ReactNode;
7
8
  }
8
9
  declare const MapMarkerLayer: React.FunctionComponent<MapMarkerLayerProps>;
9
10
  export { MapMarkerLayer };
@@ -13,9 +13,16 @@ var __assign = (this && this.__assign) || function () {
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.MapMarkerLayer = void 0;
15
15
  var React = require("react");
16
+ var main_1 = require("../utils/main");
16
17
  var ConfigurationComponent_1 = require("./base/ConfigurationComponent");
18
+ var MarkerLayerTooltip_1 = require("./MarkerLayerTooltip");
17
19
  var MapMarkerLayer = function (props) {
18
20
  return (React.createElement(ConfigurationComponent_1.default, __assign({ type: "marker" }, props)));
19
21
  };
20
22
  exports.MapMarkerLayer = MapMarkerLayer;
21
23
  MapMarkerLayer.displayName = 'MapMarkerLayer';
24
+ MapMarkerLayer.propTypes = {
25
+ children: function (props, propName, componentName) {
26
+ return (0, main_1.validateChildren)(props, propName, componentName, MarkerLayerTooltip_1.MapMarkerLayerTooltip);
27
+ }
28
+ };
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ import { MarkerTooltipContext } from '../tooltip/MarkerTooltipContext';
3
+ /**
4
+ * Represents the props of the KendoReact MapMarkerLayerTooltip component.
5
+ */
6
+ export interface MapMarkerLayerTooltipProps {
7
+ /**
8
+ * The renderer for the marker layer tooltip.
9
+ *
10
+ * @return the content of the tooltip.
11
+ */
12
+ render?: (props: MarkerTooltipContext) => React.ReactNode;
13
+ }
14
+ declare const MapMarkerLayerTooltip: React.FunctionComponent<MapMarkerLayerTooltipProps>;
15
+ export { MapMarkerLayerTooltip };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.MapMarkerLayerTooltip = void 0;
15
+ var React = require("react");
16
+ var ConfigurationComponent_1 = require("./base/ConfigurationComponent");
17
+ var MapMarkerLayerTooltip = function (props) {
18
+ return (React.createElement(ConfigurationComponent_1.default, __assign({}, props, { _mapKey: "tooltip" })));
19
+ };
20
+ exports.MapMarkerLayerTooltip = MapMarkerLayerTooltip;
21
+ MapMarkerLayerTooltip.defaultProps = {};
@@ -1,9 +1,10 @@
1
- import * as React from 'react';
2
1
  import { ShapeLayerOptions } from '@progress/kendo-charts';
2
+ import * as React from 'react';
3
3
  /**
4
4
  * Represents the props of the KendoReact MapShapeLayer component.
5
5
  */
6
6
  export interface MapShapeLayerProps extends ShapeLayerOptions {
7
+ children?: React.ReactNode;
7
8
  }
8
9
  declare const MapShapeLayer: React.FunctionComponent<MapShapeLayerProps>;
9
10
  export { MapShapeLayer };
@@ -13,9 +13,16 @@ var __assign = (this && this.__assign) || function () {
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.MapShapeLayer = void 0;
15
15
  var React = require("react");
16
+ var main_1 = require("../utils/main");
16
17
  var ConfigurationComponent_1 = require("./base/ConfigurationComponent");
18
+ var ShapeLayerTooltip_1 = require("./ShapeLayerTooltip");
17
19
  var MapShapeLayer = function (props) {
18
20
  return (React.createElement(ConfigurationComponent_1.default, __assign({ type: "shape" }, props)));
19
21
  };
20
22
  exports.MapShapeLayer = MapShapeLayer;
21
23
  MapShapeLayer.displayName = 'MapShapeLayer';
24
+ MapShapeLayer.propTypes = {
25
+ children: function (props, propName, componentName) {
26
+ return (0, main_1.validateChildren)(props, propName, componentName, ShapeLayerTooltip_1.MapShapeLayerTooltip);
27
+ }
28
+ };
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ import { ShapeTooltipContext } from '../tooltip/ShapeTooltipContext';
3
+ /**
4
+ * Represents the props of the KendoReact ShapeTooltip component.
5
+ */
6
+ export interface MapShapeLayerTooltipProps {
7
+ /**
8
+ * The renderer for the shape layer tooltip.
9
+ *
10
+ * @return the content of the tooltip.
11
+ */
12
+ render?: (props: ShapeTooltipContext) => React.ReactNode;
13
+ }
14
+ declare const MapShapeLayerTooltip: React.FunctionComponent<MapShapeLayerTooltipProps>;
15
+ export { MapShapeLayerTooltip };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.MapShapeLayerTooltip = void 0;
15
+ var React = require("react");
16
+ var ConfigurationComponent_1 = require("./base/ConfigurationComponent");
17
+ var MapShapeLayerTooltip = function (props) {
18
+ return (React.createElement(ConfigurationComponent_1.default, __assign({}, props, { _mapKey: "tooltip" })));
19
+ };
20
+ exports.MapShapeLayerTooltip = MapShapeLayerTooltip;
21
+ MapShapeLayerTooltip.defaultProps = {};
@@ -1,6 +1,9 @@
1
1
  import { MapLayers, MapLayersProps } from './Layers';
2
2
  import { MapShapeLayer, MapShapeLayerProps } from './ShapeLayer';
3
+ import { MapShapeLayerTooltip, MapShapeLayerTooltipProps } from './ShapeLayerTooltip';
3
4
  import { MapTileLayer, MapTileLayerProps } from './TileLayer';
4
5
  import { MapBubbleLayer, MapBubbleLayerProps } from './BubbleLayer';
6
+ import { MapBubbleLayerTooltip, MapBubbleLayerTooltipProps } from './BubbleLayerTooltip';
5
7
  import { MapMarkerLayer, MapMarkerLayerProps } from './MarkerLayer';
6
- export { MapLayers, MapLayersProps, MapShapeLayer, MapShapeLayerProps, MapTileLayer, MapTileLayerProps, MapBubbleLayer, MapBubbleLayerProps, MapMarkerLayer, MapMarkerLayerProps };
8
+ import { MapMarkerLayerTooltip, MapMarkerLayerTooltipProps } from './MarkerLayerTooltip';
9
+ export { MapLayers, MapLayersProps, MapShapeLayer, MapShapeLayerProps, MapShapeLayerTooltip, MapShapeLayerTooltipProps, MapTileLayer, MapTileLayerProps, MapBubbleLayer, MapBubbleLayerProps, MapBubbleLayerTooltip, MapBubbleLayerTooltipProps, MapMarkerLayer, MapMarkerLayerProps, MapMarkerLayerTooltip, MapMarkerLayerTooltipProps };
@@ -1,13 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MapMarkerLayer = exports.MapBubbleLayer = exports.MapTileLayer = exports.MapShapeLayer = exports.MapLayers = void 0;
3
+ exports.MapMarkerLayerTooltip = exports.MapMarkerLayer = exports.MapBubbleLayerTooltip = exports.MapBubbleLayer = exports.MapTileLayer = exports.MapShapeLayerTooltip = exports.MapShapeLayer = exports.MapLayers = void 0;
4
4
  var Layers_1 = require("./Layers");
5
5
  Object.defineProperty(exports, "MapLayers", { enumerable: true, get: function () { return Layers_1.MapLayers; } });
6
6
  var ShapeLayer_1 = require("./ShapeLayer");
7
7
  Object.defineProperty(exports, "MapShapeLayer", { enumerable: true, get: function () { return ShapeLayer_1.MapShapeLayer; } });
8
+ var ShapeLayerTooltip_1 = require("./ShapeLayerTooltip");
9
+ Object.defineProperty(exports, "MapShapeLayerTooltip", { enumerable: true, get: function () { return ShapeLayerTooltip_1.MapShapeLayerTooltip; } });
8
10
  var TileLayer_1 = require("./TileLayer");
9
11
  Object.defineProperty(exports, "MapTileLayer", { enumerable: true, get: function () { return TileLayer_1.MapTileLayer; } });
10
12
  var BubbleLayer_1 = require("./BubbleLayer");
11
13
  Object.defineProperty(exports, "MapBubbleLayer", { enumerable: true, get: function () { return BubbleLayer_1.MapBubbleLayer; } });
14
+ var BubbleLayerTooltip_1 = require("./BubbleLayerTooltip");
15
+ Object.defineProperty(exports, "MapBubbleLayerTooltip", { enumerable: true, get: function () { return BubbleLayerTooltip_1.MapBubbleLayerTooltip; } });
12
16
  var MarkerLayer_1 = require("./MarkerLayer");
13
17
  Object.defineProperty(exports, "MapMarkerLayer", { enumerable: true, get: function () { return MarkerLayer_1.MapMarkerLayer; } });
18
+ var MarkerLayerTooltip_1 = require("./MarkerLayerTooltip");
19
+ Object.defineProperty(exports, "MapMarkerLayerTooltip", { enumerable: true, get: function () { return MarkerLayerTooltip_1.MapMarkerLayerTooltip; } });
@@ -0,0 +1,23 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * @hidden
4
+ */
5
+ export declare class DomEvent<T> {
6
+ /**
7
+ * The `Map` component that triggered the event.
8
+ */
9
+ sender: React.Component;
10
+ /**
11
+ * The syntheticEvent
12
+ */
13
+ syntheticEvent: T;
14
+ /**
15
+ * @hidden
16
+ */
17
+ constructor(sender: React.Component, e: T);
18
+ }
19
+ /**
20
+ * @hidden
21
+ */
22
+ declare function toDomEvent<T>(sender: React.Component, e: T): DomEvent<T>;
23
+ export { toDomEvent };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toDomEvent = exports.DomEvent = void 0;
4
+ /**
5
+ * @hidden
6
+ */
7
+ var DomEvent = /** @class */ (function () {
8
+ /**
9
+ * @hidden
10
+ */
11
+ function DomEvent(sender, e) {
12
+ this.sender = sender;
13
+ this.syntheticEvent = e;
14
+ }
15
+ return DomEvent;
16
+ }());
17
+ exports.DomEvent = DomEvent;
18
+ /**
19
+ * @hidden
20
+ */
21
+ function toDomEvent(sender, e) {
22
+ return new DomEvent(sender, e);
23
+ }
24
+ exports.toDomEvent = toDomEvent;
@@ -1,6 +1,6 @@
1
- import { Map } from './Map';
2
- import { MapProps } from './MapProps';
1
+ export { Map } from './Map';
2
+ export { MapProps } from './MapProps';
3
3
  export * from './components/main';
4
4
  export * from './common/map-types';
5
5
  export * from './common/events';
6
- export { Map, MapProps };
6
+ export * from './tooltip/main';
package/dist/npm/main.js CHANGED
@@ -20,3 +20,4 @@ Object.defineProperty(exports, "Map", { enumerable: true, get: function () { ret
20
20
  __exportStar(require("./components/main"), exports);
21
21
  __exportStar(require("./common/map-types"), exports);
22
22
  __exportStar(require("./common/events"), exports);
23
+ __exportStar(require("./tooltip/main"), exports);
@@ -8,7 +8,7 @@ exports.packageMetadata = {
8
8
  name: '@progress/kendo-react-map',
9
9
  productName: 'KendoReact',
10
10
  productCodes: ['KENDOUIREACT', 'KENDOUICOMPLETE'],
11
- publishDate: 1655713530,
11
+ publishDate: 1655891560,
12
12
  version: '',
13
13
  licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning'
14
14
  };
@@ -0,0 +1,22 @@
1
+ import { Location } from '../main';
2
+ /**
3
+ * Context object for bubble layer tooltips.
4
+ */
5
+ export interface BubbleTooltipContext {
6
+ /**
7
+ * The original data item used to create the bubble.
8
+ */
9
+ dataItem: any;
10
+ /**
11
+ * The index of the bubble layer in the map.
12
+ */
13
+ layerIndex: number;
14
+ /**
15
+ * The location of the bubble.
16
+ */
17
+ location: Location;
18
+ /**
19
+ * The numerical value of the bubble
20
+ */
21
+ value: number;
22
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,37 @@
1
+ import * as React from 'react';
2
+ import { Align, Offset } from '@progress/kendo-react-popup';
3
+ import { InstanceObserver } from '@progress/kendo-charts';
4
+ import { MarkerTooltipContext } from './MarkerTooltipContext';
5
+ import { ShapeTooltipContext } from './ShapeTooltipContext';
6
+ import { BubbleTooltipContext } from './BubbleTooltipContext';
7
+ import { MapContext } from '../MapContext';
8
+ declare type TooltipContext = MarkerTooltipContext | ShapeTooltipContext | BubbleTooltipContext;
9
+ /**
10
+ * @hidden
11
+ */
12
+ export interface MapTooltipState {
13
+ className?: string | undefined;
14
+ popupShown: boolean;
15
+ popupAlign?: Align;
16
+ popupOffset?: Offset;
17
+ popupStyles?: any;
18
+ popupContext?: TooltipContext;
19
+ shared?: boolean;
20
+ }
21
+ /**
22
+ * @hidden
23
+ */
24
+ export declare class MapTooltip extends React.Component<{}, MapTooltipState> {
25
+ static contextType: React.Context<import("../MapContext").MapContextType | null>;
26
+ context: React.ContextType<typeof MapContext>;
27
+ readonly state: MapTooltipState;
28
+ mapObserver?: InstanceObserver;
29
+ componentDidMount(): void;
30
+ render(): JSX.Element | null;
31
+ componentWillUnmount(): void;
32
+ onShowTooltip(e: any): void;
33
+ onHideTooltip(): void;
34
+ createTooltipContext(e: any): TooltipContext;
35
+ findRenderFunctionByLayer(layerIndex: number): any;
36
+ }
37
+ export {};