@inlog/inlog-maps 5.0.6 → 6.1.0

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 (243) hide show
  1. package/DOCUMENTATION.md +19 -2
  2. package/_bundles/inlog-maps.js +2 -7239
  3. package/_bundles/inlog-maps.js.LICENSE.txt +20 -0
  4. package/_bundles/inlog-maps.js.map +1 -1
  5. package/_bundles/inlog-maps.min.js +2 -1
  6. package/_bundles/inlog-maps.min.js.LICENSE.txt +20 -0
  7. package/_bundles/inlog-maps.min.js.map +1 -1
  8. package/lib/index.js +46 -46
  9. package/lib/index.js.map +1 -1
  10. package/lib/map.js +1136 -1010
  11. package/lib/map.js.map +1 -1
  12. package/lib/models/apis/google/google-circles.js +133 -130
  13. package/lib/models/apis/google/google-circles.js.map +1 -1
  14. package/lib/models/apis/google/google-geojson.js +72 -71
  15. package/lib/models/apis/google/google-geojson.js.map +1 -1
  16. package/lib/models/apis/google/google-map.js +173 -90
  17. package/lib/models/apis/google/google-map.js.map +1 -1
  18. package/lib/models/apis/google/google-markers.js +324 -290
  19. package/lib/models/apis/google/google-markers.js.map +1 -1
  20. package/lib/models/apis/google/google-overlay.js +101 -96
  21. package/lib/models/apis/google/google-overlay.js.map +1 -1
  22. package/lib/models/apis/google/google-polygons.js +300 -227
  23. package/lib/models/apis/google/google-polygons.js.map +1 -1
  24. package/lib/models/apis/google/google-polylines.js +706 -596
  25. package/lib/models/apis/google/google-polylines.js.map +1 -1
  26. package/lib/models/apis/google/google-popup.js +58 -60
  27. package/lib/models/apis/google/google-popup.js.map +1 -1
  28. package/lib/models/apis/googleMaps.js +448 -354
  29. package/lib/models/apis/googleMaps.js.map +1 -1
  30. package/lib/models/apis/leaflet/leaflet-circle.js +162 -134
  31. package/lib/models/apis/leaflet/leaflet-circle.js.map +1 -1
  32. package/lib/models/apis/leaflet/leaflet-geojson.js +72 -68
  33. package/lib/models/apis/leaflet/leaflet-geojson.js.map +1 -1
  34. package/lib/models/apis/leaflet/leaflet-map.js +139 -85
  35. package/lib/models/apis/leaflet/leaflet-map.js.map +1 -1
  36. package/lib/models/apis/leaflet/leaflet-markers.js +293 -259
  37. package/lib/models/apis/leaflet/leaflet-markers.js.map +1 -1
  38. package/lib/models/apis/leaflet/leaflet-overlay.js +34 -36
  39. package/lib/models/apis/leaflet/leaflet-overlay.js.map +1 -1
  40. package/lib/models/apis/leaflet/leaflet-polygons.js +210 -212
  41. package/lib/models/apis/leaflet/leaflet-polygons.js.map +1 -1
  42. package/lib/models/apis/leaflet/leaflet-polylines.js +705 -590
  43. package/lib/models/apis/leaflet/leaflet-polylines.js.map +1 -1
  44. package/lib/models/apis/leaflet/leaflet-popup.js +73 -75
  45. package/lib/models/apis/leaflet/leaflet-popup.js.map +1 -1
  46. package/lib/models/apis/leaflet.js +463 -360
  47. package/lib/models/apis/leaflet.js.map +1 -1
  48. package/lib/models/apis/mapFunctions.js +1 -2
  49. package/lib/models/dto/event-type.js +38 -40
  50. package/lib/models/dto/event-type.js.map +1 -1
  51. package/lib/models/dto/map-type.js +5 -7
  52. package/lib/models/dto/map-type.js.map +1 -1
  53. package/lib/models/dto/polyline-type.js +6 -8
  54. package/lib/models/dto/polyline-type.js.map +1 -1
  55. package/lib/models/features/circle/circle-alter-options.js +13 -15
  56. package/lib/models/features/circle/circle-alter-options.js.map +1 -1
  57. package/lib/models/features/circle/circle-options.js +18 -20
  58. package/lib/models/features/circle/circle-options.js.map +1 -1
  59. package/lib/models/features/events/event-return.js +7 -9
  60. package/lib/models/features/events/event-return.js.map +1 -1
  61. package/lib/models/features/geojson/geojson-options.js +8 -10
  62. package/lib/models/features/geojson/geojson-options.js.map +1 -1
  63. package/lib/models/features/marker/circle-marker-options.js +11 -13
  64. package/lib/models/features/marker/circle-marker-options.js.map +1 -1
  65. package/lib/models/features/marker/circle-marker-style.js +11 -13
  66. package/lib/models/features/marker/circle-marker-style.js.map +1 -1
  67. package/lib/models/features/marker/marker-alter-options.js +9 -11
  68. package/lib/models/features/marker/marker-alter-options.js.map +1 -1
  69. package/lib/models/features/marker/marker-icon.js +9 -11
  70. package/lib/models/features/marker/marker-icon.js.map +1 -1
  71. package/lib/models/features/marker/marker-options.js +17 -19
  72. package/lib/models/features/marker/marker-options.js.map +1 -1
  73. package/lib/models/features/marker-clusterer/marker-clusterer-config.js +9 -11
  74. package/lib/models/features/marker-clusterer/marker-clusterer-config.js.map +1 -1
  75. package/lib/models/features/overlay/overlay-options.js +14 -16
  76. package/lib/models/features/overlay/overlay-options.js.map +1 -1
  77. package/lib/models/features/polygons/polygon-alter-options.js +13 -14
  78. package/lib/models/features/polygons/polygon-alter-options.js.map +1 -1
  79. package/lib/models/features/polygons/polygon-options.js +18 -19
  80. package/lib/models/features/polygons/polygon-options.js.map +1 -1
  81. package/lib/models/features/polyline/navigations-options.js +15 -15
  82. package/lib/models/features/polyline/navigations-options.js.map +1 -1
  83. package/lib/models/features/polyline/polyline-options.js +19 -21
  84. package/lib/models/features/polyline/polyline-options.js.map +1 -1
  85. package/lib/models/features/popup/popup-options.js +12 -14
  86. package/lib/models/features/popup/popup-options.js.map +1 -1
  87. package/lib/utils/maps-api-loader.service.js +88 -77
  88. package/lib/utils/maps-api-loader.service.js.map +1 -1
  89. package/lib/utils/url-builder.js +43 -45
  90. package/lib/utils/url-builder.js.map +1 -1
  91. package/lib-esm/index.js +46 -45
  92. package/lib-esm/index.js.map +1 -1
  93. package/lib-esm/map.js +1136 -1008
  94. package/lib-esm/map.js.map +1 -1
  95. package/lib-esm/models/apis/google/google-circles.js +133 -128
  96. package/lib-esm/models/apis/google/google-circles.js.map +1 -1
  97. package/lib-esm/models/apis/google/google-geojson.js +72 -69
  98. package/lib-esm/models/apis/google/google-geojson.js.map +1 -1
  99. package/lib-esm/models/apis/google/google-map.js +173 -88
  100. package/lib-esm/models/apis/google/google-map.js.map +1 -1
  101. package/lib-esm/models/apis/google/google-markers.js +324 -288
  102. package/lib-esm/models/apis/google/google-markers.js.map +1 -1
  103. package/lib-esm/models/apis/google/google-overlay.js +101 -94
  104. package/lib-esm/models/apis/google/google-overlay.js.map +1 -1
  105. package/lib-esm/models/apis/google/google-polygons.js +300 -225
  106. package/lib-esm/models/apis/google/google-polygons.js.map +1 -1
  107. package/lib-esm/models/apis/google/google-polylines.js +706 -594
  108. package/lib-esm/models/apis/google/google-polylines.js.map +1 -1
  109. package/lib-esm/models/apis/google/google-popup.js +58 -58
  110. package/lib-esm/models/apis/google/google-popup.js.map +1 -1
  111. package/lib-esm/models/apis/googleMaps.js +448 -352
  112. package/lib-esm/models/apis/googleMaps.js.map +1 -1
  113. package/lib-esm/models/apis/leaflet/leaflet-circle.js +162 -132
  114. package/lib-esm/models/apis/leaflet/leaflet-circle.js.map +1 -1
  115. package/lib-esm/models/apis/leaflet/leaflet-geojson.js +72 -66
  116. package/lib-esm/models/apis/leaflet/leaflet-geojson.js.map +1 -1
  117. package/lib-esm/models/apis/leaflet/leaflet-map.js +139 -83
  118. package/lib-esm/models/apis/leaflet/leaflet-map.js.map +1 -1
  119. package/lib-esm/models/apis/leaflet/leaflet-markers.js +293 -257
  120. package/lib-esm/models/apis/leaflet/leaflet-markers.js.map +1 -1
  121. package/lib-esm/models/apis/leaflet/leaflet-overlay.js +34 -34
  122. package/lib-esm/models/apis/leaflet/leaflet-overlay.js.map +1 -1
  123. package/lib-esm/models/apis/leaflet/leaflet-polygons.js +210 -210
  124. package/lib-esm/models/apis/leaflet/leaflet-polygons.js.map +1 -1
  125. package/lib-esm/models/apis/leaflet/leaflet-polylines.js +705 -588
  126. package/lib-esm/models/apis/leaflet/leaflet-polylines.js.map +1 -1
  127. package/lib-esm/models/apis/leaflet/leaflet-popup.js +73 -73
  128. package/lib-esm/models/apis/leaflet/leaflet-popup.js.map +1 -1
  129. package/lib-esm/models/apis/leaflet.js +463 -358
  130. package/lib-esm/models/apis/leaflet.js.map +1 -1
  131. package/lib-esm/models/apis/mapFunctions.js +1 -0
  132. package/lib-esm/models/dto/event-type.js +38 -38
  133. package/lib-esm/models/dto/map-type.js +5 -5
  134. package/lib-esm/models/dto/polyline-type.js +6 -6
  135. package/lib-esm/models/features/circle/circle-alter-options.js +13 -13
  136. package/lib-esm/models/features/circle/circle-options.js +18 -18
  137. package/lib-esm/models/features/events/event-return.js +7 -7
  138. package/lib-esm/models/features/geojson/geojson-options.js +8 -8
  139. package/lib-esm/models/features/marker/circle-marker-options.js +11 -11
  140. package/lib-esm/models/features/marker/circle-marker-style.js +11 -11
  141. package/lib-esm/models/features/marker/marker-alter-options.js +9 -9
  142. package/lib-esm/models/features/marker/marker-icon.js +9 -9
  143. package/lib-esm/models/features/marker/marker-options.js +17 -17
  144. package/lib-esm/models/features/marker-clusterer/marker-clusterer-config.js +9 -9
  145. package/lib-esm/models/features/overlay/overlay-options.js +14 -14
  146. package/lib-esm/models/features/polygons/polygon-alter-options.js +13 -12
  147. package/lib-esm/models/features/polygons/polygon-alter-options.js.map +1 -1
  148. package/lib-esm/models/features/polygons/polygon-options.js +18 -17
  149. package/lib-esm/models/features/polygons/polygon-options.js.map +1 -1
  150. package/lib-esm/models/features/polyline/navigations-options.js +15 -13
  151. package/lib-esm/models/features/polyline/navigations-options.js.map +1 -1
  152. package/lib-esm/models/features/polyline/polyline-options.js +19 -19
  153. package/lib-esm/models/features/polyline/polyline-options.js.map +1 -1
  154. package/lib-esm/models/features/popup/popup-options.js +12 -12
  155. package/lib-esm/utils/maps-api-loader.service.js +88 -75
  156. package/lib-esm/utils/maps-api-loader.service.js.map +1 -1
  157. package/lib-esm/utils/url-builder.js +43 -43
  158. package/lib-esm/utils/url-builder.js.map +1 -1
  159. package/package.json +67 -63
  160. package/lib/index.d.ts +0 -46
  161. package/lib/map.d.ts +0 -513
  162. package/lib/models/apis/google/google-circles.d.ts +0 -18
  163. package/lib/models/apis/google/google-geojson.d.ts +0 -9
  164. package/lib/models/apis/google/google-map.d.ts +0 -15
  165. package/lib/models/apis/google/google-markers.d.ts +0 -29
  166. package/lib/models/apis/google/google-overlay.d.ts +0 -11
  167. package/lib/models/apis/google/google-polygons.d.ts +0 -29
  168. package/lib/models/apis/google/google-polylines.d.ts +0 -55
  169. package/lib/models/apis/google/google-popup.d.ts +0 -10
  170. package/lib/models/apis/googleMaps.d.ts +0 -95
  171. package/lib/models/apis/leaflet/leaflet-circle.d.ts +0 -18
  172. package/lib/models/apis/leaflet/leaflet-geojson.d.ts +0 -9
  173. package/lib/models/apis/leaflet/leaflet-map.d.ts +0 -15
  174. package/lib/models/apis/leaflet/leaflet-markers.d.ts +0 -29
  175. package/lib/models/apis/leaflet/leaflet-overlay.d.ts +0 -10
  176. package/lib/models/apis/leaflet/leaflet-polygons.d.ts +0 -23
  177. package/lib/models/apis/leaflet/leaflet-polylines.d.ts +0 -54
  178. package/lib/models/apis/leaflet/leaflet-popup.d.ts +0 -11
  179. package/lib/models/apis/leaflet.d.ts +0 -97
  180. package/lib/models/apis/mapFunctions.d.ts +0 -84
  181. package/lib/models/dto/event-type.d.ts +0 -33
  182. package/lib/models/dto/map-type.d.ts +0 -4
  183. package/lib/models/dto/polyline-type.d.ts +0 -5
  184. package/lib/models/features/circle/circle-alter-options.d.ts +0 -12
  185. package/lib/models/features/circle/circle-options.d.ts +0 -15
  186. package/lib/models/features/events/event-return.d.ts +0 -4
  187. package/lib/models/features/geojson/geojson-options.d.ts +0 -5
  188. package/lib/models/features/marker/circle-marker-options.d.ts +0 -9
  189. package/lib/models/features/marker/circle-marker-style.d.ts +0 -8
  190. package/lib/models/features/marker/marker-alter-options.d.ts +0 -8
  191. package/lib/models/features/marker/marker-icon.d.ts +0 -6
  192. package/lib/models/features/marker/marker-options.d.ts +0 -11
  193. package/lib/models/features/marker-clusterer/marker-clusterer-config.d.ts +0 -6
  194. package/lib/models/features/overlay/overlay-options.d.ts +0 -11
  195. package/lib/models/features/polygons/polygon-alter-options.d.ts +0 -13
  196. package/lib/models/features/polygons/polygon-options.d.ts +0 -15
  197. package/lib/models/features/polyline/navigations-options.d.ts +0 -11
  198. package/lib/models/features/polyline/polyline-options.d.ts +0 -18
  199. package/lib/models/features/popup/popup-options.d.ts +0 -9
  200. package/lib/utils/maps-api-loader.service.d.ts +0 -9
  201. package/lib/utils/url-builder.d.ts +0 -11
  202. package/lib-esm/index.d.ts +0 -46
  203. package/lib-esm/map.d.ts +0 -513
  204. package/lib-esm/models/apis/google/google-circles.d.ts +0 -18
  205. package/lib-esm/models/apis/google/google-geojson.d.ts +0 -9
  206. package/lib-esm/models/apis/google/google-map.d.ts +0 -15
  207. package/lib-esm/models/apis/google/google-markers.d.ts +0 -29
  208. package/lib-esm/models/apis/google/google-overlay.d.ts +0 -11
  209. package/lib-esm/models/apis/google/google-polygons.d.ts +0 -29
  210. package/lib-esm/models/apis/google/google-polylines.d.ts +0 -55
  211. package/lib-esm/models/apis/google/google-popup.d.ts +0 -10
  212. package/lib-esm/models/apis/googleMaps.d.ts +0 -95
  213. package/lib-esm/models/apis/leaflet/leaflet-circle.d.ts +0 -18
  214. package/lib-esm/models/apis/leaflet/leaflet-geojson.d.ts +0 -9
  215. package/lib-esm/models/apis/leaflet/leaflet-map.d.ts +0 -15
  216. package/lib-esm/models/apis/leaflet/leaflet-markers.d.ts +0 -29
  217. package/lib-esm/models/apis/leaflet/leaflet-overlay.d.ts +0 -10
  218. package/lib-esm/models/apis/leaflet/leaflet-polygons.d.ts +0 -23
  219. package/lib-esm/models/apis/leaflet/leaflet-polylines.d.ts +0 -54
  220. package/lib-esm/models/apis/leaflet/leaflet-popup.d.ts +0 -11
  221. package/lib-esm/models/apis/leaflet.d.ts +0 -97
  222. package/lib-esm/models/apis/mapFunctions.d.ts +0 -84
  223. package/lib-esm/models/dto/event-type.d.ts +0 -33
  224. package/lib-esm/models/dto/map-type.d.ts +0 -4
  225. package/lib-esm/models/dto/polyline-type.d.ts +0 -5
  226. package/lib-esm/models/features/circle/circle-alter-options.d.ts +0 -12
  227. package/lib-esm/models/features/circle/circle-options.d.ts +0 -15
  228. package/lib-esm/models/features/events/event-return.d.ts +0 -4
  229. package/lib-esm/models/features/geojson/geojson-options.d.ts +0 -5
  230. package/lib-esm/models/features/marker/circle-marker-options.d.ts +0 -9
  231. package/lib-esm/models/features/marker/circle-marker-style.d.ts +0 -8
  232. package/lib-esm/models/features/marker/marker-alter-options.d.ts +0 -8
  233. package/lib-esm/models/features/marker/marker-icon.d.ts +0 -6
  234. package/lib-esm/models/features/marker/marker-options.d.ts +0 -11
  235. package/lib-esm/models/features/marker-clusterer/marker-clusterer-config.d.ts +0 -6
  236. package/lib-esm/models/features/overlay/overlay-options.d.ts +0 -11
  237. package/lib-esm/models/features/polygons/polygon-alter-options.d.ts +0 -13
  238. package/lib-esm/models/features/polygons/polygon-options.d.ts +0 -15
  239. package/lib-esm/models/features/polyline/navigations-options.d.ts +0 -11
  240. package/lib-esm/models/features/polyline/polyline-options.d.ts +0 -18
  241. package/lib-esm/models/features/popup/popup-options.d.ts +0 -9
  242. package/lib-esm/utils/maps-api-loader.service.d.ts +0 -9
  243. package/lib-esm/utils/url-builder.d.ts +0 -11
