@inlog/inlog-maps 4.9.4 → 5.0.1
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.
- package/DOCUMENTATION.md +1 -1
- package/_bundles/inlog-maps.js +256 -77
- package/_bundles/inlog-maps.js.map +1 -1
- package/_bundles/inlog-maps.min.js +1 -1
- package/_bundles/inlog-maps.min.js.map +1 -1
- package/lib/models/apis/google/google-polygons.d.ts +10 -0
- package/lib/models/apis/google/google-polygons.js +102 -31
- package/lib/models/apis/google/google-polygons.js.map +1 -1
- package/lib/models/apis/google/google-polylines.d.ts +1 -0
- package/lib/models/apis/google/google-polylines.js +25 -10
- package/lib/models/apis/google/google-polylines.js.map +1 -1
- package/lib/models/apis/leaflet/leaflet-polygons.d.ts +5 -0
- package/lib/models/apis/leaflet/leaflet-polygons.js +97 -23
- package/lib/models/apis/leaflet/leaflet-polygons.js.map +1 -1
- package/lib/models/apis/leaflet/leaflet-polylines.d.ts +1 -0
- package/lib/models/apis/leaflet/leaflet-polylines.js +23 -7
- package/lib/models/apis/leaflet/leaflet-polylines.js.map +1 -1
- package/lib/models/dto/event-type.d.ts +8 -5
- package/lib/models/dto/event-type.js +7 -4
- package/lib/models/dto/event-type.js.map +1 -1
- package/lib/utils/maps-api-loader.service.js +2 -2
- package/lib/utils/maps-api-loader.service.js.map +1 -1
- package/lib-esm/models/apis/google/google-polygons.d.ts +10 -0
- package/lib-esm/models/apis/google/google-polygons.js +102 -31
- package/lib-esm/models/apis/google/google-polygons.js.map +1 -1
- package/lib-esm/models/apis/google/google-polylines.d.ts +1 -0
- package/lib-esm/models/apis/google/google-polylines.js +25 -10
- package/lib-esm/models/apis/google/google-polylines.js.map +1 -1
- package/lib-esm/models/apis/leaflet/leaflet-polygons.d.ts +5 -0
- package/lib-esm/models/apis/leaflet/leaflet-polygons.js +97 -23
- package/lib-esm/models/apis/leaflet/leaflet-polygons.js.map +1 -1
- package/lib-esm/models/apis/leaflet/leaflet-polylines.d.ts +1 -0
- package/lib-esm/models/apis/leaflet/leaflet-polylines.js +23 -7
- package/lib-esm/models/apis/leaflet/leaflet-polylines.js.map +1 -1
- package/lib-esm/models/dto/event-type.d.ts +8 -5
- package/lib-esm/models/dto/event-type.js +7 -4
- package/lib-esm/models/dto/event-type.js.map +1 -1
- package/lib-esm/utils/maps-api-loader.service.js +2 -2
- package/lib-esm/utils/maps-api-loader.service.js.map +1 -1
- package/package.json +1 -1
package/DOCUMENTATION.md
CHANGED
package/_bundles/inlog-maps.js
CHANGED
|
@@ -120,15 +120,18 @@ var CircleEventType;
|
|
|
120
120
|
})(CircleEventType = exports.CircleEventType || (exports.CircleEventType = {}));
|
|
121
121
|
var PolygonEventType;
|
|
122
122
|
(function (PolygonEventType) {
|
|
123
|
-
PolygonEventType[PolygonEventType["
|
|
124
|
-
PolygonEventType[PolygonEventType["
|
|
125
|
-
PolygonEventType[PolygonEventType["
|
|
123
|
+
PolygonEventType[PolygonEventType["SetAt"] = 0] = "SetAt";
|
|
124
|
+
PolygonEventType[PolygonEventType["InsertAt"] = 1] = "InsertAt";
|
|
125
|
+
PolygonEventType[PolygonEventType["RemoveAt"] = 2] = "RemoveAt";
|
|
126
|
+
PolygonEventType[PolygonEventType["DragPolygon"] = 3] = "DragPolygon";
|
|
127
|
+
PolygonEventType[PolygonEventType["Click"] = 4] = "Click";
|
|
126
128
|
})(PolygonEventType = exports.PolygonEventType || (exports.PolygonEventType = {}));
|
|
127
129
|
var PolylineEventType;
|
|
128
130
|
(function (PolylineEventType) {
|
|
129
|
-
PolylineEventType[PolylineEventType["
|
|
131
|
+
PolylineEventType[PolylineEventType["SetAt"] = 0] = "SetAt";
|
|
130
132
|
PolylineEventType[PolylineEventType["InsertAt"] = 1] = "InsertAt";
|
|
131
133
|
PolylineEventType[PolylineEventType["RemoveAt"] = 2] = "RemoveAt";
|
|
134
|
+
PolylineEventType[PolylineEventType["DragPolyline"] = 3] = "DragPolyline";
|
|
132
135
|
})(PolylineEventType = exports.PolylineEventType || (exports.PolylineEventType = {}));
|
|
133
136
|
|
|
134
137
|
|
|
@@ -238,14 +241,14 @@ var MapsApiLoaderService = /** @class */ (function () {
|
|
|
238
241
|
MapsApiLoaderService.loadLeafletAPI = function (params) {
|
|
239
242
|
var link = document.createElement('link');
|
|
240
243
|
link.rel = 'stylesheet';
|
|
241
|
-
link.href = 'https://
|
|
244
|
+
link.href = 'https://desenvolvimentoweb.blob.core.windows.net/inlog-leaflet/leaflet.css';
|
|
242
245
|
// link.integrity = params.cssIntegrity;
|
|
243
246
|
// link.setAttribute('crossorigin', params.crossorigin);
|
|
244
247
|
document.querySelector('head').appendChild(link);
|
|
245
248
|
var script = document.createElement('script');
|
|
246
249
|
script.type = 'text/javascript';
|
|
247
250
|
script.src = url_builder_1.urlBuilder({
|
|
248
|
-
base: 'https://
|
|
251
|
+
base: 'https://desenvolvimentoweb.blob.core.windows.net/inlog-leaflet/leaflet.js',
|
|
249
252
|
callback: 'mapsAPILoadCallback',
|
|
250
253
|
});
|
|
251
254
|
document.querySelector('head').appendChild(script);
|
|
@@ -4110,13 +4113,8 @@ var GooglePolygons = /** @class */ (function () {
|
|
|
4110
4113
|
}
|
|
4111
4114
|
GooglePolygons.prototype.drawPolygon = function (options, eventClick) {
|
|
4112
4115
|
var self = this;
|
|
4113
|
-
var paths =
|
|
4114
|
-
|
|
4115
|
-
paths.push({
|
|
4116
|
-
lat: path[0],
|
|
4117
|
-
lng: path[1]
|
|
4118
|
-
});
|
|
4119
|
-
});
|
|
4116
|
+
var paths = this.getPathRecursiveArray(options.path);
|
|
4117
|
+
paths = this.getPathPolylineArray(paths);
|
|
4120
4118
|
var newOptions = {
|
|
4121
4119
|
draggable: options.draggable,
|
|
4122
4120
|
editable: options.editable,
|
|
@@ -4184,31 +4182,26 @@ var GooglePolygons = /** @class */ (function () {
|
|
|
4184
4182
|
return !!polygon.map;
|
|
4185
4183
|
};
|
|
4186
4184
|
GooglePolygons.prototype.getPolygonPath = function (polygon) {
|
|
4187
|
-
return polygon.
|
|
4185
|
+
return polygon.getPaths().getArray().map(function (x) { return x.getArray().map(function (y) { return new event_return_1.default([y.lat(), y.lng()]); }); });
|
|
4188
4186
|
};
|
|
4189
4187
|
GooglePolygons.prototype.addPolygonEvent = function (polygons, eventType, eventFunction) {
|
|
4190
4188
|
var _this = this;
|
|
4191
4189
|
polygons.forEach(function (polygon) {
|
|
4192
4190
|
switch (eventType) {
|
|
4193
|
-
case event_type_1.PolygonEventType.
|
|
4194
|
-
_this.
|
|
4195
|
-
var param = new event_return_1.default([polygon.getPath()
|
|
4196
|
-
.getAt(event).lat(), polygon.getPath().getAt(event).lng()]);
|
|
4197
|
-
eventFunction(param, polygon.getPath().getArray().map(function (x) { return [x.lat(), x.lng()]; }), polygon.object);
|
|
4198
|
-
});
|
|
4191
|
+
case event_type_1.PolygonEventType.SetAt:
|
|
4192
|
+
_this.addPolygonEventMove(polygon, eventFunction);
|
|
4199
4193
|
break;
|
|
4200
4194
|
case event_type_1.PolygonEventType.InsertAt:
|
|
4201
|
-
_this.
|
|
4202
|
-
|
|
4203
|
-
|
|
4204
|
-
|
|
4205
|
-
|
|
4195
|
+
_this.addPolygonEventInsertAt(polygon, eventFunction);
|
|
4196
|
+
break;
|
|
4197
|
+
case event_type_1.PolygonEventType.RemoveAt:
|
|
4198
|
+
_this.addPolygonEventRemoveAt(polygon, eventFunction);
|
|
4199
|
+
break;
|
|
4200
|
+
case event_type_1.PolygonEventType.DragPolygon:
|
|
4201
|
+
_this.addPolygonEventDragPolygon(polygon, eventFunction);
|
|
4206
4202
|
break;
|
|
4207
4203
|
case event_type_1.PolygonEventType.Click:
|
|
4208
|
-
_this.
|
|
4209
|
-
var param = new event_return_1.default([event.latLng.lat(), event.latLng.lng()]);
|
|
4210
|
-
eventFunction(param, polygon.object);
|
|
4211
|
-
});
|
|
4204
|
+
_this.addPolygonEventClick(polygon, eventFunction);
|
|
4212
4205
|
break;
|
|
4213
4206
|
default:
|
|
4214
4207
|
break;
|
|
@@ -4219,11 +4212,18 @@ var GooglePolygons = /** @class */ (function () {
|
|
|
4219
4212
|
var _this = this;
|
|
4220
4213
|
polygons.forEach(function (polygon) {
|
|
4221
4214
|
switch (event) {
|
|
4222
|
-
case event_type_1.PolygonEventType.
|
|
4223
|
-
_this.google.maps.event.clearListeners(polygon.
|
|
4215
|
+
case event_type_1.PolygonEventType.SetAt:
|
|
4216
|
+
_this.google.maps.event.clearListeners(polygon.getPaths(), 'set_at');
|
|
4224
4217
|
break;
|
|
4225
4218
|
case event_type_1.PolygonEventType.InsertAt:
|
|
4226
|
-
_this.google.maps.event.clearListeners(polygon.
|
|
4219
|
+
_this.google.maps.event.clearListeners(polygon.getPaths(), 'insert_at');
|
|
4220
|
+
break;
|
|
4221
|
+
case event_type_1.PolygonEventType.RemoveAt:
|
|
4222
|
+
_this.google.maps.event.clearListeners(polygon.getPaths(), 'remove_at');
|
|
4223
|
+
break;
|
|
4224
|
+
case event_type_1.PolygonEventType.DragPolygon:
|
|
4225
|
+
_this.google.maps.event.clearListeners(polygon, 'dragstart');
|
|
4226
|
+
_this.google.maps.event.clearListeners(polygon, 'dragend');
|
|
4227
4227
|
break;
|
|
4228
4228
|
case event_type_1.PolygonEventType.Click:
|
|
4229
4229
|
_this.google.maps.event.clearListeners(polygon, 'click');
|
|
@@ -4237,19 +4237,93 @@ var GooglePolygons = /** @class */ (function () {
|
|
|
4237
4237
|
var bounds = new this.google.maps.LatLngBounds();
|
|
4238
4238
|
polygons.forEach(function (polygon) {
|
|
4239
4239
|
var paths = polygon.getPaths().getArray();
|
|
4240
|
-
paths.forEach(function (path) { return path.getArray()
|
|
4241
|
-
.forEach(function (x) { return bounds.extend(x); }); });
|
|
4240
|
+
paths.forEach(function (path) { return path.getArray().forEach(function (x) { return bounds.extend(x); }); });
|
|
4242
4241
|
});
|
|
4243
4242
|
return bounds;
|
|
4244
4243
|
};
|
|
4245
4244
|
GooglePolygons.prototype.getPolygonBounds = function (polygon) {
|
|
4246
4245
|
var bounds = new this.google.maps.LatLngBounds();
|
|
4247
4246
|
var paths = polygon.getPaths().getArray();
|
|
4248
|
-
paths.forEach(function (path) {
|
|
4249
|
-
path.getArray().forEach(function (x) { return bounds.extend(x); });
|
|
4250
|
-
});
|
|
4247
|
+
paths.forEach(function (path) { return path.getArray().forEach(function (x) { return bounds.extend(x); }); });
|
|
4251
4248
|
return bounds;
|
|
4252
4249
|
};
|
|
4250
|
+
GooglePolygons.prototype.addPolygonEventMove = function (polygon, eventFunction) {
|
|
4251
|
+
var polygonPathIdx = polygon.getPaths().getLength();
|
|
4252
|
+
for (var index = 0; index < polygonPathIdx; index++) {
|
|
4253
|
+
this.addPolygonEventMoveAllPaths(polygon, polygon.getPaths().getAt(index), eventFunction);
|
|
4254
|
+
}
|
|
4255
|
+
};
|
|
4256
|
+
GooglePolygons.prototype.addPolygonEventMoveAllPaths = function (polygon, innerPolygon, eventFunction) {
|
|
4257
|
+
this.google.maps.event.addListener(innerPolygon, 'set_at', function (newEvent, lastEvent) {
|
|
4258
|
+
if (polygon.dragging)
|
|
4259
|
+
return;
|
|
4260
|
+
var path = innerPolygon.getAt(newEvent);
|
|
4261
|
+
var newPosition = new event_return_1.default([path.lat(), path.lng()]);
|
|
4262
|
+
var lastPosition = new event_return_1.default([lastEvent.lat(), lastEvent.lng()]);
|
|
4263
|
+
eventFunction(newPosition, lastPosition, polygon.object, newEvent, polygon.getPaths().getArray().map(function (x) { return x.getArray().map(function (y) { return new event_return_1.default([y.lat(), y.lng()]); }); }));
|
|
4264
|
+
});
|
|
4265
|
+
};
|
|
4266
|
+
GooglePolygons.prototype.addPolygonEventInsertAt = function (polygon, eventFunction) {
|
|
4267
|
+
var polygonPathIdx = polygon.getPaths().getLength();
|
|
4268
|
+
for (var index = 0; index < polygonPathIdx; index++) {
|
|
4269
|
+
this.addPolygonEventInsertAtAllPaths(polygon, polygon.getPaths().getAt(index), eventFunction);
|
|
4270
|
+
}
|
|
4271
|
+
};
|
|
4272
|
+
GooglePolygons.prototype.addPolygonEventInsertAtAllPaths = function (polygon, innerPolygon, eventFunction) {
|
|
4273
|
+
this.google.maps.event.addListener(innerPolygon, 'insert_at', function (event) {
|
|
4274
|
+
var newPath = innerPolygon.getAt(event);
|
|
4275
|
+
var newPoint = new event_return_1.default([newPath.lat(), newPath.lng()]);
|
|
4276
|
+
var previousPath = innerPolygon.getAt(event - 1);
|
|
4277
|
+
var previousPoint = previousPath ? new event_return_1.default([previousPath.lat(), previousPath.lng()]) : null;
|
|
4278
|
+
eventFunction(newPoint, previousPoint, polygon.object, event, polygon.getPaths().getArray().map(function (x) { return x.getArray().map(function (y) { return new event_return_1.default([y.lat(), y.lng()]); }); }));
|
|
4279
|
+
});
|
|
4280
|
+
};
|
|
4281
|
+
GooglePolygons.prototype.addPolygonEventRemoveAt = function (polygon, eventFunction) {
|
|
4282
|
+
var polygonPathIdx = polygon.getPaths().getLength();
|
|
4283
|
+
for (var index = 0; index < polygonPathIdx; index++) {
|
|
4284
|
+
this.addPolygonEventRemoveAtAllPaths(polygon, polygon.getPaths().getAt(index), eventFunction);
|
|
4285
|
+
}
|
|
4286
|
+
};
|
|
4287
|
+
GooglePolygons.prototype.addPolygonEventRemoveAtAllPaths = function (polygon, innerPolygon, eventFunction) {
|
|
4288
|
+
this.google.maps.event.addListener(innerPolygon, 'remove_at', function (event) {
|
|
4289
|
+
var param = new event_return_1.default([innerPolygon.getAt(event).lat(), innerPolygon.getAt(event).lng()]);
|
|
4290
|
+
eventFunction(param, polygon.getPaths().getArray().map(function (x) { return x.getArray().map(function (y) { return new event_return_1.default([y.lat(), y.lng()]); }); }), polygon.object);
|
|
4291
|
+
});
|
|
4292
|
+
};
|
|
4293
|
+
GooglePolygons.prototype.addPolygonEventDragPolygon = function (polygon, eventFunction) {
|
|
4294
|
+
this.google.maps.event.addListener(polygon, 'dragstart', function (event) {
|
|
4295
|
+
polygon.dragging = true;
|
|
4296
|
+
});
|
|
4297
|
+
this.google.maps.event.addListener(polygon, 'dragend', function (event) {
|
|
4298
|
+
polygon.dragging = false;
|
|
4299
|
+
eventFunction(polygon.getPaths().getArray().map(function (x) { return x.getArray().map(function (y) { return new event_return_1.default([y.lat(), y.lng()]); }); }), polygon.object);
|
|
4300
|
+
});
|
|
4301
|
+
};
|
|
4302
|
+
GooglePolygons.prototype.addPolygonEventClick = function (polygon, eventFunction) {
|
|
4303
|
+
this.google.maps.event.addListener(polygon, 'click', function (event) {
|
|
4304
|
+
var param = new event_return_1.default([event.latLng.lat(), event.latLng.lng()]);
|
|
4305
|
+
eventFunction(param, polygon.object);
|
|
4306
|
+
});
|
|
4307
|
+
};
|
|
4308
|
+
GooglePolygons.prototype.getPathRecursiveArray = function (path) {
|
|
4309
|
+
var _this = this;
|
|
4310
|
+
if (Array.isArray(path) && typeof path[0] !== 'number') {
|
|
4311
|
+
return path.map(function (x) { return _this.getPathRecursiveArray(x); });
|
|
4312
|
+
}
|
|
4313
|
+
else
|
|
4314
|
+
return { lat: path[0], lng: path[1] };
|
|
4315
|
+
};
|
|
4316
|
+
GooglePolygons.prototype.getPathPolylineArray = function (path) {
|
|
4317
|
+
if (typeof path[0].lat === 'number') {
|
|
4318
|
+
return path;
|
|
4319
|
+
}
|
|
4320
|
+
else if (typeof path[0][0].lat !== 'number') {
|
|
4321
|
+
path = path[0];
|
|
4322
|
+
return this.getPathPolylineArray(path);
|
|
4323
|
+
}
|
|
4324
|
+
else
|
|
4325
|
+
return path;
|
|
4326
|
+
};
|
|
4253
4327
|
return GooglePolygons;
|
|
4254
4328
|
}());
|
|
4255
4329
|
exports.default = GooglePolygons;
|
|
@@ -4447,7 +4521,7 @@ var GooglePolylines = /** @class */ (function () {
|
|
|
4447
4521
|
var _this = this;
|
|
4448
4522
|
polylines.forEach(function (polyline) {
|
|
4449
4523
|
switch (eventType) {
|
|
4450
|
-
case event_type_1.PolylineEventType.
|
|
4524
|
+
case event_type_1.PolylineEventType.SetAt:
|
|
4451
4525
|
_this.addPolylineEventMove(polyline, eventFunction);
|
|
4452
4526
|
break;
|
|
4453
4527
|
case event_type_1.PolylineEventType.InsertAt:
|
|
@@ -4456,6 +4530,9 @@ var GooglePolylines = /** @class */ (function () {
|
|
|
4456
4530
|
case event_type_1.PolylineEventType.RemoveAt:
|
|
4457
4531
|
_this.addPolylineEventRemoveAt(polyline, eventFunction);
|
|
4458
4532
|
break;
|
|
4533
|
+
case event_type_1.PolylineEventType.DragPolyline:
|
|
4534
|
+
_this.addPolylineEventDragPolyline(polyline, eventFunction);
|
|
4535
|
+
break;
|
|
4459
4536
|
default:
|
|
4460
4537
|
break;
|
|
4461
4538
|
}
|
|
@@ -4463,12 +4540,10 @@ var GooglePolylines = /** @class */ (function () {
|
|
|
4463
4540
|
};
|
|
4464
4541
|
GooglePolylines.prototype.removePolylineEvent = function (polylines, event) {
|
|
4465
4542
|
var _this = this;
|
|
4466
|
-
polylines.forEach(function (polyline) {
|
|
4467
|
-
return _this.google.maps.event.clearListeners(polyline, 'click');
|
|
4468
|
-
});
|
|
4543
|
+
polylines.forEach(function (polyline) { return _this.google.maps.event.clearListeners(polyline, 'click'); });
|
|
4469
4544
|
polylines.forEach(function (polyline) {
|
|
4470
4545
|
switch (event) {
|
|
4471
|
-
case event_type_1.PolylineEventType.
|
|
4546
|
+
case event_type_1.PolylineEventType.SetAt:
|
|
4472
4547
|
_this.google.maps.event.clearListeners(polyline.getPath(), 'set_at');
|
|
4473
4548
|
break;
|
|
4474
4549
|
case event_type_1.PolylineEventType.InsertAt:
|
|
@@ -4477,6 +4552,10 @@ var GooglePolylines = /** @class */ (function () {
|
|
|
4477
4552
|
case event_type_1.PolylineEventType.RemoveAt:
|
|
4478
4553
|
_this.google.maps.event.clearListeners(polyline.getPath(), 'remove_at');
|
|
4479
4554
|
break;
|
|
4555
|
+
case event_type_1.PolylineEventType.DragPolyline:
|
|
4556
|
+
_this.google.maps.event.clearListeners(polyline, 'dragstart');
|
|
4557
|
+
_this.google.maps.event.clearListeners(polyline, 'dragend');
|
|
4558
|
+
break;
|
|
4480
4559
|
default:
|
|
4481
4560
|
break;
|
|
4482
4561
|
}
|
|
@@ -4669,10 +4748,12 @@ var GooglePolylines = /** @class */ (function () {
|
|
|
4669
4748
|
};
|
|
4670
4749
|
GooglePolylines.prototype.addPolylineEventMove = function (polyline, eventFunction) {
|
|
4671
4750
|
polyline.moveListener = function (newEvent, lastEvent) {
|
|
4751
|
+
if (polyline.dragging)
|
|
4752
|
+
return;
|
|
4672
4753
|
var path = polyline.getPath().getAt(newEvent);
|
|
4673
4754
|
var newPosition = new event_return_1.default([path.lat(), path.lng()]);
|
|
4674
4755
|
var lastPosition = new event_return_1.default([lastEvent.lat(), lastEvent.lng()]);
|
|
4675
|
-
eventFunction(newPosition, lastPosition, polyline.object, newEvent);
|
|
4756
|
+
eventFunction(newPosition, lastPosition, polyline.object, newEvent, polyline.getPath().getArray().map(function (x) { return new event_return_1.default([x.lat(), x.lng()]); }));
|
|
4676
4757
|
};
|
|
4677
4758
|
this.google.maps.event.addListener(polyline.getPath(), 'set_at', polyline.moveListener);
|
|
4678
4759
|
};
|
|
@@ -4683,18 +4764,26 @@ var GooglePolylines = /** @class */ (function () {
|
|
|
4683
4764
|
var newPoint = new event_return_1.default([newPath.lat(), newPath.lng()]);
|
|
4684
4765
|
var previousPath = path.getAt(event - 1);
|
|
4685
4766
|
var previousPoint = previousPath ? new event_return_1.default([previousPath.lat(), previousPath.lng()]) : null;
|
|
4686
|
-
eventFunction(newPoint, previousPoint, polyline.object, event);
|
|
4767
|
+
eventFunction(newPoint, previousPoint, polyline.object, event, polyline.getPath().getArray().map(function (x) { return new event_return_1.default([x.lat(), x.lng()]); }));
|
|
4687
4768
|
};
|
|
4688
4769
|
this.google.maps.event.addListener(polyline.getPath(), 'insert_at', polyline.insertAtListener);
|
|
4689
4770
|
};
|
|
4690
4771
|
GooglePolylines.prototype.addPolylineEventRemoveAt = function (polyline, eventFunction) {
|
|
4691
4772
|
polyline.removeAtListener = function (event) {
|
|
4692
|
-
var param = new event_return_1.default([polyline.getPath().getAt(event).lat(),
|
|
4693
|
-
|
|
4694
|
-
eventFunction(param);
|
|
4773
|
+
var param = new event_return_1.default([polyline.getPath().getAt(event).lat(), polyline.getPath().getAt(event).lng()]);
|
|
4774
|
+
eventFunction(param, polyline.object, polyline.getPath().getArray().map(function (x) { return new event_return_1.default([x.lat(), x.lng()]); }));
|
|
4695
4775
|
};
|
|
4696
4776
|
this.google.maps.event.addListener(polyline.getPath(), 'remove_at', polyline.removeAtListener);
|
|
4697
4777
|
};
|
|
4778
|
+
GooglePolylines.prototype.addPolylineEventDragPolyline = function (polyline, eventFunction) {
|
|
4779
|
+
polyline.dragPolylineListener = function () {
|
|
4780
|
+
polyline.dragging = false;
|
|
4781
|
+
var param = polyline.getPath().getArray().map(function (x) { return new event_return_1.default([x.lat(), x.lng()]); });
|
|
4782
|
+
eventFunction(param, polyline.object);
|
|
4783
|
+
};
|
|
4784
|
+
this.google.maps.event.addListener(polyline, 'dragend', polyline.dragPolylineListener);
|
|
4785
|
+
this.google.maps.event.addListener(polyline, 'dragstart', function () { return polyline.dragging = true; });
|
|
4786
|
+
};
|
|
4698
4787
|
GooglePolylines.prototype.updateSelectedPathListeners = function () {
|
|
4699
4788
|
if (this.selectedPath.moveListener) {
|
|
4700
4789
|
this.google.maps.event.clearListeners(this.selectedPath.getPath(), 'set_at');
|
|
@@ -5910,12 +5999,10 @@ var LeafletPolygons = /** @class */ (function () {
|
|
|
5910
5999
|
}
|
|
5911
6000
|
polygon.setStyle(style);
|
|
5912
6001
|
if (options.editable !== null && options.editable !== undefined) {
|
|
6002
|
+
polygon.disableEdit();
|
|
5913
6003
|
if (options.editable) {
|
|
5914
6004
|
polygon.enableEdit();
|
|
5915
6005
|
}
|
|
5916
|
-
else {
|
|
5917
|
-
polygon.disableEdit();
|
|
5918
|
-
}
|
|
5919
6006
|
}
|
|
5920
6007
|
if (options.object) {
|
|
5921
6008
|
polygon.object = options.object;
|
|
@@ -5935,31 +6022,26 @@ var LeafletPolygons = /** @class */ (function () {
|
|
|
5935
6022
|
return polygon.getLatLngs()[0].map(function (x) { return [x.lat, x.lng]; });
|
|
5936
6023
|
};
|
|
5937
6024
|
LeafletPolygons.prototype.addPolygonEvent = function (polygons, eventType, eventFunction) {
|
|
6025
|
+
var _this = this;
|
|
5938
6026
|
var self = this;
|
|
5939
6027
|
polygons.forEach(function (polygon) {
|
|
5940
6028
|
switch (eventType) {
|
|
5941
|
-
case event_type_1.PolygonEventType.
|
|
5942
|
-
|
|
5943
|
-
var param = new event_return_1.default([event.target.getCenter().lat, event.target.getCenter().lng]);
|
|
5944
|
-
eventFunction(param, event.target.getLatLngs()[0].map(function (x) { return [x.lat, x.lng]; }, event.target.object));
|
|
5945
|
-
});
|
|
6029
|
+
case event_type_1.PolygonEventType.SetAt:
|
|
6030
|
+
_this.addPolygonEventMove(polygon, eventFunction);
|
|
5946
6031
|
break;
|
|
5947
6032
|
case event_type_1.PolygonEventType.InsertAt:
|
|
5948
|
-
|
|
5949
|
-
|
|
5950
|
-
|
|
5951
|
-
|
|
5952
|
-
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
});
|
|
6033
|
+
_this.addPolygonEventInsertAt(polygon, eventFunction);
|
|
6034
|
+
break;
|
|
6035
|
+
case event_type_1.PolygonEventType.RemoveAt:
|
|
6036
|
+
_this.addPolygonEventRemoveAt(polygon, eventFunction);
|
|
6037
|
+
break;
|
|
6038
|
+
case event_type_1.PolygonEventType.DragPolygon:
|
|
6039
|
+
_this.addPolygonEventDragPolygon(polygon, eventFunction);
|
|
5956
6040
|
break;
|
|
5957
6041
|
case event_type_1.PolygonEventType.Click:
|
|
5958
|
-
|
|
5959
|
-
|
|
5960
|
-
|
|
5961
|
-
eventFunction(param, event.target.object);
|
|
5962
|
-
});
|
|
6042
|
+
_this.addPolygonEventClick(polygon, eventFunction, self);
|
|
6043
|
+
break;
|
|
6044
|
+
default:
|
|
5963
6045
|
break;
|
|
5964
6046
|
}
|
|
5965
6047
|
});
|
|
@@ -5967,11 +6049,18 @@ var LeafletPolygons = /** @class */ (function () {
|
|
|
5967
6049
|
LeafletPolygons.prototype.removePolygonEvent = function (polygons, event) {
|
|
5968
6050
|
polygons.forEach(function (polygon) {
|
|
5969
6051
|
switch (event) {
|
|
5970
|
-
case event_type_1.PolygonEventType.
|
|
6052
|
+
case event_type_1.PolygonEventType.SetAt:
|
|
5971
6053
|
polygon.off('editable:vertex:dragstart');
|
|
5972
6054
|
break;
|
|
5973
6055
|
case event_type_1.PolygonEventType.InsertAt:
|
|
5974
|
-
polygon.off('editable:vertex:
|
|
6056
|
+
polygon.off('editable:vertex:new');
|
|
6057
|
+
break;
|
|
6058
|
+
case event_type_1.PolygonEventType.RemoveAt:
|
|
6059
|
+
polygon.off('editable:vertex:clicked');
|
|
6060
|
+
polygon.off('editable:vertex:deleted');
|
|
6061
|
+
break;
|
|
6062
|
+
case event_type_1.PolygonEventType.DragPolygon:
|
|
6063
|
+
polygon.off('dragend');
|
|
5975
6064
|
break;
|
|
5976
6065
|
case event_type_1.PolygonEventType.Click:
|
|
5977
6066
|
polygon.off('click');
|
|
@@ -5983,6 +6072,80 @@ var LeafletPolygons = /** @class */ (function () {
|
|
|
5983
6072
|
var group = new this.leaflet.FeatureGroup(polygons);
|
|
5984
6073
|
return group.getBounds();
|
|
5985
6074
|
};
|
|
6075
|
+
LeafletPolygons.prototype.addPolygonEventMove = function (polygon, eventFunction) {
|
|
6076
|
+
polygon.on('editable:vertex:dragstart', function (eventStart) {
|
|
6077
|
+
var lastPosition = new event_return_1.default([eventStart.vertex.latlng.lat, eventStart.vertex.latlng.lng]);
|
|
6078
|
+
polygon.on('editable:vertex:dragend', function (eventEnd) {
|
|
6079
|
+
var newPosition = new event_return_1.default([eventEnd.vertex.latlng.lat, eventEnd.vertex.latlng.lng]);
|
|
6080
|
+
var path = polygon.getLatLngs().map(function (x) {
|
|
6081
|
+
if (Array.isArray(x[0])) {
|
|
6082
|
+
return x.map(function (y) { return y.map(function (z) { return new event_return_1.default([z.lat, z.lng]); }); });
|
|
6083
|
+
}
|
|
6084
|
+
else {
|
|
6085
|
+
return [x.map(function (y) { return new event_return_1.default([y.lat, y.lng]); })];
|
|
6086
|
+
}
|
|
6087
|
+
});
|
|
6088
|
+
eventFunction(newPosition, lastPosition, eventEnd.target.object, eventEnd.vertex.getIndex(), path[0]);
|
|
6089
|
+
polygon.off('editable:vertex:dragend');
|
|
6090
|
+
});
|
|
6091
|
+
});
|
|
6092
|
+
};
|
|
6093
|
+
LeafletPolygons.prototype.addPolygonEventInsertAt = function (polygon, eventFunction) {
|
|
6094
|
+
polygon.on('editable:vertex:new', function (eventNew) {
|
|
6095
|
+
var latlngs = eventNew.vertex.latlngs;
|
|
6096
|
+
var previous = latlngs[latlngs.findIndex(function (x) { return x === eventNew.vertex.latlng; }) - 1];
|
|
6097
|
+
if (previous) {
|
|
6098
|
+
var previousPoint_1 = new event_return_1.default([previous.lat, previous.lng]);
|
|
6099
|
+
polygon.on('editable:vertex:dragend', function (event) {
|
|
6100
|
+
var newPoint = new event_return_1.default([event.vertex.latlng.lat, event.vertex.latlng.lng]);
|
|
6101
|
+
var path = polygon.getLatLngs().map(function (x) {
|
|
6102
|
+
if (Array.isArray(x[0])) {
|
|
6103
|
+
return x.map(function (y) { return y.map(function (z) { return new event_return_1.default([z.lat, z.lng]); }); });
|
|
6104
|
+
}
|
|
6105
|
+
else {
|
|
6106
|
+
return [x.map(function (y) { return new event_return_1.default([y.lat, y.lng]); })];
|
|
6107
|
+
}
|
|
6108
|
+
});
|
|
6109
|
+
eventFunction(newPoint, previousPoint_1, event.target.object, event.vertex.getIndex(), path[0]);
|
|
6110
|
+
polygon.off('editable:vertex:dragend');
|
|
6111
|
+
});
|
|
6112
|
+
}
|
|
6113
|
+
});
|
|
6114
|
+
};
|
|
6115
|
+
LeafletPolygons.prototype.addPolygonEventRemoveAt = function (polygon, eventFunction) {
|
|
6116
|
+
polygon.on('editable:vertex:deleted', function (event) {
|
|
6117
|
+
var param = new event_return_1.default([event.vertex.latlng.lat, event.vertex.latlng.lng]);
|
|
6118
|
+
var path = polygon.getLatLngs().map(function (x) {
|
|
6119
|
+
if (Array.isArray(x[0])) {
|
|
6120
|
+
return x.map(function (y) { return y.map(function (z) { return new event_return_1.default([z.lat, z.lng]); }); });
|
|
6121
|
+
}
|
|
6122
|
+
else {
|
|
6123
|
+
return [x.map(function (y) { return new event_return_1.default([y.lat, y.lng]); })];
|
|
6124
|
+
}
|
|
6125
|
+
});
|
|
6126
|
+
eventFunction(param, path[0], event.target.object);
|
|
6127
|
+
});
|
|
6128
|
+
};
|
|
6129
|
+
LeafletPolygons.prototype.addPolygonEventDragPolygon = function (polygon, eventFunction) {
|
|
6130
|
+
polygon.on('dragend', function (event) {
|
|
6131
|
+
var path = polygon.getLatLngs().map(function (x) {
|
|
6132
|
+
if (Array.isArray(x[0])) {
|
|
6133
|
+
return x.map(function (y) { return y.map(function (z) { return new event_return_1.default([z.lat, z.lng]); }); });
|
|
6134
|
+
}
|
|
6135
|
+
else {
|
|
6136
|
+
return [x.map(function (y) { return new event_return_1.default([y.lat, y.lng]); })];
|
|
6137
|
+
}
|
|
6138
|
+
});
|
|
6139
|
+
eventFunction(path[0], event.target.object);
|
|
6140
|
+
});
|
|
6141
|
+
};
|
|
6142
|
+
LeafletPolygons.prototype.addPolygonEventClick = function (polygon, eventFunction, self) {
|
|
6143
|
+
polygon.on('click', function (event) {
|
|
6144
|
+
self.leaflet.DomEvent.stopPropagation(event);
|
|
6145
|
+
var param = new event_return_1.default([event.latlng.lat, event.latlng.lng]);
|
|
6146
|
+
eventFunction(param, event.target.object);
|
|
6147
|
+
});
|
|
6148
|
+
};
|
|
5986
6149
|
return LeafletPolygons;
|
|
5987
6150
|
}());
|
|
5988
6151
|
exports.default = LeafletPolygons;
|
|
@@ -6044,6 +6207,11 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6044
6207
|
var param = new event_return_1.default([event.latlng.lat, event.latlng.lng]);
|
|
6045
6208
|
eventClick(param, event.target.object);
|
|
6046
6209
|
});
|
|
6210
|
+
polyline.on('editable:vertex:rawclick', function (event) {
|
|
6211
|
+
event.cancel();
|
|
6212
|
+
var param = new event_return_1.default([event.latlng.lat, event.latlng.lng]);
|
|
6213
|
+
eventClick(param, event.target.object);
|
|
6214
|
+
});
|
|
6047
6215
|
}
|
|
6048
6216
|
if (options.style && options.style === polyline_type_1.PolylineType.Arrow) {
|
|
6049
6217
|
var pathOptions = { fillOpacity: 1, weight: 0, color: polyline.options.color };
|
|
@@ -6200,7 +6368,7 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6200
6368
|
var _this = this;
|
|
6201
6369
|
polylines.forEach(function (polyline) {
|
|
6202
6370
|
switch (eventType) {
|
|
6203
|
-
case event_type_1.PolylineEventType.
|
|
6371
|
+
case event_type_1.PolylineEventType.SetAt:
|
|
6204
6372
|
_this.addPolylineEventMove(polyline, eventFunction);
|
|
6205
6373
|
break;
|
|
6206
6374
|
case event_type_1.PolylineEventType.InsertAt:
|
|
@@ -6209,6 +6377,9 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6209
6377
|
case event_type_1.PolylineEventType.RemoveAt:
|
|
6210
6378
|
_this.addPolylineEventRemoveAt(polyline, eventFunction);
|
|
6211
6379
|
break;
|
|
6380
|
+
case event_type_1.PolylineEventType.DragPolyline:
|
|
6381
|
+
_this.addPolylineEventDragPolyline(polyline, eventFunction);
|
|
6382
|
+
break;
|
|
6212
6383
|
default:
|
|
6213
6384
|
break;
|
|
6214
6385
|
}
|
|
@@ -6217,16 +6388,18 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6217
6388
|
LeafletPolylines.prototype.removePolylineEvent = function (polylines, event) {
|
|
6218
6389
|
polylines.forEach(function (polyline) {
|
|
6219
6390
|
switch (event) {
|
|
6220
|
-
case event_type_1.PolylineEventType.
|
|
6221
|
-
polyline.off('editable:vertex:
|
|
6391
|
+
case event_type_1.PolylineEventType.SetAt:
|
|
6392
|
+
polyline.off('editable:vertex:dragstart');
|
|
6222
6393
|
break;
|
|
6223
6394
|
case event_type_1.PolylineEventType.InsertAt:
|
|
6224
6395
|
polyline.off('editable:vertex:new');
|
|
6225
|
-
polyline.off('editable:vertex:dragend');
|
|
6226
6396
|
break;
|
|
6227
6397
|
case event_type_1.PolylineEventType.RemoveAt:
|
|
6228
6398
|
polyline.off('editable:vertex:deleted');
|
|
6229
6399
|
break;
|
|
6400
|
+
case event_type_1.PolylineEventType.DragPolyline:
|
|
6401
|
+
polyline.off('dragend');
|
|
6402
|
+
break;
|
|
6230
6403
|
default:
|
|
6231
6404
|
break;
|
|
6232
6405
|
}
|
|
@@ -6495,7 +6668,7 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6495
6668
|
self.setArrowSelectedPath();
|
|
6496
6669
|
}
|
|
6497
6670
|
var newPosition = new event_return_1.default([eventEnd.vertex.latlng.lat, eventEnd.vertex.latlng.lng]);
|
|
6498
|
-
eventFunction(newPosition, lastPosition, eventEnd.target.object, eventEnd.vertex.getIndex());
|
|
6671
|
+
eventFunction(newPosition, lastPosition, eventEnd.target.object, eventEnd.vertex.getIndex(), polyline.getLatLngs().map(function (x) { return new event_return_1.default([x.lat, x.lng]); }));
|
|
6499
6672
|
polyline.off('editable:vertex:dragend');
|
|
6500
6673
|
});
|
|
6501
6674
|
});
|
|
@@ -6512,7 +6685,7 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6512
6685
|
self.setArrowSelectedPath();
|
|
6513
6686
|
}
|
|
6514
6687
|
var newPoint = new event_return_1.default([event.vertex.latlng.lat, event.vertex.latlng.lng]);
|
|
6515
|
-
eventFunction(newPoint, previousPoint, event.target.object, event.vertex.getIndex());
|
|
6688
|
+
eventFunction(newPoint, previousPoint, event.target.object, event.vertex.getIndex(), polyline.getLatLngs().map(function (x) { return new event_return_1.default([x.lat, x.lng]); }));
|
|
6516
6689
|
polyline.off('editable:vertex:dragend');
|
|
6517
6690
|
});
|
|
6518
6691
|
});
|
|
@@ -6520,7 +6693,13 @@ var LeafletPolylines = /** @class */ (function () {
|
|
|
6520
6693
|
LeafletPolylines.prototype.addPolylineEventRemoveAt = function (polyline, eventFunction) {
|
|
6521
6694
|
polyline.on('editable:vertex:deleted', function (event) {
|
|
6522
6695
|
var param = new event_return_1.default([event.vertex.latlng.lat, event.vertex.latlng.lng]);
|
|
6523
|
-
eventFunction(param);
|
|
6696
|
+
eventFunction(param, event.target.object, polyline.getLatLngs().map(function (x) { return new event_return_1.default([x.lat, x.lng]); }));
|
|
6697
|
+
});
|
|
6698
|
+
};
|
|
6699
|
+
LeafletPolylines.prototype.addPolylineEventDragPolyline = function (polyline, eventFunction) {
|
|
6700
|
+
polyline.on('dragend', function (event) {
|
|
6701
|
+
var param = event.target.getLatLngs().map(function (x) { return new event_return_1.default([x.lat, x.lng]); });
|
|
6702
|
+
eventFunction(param, event.target.object);
|
|
6524
6703
|
});
|
|
6525
6704
|
};
|
|
6526
6705
|
return LeafletPolylines;
|