@lugg/maps 0.2.0-alpha.9 → 1.0.0-beta.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 (173) hide show
  1. package/README.md +20 -19
  2. package/android/src/main/java/com/luggmaps/LuggMapView.kt +290 -0
  3. package/android/src/main/java/com/luggmaps/{LuggGoogleMapViewManager.kt → LuggMapViewManager.kt} +99 -36
  4. package/android/src/main/java/com/luggmaps/LuggMapWrapperView.kt +13 -5
  5. package/android/src/main/java/com/luggmaps/LuggMarkerView.kt +157 -13
  6. package/android/src/main/java/com/luggmaps/LuggMarkerViewManager.kt +28 -0
  7. package/android/src/main/java/com/luggmaps/LuggPackage.kt +1 -4
  8. package/android/src/main/java/com/luggmaps/LuggPolygonView.kt +85 -0
  9. package/android/src/main/java/com/luggmaps/LuggPolygonViewManager.kt +100 -0
  10. package/android/src/main/java/com/luggmaps/LuggPolylineView.kt +16 -0
  11. package/android/src/main/java/com/luggmaps/LuggPolylineViewManager.kt +22 -0
  12. package/android/src/main/java/com/luggmaps/core/GoogleMapProvider.kt +698 -0
  13. package/android/src/main/java/com/luggmaps/core/MapProviderDelegate.kt +60 -0
  14. package/android/src/main/java/com/luggmaps/core/PolylineAnimator.kt +89 -24
  15. package/android/src/main/java/com/luggmaps/events/LongPressEvent.kt +29 -0
  16. package/android/src/main/java/com/luggmaps/events/MarkerDragEvent.kt +41 -0
  17. package/android/src/main/java/com/luggmaps/events/MarkerPressEvent.kt +34 -0
  18. package/android/src/main/java/com/luggmaps/events/PolygonPressEvent.kt +12 -0
  19. package/android/src/main/java/com/luggmaps/events/PressEvent.kt +29 -0
  20. package/ios/LuggMapView.h +9 -0
  21. package/ios/LuggMapView.mm +343 -0
  22. package/ios/LuggMarkerView.h +13 -0
  23. package/ios/LuggMarkerView.mm +119 -0
  24. package/ios/LuggPolygonView.h +31 -0
  25. package/ios/LuggPolygonView.mm +151 -0
  26. package/ios/LuggPolylineView.h +4 -0
  27. package/ios/LuggPolylineView.mm +23 -0
  28. package/ios/core/AppleMapProvider.h +15 -0
  29. package/ios/core/AppleMapProvider.mm +1029 -0
  30. package/ios/core/GMSPolylineAnimator.h +3 -0
  31. package/ios/core/GMSPolylineAnimator.m +101 -15
  32. package/ios/core/GoogleMapProvider.h +13 -0
  33. package/ios/core/GoogleMapProvider.mm +689 -0
  34. package/ios/core/MKPolylineAnimator.h +4 -0
  35. package/ios/core/MKPolylineAnimator.m +167 -42
  36. package/ios/core/MapProviderDelegate.h +84 -0
  37. package/ios/core/PolylineAnimatorBase.h +24 -1
  38. package/ios/core/PolylineAnimatorBase.m +82 -19
  39. package/ios/events/LongPressEvent.h +29 -0
  40. package/ios/events/MarkerDragEvent.h +69 -0
  41. package/ios/events/MarkerPressEvent.h +29 -0
  42. package/ios/events/PolygonPressEvent.h +20 -0
  43. package/ios/events/PressEvent.h +29 -0
  44. package/ios/extensions/MKMapView+Zoom.h +2 -0
  45. package/ios/extensions/MKMapView+Zoom.m +14 -4
  46. package/lib/module/MapProvider.js +2 -4
  47. package/lib/module/MapProvider.js.map +1 -1
  48. package/lib/module/MapProvider.web.js +12 -7
  49. package/lib/module/MapProvider.web.js.map +1 -1
  50. package/lib/module/MapView.js +33 -16
  51. package/lib/module/MapView.js.map +1 -1
  52. package/lib/module/MapView.web.js +283 -181
  53. package/lib/module/MapView.web.js.map +1 -1
  54. package/lib/module/components/GeoJson.js +159 -0
  55. package/lib/module/components/GeoJson.js.map +1 -0
  56. package/lib/module/components/GeoJson.types.js +4 -0
  57. package/lib/module/components/GeoJson.types.js.map +1 -0
  58. package/lib/module/components/Marker.js +28 -4
  59. package/lib/module/components/Marker.js.map +1 -1
  60. package/lib/module/components/Marker.types.js +4 -0
  61. package/lib/module/components/Marker.types.js.map +1 -0
  62. package/lib/module/components/Marker.web.js +98 -27
  63. package/lib/module/components/Marker.web.js.map +1 -1
  64. package/lib/module/components/Polygon.js +46 -0
  65. package/lib/module/components/Polygon.js.map +1 -0
  66. package/lib/module/components/Polygon.types.js +4 -0
  67. package/lib/module/components/Polygon.types.js.map +1 -0
  68. package/lib/module/components/Polygon.web.js +87 -0
  69. package/lib/module/components/Polygon.web.js.map +1 -0
  70. package/lib/module/components/Polyline.js +17 -4
  71. package/lib/module/components/Polyline.js.map +1 -1
  72. package/lib/module/components/Polyline.types.js +4 -0
  73. package/lib/module/components/Polyline.types.js.map +1 -0
  74. package/lib/module/components/Polyline.web.js +108 -31
  75. package/lib/module/components/Polyline.web.js.map +1 -1
  76. package/lib/module/components/index.js +4 -2
  77. package/lib/module/components/index.js.map +1 -1
  78. package/lib/module/components/index.web.js +2 -0
  79. package/lib/module/components/index.web.js.map +1 -1
  80. package/lib/module/fabric/{LuggGoogleMapViewNativeComponent.ts → LuggMapViewNativeComponent.ts} +43 -7
  81. package/lib/module/fabric/LuggMarkerViewNativeComponent.ts +49 -1
  82. package/lib/module/fabric/LuggPolygonViewNativeComponent.ts +25 -0
  83. package/lib/module/fabric/LuggPolylineViewNativeComponent.ts +8 -0
  84. package/lib/module/index.js +4 -1
  85. package/lib/module/index.js.map +1 -1
  86. package/lib/module/index.web.js +4 -1
  87. package/lib/module/index.web.js.map +1 -1
  88. package/lib/typescript/src/MapProvider.d.ts +1 -1
  89. package/lib/typescript/src/MapProvider.d.ts.map +1 -1
  90. package/lib/typescript/src/MapProvider.web.d.ts +17 -1
  91. package/lib/typescript/src/MapProvider.web.d.ts.map +1 -1
  92. package/lib/typescript/src/MapView.d.ts +4 -4
  93. package/lib/typescript/src/MapView.d.ts.map +1 -1
  94. package/lib/typescript/src/MapView.types.d.ts +35 -9
  95. package/lib/typescript/src/MapView.types.d.ts.map +1 -1
  96. package/lib/typescript/src/MapView.web.d.ts +2 -11
  97. package/lib/typescript/src/MapView.web.d.ts.map +1 -1
  98. package/lib/typescript/src/components/GeoJson.d.ts +4 -0
  99. package/lib/typescript/src/components/GeoJson.d.ts.map +1 -0
  100. package/lib/typescript/src/components/GeoJson.types.d.ts +79 -0
  101. package/lib/typescript/src/components/GeoJson.types.d.ts.map +1 -0
  102. package/lib/typescript/src/components/Marker.d.ts +6 -33
  103. package/lib/typescript/src/components/Marker.d.ts.map +1 -1
  104. package/lib/typescript/src/components/Marker.types.d.ts +74 -0
  105. package/lib/typescript/src/components/Marker.types.d.ts.map +1 -0
  106. package/lib/typescript/src/components/Marker.web.d.ts +2 -5
  107. package/lib/typescript/src/components/Marker.web.d.ts.map +1 -1
  108. package/lib/typescript/src/components/Polygon.d.ts +10 -0
  109. package/lib/typescript/src/components/Polygon.d.ts.map +1 -0
  110. package/lib/typescript/src/components/Polygon.types.d.ts +33 -0
  111. package/lib/typescript/src/components/Polygon.types.d.ts.map +1 -0
  112. package/lib/typescript/src/components/Polygon.web.d.ts +3 -0
  113. package/lib/typescript/src/components/Polygon.web.d.ts.map +1 -0
  114. package/lib/typescript/src/components/Polyline.d.ts +6 -21
  115. package/lib/typescript/src/components/Polyline.d.ts.map +1 -1
  116. package/lib/typescript/src/components/Polyline.types.d.ts +53 -0
  117. package/lib/typescript/src/components/Polyline.types.d.ts.map +1 -0
  118. package/lib/typescript/src/components/Polyline.web.d.ts +2 -5
  119. package/lib/typescript/src/components/Polyline.web.d.ts.map +1 -1
  120. package/lib/typescript/src/components/index.d.ts +8 -2
  121. package/lib/typescript/src/components/index.d.ts.map +1 -1
  122. package/lib/typescript/src/components/index.web.d.ts +6 -2
  123. package/lib/typescript/src/components/index.web.d.ts.map +1 -1
  124. package/lib/typescript/src/fabric/{LuggGoogleMapViewNativeComponent.d.ts → LuggMapViewNativeComponent.d.ts} +30 -4
  125. package/lib/typescript/src/fabric/LuggMapViewNativeComponent.d.ts.map +1 -0
  126. package/lib/typescript/src/fabric/LuggMarkerViewNativeComponent.d.ts +45 -1
  127. package/lib/typescript/src/fabric/LuggMarkerViewNativeComponent.d.ts.map +1 -1
  128. package/lib/typescript/src/fabric/LuggPolygonViewNativeComponent.d.ts +18 -0
  129. package/lib/typescript/src/fabric/LuggPolygonViewNativeComponent.d.ts.map +1 -0
  130. package/lib/typescript/src/fabric/LuggPolylineViewNativeComponent.d.ts +7 -0
  131. package/lib/typescript/src/fabric/LuggPolylineViewNativeComponent.d.ts.map +1 -1
  132. package/lib/typescript/src/index.d.ts +11 -3
  133. package/lib/typescript/src/index.d.ts.map +1 -1
  134. package/lib/typescript/src/index.web.d.ts +9 -1
  135. package/lib/typescript/src/index.web.d.ts.map +1 -1
  136. package/lib/typescript/src/types.d.ts +11 -0
  137. package/lib/typescript/src/types.d.ts.map +1 -1
  138. package/package.json +10 -9
  139. package/src/MapProvider.tsx +1 -3
  140. package/src/MapProvider.web.tsx +12 -3
  141. package/src/MapView.tsx +32 -26
  142. package/src/MapView.types.ts +43 -9
  143. package/src/MapView.web.tsx +345 -211
  144. package/src/components/GeoJson.tsx +221 -0
  145. package/src/components/GeoJson.types.ts +107 -0
  146. package/src/components/Marker.tsx +45 -36
  147. package/src/components/Marker.types.ts +75 -0
  148. package/src/components/Marker.web.tsx +116 -28
  149. package/src/components/Polygon.tsx +52 -0
  150. package/src/components/Polygon.types.ts +33 -0
  151. package/src/components/Polygon.web.tsx +104 -0
  152. package/src/components/Polyline.tsx +23 -22
  153. package/src/components/Polyline.types.ts +55 -0
  154. package/src/components/Polyline.web.tsx +151 -37
  155. package/src/components/index.ts +16 -2
  156. package/src/components/index.web.ts +6 -2
  157. package/src/fabric/{LuggGoogleMapViewNativeComponent.ts → LuggMapViewNativeComponent.ts} +43 -7
  158. package/src/fabric/LuggMarkerViewNativeComponent.ts +49 -1
  159. package/src/fabric/LuggPolygonViewNativeComponent.ts +25 -0
  160. package/src/fabric/LuggPolylineViewNativeComponent.ts +8 -0
  161. package/src/index.ts +28 -1
  162. package/src/index.web.ts +15 -1
  163. package/src/types.ts +13 -0
  164. package/android/src/main/java/com/luggmaps/LuggGoogleMapView.kt +0 -511
  165. package/ios/LuggAppleMapView.h +0 -16
  166. package/ios/LuggAppleMapView.mm +0 -592
  167. package/ios/LuggGoogleMapView.h +0 -13
  168. package/ios/LuggGoogleMapView.mm +0 -455
  169. package/lib/module/fabric/LuggAppleMapViewNativeComponent.ts +0 -83
  170. package/lib/typescript/src/fabric/LuggAppleMapViewNativeComponent.d.ts +0 -54
  171. package/lib/typescript/src/fabric/LuggAppleMapViewNativeComponent.d.ts.map +0 -1
  172. package/lib/typescript/src/fabric/LuggGoogleMapViewNativeComponent.d.ts.map +0 -1
  173. package/src/fabric/LuggAppleMapViewNativeComponent.ts +0 -83
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+
3
+ import React, { useMemo } from 'react';
4
+ import { Marker } from './Marker';
5
+ import { Polygon } from './Polygon';
6
+ import { Polyline } from './Polyline';
7
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
8
+ const toCoordinate = position => ({
9
+ latitude: position[1],
10
+ longitude: position[0]
11
+ });
12
+ const toCoordinates = positions => positions.map(toCoordinate);
13
+ const normalizeFeatures = geojson => {
14
+ switch (geojson.type) {
15
+ case 'FeatureCollection':
16
+ return geojson.features;
17
+ case 'Feature':
18
+ return [geojson];
19
+ default:
20
+ return [{
21
+ type: 'Feature',
22
+ geometry: geojson,
23
+ properties: null
24
+ }];
25
+ }
26
+ };
27
+ const renderGeometry = (geometry, feature, props, keyPrefix) => {
28
+ const elements = [];
29
+ switch (geometry.type) {
30
+ case 'Point':
31
+ {
32
+ const markerProps = {
33
+ coordinate: toCoordinate(geometry.coordinates),
34
+ title: feature.properties?.title,
35
+ description: feature.properties?.description,
36
+ zIndex: props.zIndex
37
+ };
38
+ elements.push(props.renderMarker ? props.renderMarker(markerProps, feature) ?? /*#__PURE__*/_jsx(React.Fragment, {}, keyPrefix) : /*#__PURE__*/_jsx(Marker, {
39
+ ...markerProps
40
+ }, keyPrefix));
41
+ break;
42
+ }
43
+ case 'MultiPoint':
44
+ {
45
+ for (let i = 0; i < geometry.coordinates.length; i++) {
46
+ const markerProps = {
47
+ coordinate: toCoordinate(geometry.coordinates[i]),
48
+ title: feature.properties?.title,
49
+ description: feature.properties?.description,
50
+ zIndex: props.zIndex
51
+ };
52
+ const key = `${keyPrefix}-${i}`;
53
+ elements.push(props.renderMarker ? props.renderMarker(markerProps, feature) ?? /*#__PURE__*/_jsx(React.Fragment, {}, key) : /*#__PURE__*/_jsx(Marker, {
54
+ ...markerProps
55
+ }, key));
56
+ }
57
+ break;
58
+ }
59
+ case 'LineString':
60
+ {
61
+ const p = feature.properties;
62
+ const polylineProps = {
63
+ coordinates: toCoordinates(geometry.coordinates),
64
+ strokeColors: p?.stroke ? [p.stroke] : undefined,
65
+ strokeWidth: p?.['stroke-width'],
66
+ zIndex: props.zIndex
67
+ };
68
+ elements.push(props.renderPolyline ? props.renderPolyline(polylineProps, feature) ?? /*#__PURE__*/_jsx(React.Fragment, {}, keyPrefix) : /*#__PURE__*/_jsx(Polyline, {
69
+ ...polylineProps
70
+ }, keyPrefix));
71
+ break;
72
+ }
73
+ case 'MultiLineString':
74
+ {
75
+ const p = feature.properties;
76
+ for (let i = 0; i < geometry.coordinates.length; i++) {
77
+ const polylineProps = {
78
+ coordinates: toCoordinates(geometry.coordinates[i]),
79
+ strokeColors: p?.stroke ? [p.stroke] : undefined,
80
+ strokeWidth: p?.['stroke-width'],
81
+ zIndex: props.zIndex
82
+ };
83
+ const key = `${keyPrefix}-${i}`;
84
+ elements.push(props.renderPolyline ? props.renderPolyline(polylineProps, feature) ?? /*#__PURE__*/_jsx(React.Fragment, {}, key) : /*#__PURE__*/_jsx(Polyline, {
85
+ ...polylineProps
86
+ }, key));
87
+ }
88
+ break;
89
+ }
90
+ case 'Polygon':
91
+ {
92
+ const outer = toCoordinates(geometry.coordinates[0]);
93
+ const holes = geometry.coordinates.length > 1 ? geometry.coordinates.slice(1).map(toCoordinates) : undefined;
94
+ const p = feature.properties;
95
+ const polygonProps = {
96
+ coordinates: outer,
97
+ holes,
98
+ fillColor: p?.fill,
99
+ strokeColor: p?.stroke,
100
+ strokeWidth: p?.['stroke-width'],
101
+ zIndex: props.zIndex
102
+ };
103
+ elements.push(props.renderPolygon ? props.renderPolygon(polygonProps, feature) ?? /*#__PURE__*/_jsx(React.Fragment, {}, keyPrefix) : /*#__PURE__*/_jsx(Polygon, {
104
+ ...polygonProps
105
+ }, keyPrefix));
106
+ break;
107
+ }
108
+ case 'MultiPolygon':
109
+ {
110
+ const p = feature.properties;
111
+ for (let i = 0; i < geometry.coordinates.length; i++) {
112
+ const rings = geometry.coordinates[i];
113
+ const outer = toCoordinates(rings[0]);
114
+ const holes = rings.length > 1 ? rings.slice(1).map(toCoordinates) : undefined;
115
+ const polygonProps = {
116
+ coordinates: outer,
117
+ holes,
118
+ fillColor: p?.fill,
119
+ strokeColor: p?.stroke,
120
+ strokeWidth: p?.['stroke-width'],
121
+ zIndex: props.zIndex
122
+ };
123
+ const key = `${keyPrefix}-${i}`;
124
+ elements.push(props.renderPolygon ? props.renderPolygon(polygonProps, feature) ?? /*#__PURE__*/_jsx(React.Fragment, {}, key) : /*#__PURE__*/_jsx(Polygon, {
125
+ ...polygonProps
126
+ }, key));
127
+ }
128
+ break;
129
+ }
130
+ case 'GeometryCollection':
131
+ {
132
+ for (let i = 0; i < geometry.geometries.length; i++) {
133
+ elements.push(...renderGeometry(geometry.geometries[i], feature, props, `${keyPrefix}-${i}`));
134
+ }
135
+ break;
136
+ }
137
+ }
138
+ return elements;
139
+ };
140
+ export const GeoJson = props => {
141
+ const {
142
+ geojson
143
+ } = props;
144
+ const elements = useMemo(() => {
145
+ const features = normalizeFeatures(geojson);
146
+ const result = [];
147
+ for (let i = 0; i < features.length; i++) {
148
+ const feature = features[i];
149
+ if (!feature.geometry) continue;
150
+ const key = feature.id != null ? String(feature.id) : String(i);
151
+ result.push(...renderGeometry(feature.geometry, feature, props, key));
152
+ }
153
+ return result;
154
+ }, [geojson, props]);
155
+ return /*#__PURE__*/_jsx(_Fragment, {
156
+ children: elements
157
+ });
158
+ };
159
+ //# sourceMappingURL=GeoJson.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMemo","Marker","Polygon","Polyline","jsx","_jsx","Fragment","_Fragment","toCoordinate","position","latitude","longitude","toCoordinates","positions","map","normalizeFeatures","geojson","type","features","geometry","properties","renderGeometry","feature","props","keyPrefix","elements","markerProps","coordinate","coordinates","title","description","zIndex","push","renderMarker","i","length","key","p","polylineProps","strokeColors","stroke","undefined","strokeWidth","renderPolyline","outer","holes","slice","polygonProps","fillColor","fill","strokeColor","renderPolygon","rings","geometries","GeoJson","result","id","String","children"],"sourceRoot":"../../../src","sources":["components/GeoJson.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=GeoJson.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["components/GeoJson.types.ts"],"mappings":"","ignoreList":[]}
@@ -4,7 +4,17 @@ import React from 'react';
4
4
  import { StyleSheet } from 'react-native';