@@ -1,89 +1,174 @@
1
- import { MapEventType } from '../../dto/event-type';
2
- import EventReturn from '../../features/events/event-return';
3
- var GoogleMap = /** @class */ (function () {
4
- function GoogleMap(map, google) {
5
- this.map = null;
6
- this.google = null;
7
- this.map = map;
8
- this.google = google;
9
- }
10
- GoogleMap.prototype.resizeMap = function () {
11
- google.maps.event.trigger(this.map, 'resize');
12
- };
13
- GoogleMap.prototype.addEventMap = function (eventType, eventFunction) {
14
- var self = this;
15
- switch (eventType) {
16
- case MapEventType.Click:
17
- this.google.maps.event.addListener(self.map, 'click', function (event) {
18
- var param = new EventReturn([event.latLng.lat(), event.latLng.lng()]);
19
- eventFunction(param);
20
- });
21
- break;
22
- case MapEventType.ZoomChanged:
23
- self.map.addListener('zoom_changed', function () {
24
- var param = new EventReturn([self.map.getCenter().lat(), self.map.getCenter().lng()]);
25
- eventFunction(param);
26
- });
27
- default:
28
- break;
29
- }
30
- };
31
- GoogleMap.prototype.removeEventMap = function (eventType) {
32
- var self = this;
33
- switch (eventType) {
34
- case MapEventType.Click:
35
- this.google.maps.event.clearListeners(self.map, 'click');
36
- break;
37
- case MapEventType.ZoomChanged:
38
- this.google.maps.event.clearListeners(self.map, 'zoom_changed');
39
- default:
40
- break;
41
- }
42
- };
43
- GoogleMap.prototype.getZoom = function () {
44
- return this.map.getZoom();
45
- };
46
- GoogleMap.prototype.setZoom = function (zoom) {
47
- return this.map.setZoom(zoom);
48
- };
49
- GoogleMap.prototype.getCenter = function () {
50
- var center = this.map.getCenter();
51
- return [center.lat(), center.lng()];
52
- };
53
- GoogleMap.prototype.setCenter = function (position) {
54
- this.map.setCenter(new google.maps.LatLng(position[0], position[1]));
55
- };
56
- GoogleMap.prototype.pixelsToLatLng = function (offsetx, offsety) {
57
- var scale = Math.pow(2, this.map.getZoom());
58
- var worldCoordinateCenter = this.map.getProjection().fromLatLngToPoint(this.map.getCenter());
59
- var pixelOffset = new google.maps.Point(offsetx / scale || 0, offsety / scale || 0);
60
- var worldCoordinateNewCenter = new google.maps.Point(worldCoordinateCenter.x - pixelOffset.x, worldCoordinateCenter.y + pixelOffset.y);
61
- var latlng = this.map.getProjection().fromPointToLatLng(worldCoordinateNewCenter);
62
- return [latlng.lat(), latlng.lng()];
63
- };
64
- GoogleMap.prototype.fitBoundsElements = function (markers, circles, polygons, polylines) {
65
- var bounds = new google.maps.LatLngBounds();
66
- if (markers && markers.length) {
67
- markers.forEach(function (marker) { return bounds.extend(marker.getPosition()); });
68
- this.map.fitBounds(bounds);
69
- }
70
- if (circles && circles.length) {
71
- circles.forEach(function (circle) { return bounds.union(circle.getBounds()); });
72
- this.map.fitBounds(bounds);
73
- }
74
- if (polygons && polygons.length) {
75
- polygons.forEach(function (polygon) { return polygon.getPaths()
76
- .forEach(function (path) { return path.getArray()
77
- .forEach(function (ponto) { return bounds.extend(ponto); }); }); });
78
- this.map.fitBounds(bounds);
79
- }
80
- if (polylines && polylines.length) {
81
- polylines.forEach(function (polyline) { return polyline.getPath()
82
- .forEach(function (path) { return bounds.extend(new google.maps.LatLng(path.lat(), path.lng())); }); });
83
- this.map.fitBounds(bounds);
84
- }
85
- };
86
- return GoogleMap;
87
- }());
88
- export default GoogleMap;
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import html2canvas from "html2canvas";
38
+ import { MapEventType } from "../../dto/event-type";
39
+ import EventReturn from "../../features/events/event-return";
40
+ var GoogleMap = /** @class */ (function () {
41
+ function GoogleMap(map, google) {
42
+ this.map = null;
43
+ this.google = null;
44
+ this.map = map;
45
+ this.google = google;
46
+ }
47
+ GoogleMap.prototype.resizeMap = function () {
48
+ google.maps.event.trigger(this.map, "resize");
49
+ };
50
+ GoogleMap.prototype.addEventMap = function (eventType, eventFunction) {
51
+ var self = this;
52
+ switch (eventType) {
53
+ case MapEventType.Click:
54
+ this.google.maps.event.addListener(self.map, "click", function (event) {
55
+ var param = new EventReturn([
56
+ event.latLng.lat(),
57
+ event.latLng.lng(),
58
+ ]);
59
+ eventFunction(param);
60
+ });
61
+ break;
62
+ case MapEventType.ZoomChanged:
63
+ self.map.addListener("zoom_changed", function () {
64
+ var param = new EventReturn([
65
+ self.map.getCenter().lat(),
66
+ self.map.getCenter().lng(),
67
+ ]);
68
+ eventFunction(param);
69
+ });
70
+ break;
71
+ default:
72
+ break;
73
+ }
74
+ };
75
+ GoogleMap.prototype.removeEventMap = function (eventType) {
76
+ var self = this;
77
+ switch (eventType) {
78
+ case MapEventType.Click:
79
+ this.google.maps.event.clearListeners(self.map, "click");
80
+ break;
81
+ case MapEventType.ZoomChanged:
82
+ this.google.maps.event.clearListeners(self.map, "zoom_changed");
83
+ break;
84
+ default:
85
+ break;
86
+ }
87
+ };
88
+ GoogleMap.prototype.getZoom = function () {
89
+ return this.map.getZoom();
90
+ };
91
+ GoogleMap.prototype.setZoom = function (zoom) {
92
+ return this.map.setZoom(zoom);
93
+ };
94
+ GoogleMap.prototype.takeScreenShot = function (elementId) {
95
+ return __awaiter(this, void 0, void 0, function () {
96
+ var image, element, canvas;
97
+ return __generator(this, function (_a) {
98
+ switch (_a.label) {
99
+ case 0:
100
+ image = "";
101
+ element = document.getElementById(elementId);
102
+ if (!element) return [3 /*break*/, 2];
103
+ return [4 /*yield*/, html2canvas(element, {
104
+ useCORS: true,
105
+ allowTaint: true,
106
+ })];
107
+ case 1:
108
+ canvas = _a.sent();
109
+ image = canvas.toDataURL("image/png", 1.0);
110
+ _a.label = 2;
111
+ case 2: return [2 /*return*/, image];
112
+ }
113
+ });
114
+ });
115
+ };
116
+ GoogleMap.prototype.getCenter = function () {
117
+ var center = this.map.getCenter();
118
+ return [center.lat(), center.lng()];
119
+ };
120
+ GoogleMap.prototype.setCenter = function (position) {
121
+ var _a;
122
+ (_a = this.map) === null || _a === void 0 ? void 0 : _a.setCenter(new google.maps.LatLng(position[0], position[1]));
123
+ };
124
+ GoogleMap.prototype.pixelsToLatLng = function (offsetx, offsety) {
125
+ var scale = Math.pow(2, this.map.getZoom());
126
+ var worldCoordinateCenter = this.map
127
+ .getProjection()
128
+ .fromLatLngToPoint(this.map.getCenter());
129
+ var pixelOffset = new google.maps.Point(offsetx / scale || 0, offsety / scale || 0);
130
+ var worldCoordinateNewCenter = new google.maps.Point(worldCoordinateCenter.x - pixelOffset.x, worldCoordinateCenter.y + pixelOffset.y);
131
+ var latlng = this.map
132
+ .getProjection()
133
+ .fromPointToLatLng(worldCoordinateNewCenter);
134
+ return [latlng.lat(), latlng.lng()];
135
+ };
136
+ GoogleMap.prototype.fitBoundsElements = function (markers, circles, polygons, polylines) {
137
+ var bounds = new google.maps.LatLngBounds();
138
+ if (markers && markers.length) {
139
+ markers.forEach(function (marker) {
140
+ return bounds.extend(marker.getPosition());
141
+ });
142
+ this.map.fitBounds(bounds);
143
+ }
144
+ if (circles && circles.length) {
145
+ circles.forEach(function (circle) { return bounds.union(circle.getBounds()); });
146
+ this.map.fitBounds(bounds);
147
+ }
148
+ if (polygons && polygons.length) {
149
+ polygons.forEach(function (polygon) {
150
+ return polygon
151
+ .getPaths()
152
+ .forEach(function (path) {
153
+ return path
154
+ .getArray()
155
+ .forEach(function (ponto) { return bounds.extend(ponto); });
156
+ });
157
+ });
158
+ this.map.fitBounds(bounds);
159
+ }
160
+ if (polylines && polylines.length) {
161
+ polylines.forEach(function (polyline) {
162
+ return polyline
163
+ .getPath()
164
+ .forEach(function (path) {
165
+ return bounds.extend(new google.maps.LatLng(path.lat(), path.lng()));
166
+ });
167
+ });
168
+ this.map.fitBounds(bounds);
169
+ }
170
+ };
171
+ return GoogleMap;
172
+ }());
173
+ export default GoogleMap;
89
174
  //# sourceMappingURL=google-map.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"google-map.js","sourceRoot":"","sources":["../../../../src/models/apis/google/google-map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google-map.js","sourceRoot":"","sources":["../../../../src/models/apis/google/google-map.ts"],"names":[],"mappings":"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"}