5
5
  import LuggMarkerViewNativeComponent from '../fabric/LuggMarkerViewNativeComponent';
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
- export class Marker extends React.Component {
7
+ export class Marker extends React.PureComponent {
8
+ getStyle(zIndex) {
9
+ if (zIndex == null) return styles.marker;
10
+ if (zIndex !== this._cachedZIndex) {
11
+ this._cachedZIndex = zIndex;
12
+ this._cachedStyle = [{
13
+ zIndex
14
+ }, styles.marker];
15
+ }
16
+ return this._cachedStyle;
17
+ }
8
18
  render() {
9
19
  const {
10
20
  name,
@@ -13,17 +23,31 @@ export class Marker extends React.Component {
13
23
  description,
14
24
  anchor,
15
25
  zIndex,
26
+ rotate = 0,
27
+ scale = 1,
28
+ rasterize = true,
29
+ draggable = false,
30
+ onPress,
31
+ onDragStart,
32
+ onDragChange,
33
+ onDragEnd,
16
34
  children
17
35
  } = this.props;
18
36
  return /*#__PURE__*/_jsx(LuggMarkerViewNativeComponent, {
19
- style: [{
20
- zIndex
21
- }, styles.marker],
37
+ style: this.getStyle(zIndex),
22
38
  name: name,
23
39
  coordinate: coordinate,
24
40
  title: title,
25
41
  description: description,
26
42
  anchor: anchor,
43
+ rotate: rotate,
44
+ scale: scale,
45
+ rasterize: rasterize,
46
+ draggable: draggable,
47
+ onMarkerPress: onPress,
48
+ onMarkerDragStart: onDragStart,
49
+ onMarkerDragChange: onDragChange,
50
+ onMarkerDragEnd: onDragEnd,
27
51
  children: children
28
52
  });
29
53
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","LuggMarkerViewNativeComponent","jsx","_jsx","Marker","Component","render","name","coordinate","title","description","anchor","zIndex","children","props","style","styles","marker","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Marker.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,6BAA6B,MAAM,yCAAyC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAkCpF,OAAO,MAAMC,MAAM,SAASL,KAAK,CAACM,SAAS,CAAc;EACvDC,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEC,IAAI;MAAEC,UAAU;MAAEC,KAAK;MAAEC,WAAW;MAAEC,MAAM;MAAEC,MAAM;MAAEC;IAAS,CAAC,GACtE,IAAI,CAACC,KAAK;IAEZ,oBACEX,IAAA,CAACF,6BAA6B;MAC5Bc,KAAK,EAAE,CAAC;QAAEH;MAAO,CAAC,EAAEI,MAAM,CAACC,MAAM,CAAE;MACnCV,IAAI,EAAEA,IAAK;MACXC,UAAU,EAAEA,UAAW;MACvBC,KAAK,EAAEA,KAAM;MACbC,WAAW,EAAEA,WAAY;MACzBC,MAAM,EAAEA,MAAO;MAAAE,QAAA,EAEdA;IAAQ,CACoB,CAAC;EAEpC;AACF;AAEA,MAAMG,MAAM,GAAGhB,UAAU,CAACkB,MAAM,CAAC;EAC/BD,MAAM,EAAE;IACNE,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","LuggMarkerViewNativeComponent","jsx","_jsx","Marker","PureComponent","getStyle","zIndex","styles","marker","_cachedZIndex","_cachedStyle","render","name","coordinate","title","description","anchor","rotate","scale","rasterize","draggable","onPress","onDragStart","onDragChange","onDragEnd","children","props","style","onMarkerPress","onMarkerDragStart","onMarkerDragChange","onMarkerDragEnd","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Marker.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,6BAA6B,MAAM,yCAAyC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASpF,OAAO,MAAMC,MAAM,SAASL,KAAK,CAACM,aAAa,CAAc;EACnDC,QAAQA,CAACC,MAA0B,EAAE;IAC3C,IAAIA,MAAM,IAAI,IAAI,EAAE,OAAOC,MAAM,CAACC,MAAM;IACxC,IAAIF,MAAM,KAAK,IAAI,CAACG,aAAa,EAAE;MACjC,IAAI,CAACA,aAAa,GAAGH,MAAM;MAC3B,IAAI,CAACI,YAAY,GAAG,CAAC;QAAEJ;MAAO,CAAC,EAAEC,MAAM,CAACC,MAAM,CAAC;IACjD;IACA,OAAO,IAAI,CAACE,YAAY;EAC1B;EAKAC,MAAMA,CAAA,EAAG;IACP,MAAM;MACJC,IAAI;MACJC,UAAU;MACVC,KAAK;MACLC,WAAW;MACXC,MAAM;MACNV,MAAM;MACNW,MAAM,GAAG,CAAC;MACVC,KAAK,GAAG,CAAC;MACTC,SAAS,GAAG,IAAI;MAChBC,SAAS,GAAG,KAAK;MACjBC,OAAO;MACPC,WAAW;MACXC,YAAY;MACZC,SAAS;MACTC;IACF,CAAC,GAAG,IAAI,CAACC,KAAK;IAEd,oBACExB,IAAA,CAACF,6BAA6B;MAC5B2B,KAAK,EAAE,IAAI,CAACtB,QAAQ,CAACC,MAAM,CAAE;MAC7BM,IAAI,EAAEA,IAAK;MACXC,UAAU,EAAEA,UAAW;MACvBC,KAAK,EAAEA,KAAM;MACbC,WAAW,EAAEA,WAAY;MACzBC,MAAM,EAAEA,MAAO;MACfC,MAAM,EAAEA,MAAO;MACfC,KAAK,EAAEA,KAAM;MACbC,SAAS,EAAEA,SAAU;MACrBC,SAAS,EAAEA,SAAU;MACrBQ,aAAa,EAAEP,OAAQ;MACvBQ,iBAAiB,EAAEP,WAAY;MAC/BQ,kBAAkB,EAAEP,YAAa;MACjCQ,eAAe,EAAEP,SAAU;MAAAC,QAAA,EAE1BA;IAAQ,CACoB,CAAC;EAEpC;AACF;AAEA,MAAMlB,MAAM,GAAGR,UAAU,CAACiC,MAAM,CAAC;EAC/BxB,MAAM,EAAE;IACNyB,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=Marker.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["components/Marker.types.ts"],"mappings":"","ignoreList":[]}
@@ -1,34 +1,105 @@
1
1
  "use strict";
2
2
 
3
- import React from 'react';
3
+ import { useCallback, useEffect, useRef } from 'react';
4
4
  import { AdvancedMarker } from '@vis.gl/react-google-maps';
5
+ import { useMapContext } from "../MapProvider.web.js";
5
6
  import { jsx as _jsx } from "react/jsx-runtime";
6
- /**
7
- * Converts point to % anchor for web.
8
- * e.g. `0.5` to `-50%`
9
- */
10
7
  const toWebAnchor = value => `-${value * 100}%`;
11
- export class Marker extends React.Component {
12
- render() {
13
- const {
14
- coordinate,
15
- title,
16
- anchor,
17
- zIndex,
18
- children
19
- } = this.props;
20
- const position = {
21
- lat: coordinate.latitude,
22
- lng: coordinate.longitude
23
- };
24
- return /*#__PURE__*/_jsx(AdvancedMarker, {
25
- position: position,
26
- title: title,
27
- zIndex: zIndex,
28
- anchorLeft: anchor ? toWebAnchor(anchor.x) : undefined,
29
- anchorTop: anchor ? toWebAnchor(anchor.y) : undefined,
30
- children: children
31
- });
8
+ const createEvent = (e, coordinate) => ({
9
+ nativeEvent: {
10
+ coordinate: {
11
+ latitude: e.latLng?.lat() ?? coordinate.latitude,
12
+ longitude: e.latLng?.lng() ?? coordinate.longitude
13
+ },
14
+ point: {
15
+ x: e.domEvent?.clientX ?? 0,
16
+ y: e.domEvent?.clientY ?? 0
17
+ }
32
18
  }
33
- }
19
+ });
20
+ export const Marker = ({
21
+ coordinate,
22
+ title,
23
+ anchor,
24
+ zIndex,
25
+ rotate,
26
+ scale,
27
+ draggable,
28
+ onPress,
29
+ onDragStart,
30
+ onDragChange,
31
+ onDragEnd,
32
+ children
33
+ }) => {
34
+ const {
35
+ moveCamera
36
+ } = useMapContext();
37
+ const dragPositionRef = useRef(null);
38
+ const transforms = [];
39
+ if (rotate) transforms.push(`rotate(${rotate}deg)`);
40
+ if (scale && scale !== 1) transforms.push(`scale(${scale})`);
41
+ const handleClick = useCallback(e => {
42
+ const pos = dragPositionRef.current;
43
+ const coord = pos ? {
44
+ latitude: pos.lat,
45
+ longitude: pos.lng
46
+ } : coordinate;
47
+ moveCamera(coord);
48
+ onPress?.(createEvent(e, coordinate));
49
+ }, [moveCamera, onPress, coordinate]);
50
+ const handleDragStart = useCallback(e => {
51
+ const latLng = e.latLng;
52
+ if (latLng) {
53
+ dragPositionRef.current = {
54
+ lat: latLng.lat(),
55
+ lng: latLng.lng()
56
+ };
57
+ }
58
+ onDragStart?.(createEvent(e, coordinate));
59
+ }, [onDragStart, coordinate]);
60
+ const handleDrag = useCallback(e => {
61
+ const latLng = e.latLng;
62
+ if (latLng) {
63
+ dragPositionRef.current = {
64
+ lat: latLng.lat(),
65
+ lng: latLng.lng()
66
+ };
67
+ }
68
+ onDragChange?.(createEvent(e, coordinate));
69
+ }, [onDragChange, coordinate]);
70
+ const handleDragEnd = useCallback(e => {
71
+ const latLng = e.latLng;
72
+ if (latLng) {
73
+ dragPositionRef.current = {
74
+ lat: latLng.lat(),
75
+ lng: latLng.lng()
76
+ };
77
+ }
78
+ onDragEnd?.(createEvent(e, coordinate));
79
+ }, [onDragEnd, coordinate]);
80
+ useEffect(() => {
81
+ dragPositionRef.current = null;
82
+ }, [coordinate.latitude, coordinate.longitude]);
83
+ const position = dragPositionRef.current ?? {
84
+ lat: coordinate.latitude,
85
+ lng: coordinate.longitude
86
+ };
87
+ return /*#__PURE__*/_jsx(AdvancedMarker, {
88
+ position: position,
89
+ title: title,
90
+ zIndex: zIndex,
91
+ anchorLeft: anchor ? toWebAnchor(anchor.x) : undefined,
92
+ anchorTop: anchor ? toWebAnchor(anchor.y) : undefined,
93
+ clickable: true,
94
+ draggable: draggable,
95
+ onClick: handleClick,
96
+ onDragStart: handleDragStart,
97
+ onDrag: handleDrag,
98
+ onDragEnd: handleDragEnd,
99
+ style: transforms.length > 0 ? {
100
+ transform: transforms.join(' ')
101
+ } : undefined,
102
+ children: children
103
+ });
104
+ };
34
105
  //# sourceMappingURL=Marker.web.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","AdvancedMarker","jsx","_jsx","toWebAnchor","value","Marker","Component","render","coordinate","title","anchor","zIndex","children","props","position","lat","latitude","lng","longitude","anchorLeft","x","undefined","anchorTop","y"],"sourceRoot":"../../../src","sources":["components/Marker.web.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,QAAQ,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG3D;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAIC,KAAa,IAAK,IAAIA,KAAK,GAAG,GAAG,GAAG;AAEzD,OAAO,MAAMC,MAAM,SAASN,KAAK,CAACO,SAAS,CAAc;EACvDC,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEC,UAAU;MAAEC,KAAK;MAAEC,MAAM;MAAEC,MAAM;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACC,KAAK;IAElE,MAAMC,QAAQ,GAAG;MACfC,GAAG,EAAEP,UAAU,CAACQ,QAAQ;MACxBC,GAAG,EAAET,UAAU,CAACU;IAClB,CAAC;IAED,oBACEhB,IAAA,CAACF,cAAc;MACbc,QAAQ,EAAEA,QAAS;MACnBL,KAAK,EAAEA,KAAM;MACbE,MAAM,EAAEA,MAAO;MACfQ,UAAU,EAAET,MAAM,GAAGP,WAAW,CAACO,MAAM,CAACU,CAAC,CAAC,GAAGC,SAAU;MACvDC,SAAS,EAAEZ,MAAM,GAAGP,WAAW,CAACO,MAAM,CAACa,CAAC,CAAC,GAAGF,SAAU;MAAAT,QAAA,EAErDA;IAAQ,CACK,CAAC;EAErB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useRef","AdvancedMarker","useMapContext","jsx","_jsx","toWebAnchor","value","createEvent","e","coordinate","nativeEvent","latitude","latLng","lat","longitude","lng","point","x","domEvent","clientX","y","clientY","Marker","title","anchor","zIndex","rotate","scale","draggable","onPress","onDragStart","onDragChange","onDragEnd","children","moveCamera","dragPositionRef","transforms","push","handleClick","pos","current","coord","handleDragStart","handleDrag","handleDragEnd","position","anchorLeft","undefined","anchorTop","clickable","onClick","onDrag","style","length","transform","join"],"sourceRoot":"../../../src","sources":["components/Marker.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { StyleSheet } from 'react-native';
5
+ import LuggPolygonViewNativeComponent from '../fabric/LuggPolygonViewNativeComponent';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export class Polygon extends React.PureComponent {
8
+ getStyle(zIndex) {
9
+ if (zIndex == null) return styles.polygon;
10
+ if (zIndex !== this._cachedZIndex) {
11
+ this._cachedZIndex = zIndex;
12
+ this._cachedStyle = [{
13
+ zIndex
14
+ }, styles.polygon];
15
+ }
16
+ return this._cachedStyle;
17
+ }
18
+ render() {
19
+ const {
20
+ coordinates,
21
+ holes,
22
+ strokeColor,
23
+ strokeWidth,
24
+ fillColor,
25
+ zIndex,
26
+ onPress
27
+ } = this.props;
28
+ return /*#__PURE__*/_jsx(LuggPolygonViewNativeComponent, {
29
+ style: this.getStyle(zIndex),
30
+ coordinates: coordinates,
31
+ holes: holes,
32
+ strokeColor: strokeColor,
33
+ strokeWidth: strokeWidth,
34
+ fillColor: fillColor,
35
+ tappable: !!onPress,
36
+ onPolygonPress: onPress
37
+ });
38
+ }
39
+ }
40
+ const styles = StyleSheet.create({
41
+ polygon: {
42
+ position: 'absolute',
43
+ pointerEvents: 'none'
44
+ }
45
+ });
46
+ //# sourceMappingURL=Polygon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","LuggPolygonViewNativeComponent","jsx","_jsx","Polygon","PureComponent","getStyle","zIndex","styles","polygon","_cachedZIndex","_cachedStyle","render","coordinates","holes","strokeColor","strokeWidth","fillColor","onPress","props","style","tappable","onPolygonPress","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Polygon.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,8BAA8B,MAAM,0CAA0C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAKtF,OAAO,MAAMC,OAAO,SAASL,KAAK,CAACM,aAAa,CAAe;EAIrDC,QAAQA,CAACC,MAA0B,EAAE;IAC3C,IAAIA,MAAM,IAAI,IAAI,EAAE,OAAOC,MAAM,CAACC,OAAO;IACzC,IAAIF,MAAM,KAAK,IAAI,CAACG,aAAa,EAAE;MACjC,IAAI,CAACA,aAAa,GAAGH,MAAM;MAC3B,IAAI,CAACI,YAAY,GAAG,CAAC;QAAEJ;MAAO,CAAC,EAAEC,MAAM,CAACC,OAAO,CAAC;IAClD;IACA,OAAO,IAAI,CAACE,YAAY;EAC1B;EAEAC,MAAMA,CAAA,EAAG;IACP,MAAM;MACJC,WAAW;MACXC,KAAK;MACLC,WAAW;MACXC,WAAW;MACXC,SAAS;MACTV,MAAM;MACNW;IACF,CAAC,GAAG,IAAI,CAACC,KAAK;IAEd,oBACEhB,IAAA,CAACF,8BAA8B;MAC7BmB,KAAK,EAAE,IAAI,CAACd,QAAQ,CAACC,MAAM,CAAE;MAC7BM,WAAW,EAAEA,WAAY;MACzBC,KAAK,EAAEA,KAAM;MACbC,WAAW,EAAEA,WAAY;MACzBC,WAAW,EAAEA,WAAY;MACzBC,SAAS,EAAEA,SAAU;MACrBI,QAAQ,EAAE,CAAC,CAACH,OAAQ;MACpBI,cAAc,EAAEJ;IAAQ,CACzB,CAAC;EAEN;AACF;AAEA,MAAMV,MAAM,GAAGR,UAAU,CAACuB,MAAM,CAAC;EAC/Bd,OAAO,EAAE;IACPe,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=Polygon.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["components/Polygon.types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ import { useCallback, useEffect, useRef } from 'react';
4
+ import { useMapContext } from "../MapProvider.web.js";
5
+ export const Polygon = ({
6
+ coordinates,
7
+ holes,
8
+ strokeColor = '#000000',
9
+ strokeWidth = 1,
10
+ fillColor = 'rgba(0, 0, 0, 0.3)',
11
+ zIndex = 0,
12
+ onPress
13
+ }) => {
14
+ const {
15
+ map
16
+ } = useMapContext();
17
+ const polygonRef = useRef(null);
18
+ const listenersRef = useRef([]);
19
+ const handleClick = useCallback(() => {
20
+ onPress?.();
21
+ }, [onPress]);
22
+
23
+ // Cleanup on unmount
24
+ useEffect(() => {
25
+ return () => {
26
+ listenersRef.current.forEach(l => l.remove());
27
+ listenersRef.current = [];
28
+ polygonRef.current?.setMap(null);
29
+ polygonRef.current = null;
30
+ };
31
+ }, []);
32
+
33
+ // Sync listeners
34
+ useEffect(() => {
35
+ const polygon = polygonRef.current;
36
+ if (!polygon) return;
37
+ listenersRef.current.forEach(l => l.remove());
38
+ listenersRef.current = [];
39
+ if (onPress) {
40
+ listenersRef.current.push(polygon.addListener('click', handleClick));
41
+ }
42
+ polygon.set('clickable', !!onPress);
43
+ }, [onPress, handleClick]);
44
+
45
+ // Sync polygon with props
46
+ useEffect(() => {
47
+ if (!map || coordinates.length === 0) {
48
+ polygonRef.current?.setMap(null);
49
+ return;
50
+ }
51
+ const outerPath = coordinates.map(c => ({
52
+ lat: c.latitude,
53
+ lng: c.longitude
54
+ }));
55
+ const paths = [outerPath, ...(holes ?? []).map(hole => [...hole].reverse().map(c => ({
56
+ lat: c.latitude,
57
+ lng: c.longitude
58
+ })))];
59
+ if (polygonRef.current) {
60
+ polygonRef.current.setPaths(paths);
61
+ polygonRef.current.setOptions({
62
+ strokeColor: strokeColor,
63
+ strokeWeight: strokeWidth,
64
+ fillColor: fillColor,
65
+ zIndex
66
+ });
67
+ } else {
68
+ const polygon = new google.maps.Polygon({
69
+ paths,
70
+ strokeColor: strokeColor,
71
+ strokeWeight: strokeWidth,
72
+ strokeOpacity: 1,
73
+ fillColor: fillColor,
74
+ fillOpacity: 1,
75
+ zIndex,
76
+ clickable: !!onPress,
77
+ map
78
+ });
79
+ polygonRef.current = polygon;
80
+ if (onPress) {
81
+ listenersRef.current.push(polygon.addListener('click', handleClick));
82
+ }
83
+ }
84
+ }, [map, coordinates, holes, strokeColor, strokeWidth, fillColor, zIndex, onPress, handleClick]);
85
+ return null;
86
+ };
87
+ //# sourceMappingURL=Polygon.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useEffect","useRef","useMapContext","Polygon","coordinates","holes","strokeColor","strokeWidth","fillColor","zIndex","onPress","map","polygonRef","listenersRef","handleClick","current","forEach","l","remove","setMap","polygon","push","addListener","set","length","outerPath","c","lat","latitude","lng","longitude","paths","hole","reverse","setPaths","setOptions","strokeWeight","google","maps","strokeOpacity","fillOpacity","clickable"],"sourceRoot":"../../../src","sources":["components/Polygon.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,20 +4,33 @@ import React from 'react';
4
4
  import { StyleSheet } from 'react-native';
5
5
  import LuggPolylineViewNativeComponent from '../fabric/LuggPolylineViewNativeComponent';
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
- export class Polyline extends React.Component {
7
+ export class Polyline extends React.PureComponent {
8
+ getStyle(zIndex) {
9
+ if (zIndex == null) return styles.polyline;
10
+ if (zIndex !== this._cachedZIndex) {
11
+ this._cachedZIndex = zIndex;
12
+ this._cachedStyle = [{
13
+ zIndex
14
+ }, styles.polyline];
15
+ }
16
+ return this._cachedStyle;
17
+ }
8
18
  render() {
9
19
  const {
10
20
  coordinates,
11
21
  strokeColors,
12
22
  strokeWidth,
13
- animated = false
23
+ animated = false,
24
+ animatedOptions,
25
+ zIndex
14
26
  } = this.props;
15
27
  return /*#__PURE__*/_jsx(LuggPolylineViewNativeComponent, {
16
- style: styles.polyline,
28
+ style: this.getStyle(zIndex),
17
29
  coordinates: coordinates,
18
30
  strokeColors: strokeColors,
19
31
  strokeWidth: strokeWidth,
20
- animated: animated
32
+ animated: animated,
33
+ animatedOptions: animatedOptions
21
34
  });
22
35
  }
23
36
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","LuggPolylineViewNativeComponent","jsx","_jsx","Polyline","Component","render","coordinates","strokeColors","strokeWidth","animated","props","style","styles","polyline","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Polyline.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,+BAA+B,MAAM,2CAA2C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAsBxF,OAAO,MAAMC,QAAQ,SAASL,KAAK,CAACM,SAAS,CAAgB;EAC3DC,MAAMA,CAAA,EAAG;IACP,MAAM;MACJC,WAAW;MACXC,YAAY;MACZC,WAAW;MACXC,QAAQ,GAAG;IACb,CAAC,GAAG,IAAI,CAACC,KAAK;IAEd,oBACER,IAAA,CAACF,+BAA+B;MAC9BW,KAAK,EAAEC,MAAM,CAACC,QAAS;MACvBP,WAAW,EAAEA,WAAY;MACzBC,YAAY,EAAEA,YAAa;MAC3BC,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA;IAAS,CACpB,CAAC;EAEN;AACF;AAEA,MAAMG,MAAM,GAAGb,UAAU,CAACe,MAAM,CAAC;EAC/BD,QAAQ,EAAE;IACRE,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","LuggPolylineViewNativeComponent","jsx","_jsx","Polyline","PureComponent","getStyle","zIndex","styles","polyline","_cachedZIndex","_cachedStyle","render","coordinates","strokeColors","strokeWidth","animated","animatedOptions","props","style","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Polyline.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,+BAA+B,MAAM,2CAA2C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASxF,OAAO,MAAMC,QAAQ,SAASL,KAAK,CAACM,aAAa,CAAgB;EACvDC,QAAQA,CAACC,MAA0B,EAAE;IAC3C,IAAIA,MAAM,IAAI,IAAI,EAAE,OAAOC,MAAM,CAACC,QAAQ;IAC1C,IAAIF,MAAM,KAAK,IAAI,CAACG,aAAa,EAAE;MACjC,IAAI,CAACA,aAAa,GAAGH,MAAM;MAC3B,IAAI,CAACI,YAAY,GAAG,CAAC;QAAEJ;MAAO,CAAC,EAAEC,MAAM,CAACC,QAAQ,CAAC;IACnD;IACA,OAAO,IAAI,CAACE,YAAY;EAC1B;EAKAC,MAAMA,CAAA,EAAG;IACP,MAAM;MACJC,WAAW;MACXC,YAAY;MACZC,WAAW;MACXC,QAAQ,GAAG,KAAK;MAChBC,eAAe;MACfV;IACF,CAAC,GAAG,IAAI,CAACW,KAAK;IAEd,oBACEf,IAAA,CAACF,+BAA+B;MAC9BkB,KAAK,EAAE,IAAI,CAACb,QAAQ,CAACC,MAAM,CAAE;MAC7BM,WAAW,EAAEA,WAAY;MACzBC,YAAY,EAAEA,YAAa;MAC3BC,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA,QAAS;MACnBC,eAAe,EAAEA;IAAgB,CAClC,CAAC;EAEN;AACF;AAEA,MAAMT,MAAM,GAAGR,UAAU,CAACoB,MAAM,CAAC;EAC/BX,QAAQ,EAAE;IACRY,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=Polyline.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["components/Polyline.types.ts"],"mappings":"","ignoreList":[]}