@carto/kepler.gl 0.0.88 → 0.0.89

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 (53) hide show
  1. package/dist/components/common/animation-control/playback-controls.js +11 -21
  2. package/dist/components/common/info-helper.js +3 -5
  3. package/dist/components/common/styled-components.d.ts +3 -2
  4. package/dist/components/common/styled-components.js +13 -14
  5. package/dist/components/editor/editor.js +2 -2
  6. package/dist/components/editor/feature-styles.js +2 -2
  7. package/dist/components/editor/handle-style.js +2 -2
  8. package/dist/components/map/layer-selector-panel.js +2 -3
  9. package/dist/components/map/map-control-tooltip.js +2 -3
  10. package/dist/components/side-panel/common/dataset-tag.js +4 -7
  11. package/dist/components/side-panel/common/dataset-title.js +5 -9
  12. package/dist/components/side-panel/layer-panel/color-range-selector.js +3 -7
  13. package/dist/components/side-panel/layer-panel/layer-config-group.js +2 -4
  14. package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +2 -4
  15. package/dist/components/side-panel/panel-header-action.d.ts +2 -2
  16. package/dist/components/side-panel/panel-header-action.js +3 -5
  17. package/dist/components/side-panel/panel-header.js +3 -5
  18. package/dist/components/side-panel/panel-tab.js +2 -4
  19. package/dist/constants/default-settings.js +3 -3
  20. package/dist/vendor/react-map-gl-draw/constants.js +55 -0
  21. package/dist/vendor/react-map-gl-draw/editor.js +1122 -0
  22. package/dist/vendor/react-map-gl-draw/feature.js +191 -0
  23. package/dist/vendor/react-map-gl-draw/index.js +33 -0
  24. package/dist/vendor/react-map-gl-draw/style.js +93 -0
  25. package/dist/vendor/react-map-gl-draw/utils.js +51 -0
  26. package/package.json +5 -4
  27. package/src/components/common/animation-control/playback-controls.tsx +11 -16
  28. package/src/components/common/info-helper.tsx +2 -3
  29. package/src/components/common/styled-components.tsx +17 -31
  30. package/src/components/editor/editor.tsx +1 -1
  31. package/src/components/editor/feature-styles.ts +1 -1
  32. package/src/components/editor/handle-style.ts +1 -1
  33. package/src/components/map/layer-selector-panel.tsx +1 -2
  34. package/src/components/map/map-control-tooltip.tsx +1 -1
  35. package/src/components/side-panel/common/dataset-tag.tsx +3 -5
  36. package/src/components/side-panel/common/dataset-title.tsx +4 -8
  37. package/src/components/side-panel/layer-panel/color-range-selector.tsx +4 -6
  38. package/src/components/side-panel/layer-panel/layer-config-group.tsx +2 -2
  39. package/src/components/side-panel/layer-panel/panel-view-list-toggle.tsx +2 -3
  40. package/src/components/side-panel/panel-header-action.tsx +4 -5
  41. package/src/components/side-panel/panel-header.tsx +2 -2
  42. package/src/components/side-panel/panel-tab.tsx +2 -2
  43. package/src/constants/default-settings.ts +1 -1
  44. package/src/vendor/react-map-gl-draw/LICENSE +9 -0
  45. package/src/vendor/react-map-gl-draw/constants.js +70 -0
  46. package/src/vendor/react-map-gl-draw/editor.js +1207 -0
  47. package/src/vendor/react-map-gl-draw/feature.js +171 -0
  48. package/src/vendor/react-map-gl-draw/index.js +7 -0
  49. package/src/vendor/react-map-gl-draw/style.js +153 -0
  50. package/src/vendor/react-map-gl-draw/utils.js +55 -0
  51. package/CHANGELOG.md +0 -1015
  52. package/src/.DS_Store +0 -0
  53. package/src/reducers/trips-to-geojson.mjs +0 -8
@@ -0,0 +1,191 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ var _constants = require("./constants");
14
+ var _excluded = ["renderType"];
15
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } // Vendored from react-map-gl-draw@0.14.8 (MIT, Copyright (c) 2018 Uber Technologies, Inc.), see ./LICENSE
17
+ var Feature = exports["default"] = /*#__PURE__*/function () {
18
+ function Feature(props) {
19
+ (0, _classCallCheck2["default"])(this, Feature);
20
+ (0, _defineProperty2["default"])(this, "id", void 0);
21
+ (0, _defineProperty2["default"])(this, "type", void 0);
22
+ (0, _defineProperty2["default"])(this, "renderType", void 0);
23
+ (0, _defineProperty2["default"])(this, "isClosed", false);
24
+ (0, _defineProperty2["default"])(this, "points", void 0);
25
+ (0, _defineProperty2["default"])(this, "otherProps", void 0);
26
+ this.id = props.id;
27
+ this.type = props.type;
28
+ this.renderType = props.renderType;
29
+ this.points = props.points || [];
30
+ this.isClosed = props.isClosed;
31
+ this.otherProps = props.otherProps;
32
+ }
33
+ return (0, _createClass2["default"])(Feature, [{
34
+ key: "addPoint",
35
+ value: function addPoint(pt) {
36
+ this.points.push(pt);
37
+ return true;
38
+ }
39
+ }, {
40
+ key: "insertPoint",
41
+ value: function insertPoint(pt, index) {
42
+ this.points.splice(index, 0, pt);
43
+ }
44
+ }, {
45
+ key: "getBoundingBox",
46
+ value: function getBoundingBox() {
47
+ if (!this.points || !this.points.length) {
48
+ return null;
49
+ }
50
+ var bbox = this.points.reduce(function (result, pt) {
51
+ result.xmin = Math.min(pt[0], result.xmin);
52
+ result.xmax = Math.min(pt[0], result.xmax);
53
+ result.ymin = Math.min(pt[1], result.ymin);
54
+ result.ymax = Math.min(pt[1], result.ymax);
55
+ return result;
56
+ }, {
57
+ xmin: Infinity,
58
+ xmax: -Infinity,
59
+ ymin: Infinity,
60
+ ymax: -Infinity
61
+ });
62
+ return bbox;
63
+ }
64
+ }, {
65
+ key: "removePoint",
66
+ value: function removePoint(index) {
67
+ var points = this.points;
68
+ if (index >= 0 && index < points.length) {
69
+ points.splice(index, 1);
70
+ if (points.length < 3) {
71
+ this.isClosed = false;
72
+ }
73
+ return true;
74
+ }
75
+ return false;
76
+ }
77
+ }, {
78
+ key: "replacePoint",
79
+ value: function replacePoint(index, pt) {
80
+ var points = this.points;
81
+ if (index >= 0 && index < points.length) {
82
+ points[index] = pt;
83
+ return true;
84
+ }
85
+ return false;
86
+ }
87
+ }, {
88
+ key: "closePath",
89
+ value: function closePath() {
90
+ var points = this.points;
91
+ if (points.length >= 3 && !this.isClosed) {
92
+ this.isClosed = true;
93
+ return true;
94
+ }
95
+ return false;
96
+ }
97
+ }, {
98
+ key: "toFeature",
99
+ value: function toFeature() {
100
+ var id = this.id,
101
+ points = this.points,
102
+ isClosed = this.isClosed,
103
+ renderType = this.renderType,
104
+ otherProps = this.otherProps;
105
+ var feature = null;
106
+ if (points.length < 2) {
107
+ feature = {
108
+ type: 'Feature',
109
+ geometry: {
110
+ type: _constants.GEOJSON_TYPE.POINT,
111
+ coordinates: points[0]
112
+ },
113
+ properties: _objectSpread({
114
+ renderType: renderType
115
+ }, otherProps),
116
+ id: id
117
+ };
118
+ } else if (points.length < 3 || !isClosed) {
119
+ feature = {
120
+ type: 'Feature',
121
+ geometry: {
122
+ type: _constants.GEOJSON_TYPE.LINE_STRING,
123
+ coordinates: points
124
+ },
125
+ properties: _objectSpread({
126
+ renderType: renderType,
127
+ bbox: this.getBoundingBox()
128
+ }, otherProps),
129
+ id: id
130
+ };
131
+ } else {
132
+ feature = {
133
+ type: 'Feature',
134
+ geometry: {
135
+ type: _constants.GEOJSON_TYPE.POLYGON,
136
+ coordinates: [[].concat((0, _toConsumableArray2["default"])(points), [points[0]])]
137
+ },
138
+ properties: _objectSpread({
139
+ renderType: renderType,
140
+ isClosed: isClosed,
141
+ bbox: this.getBoundingBox()
142
+ }, otherProps),
143
+ id: id
144
+ };
145
+ }
146
+ return feature;
147
+ }
148
+ }], [{
149
+ key: "fromFeature",
150
+ value: function fromFeature(feature) {
151
+ var id = feature.id,
152
+ _feature$geometry = feature.geometry,
153
+ coordinates = _feature$geometry.coordinates,
154
+ type = _feature$geometry.type,
155
+ _feature$properties = feature.properties,
156
+ renderType = _feature$properties.renderType,
157
+ otherProps = (0, _objectWithoutProperties2["default"])(_feature$properties, _excluded);
158
+ switch (type) {
159
+ case _constants.GEOJSON_TYPE.POINT:
160
+ return new Feature({
161
+ id: id,
162
+ type: type,
163
+ renderType: renderType,
164
+ points: [coordinates],
165
+ otherProps: otherProps
166
+ });
167
+ case _constants.GEOJSON_TYPE.LINE_STRING:
168
+ return new Feature({
169
+ id: id,
170
+ type: type,
171
+ renderType: renderType,
172
+ points: coordinates,
173
+ otherProps: otherProps
174
+ });
175
+ case _constants.GEOJSON_TYPE.POLYGON:
176
+ var points = coordinates[0] && coordinates[0].slice(0, -1);
177
+ return new Feature({
178
+ id: id,
179
+ type: type,
180
+ renderType: renderType,
181
+ points: points,
182
+ isClosed: true,
183
+ otherProps: otherProps
184
+ });
185
+ default:
186
+ return null;
187
+ }
188
+ }
189
+ }]);
190
+ }();
191
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uc3RhbnRzIiwicmVxdWlyZSIsIl9leGNsdWRlZCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiRmVhdHVyZSIsImV4cG9ydHMiLCJwcm9wcyIsIl9jbGFzc0NhbGxDaGVjazIiLCJpZCIsInR5cGUiLCJyZW5kZXJUeXBlIiwicG9pbnRzIiwiaXNDbG9zZWQiLCJvdGhlclByb3BzIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsInZhbHVlIiwiYWRkUG9pbnQiLCJwdCIsImluc2VydFBvaW50IiwiaW5kZXgiLCJzcGxpY2UiLCJnZXRCb3VuZGluZ0JveCIsImJib3giLCJyZWR1Y2UiLCJyZXN1bHQiLCJ4bWluIiwiTWF0aCIsIm1pbiIsInhtYXgiLCJ5bWluIiwieW1heCIsIkluZmluaXR5IiwicmVtb3ZlUG9pbnQiLCJyZXBsYWNlUG9pbnQiLCJjbG9zZVBhdGgiLCJ0b0ZlYXR1cmUiLCJmZWF0dXJlIiwiZ2VvbWV0cnkiLCJHRU9KU09OX1RZUEUiLCJQT0lOVCIsImNvb3JkaW5hdGVzIiwicHJvcGVydGllcyIsIkxJTkVfU1RSSU5HIiwiUE9MWUdPTiIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJmcm9tRmVhdHVyZSIsIl9mZWF0dXJlJGdlb21ldHJ5IiwiX2ZlYXR1cmUkcHJvcGVydGllcyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJzbGljZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZW5kb3IvcmVhY3QtbWFwLWdsLWRyYXcvZmVhdHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBWZW5kb3JlZCBmcm9tIHJlYWN0LW1hcC1nbC1kcmF3QDAuMTQuOCAoTUlULCBDb3B5cmlnaHQgKGMpIDIwMTggVWJlciBUZWNobm9sb2dpZXMsIEluYy4pLCBzZWUgLi9MSUNFTlNFXG5pbXBvcnQge0dFT0pTT05fVFlQRX0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGZWF0dXJlIHtcbiAgc3RhdGljIGZyb21GZWF0dXJlKGZlYXR1cmUpIHtcbiAgICBjb25zdCB7XG4gICAgICBpZCxcbiAgICAgIGdlb21ldHJ5OiB7Y29vcmRpbmF0ZXMsIHR5cGV9LFxuICAgICAgcHJvcGVydGllczoge3JlbmRlclR5cGUsIC4uLm90aGVyUHJvcHN9XG4gICAgfSA9IGZlYXR1cmU7XG5cbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgR0VPSlNPTl9UWVBFLlBPSU5UOlxuICAgICAgICByZXR1cm4gbmV3IEZlYXR1cmUoe1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgcmVuZGVyVHlwZSxcbiAgICAgICAgICBwb2ludHM6IFtjb29yZGluYXRlc10sXG4gICAgICAgICAgb3RoZXJQcm9wc1xuICAgICAgICB9KTtcblxuICAgICAgY2FzZSBHRU9KU09OX1RZUEUuTElORV9TVFJJTkc6XG4gICAgICAgIHJldHVybiBuZXcgRmVhdHVyZSh7XG4gICAgICAgICAgaWQsXG4gICAgICAgICAgdHlwZSxcbiAgICAgICAgICByZW5kZXJUeXBlLFxuICAgICAgICAgIHBvaW50czogY29vcmRpbmF0ZXMsXG4gICAgICAgICAgb3RoZXJQcm9wc1xuICAgICAgICB9KTtcblxuICAgICAgY2FzZSBHRU9KU09OX1RZUEUuUE9MWUdPTjpcbiAgICAgICAgY29uc3QgcG9pbnRzID0gY29vcmRpbmF0ZXNbMF0gJiYgY29vcmRpbmF0ZXNbMF0uc2xpY2UoMCwgLTEpO1xuICAgICAgICByZXR1cm4gbmV3IEZlYXR1cmUoe1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgcmVuZGVyVHlwZSxcbiAgICAgICAgICBwb2ludHMsXG4gICAgICAgICAgaXNDbG9zZWQ6IHRydWUsXG4gICAgICAgICAgb3RoZXJQcm9wc1xuICAgICAgICB9KTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICB0aGlzLmlkID0gcHJvcHMuaWQ7XG4gICAgdGhpcy50eXBlID0gcHJvcHMudHlwZTtcbiAgICB0aGlzLnJlbmRlclR5cGUgPSBwcm9wcy5yZW5kZXJUeXBlO1xuICAgIHRoaXMucG9pbnRzID0gcHJvcHMucG9pbnRzIHx8IFtdO1xuICAgIHRoaXMuaXNDbG9zZWQgPSBwcm9wcy5pc0Nsb3NlZDtcbiAgICB0aGlzLm90aGVyUHJvcHMgPSBwcm9wcy5vdGhlclByb3BzO1xuICB9XG5cbiAgaWQ7XG4gIHR5cGU7XG4gIHJlbmRlclR5cGU7XG4gIGlzQ2xvc2VkID0gZmFsc2U7XG4gIHBvaW50cztcbiAgb3RoZXJQcm9wcztcblxuICBhZGRQb2ludChwdCkge1xuICAgIHRoaXMucG9pbnRzLnB1c2gocHQpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaW5zZXJ0UG9pbnQocHQsIGluZGV4KSB7XG4gICAgdGhpcy5wb2ludHMuc3BsaWNlKGluZGV4LCAwLCBwdCk7XG4gIH1cblxuICBnZXRCb3VuZGluZ0JveCgpIHtcbiAgICBpZiAoIXRoaXMucG9pbnRzIHx8ICF0aGlzLnBvaW50cy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBiYm94ID0gdGhpcy5wb2ludHMucmVkdWNlKFxuICAgICAgKHJlc3VsdCwgcHQpID0+IHtcbiAgICAgICAgcmVzdWx0LnhtaW4gPSBNYXRoLm1pbihwdFswXSwgcmVzdWx0LnhtaW4pO1xuICAgICAgICByZXN1bHQueG1heCA9IE1hdGgubWluKHB0WzBdLCByZXN1bHQueG1heCk7XG4gICAgICAgIHJlc3VsdC55bWluID0gTWF0aC5taW4ocHRbMV0sIHJlc3VsdC55bWluKTtcbiAgICAgICAgcmVzdWx0LnltYXggPSBNYXRoLm1pbihwdFsxXSwgcmVzdWx0LnltYXgpO1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9LFxuICAgICAge3htaW46IEluZmluaXR5LCB4bWF4OiAtSW5maW5pdHksIHltaW46IEluZmluaXR5LCB5bWF4OiAtSW5maW5pdHl9XG4gICAgKTtcblxuICAgIHJldHVybiBiYm94O1xuICB9XG5cbiAgcmVtb3ZlUG9pbnQoaW5kZXgpIHtcbiAgICBjb25zdCB7cG9pbnRzfSA9IHRoaXM7XG4gICAgaWYgKGluZGV4ID49IDAgJiYgaW5kZXggPCBwb2ludHMubGVuZ3RoKSB7XG4gICAgICBwb2ludHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIGlmIChwb2ludHMubGVuZ3RoIDwgMykge1xuICAgICAgICB0aGlzLmlzQ2xvc2VkID0gZmFsc2U7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmVwbGFjZVBvaW50KGluZGV4LCBwdCkge1xuICAgIGNvbnN0IHtwb2ludHN9ID0gdGhpcztcbiAgICBpZiAoaW5kZXggPj0gMCAmJiBpbmRleCA8IHBvaW50cy5sZW5ndGgpIHtcbiAgICAgIHBvaW50c1tpbmRleF0gPSBwdDtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjbG9zZVBhdGgoKSB7XG4gICAgY29uc3Qge3BvaW50c30gPSB0aGlzO1xuICAgIGlmIChwb2ludHMubGVuZ3RoID49IDMgJiYgIXRoaXMuaXNDbG9zZWQpIHtcbiAgICAgIHRoaXMuaXNDbG9zZWQgPSB0cnVlO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHRvRmVhdHVyZSgpIHtcbiAgICBjb25zdCB7aWQsIHBvaW50cywgaXNDbG9zZWQsIHJlbmRlclR5cGUsIG90aGVyUHJvcHN9ID0gdGhpcztcblxuICAgIGxldCBmZWF0dXJlID0gbnVsbDtcbiAgICBpZiAocG9pbnRzLmxlbmd0aCA8IDIpIHtcbiAgICAgIGZlYXR1cmUgPSB7XG4gICAgICAgIHR5cGU6ICdGZWF0dXJlJyxcbiAgICAgICAgZ2VvbWV0cnk6IHtcbiAgICAgICAgICB0eXBlOiBHRU9KU09OX1RZUEUuUE9JTlQsXG4gICAgICAgICAgY29vcmRpbmF0ZXM6IHBvaW50c1swXVxuICAgICAgICB9LFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgcmVuZGVyVHlwZSxcbiAgICAgICAgICAuLi5vdGhlclByb3BzXG4gICAgICAgIH0sXG4gICAgICAgIGlkXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAocG9pbnRzLmxlbmd0aCA8IDMgfHwgIWlzQ2xvc2VkKSB7XG4gICAgICBmZWF0dXJlID0ge1xuICAgICAgICB0eXBlOiAnRmVhdHVyZScsXG4gICAgICAgIGdlb21ldHJ5OiB7XG4gICAgICAgICAgdHlwZTogR0VPSlNPTl9UWVBFLkxJTkVfU1RSSU5HLFxuICAgICAgICAgIGNvb3JkaW5hdGVzOiBwb2ludHNcbiAgICAgICAgfSxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIHJlbmRlclR5cGUsXG4gICAgICAgICAgYmJveDogdGhpcy5nZXRCb3VuZGluZ0JveCgpLFxuICAgICAgICAgIC4uLm90aGVyUHJvcHNcbiAgICAgICAgfSxcbiAgICAgICAgaWRcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGZlYXR1cmUgPSB7XG4gICAgICAgIHR5cGU6ICdGZWF0dXJlJyxcbiAgICAgICAgZ2VvbWV0cnk6IHtcbiAgICAgICAgICB0eXBlOiBHRU9KU09OX1RZUEUuUE9MWUdPTixcbiAgICAgICAgICBjb29yZGluYXRlczogW1suLi5wb2ludHMsIHBvaW50c1swXV1dXG4gICAgICAgIH0sXG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICByZW5kZXJUeXBlLFxuICAgICAgICAgIGlzQ2xvc2VkLFxuICAgICAgICAgIGJib3g6IHRoaXMuZ2V0Qm91bmRpbmdCb3goKSxcbiAgICAgICAgICAuLi5vdGhlclByb3BzXG4gICAgICAgIH0sXG4gICAgICAgIGlkXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBmZWF0dXJlO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUF5QyxJQUFBQyxTQUFBO0FBQUEsU0FBQUMsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFZLFNBQUEsQ0FBQUMsTUFBQSxFQUFBYixDQUFBLFVBQUFDLENBQUEsV0FBQVcsU0FBQSxDQUFBWixDQUFBLElBQUFZLFNBQUEsQ0FBQVosQ0FBQSxRQUFBQSxDQUFBLE9BQUFGLE9BQUEsQ0FBQUksTUFBQSxDQUFBRCxDQUFBLE9BQUFhLE9BQUEsV0FBQWQsQ0FBQSxRQUFBZSxnQkFBQSxhQUFBaEIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsQ0FBQUQsQ0FBQSxTQUFBRSxNQUFBLENBQUFjLHlCQUFBLEdBQUFkLE1BQUEsQ0FBQWUsZ0JBQUEsQ0FBQWxCLENBQUEsRUFBQUcsTUFBQSxDQUFBYyx5QkFBQSxDQUFBZixDQUFBLEtBQUFILE9BQUEsQ0FBQUksTUFBQSxDQUFBRCxDQUFBLEdBQUFhLE9BQUEsV0FBQWQsQ0FBQSxJQUFBRSxNQUFBLENBQUFnQixjQUFBLENBQUFuQixDQUFBLEVBQUFDLENBQUEsRUFBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBTixDQUFBLEVBQUFELENBQUEsaUJBQUFELENBQUEsSUFEekM7QUFBQSxJQUdxQm9CLE9BQU8sR0FBQUMsT0FBQTtFQTJDMUIsU0FBQUQsUUFBWUUsS0FBSyxFQUFFO0lBQUEsSUFBQUMsZ0JBQUEsbUJBQUFILE9BQUE7SUFBQSxJQUFBSixnQkFBQTtJQUFBLElBQUFBLGdCQUFBO0lBQUEsSUFBQUEsZ0JBQUE7SUFBQSxJQUFBQSxnQkFBQSwrQkFZUixLQUFLO0lBQUEsSUFBQUEsZ0JBQUE7SUFBQSxJQUFBQSxnQkFBQTtJQVhkLElBQUksQ0FBQ1EsRUFBRSxHQUFHRixLQUFLLENBQUNFLEVBQUU7SUFDbEIsSUFBSSxDQUFDQyxJQUFJLEdBQUdILEtBQUssQ0FBQ0csSUFBSTtJQUN0QixJQUFJLENBQUNDLFVBQVUsR0FBR0osS0FBSyxDQUFDSSxVQUFVO0lBQ2xDLElBQUksQ0FBQ0MsTUFBTSxHQUFHTCxLQUFLLENBQUNLLE1BQU0sSUFBSSxFQUFFO0lBQ2hDLElBQUksQ0FBQ0MsUUFBUSxHQUFHTixLQUFLLENBQUNNLFFBQVE7SUFDOUIsSUFBSSxDQUFDQyxVQUFVLEdBQUdQLEtBQUssQ0FBQ08sVUFBVTtFQUNwQztFQUFDLFdBQUFDLGFBQUEsYUFBQVYsT0FBQTtJQUFBVyxHQUFBO0lBQUFDLEtBQUEsRUFTRCxTQUFBQyxRQUFRQSxDQUFDQyxFQUFFLEVBQUU7TUFDWCxJQUFJLENBQUNQLE1BQU0sQ0FBQ2pCLElBQUksQ0FBQ3dCLEVBQUUsQ0FBQztNQUNwQixPQUFPLElBQUk7SUFDYjtFQUFDO0lBQUFILEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFHLFdBQVdBLENBQUNELEVBQUUsRUFBRUUsS0FBSyxFQUFFO01BQ3JCLElBQUksQ0FBQ1QsTUFBTSxDQUFDVSxNQUFNLENBQUNELEtBQUssRUFBRSxDQUFDLEVBQUVGLEVBQUUsQ0FBQztJQUNsQztFQUFDO0lBQUFILEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFNLGNBQWNBLENBQUEsRUFBRztNQUNmLElBQUksQ0FBQyxJQUFJLENBQUNYLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQ0EsTUFBTSxDQUFDYixNQUFNLEVBQUU7UUFDdkMsT0FBTyxJQUFJO01BQ2I7TUFDQSxJQUFNeUIsSUFBSSxHQUFHLElBQUksQ0FBQ1osTUFBTSxDQUFDYSxNQUFNLENBQzdCLFVBQUNDLE1BQU0sRUFBRVAsRUFBRSxFQUFLO1FBQ2RPLE1BQU0sQ0FBQ0MsSUFBSSxHQUFHQyxJQUFJLENBQUNDLEdBQUcsQ0FBQ1YsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFTyxNQUFNLENBQUNDLElBQUksQ0FBQztRQUMxQ0QsTUFBTSxDQUFDSSxJQUFJLEdBQUdGLElBQUksQ0FBQ0MsR0FBRyxDQUFDVixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUVPLE1BQU0sQ0FBQ0ksSUFBSSxDQUFDO1FBQzFDSixNQUFNLENBQUNLLElBQUksR0FBR0gsSUFBSSxDQUFDQyxHQUFHLENBQUNWLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRU8sTUFBTSxDQUFDSyxJQUFJLENBQUM7UUFDMUNMLE1BQU0sQ0FBQ00sSUFBSSxHQUFHSixJQUFJLENBQUNDLEdBQUcsQ0FBQ1YsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFTyxNQUFNLENBQUNNLElBQUksQ0FBQztRQUUxQyxPQUFPTixNQUFNO01BQ2YsQ0FBQyxFQUNEO1FBQUNDLElBQUksRUFBRU0sUUFBUTtRQUFFSCxJQUFJLEVBQUUsQ0FBQ0csUUFBUTtRQUFFRixJQUFJLEVBQUVFLFFBQVE7UUFBRUQsSUFBSSxFQUFFLENBQUNDO01BQVEsQ0FDbkUsQ0FBQztNQUVELE9BQU9ULElBQUk7SUFDYjtFQUFDO0lBQUFSLEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFpQixXQUFXQSxDQUFDYixLQUFLLEVBQUU7TUFDakIsSUFBT1QsTUFBTSxHQUFJLElBQUksQ0FBZEEsTUFBTTtNQUNiLElBQUlTLEtBQUssSUFBSSxDQUFDLElBQUlBLEtBQUssR0FBR1QsTUFBTSxDQUFDYixNQUFNLEVBQUU7UUFDdkNhLE1BQU0sQ0FBQ1UsTUFBTSxDQUFDRCxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZCLElBQUlULE1BQU0sQ0FBQ2IsTUFBTSxHQUFHLENBQUMsRUFBRTtVQUNyQixJQUFJLENBQUNjLFFBQVEsR0FBRyxLQUFLO1FBQ3ZCO1FBQ0EsT0FBTyxJQUFJO01BQ2I7TUFDQSxPQUFPLEtBQUs7SUFDZDtFQUFDO0lBQUFHLEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFrQixZQUFZQSxDQUFDZCxLQUFLLEVBQUVGLEVBQUUsRUFBRTtNQUN0QixJQUFPUCxNQUFNLEdBQUksSUFBSSxDQUFkQSxNQUFNO01BQ2IsSUFBSVMsS0FBSyxJQUFJLENBQUMsSUFBSUEsS0FBSyxHQUFHVCxNQUFNLENBQUNiLE1BQU0sRUFBRTtRQUN2Q2EsTUFBTSxDQUFDUyxLQUFLLENBQUMsR0FBR0YsRUFBRTtRQUNsQixPQUFPLElBQUk7TUFDYjtNQUNBLE9BQU8sS0FBSztJQUNkO0VBQUM7SUFBQUgsR0FBQTtJQUFBQyxLQUFBLEVBRUQsU0FBQW1CLFNBQVNBLENBQUEsRUFBRztNQUNWLElBQU94QixNQUFNLEdBQUksSUFBSSxDQUFkQSxNQUFNO01BQ2IsSUFBSUEsTUFBTSxDQUFDYixNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDYyxRQUFRLEVBQUU7UUFDeEMsSUFBSSxDQUFDQSxRQUFRLEdBQUcsSUFBSTtRQUNwQixPQUFPLElBQUk7TUFDYjtNQUNBLE9BQU8sS0FBSztJQUNkO0VBQUM7SUFBQUcsR0FBQTtJQUFBQyxLQUFBLEVBRUQsU0FBQW9CLFNBQVNBLENBQUEsRUFBRztNQUNWLElBQU81QixFQUFFLEdBQThDLElBQUksQ0FBcERBLEVBQUU7UUFBRUcsTUFBTSxHQUFzQyxJQUFJLENBQWhEQSxNQUFNO1FBQUVDLFFBQVEsR0FBNEIsSUFBSSxDQUF4Q0EsUUFBUTtRQUFFRixVQUFVLEdBQWdCLElBQUksQ0FBOUJBLFVBQVU7UUFBRUcsVUFBVSxHQUFJLElBQUksQ0FBbEJBLFVBQVU7TUFFbkQsSUFBSXdCLE9BQU8sR0FBRyxJQUFJO01BQ2xCLElBQUkxQixNQUFNLENBQUNiLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDckJ1QyxPQUFPLEdBQUc7VUFDUjVCLElBQUksRUFBRSxTQUFTO1VBQ2Y2QixRQUFRLEVBQUU7WUFDUjdCLElBQUksRUFBRThCLHVCQUFZLENBQUNDLEtBQUs7WUFDeEJDLFdBQVcsRUFBRTlCLE1BQU0sQ0FBQyxDQUFDO1VBQ3ZCLENBQUM7VUFDRCtCLFVBQVUsRUFBQTlDLGFBQUE7WUFDUmMsVUFBVSxFQUFWQTtVQUFVLEdBQ1BHLFVBQVUsQ0FDZDtVQUNETCxFQUFFLEVBQUZBO1FBQ0YsQ0FBQztNQUNILENBQUMsTUFBTSxJQUFJRyxNQUFNLENBQUNiLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQ2MsUUFBUSxFQUFFO1FBQ3pDeUIsT0FBTyxHQUFHO1VBQ1I1QixJQUFJLEVBQUUsU0FBUztVQUNmNkIsUUFBUSxFQUFFO1lBQ1I3QixJQUFJLEVBQUU4Qix1QkFBWSxDQUFDSSxXQUFXO1lBQzlCRixXQUFXLEVBQUU5QjtVQUNmLENBQUM7VUFDRCtCLFVBQVUsRUFBQTlDLGFBQUE7WUFDUmMsVUFBVSxFQUFWQSxVQUFVO1lBQ1ZhLElBQUksRUFBRSxJQUFJLENBQUNELGNBQWMsQ0FBQztVQUFDLEdBQ3hCVCxVQUFVLENBQ2Q7VUFDREwsRUFBRSxFQUFGQTtRQUNGLENBQUM7TUFDSCxDQUFDLE1BQU07UUFDTDZCLE9BQU8sR0FBRztVQUNSNUIsSUFBSSxFQUFFLFNBQVM7VUFDZjZCLFFBQVEsRUFBRTtZQUNSN0IsSUFBSSxFQUFFOEIsdUJBQVksQ0FBQ0ssT0FBTztZQUMxQkgsV0FBVyxFQUFFLElBQUFJLE1BQUEsS0FBQUMsbUJBQUEsYUFBS25DLE1BQU0sSUFBRUEsTUFBTSxDQUFDLENBQUMsQ0FBQztVQUNyQyxDQUFDO1VBQ0QrQixVQUFVLEVBQUE5QyxhQUFBO1lBQ1JjLFVBQVUsRUFBVkEsVUFBVTtZQUNWRSxRQUFRLEVBQVJBLFFBQVE7WUFDUlcsSUFBSSxFQUFFLElBQUksQ0FBQ0QsY0FBYyxDQUFDO1VBQUMsR0FDeEJULFVBQVUsQ0FDZDtVQUNETCxFQUFFLEVBQUZBO1FBQ0YsQ0FBQztNQUNIO01BRUEsT0FBTzZCLE9BQU87SUFDaEI7RUFBQztJQUFBdEIsR0FBQTtJQUFBQyxLQUFBLEVBcktELFNBQU8rQixXQUFXQSxDQUFDVixPQUFPLEVBQUU7TUFDMUIsSUFDRTdCLEVBQUUsR0FHQTZCLE9BQU8sQ0FIVDdCLEVBQUU7UUFBQXdDLGlCQUFBLEdBR0FYLE9BQU8sQ0FGVEMsUUFBUTtRQUFHRyxXQUFXLEdBQUFPLGlCQUFBLENBQVhQLFdBQVc7UUFBRWhDLElBQUksR0FBQXVDLGlCQUFBLENBQUp2QyxJQUFJO1FBQUF3QyxtQkFBQSxHQUUxQlosT0FBTyxDQURUSyxVQUFVO1FBQUdoQyxVQUFVLEdBQUF1QyxtQkFBQSxDQUFWdkMsVUFBVTtRQUFLRyxVQUFVLE9BQUFxQyx5QkFBQSxhQUFBRCxtQkFBQSxFQUFBbkUsU0FBQTtNQUd4QyxRQUFRMkIsSUFBSTtRQUNWLEtBQUs4Qix1QkFBWSxDQUFDQyxLQUFLO1VBQ3JCLE9BQU8sSUFBSXBDLE9BQU8sQ0FBQztZQUNqQkksRUFBRSxFQUFGQSxFQUFFO1lBQ0ZDLElBQUksRUFBSkEsSUFBSTtZQUNKQyxVQUFVLEVBQVZBLFVBQVU7WUFDVkMsTUFBTSxFQUFFLENBQUM4QixXQUFXLENBQUM7WUFDckI1QixVQUFVLEVBQVZBO1VBQ0YsQ0FBQyxDQUFDO1FBRUosS0FBSzBCLHVCQUFZLENBQUNJLFdBQVc7VUFDM0IsT0FBTyxJQUFJdkMsT0FBTyxDQUFDO1lBQ2pCSSxFQUFFLEVBQUZBLEVBQUU7WUFDRkMsSUFBSSxFQUFKQSxJQUFJO1lBQ0pDLFVBQVUsRUFBVkEsVUFBVTtZQUNWQyxNQUFNLEVBQUU4QixXQUFXO1lBQ25CNUIsVUFBVSxFQUFWQTtVQUNGLENBQUMsQ0FBQztRQUVKLEtBQUswQix1QkFBWSxDQUFDSyxPQUFPO1VBQ3ZCLElBQU1qQyxNQUFNLEdBQUc4QixXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUlBLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQ1UsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztVQUM1RCxPQUFPLElBQUkvQyxPQUFPLENBQUM7WUFDakJJLEVBQUUsRUFBRkEsRUFBRTtZQUNGQyxJQUFJLEVBQUpBLElBQUk7WUFDSkMsVUFBVSxFQUFWQSxVQUFVO1lBQ1ZDLE1BQU0sRUFBTkEsTUFBTTtZQUNOQyxRQUFRLEVBQUUsSUFBSTtZQUNkQyxVQUFVLEVBQVZBO1VBQ0YsQ0FBQyxDQUFDO1FBRUo7VUFDRSxPQUFPLElBQUk7TUFDZjtJQUNGO0VBQUM7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "Editor", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _editor["default"];
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "EditorModes", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _constants.MODES;
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "RenderStates", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _constants.RENDER_STATE;
23
+ }
24
+ });
25
+ Object.defineProperty(exports, "RenderTypes", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _constants.RENDER_TYPE;
29
+ }
30
+ });
31
+ var _editor = _interopRequireDefault(require("./editor"));
32
+ var _constants = require("./constants");
33
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZWRpdG9yIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29uc3RhbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ZlbmRvci9yZWFjdC1tYXAtZ2wtZHJhdy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBWZW5kb3JlZCBmcm9tIHJlYWN0LW1hcC1nbC1kcmF3QDAuMTQuOCAoTUlULCBDb3B5cmlnaHQgKGMpIDIwMTggVWJlciBUZWNobm9sb2dpZXMsIEluYy4pLCBzZWUgLi9MSUNFTlNFXG5leHBvcnQge2RlZmF1bHQgYXMgRWRpdG9yfSBmcm9tICcuL2VkaXRvcic7XG5leHBvcnQge1xuICBNT0RFUyBhcyBFZGl0b3JNb2RlcyxcbiAgUkVOREVSX1RZUEUgYXMgUmVuZGVyVHlwZXMsXG4gIFJFTkRFUl9TVEFURSBhcyBSZW5kZXJTdGF0ZXNcbn0gZnJvbSAnLi9jb25zdGFudHMnO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFELE9BQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.HIDDEN_CLICKABLE_STYLE = void 0;
7
+ exports.getEditHandleStyle = getEditHandleStyle;
8
+ exports.getFeatureStyle = getFeatureStyle;
9
+ var _constants = require("./constants");
10
+ // Vendored from react-map-gl-draw@0.14.8 (MIT, Copyright (c) 2018 Uber Technologies, Inc.), see ./LICENSE
11
+ /* eslint-disable complexity, max-statements */
12
+
13
+ var RECT_STYLE = {
14
+ x: -6,
15
+ y: -6,
16
+ height: 12,
17
+ width: 12
18
+ };
19
+ var CLOSING_RECT_STYLE = {
20
+ x: -10,
21
+ y: -10,
22
+ height: 20,
23
+ width: 20
24
+ };
25
+ var DEFAULT_STROKE_WIDTH = 2;
26
+ var HIGHLIGHTED_STROKE_WIDTH = 4;
27
+ var DEFAULT_RADIUS = 8;
28
+ var HIDDEN_CLICKABLE_STYLE = exports.HIDDEN_CLICKABLE_STYLE = {
29
+ fill: '#000',
30
+ opacity: 0
31
+ };
32
+ function getFeatureStyle(_ref) {
33
+ var feature = _ref.feature,
34
+ state = _ref.state;
35
+ var style = {
36
+ stroke: state === _constants.RENDER_STATE.SELECTED || state === _constants.RENDER_STATE.HOVERED ? '#7ac943' : state === _constants.RENDER_STATE.UNCOMMITTED || state === _constants.RENDER_STATE.CLOSING ? '#a9a9a9' : '#000',
37
+ strokeWidth: DEFAULT_STROKE_WIDTH,
38
+ fill: state === _constants.RENDER_STATE.INACTIVE ? '#333333' : state === _constants.RENDER_STATE.HOVERED ? '#7ac943' : state === _constants.RENDER_STATE.SELECTED ? '#ffff00' : state === _constants.RENDER_STATE.UNCOMMITTED || state === _constants.RENDER_STATE.CLOSING ? '#a9a9a9' : '#000000',
39
+ fillOpacity: state === _constants.RENDER_STATE.INACTIVE ? 0.1 : state === _constants.RENDER_STATE.SELECTED ? 0.7 : state === _constants.RENDER_STATE.HOVERED ? 0.5 : state === _constants.RENDER_STATE.UNCOMMITTED || state === _constants.RENDER_STATE.CLOSING ? 0.3 : 1
40
+ };
41
+ var renderType = feature.properties ? feature.properties.renderType : feature.renderType;
42
+ switch (renderType) {
43
+ case _constants.RENDER_TYPE.POINT:
44
+ style.r = DEFAULT_RADIUS;
45
+ break;
46
+ case _constants.RENDER_TYPE.LINE_STRING:
47
+ style.fill = 'none';
48
+ break;
49
+ case _constants.RENDER_TYPE.POLYGON:
50
+ if (state === _constants.RENDER_STATE.CLOSING) {
51
+ style.strokeDasharray = '4,2';
52
+ }
53
+ break;
54
+ case _constants.RENDER_TYPE.RECTANGLE:
55
+ if (state === _constants.RENDER_STATE.UNCOMMITTED) {
56
+ style.strokeDasharray = '4,2';
57
+ }
58
+ break;
59
+ default:
60
+ }
61
+ return style;
62
+ }
63
+ function getEditHandleStyle(_ref2) {
64
+ var feature = _ref2.feature,
65
+ index = _ref2.index,
66
+ state = _ref2.state;
67
+ var style = {
68
+ fill: state === _constants.RENDER_STATE.INACTIVE ? '#ffffff' : state === _constants.RENDER_STATE.SELECTED || state === _constants.RENDER_STATE.CLOSING ? '#ffff00' : state === _constants.RENDER_STATE.HOVERED ? '#7ac943' : state === _constants.RENDER_STATE.UNCOMMITTED ? '#a9a9a9' : '#000000',
69
+ fillOpacity: state === _constants.RENDER_STATE.INACTIVE ? 1 : state === _constants.RENDER_STATE.HOVERED ? 1 : state === _constants.RENDER_STATE.SELECTED || state === _constants.RENDER_STATE.CLOSING ? 0.8 : state === _constants.RENDER_STATE.UNCOMMITTED ? 0.3 : 1,
70
+ stroke: state === _constants.RENDER_STATE.SELECTED || state === _constants.RENDER_STATE.HOVERED || state === _constants.RENDER_STATE.CLOSING ? '#7ac943' : '#000',
71
+ strokeWidth: state === _constants.RENDER_STATE.SELECTED || state === _constants.RENDER_STATE.CLOSING ? HIGHLIGHTED_STROKE_WIDTH : DEFAULT_STROKE_WIDTH,
72
+ r: DEFAULT_RADIUS
73
+ };
74
+ var renderType = feature.properties ? feature.properties.renderType : feature.renderType;
75
+ switch (renderType) {
76
+ case _constants.RENDER_TYPE.POINT:
77
+ style.fill = state === _constants.RENDER_STATE.INACTIVE ? '#333333' : state === _constants.RENDER_STATE.SELECTED ? '#ffff00' : state === _constants.RENDER_STATE.HOVERED ? '#7ac943' : state === _constants.RENDER_STATE.UNCOMMITTED ? 'none' : '#000000';
78
+ style.stroke = state === _constants.RENDER_STATE.SELECTED ? '#7ac943' : state === _constants.RENDER_STATE.UNCOMMITTED ? 'none' : '#000';
79
+ break;
80
+ case _constants.RENDER_TYPE.LINE_STRING:
81
+ case _constants.RENDER_TYPE.POLYGON:
82
+ case _constants.RENDER_TYPE.RECTANGLE:
83
+ if (state === _constants.RENDER_STATE.CLOSING) {
84
+ Object.assign(style, CLOSING_RECT_STYLE);
85
+ } else {
86
+ Object.assign(style, RECT_STYLE);
87
+ }
88
+ break;
89
+ default:
90
+ }
91
+ return style;
92
+ }
93
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uc3RhbnRzIiwicmVxdWlyZSIsIlJFQ1RfU1RZTEUiLCJ4IiwieSIsImhlaWdodCIsIndpZHRoIiwiQ0xPU0lOR19SRUNUX1NUWUxFIiwiREVGQVVMVF9TVFJPS0VfV0lEVEgiLCJISUdITElHSFRFRF9TVFJPS0VfV0lEVEgiLCJERUZBVUxUX1JBRElVUyIsIkhJRERFTl9DTElDS0FCTEVfU1RZTEUiLCJleHBvcnRzIiwiZmlsbCIsIm9wYWNpdHkiLCJnZXRGZWF0dXJlU3R5bGUiLCJfcmVmIiwiZmVhdHVyZSIsInN0YXRlIiwic3R5bGUiLCJzdHJva2UiLCJSRU5ERVJfU1RBVEUiLCJTRUxFQ1RFRCIsIkhPVkVSRUQiLCJVTkNPTU1JVFRFRCIsIkNMT1NJTkciLCJzdHJva2VXaWR0aCIsIklOQUNUSVZFIiwiZmlsbE9wYWNpdHkiLCJyZW5kZXJUeXBlIiwicHJvcGVydGllcyIsIlJFTkRFUl9UWVBFIiwiUE9JTlQiLCJyIiwiTElORV9TVFJJTkciLCJQT0xZR09OIiwic3Ryb2tlRGFzaGFycmF5IiwiUkVDVEFOR0xFIiwiZ2V0RWRpdEhhbmRsZVN0eWxlIiwiX3JlZjIiLCJpbmRleCIsIk9iamVjdCIsImFzc2lnbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZW5kb3IvcmVhY3QtbWFwLWdsLWRyYXcvc3R5bGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVmVuZG9yZWQgZnJvbSByZWFjdC1tYXAtZ2wtZHJhd0AwLjE0LjggKE1JVCwgQ29weXJpZ2h0IChjKSAyMDE4IFViZXIgVGVjaG5vbG9naWVzLCBJbmMuKSwgc2VlIC4vTElDRU5TRVxuLyogZXNsaW50LWRpc2FibGUgY29tcGxleGl0eSwgbWF4LXN0YXRlbWVudHMgKi9cbmltcG9ydCB7UkVOREVSX1NUQVRFLCBSRU5ERVJfVFlQRX0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5jb25zdCBSRUNUX1NUWUxFID0ge1xuICB4OiAtNixcbiAgeTogLTYsXG4gIGhlaWdodDogMTIsXG4gIHdpZHRoOiAxMlxufTtcblxuY29uc3QgQ0xPU0lOR19SRUNUX1NUWUxFID0ge1xuICB4OiAtMTAsXG4gIHk6IC0xMCxcbiAgaGVpZ2h0OiAyMCxcbiAgd2lkdGg6IDIwXG59O1xuXG5jb25zdCBERUZBVUxUX1NUUk9LRV9XSURUSCA9IDI7XG5jb25zdCBISUdITElHSFRFRF9TVFJPS0VfV0lEVEggPSA0O1xuY29uc3QgREVGQVVMVF9SQURJVVMgPSA4O1xuXG5leHBvcnQgY29uc3QgSElEREVOX0NMSUNLQUJMRV9TVFlMRSA9IHtcbiAgZmlsbDogJyMwMDAnLFxuICBvcGFjaXR5OiAwXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmVhdHVyZVN0eWxlKHtmZWF0dXJlLCBzdGF0ZX0pIHtcbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgc3Ryb2tlOlxuICAgICAgc3RhdGUgPT09IFJFTkRFUl9TVEFURS5TRUxFQ1RFRCB8fCBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLkhPVkVSRURcbiAgICAgICAgPyAnIzdhYzk0MydcbiAgICAgICAgOiBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLlVOQ09NTUlUVEVEIHx8IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuQ0xPU0lOR1xuICAgICAgICA/ICcjYTlhOWE5J1xuICAgICAgICA6ICcjMDAwJyxcbiAgICBzdHJva2VXaWR0aDogREVGQVVMVF9TVFJPS0VfV0lEVEgsXG4gICAgZmlsbDpcbiAgICAgIHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSU5BQ1RJVkVcbiAgICAgICAgPyAnIzMzMzMzMydcbiAgICAgICAgOiBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLkhPVkVSRURcbiAgICAgICAgPyAnIzdhYzk0MydcbiAgICAgICAgOiBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLlNFTEVDVEVEXG4gICAgICAgID8gJyNmZmZmMDAnXG4gICAgICAgIDogc3RhdGUgPT09IFJFTkRFUl9TVEFURS5VTkNPTU1JVFRFRCB8fCBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLkNMT1NJTkdcbiAgICAgICAgPyAnI2E5YTlhOSdcbiAgICAgICAgOiAnIzAwMDAwMCcsXG4gICAgZmlsbE9wYWNpdHk6XG4gICAgICBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLklOQUNUSVZFXG4gICAgICAgID8gMC4xXG4gICAgICAgIDogc3RhdGUgPT09IFJFTkRFUl9TVEFURS5TRUxFQ1RFRFxuICAgICAgICA/IDAuN1xuICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSE9WRVJFRFxuICAgICAgICA/IDAuNVxuICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuVU5DT01NSVRURUQgfHwgc3RhdGUgPT09IFJFTkRFUl9TVEFURS5DTE9TSU5HXG4gICAgICAgID8gMC4zXG4gICAgICAgIDogMVxuICB9O1xuXG4gIGNvbnN0IHJlbmRlclR5cGUgPSBmZWF0dXJlLnByb3BlcnRpZXMgPyBmZWF0dXJlLnByb3BlcnRpZXMucmVuZGVyVHlwZSA6IGZlYXR1cmUucmVuZGVyVHlwZTtcblxuICBzd2l0Y2ggKHJlbmRlclR5cGUpIHtcbiAgICBjYXNlIFJFTkRFUl9UWVBFLlBPSU5UOlxuICAgICAgc3R5bGUuciA9IERFRkFVTFRfUkFESVVTO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBSRU5ERVJfVFlQRS5MSU5FX1NUUklORzpcbiAgICAgIHN0eWxlLmZpbGwgPSAnbm9uZSc7XG4gICAgICBicmVhaztcbiAgICBjYXNlIFJFTkRFUl9UWVBFLlBPTFlHT046XG4gICAgICBpZiAoc3RhdGUgPT09IFJFTkRFUl9TVEFURS5DTE9TSU5HKSB7XG4gICAgICAgIHN0eWxlLnN0cm9rZURhc2hhcnJheSA9ICc0LDInO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgY2FzZSBSRU5ERVJfVFlQRS5SRUNUQU5HTEU6XG4gICAgICBpZiAoc3RhdGUgPT09IFJFTkRFUl9TVEFURS5VTkNPTU1JVFRFRCkge1xuICAgICAgICBzdHlsZS5zdHJva2VEYXNoYXJyYXkgPSAnNCwyJztcbiAgICAgIH1cbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gIH1cblxuICByZXR1cm4gc3R5bGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFZGl0SGFuZGxlU3R5bGUoe2ZlYXR1cmUsIGluZGV4LCBzdGF0ZX0pIHtcbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgZmlsbDpcbiAgICAgIHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSU5BQ1RJVkVcbiAgICAgICAgPyAnI2ZmZmZmZidcbiAgICAgICAgOiBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLlNFTEVDVEVEIHx8IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuQ0xPU0lOR1xuICAgICAgICA/ICcjZmZmZjAwJ1xuICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSE9WRVJFRFxuICAgICAgICA/ICcjN2FjOTQzJ1xuICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuVU5DT01NSVRURURcbiAgICAgICAgPyAnI2E5YTlhOSdcbiAgICAgICAgOiAnIzAwMDAwMCcsXG4gICAgZmlsbE9wYWNpdHk6XG4gICAgICBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLklOQUNUSVZFXG4gICAgICAgID8gMVxuICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSE9WRVJFRFxuICAgICAgICA/IDFcbiAgICAgICAgOiBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLlNFTEVDVEVEIHx8IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuQ0xPU0lOR1xuICAgICAgICA/IDAuOFxuICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuVU5DT01NSVRURURcbiAgICAgICAgPyAwLjNcbiAgICAgICAgOiAxLFxuICAgIHN0cm9rZTpcbiAgICAgIHN0YXRlID09PSBSRU5ERVJfU1RBVEUuU0VMRUNURUQgfHxcbiAgICAgIHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSE9WRVJFRCB8fFxuICAgICAgc3RhdGUgPT09IFJFTkRFUl9TVEFURS5DTE9TSU5HXG4gICAgICAgID8gJyM3YWM5NDMnXG4gICAgICAgIDogJyMwMDAnLFxuICAgIHN0cm9rZVdpZHRoOlxuICAgICAgc3RhdGUgPT09IFJFTkRFUl9TVEFURS5TRUxFQ1RFRCB8fCBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLkNMT1NJTkdcbiAgICAgICAgPyBISUdITElHSFRFRF9TVFJPS0VfV0lEVEhcbiAgICAgICAgOiBERUZBVUxUX1NUUk9LRV9XSURUSCxcbiAgICByOiBERUZBVUxUX1JBRElVU1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlclR5cGUgPSBmZWF0dXJlLnByb3BlcnRpZXMgPyBmZWF0dXJlLnByb3BlcnRpZXMucmVuZGVyVHlwZSA6IGZlYXR1cmUucmVuZGVyVHlwZTtcblxuICBzd2l0Y2ggKHJlbmRlclR5cGUpIHtcbiAgICBjYXNlIFJFTkRFUl9UWVBFLlBPSU5UOlxuICAgICAgc3R5bGUuZmlsbCA9XG4gICAgICAgIHN0YXRlID09PSBSRU5ERVJfU1RBVEUuSU5BQ1RJVkVcbiAgICAgICAgICA/ICcjMzMzMzMzJ1xuICAgICAgICAgIDogc3RhdGUgPT09IFJFTkRFUl9TVEFURS5TRUxFQ1RFRFxuICAgICAgICAgID8gJyNmZmZmMDAnXG4gICAgICAgICAgOiBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLkhPVkVSRURcbiAgICAgICAgICA/ICcjN2FjOTQzJ1xuICAgICAgICAgIDogc3RhdGUgPT09IFJFTkRFUl9TVEFURS5VTkNPTU1JVFRFRFxuICAgICAgICAgID8gJ25vbmUnXG4gICAgICAgICAgOiAnIzAwMDAwMCc7XG4gICAgICBzdHlsZS5zdHJva2UgPVxuICAgICAgICBzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLlNFTEVDVEVEXG4gICAgICAgICAgPyAnIzdhYzk0MydcbiAgICAgICAgICA6IHN0YXRlID09PSBSRU5ERVJfU1RBVEUuVU5DT01NSVRURURcbiAgICAgICAgICA/ICdub25lJ1xuICAgICAgICAgIDogJyMwMDAnO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBSRU5ERVJfVFlQRS5MSU5FX1NUUklORzpcbiAgICBjYXNlIFJFTkRFUl9UWVBFLlBPTFlHT046XG4gICAgY2FzZSBSRU5ERVJfVFlQRS5SRUNUQU5HTEU6XG4gICAgICBpZiAoc3RhdGUgPT09IFJFTkRFUl9TVEFURS5DTE9TSU5HKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oc3R5bGUsIENMT1NJTkdfUkVDVF9TVFlMRSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBPYmplY3QuYXNzaWduKHN0eWxlLCBSRUNUX1NUWUxFKTtcbiAgICAgIH1cbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gIH1cblxuICByZXR1cm4gc3R5bGU7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBRUEsSUFBQUEsVUFBQSxHQUFBQyxPQUFBO0FBRkE7QUFDQTs7QUFHQSxJQUFNQyxVQUFVLEdBQUc7RUFDakJDLENBQUMsRUFBRSxDQUFDLENBQUM7RUFDTEMsQ0FBQyxFQUFFLENBQUMsQ0FBQztFQUNMQyxNQUFNLEVBQUUsRUFBRTtFQUNWQyxLQUFLLEVBQUU7QUFDVCxDQUFDO0FBRUQsSUFBTUMsa0JBQWtCLEdBQUc7RUFDekJKLENBQUMsRUFBRSxDQUFDLEVBQUU7RUFDTkMsQ0FBQyxFQUFFLENBQUMsRUFBRTtFQUNOQyxNQUFNLEVBQUUsRUFBRTtFQUNWQyxLQUFLLEVBQUU7QUFDVCxDQUFDO0FBRUQsSUFBTUUsb0JBQW9CLEdBQUcsQ0FBQztBQUM5QixJQUFNQyx3QkFBd0IsR0FBRyxDQUFDO0FBQ2xDLElBQU1DLGNBQWMsR0FBRyxDQUFDO0FBRWpCLElBQU1DLHNCQUFzQixHQUFBQyxPQUFBLENBQUFELHNCQUFBLEdBQUc7RUFDcENFLElBQUksRUFBRSxNQUFNO0VBQ1pDLE9BQU8sRUFBRTtBQUNYLENBQUM7QUFFTSxTQUFTQyxlQUFlQSxDQUFBQyxJQUFBLEVBQW1CO0VBQUEsSUFBakJDLE9BQU8sR0FBQUQsSUFBQSxDQUFQQyxPQUFPO0lBQUVDLEtBQUssR0FBQUYsSUFBQSxDQUFMRSxLQUFLO0VBQzdDLElBQU1DLEtBQUssR0FBRztJQUNaQyxNQUFNLEVBQ0pG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QVcsR0FDbEMsR0FBRyxHQUNILENBQUM7SUFDUEosTUFBTSxFQUNKRixLQUFLLEtBQUtHLHVCQUFZLENBQUNDLFFBQVEsSUFDL0JKLEtBQUssS0FBS0csdUJBQVksQ0FBQ0UsT0FBTyxJQUM5QkwsS0FBSyxLQUFLRyx1QkFBWSxDQUFDSSxPQUFPLEdBQzFCLFNBQVMsR0FDVCxNQUFNO0lBQ1pDLFdBQVcsRUFDVFIsS0FBSyxLQUFLRyx1QkFBWSxDQUFDQyxRQUFRLElBQUlKLEtBQUssS0FBS0csdUJBQVksQ0FBQ0ksT0FBTyxHQUM3RGhCLHdCQUF3QixHQUN4QkQsb0JBQW9CO0lBQzFCeUIsQ0FBQyxFQUFFdkI7RUFDTCxDQUFDO0VBRUQsSUFBTW1CLFVBQVUsR0FBR1osT0FBTyxDQUFDYSxVQUFVLEdBQUdiLE9BQU8sQ0FBQ2EsVUFBVSxDQUFDRCxVQUFVLEdBQUdaLE9BQU8sQ0FBQ1ksVUFBVTtFQUUxRixRQUFRQSxVQUFVO0lBQ2hCLEtBQUtFLHNCQUFXLENBQUNDLEtBQUs7TUFDcEJiLEtBQUssQ0FBQ04sSUFBSSxHQUNSSyxLQUFLLEtBQUtHLHVCQUFZLENBQUNNLFFBQVEsR0FDM0IsU0FBUyxHQUNUVCxLQUFLLEtBQUtHLHVCQUFZLENBQUNDLFFBQVEsR0FDL0IsU0FBUyxHQUNUSixLQUFLLEtBQUtHLHVCQUFZLENBQUNFLE9BQU8sR0FDOUIsU0FBUyxHQUNUTCxLQUFLLEtBQUtHLHVCQUFZLENBQUNHLFdBQVcsR0FDbEMsTUFBTSxHQUNOLFNBQVM7TUFDZkwsS0FBSyxDQUFDQyxNQUFNLEdBQ1ZGLEtBQUssS0FBS0csdUJBQVksQ0FBQ0MsUUFBUSxHQUMzQixTQUFTLEdBQ1RKLEtBQUssS0FBS0csdUJBQVksQ0FBQ0csV0FBVyxHQUNsQyxNQUFNLEdBQ04sTUFBTTtNQUNaO0lBQ0YsS0FBS08sc0JBQVcsQ0FBQ0csV0FBVztJQUM1QixLQUFLSCxzQkFBVyxDQUFDSSxPQUFPO0lBQ3hCLEtBQUtKLHNCQUFXLENBQUNNLFNBQVM7TUFDeEIsSUFBSW5CLEtBQUssS0FBS0csdUJBQVksQ0FBQ0ksT0FBTyxFQUFFO1FBQ2xDZ0IsTUFBTSxDQUFDQyxNQUFNLENBQUN2QixLQUFLLEVBQUVaLGtCQUFrQixDQUFDO01BQzFDLENBQUMsTUFBTTtRQUNMa0MsTUFBTSxDQUFDQyxNQUFNLENBQUN2QixLQUFLLEVBQUVqQixVQUFVLENBQUM7TUFDbEM7TUFDQTtJQUNGO0VBQ0Y7RUFFQSxPQUFPaUIsS0FBSztBQUNkIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.findClosestPointOnLineSegment = findClosestPointOnLineSegment;
7
+ exports.isNumeric = isNumeric;
8
+ exports.parseElemDataAttributes = parseElemDataAttributes;
9
+ // Vendored from react-map-gl-draw@0.14.8 (MIT, Copyright (c) 2018 Uber Technologies, Inc.), see ./LICENSE
10
+
11
+ function inBounds(p1, p2, p) {
12
+ var bounds = [Math.min(p1[0], p2[0]), Math.max(p1[0], p2[0]), Math.min(p1[1], p2[1]), Math.max(p1[1], p2[1])];
13
+ return p[0] >= bounds[0] && p[0] <= bounds[1] && p[1] >= bounds[2] && p[1] <= bounds[3];
14
+ }
15
+ function findClosestPointOnLineSegment(p1, p2, p) {
16
+ // line
17
+ var k = (p2[1] - p1[1]) / (p2[0] - p1[0]);
18
+ var b = p1[1] - k * p1[0];
19
+
20
+ // vertical line
21
+ if (!isFinite(k)) {
22
+ var q = [p1[0], p[1]];
23
+ return inBounds(p1, p2, q) ? q : null;
24
+ }
25
+
26
+ // p is on line [p1, p2]
27
+ if (p[0] * k + b - p[1] === 0) {
28
+ return inBounds(p1, p2, p) ? p : null;
29
+ }
30
+ var qx = (k * p[1] + p[0] - k * b) / (k * k + 1);
31
+ var qy = k * qx + b;
32
+ return inBounds(p1, p2, [qx, qy]) ? [qx, qy] : null;
33
+ }
34
+ function isNumeric(n) {
35
+ return !Array.isArray(n) && !isNaN(parseFloat(n)) && isFinite(n);
36
+ }
37
+ function parseElemDataAttributes(elem) {
38
+ var data = elem && elem.dataset;
39
+ if (!data) {
40
+ return null;
41
+ }
42
+ var featureIndex = data.featureIndex;
43
+ var vertexIndex = data.vertexIndex;
44
+ return {
45
+ type: data.type,
46
+ operation: data.operation,
47
+ featureIndex: isNumeric(featureIndex) ? Number(featureIndex) : undefined,
48
+ vertexIndex: isNumeric(vertexIndex) ? Number(vertexIndex) : undefined
49
+ };
50
+ }
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbkJvdW5kcyIsInAxIiwicDIiLCJwIiwiYm91bmRzIiwiTWF0aCIsIm1pbiIsIm1heCIsImZpbmRDbG9zZXN0UG9pbnRPbkxpbmVTZWdtZW50IiwiayIsImIiLCJpc0Zpbml0ZSIsInEiLCJxeCIsInF5IiwiaXNOdW1lcmljIiwibiIsIkFycmF5IiwiaXNBcnJheSIsImlzTmFOIiwicGFyc2VGbG9hdCIsInBhcnNlRWxlbURhdGFBdHRyaWJ1dGVzIiwiZWxlbSIsImRhdGEiLCJkYXRhc2V0IiwiZmVhdHVyZUluZGV4IiwidmVydGV4SW5kZXgiLCJ0eXBlIiwib3BlcmF0aW9uIiwiTnVtYmVyIiwidW5kZWZpbmVkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ZlbmRvci9yZWFjdC1tYXAtZ2wtZHJhdy91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBWZW5kb3JlZCBmcm9tIHJlYWN0LW1hcC1nbC1kcmF3QDAuMTQuOCAoTUlULCBDb3B5cmlnaHQgKGMpIDIwMTggVWJlciBUZWNobm9sb2dpZXMsIEluYy4pLCBzZWUgLi9MSUNFTlNFXG5cbmZ1bmN0aW9uIGluQm91bmRzKHAxLCBwMiwgcCkge1xuICBjb25zdCBib3VuZHMgPSBbXG4gICAgTWF0aC5taW4ocDFbMF0sIHAyWzBdKSxcbiAgICBNYXRoLm1heChwMVswXSwgcDJbMF0pLFxuICAgIE1hdGgubWluKHAxWzFdLCBwMlsxXSksXG4gICAgTWF0aC5tYXgocDFbMV0sIHAyWzFdKVxuICBdO1xuXG4gIHJldHVybiBwWzBdID49IGJvdW5kc1swXSAmJiBwWzBdIDw9IGJvdW5kc1sxXSAmJiBwWzFdID49IGJvdW5kc1syXSAmJiBwWzFdIDw9IGJvdW5kc1szXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRDbG9zZXN0UG9pbnRPbkxpbmVTZWdtZW50KHAxLCBwMiwgcCkge1xuICAvLyBsaW5lXG4gIGNvbnN0IGsgPSAocDJbMV0gLSBwMVsxXSkgLyAocDJbMF0gLSBwMVswXSk7XG4gIGNvbnN0IGIgPSBwMVsxXSAtIGsgKiBwMVswXTtcblxuICAvLyB2ZXJ0aWNhbCBsaW5lXG4gIGlmICghaXNGaW5pdGUoaykpIHtcbiAgICBjb25zdCBxID0gW3AxWzBdLCBwWzFdXTtcbiAgICByZXR1cm4gaW5Cb3VuZHMocDEsIHAyLCBxKSA/IHEgOiBudWxsO1xuICB9XG5cbiAgLy8gcCBpcyBvbiBsaW5lIFtwMSwgcDJdXG4gIGlmIChwWzBdICogayArIGIgLSBwWzFdID09PSAwKSB7XG4gICAgcmV0dXJuIGluQm91bmRzKHAxLCBwMiwgcCkgPyBwIDogbnVsbDtcbiAgfVxuXG4gIGNvbnN0IHF4ID0gKGsgKiBwWzFdICsgcFswXSAtIGsgKiBiKSAvIChrICogayArIDEpO1xuICBjb25zdCBxeSA9IGsgKiBxeCArIGI7XG5cbiAgcmV0dXJuIGluQm91bmRzKHAxLCBwMiwgW3F4LCBxeV0pID8gW3F4LCBxeV0gOiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNOdW1lcmljKG4pIHtcbiAgcmV0dXJuICFBcnJheS5pc0FycmF5KG4pICYmICFpc05hTihwYXJzZUZsb2F0KG4pKSAmJiBpc0Zpbml0ZShuKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlRWxlbURhdGFBdHRyaWJ1dGVzKGVsZW0pIHtcbiAgY29uc3QgZGF0YSA9IGVsZW0gJiYgZWxlbS5kYXRhc2V0O1xuICBpZiAoIWRhdGEpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IGZlYXR1cmVJbmRleCA9IGRhdGEuZmVhdHVyZUluZGV4O1xuICBjb25zdCB2ZXJ0ZXhJbmRleCA9IGRhdGEudmVydGV4SW5kZXg7XG5cbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBkYXRhLnR5cGUsXG4gICAgb3BlcmF0aW9uOiBkYXRhLm9wZXJhdGlvbixcbiAgICBmZWF0dXJlSW5kZXg6IGlzTnVtZXJpYyhmZWF0dXJlSW5kZXgpID8gTnVtYmVyKGZlYXR1cmVJbmRleCkgOiB1bmRlZmluZWQsXG4gICAgdmVydGV4SW5kZXg6IGlzTnVtZXJpYyh2ZXJ0ZXhJbmRleCkgPyBOdW1iZXIodmVydGV4SW5kZXgpIDogdW5kZWZpbmVkXG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBRUEsU0FBU0EsUUFBUUEsQ0FBQ0MsRUFBRSxFQUFFQyxFQUFFLEVBQUVDLENBQUMsRUFBRTtFQUMzQixJQUFNQyxNQUFNLEdBQUcsQ0FDYkMsSUFBSSxDQUFDQyxHQUFHLENBQUNMLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3RCRyxJQUFJLENBQUNFLEdBQUcsQ0FBQ04sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDdEJHLElBQUksQ0FBQ0MsR0FBRyxDQUFDTCxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUVDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN0QkcsSUFBSSxDQUFDRSxHQUFHLENBQUNOLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3ZCO0VBRUQsT0FBT0MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUlELENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJRCxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUlDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ3pGO0FBRU8sU0FBU0ksNkJBQTZCQSxDQUFDUCxFQUFFLEVBQUVDLEVBQUUsRUFBRUMsQ0FBQyxFQUFFO0VBQ3ZEO0VBQ0EsSUFBTU0sQ0FBQyxHQUFHLENBQUNQLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBR0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUdELEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUMzQyxJQUFNUyxDQUFDLEdBQUdULEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBR1EsQ0FBQyxHQUFHUixFQUFFLENBQUMsQ0FBQyxDQUFDOztFQUUzQjtFQUNBLElBQUksQ0FBQ1UsUUFBUSxDQUFDRixDQUFDLENBQUMsRUFBRTtJQUNoQixJQUFNRyxDQUFDLEdBQUcsQ0FBQ1gsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsT0FBT0gsUUFBUSxDQUFDQyxFQUFFLEVBQUVDLEVBQUUsRUFBRVUsQ0FBQyxDQUFDLEdBQUdBLENBQUMsR0FBRyxJQUFJO0VBQ3ZDOztFQUVBO0VBQ0EsSUFBSVQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHTSxDQUFDLEdBQUdDLENBQUMsR0FBR1AsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRTtJQUM3QixPQUFPSCxRQUFRLENBQUNDLEVBQUUsRUFBRUMsRUFBRSxFQUFFQyxDQUFDLENBQUMsR0FBR0EsQ0FBQyxHQUFHLElBQUk7RUFDdkM7RUFFQSxJQUFNVSxFQUFFLEdBQUcsQ0FBQ0osQ0FBQyxHQUFHTixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUdBLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBR00sQ0FBQyxHQUFHQyxDQUFDLEtBQUtELENBQUMsR0FBR0EsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNsRCxJQUFNSyxFQUFFLEdBQUdMLENBQUMsR0FBR0ksRUFBRSxHQUFHSCxDQUFDO0VBRXJCLE9BQU9WLFFBQVEsQ0FBQ0MsRUFBRSxFQUFFQyxFQUFFLEVBQUUsQ0FBQ1csRUFBRSxFQUFFQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUNELEVBQUUsRUFBRUMsRUFBRSxDQUFDLEdBQUcsSUFBSTtBQUNyRDtBQUVPLFNBQVNDLFNBQVNBLENBQUNDLENBQUMsRUFBRTtFQUMzQixPQUFPLENBQUNDLEtBQUssQ0FBQ0MsT0FBTyxDQUFDRixDQUFDLENBQUMsSUFBSSxDQUFDRyxLQUFLLENBQUNDLFVBQVUsQ0FBQ0osQ0FBQyxDQUFDLENBQUMsSUFBSUwsUUFBUSxDQUFDSyxDQUFDLENBQUM7QUFDbEU7QUFFTyxTQUFTSyx1QkFBdUJBLENBQUNDLElBQUksRUFBRTtFQUM1QyxJQUFNQyxJQUFJLEdBQUdELElBQUksSUFBSUEsSUFBSSxDQUFDRSxPQUFPO0VBQ2pDLElBQUksQ0FBQ0QsSUFBSSxFQUFFO0lBQ1QsT0FBTyxJQUFJO0VBQ2I7RUFFQSxJQUFNRSxZQUFZLEdBQUdGLElBQUksQ0FBQ0UsWUFBWTtFQUN0QyxJQUFNQyxXQUFXLEdBQUdILElBQUksQ0FBQ0csV0FBVztFQUVwQyxPQUFPO0lBQ0xDLElBQUksRUFBRUosSUFBSSxDQUFDSSxJQUFJO0lBQ2ZDLFNBQVMsRUFBRUwsSUFBSSxDQUFDSyxTQUFTO0lBQ3pCSCxZQUFZLEVBQUVWLFNBQVMsQ0FBQ1UsWUFBWSxDQUFDLEdBQUdJLE1BQU0sQ0FBQ0osWUFBWSxDQUFDLEdBQUdLLFNBQVM7SUFDeEVKLFdBQVcsRUFBRVgsU0FBUyxDQUFDVyxXQUFXLENBQUMsR0FBR0csTUFBTSxDQUFDSCxXQUFXLENBQUMsR0FBR0k7RUFDOUQsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@carto/kepler.gl",
3
3
  "author": "CARTO",
4
4
  "homepage": "https://github.com/CartoDB/carto-kepler#readme",
5
- "version": "0.0.88",
5
+ "version": "0.0.89",
6
6
  "description": "kepler.gl is a webgl based application to visualize large scale location data in the browser",
7
7
  "license": "MIT",
8
8
  "type": "commonjs",
@@ -128,6 +128,7 @@
128
128
  "@mapbox/geo-viewport": "^0.4.1",
129
129
  "@mapbox/geojson-normalize": "0.0.1",
130
130
  "@mapbox/vector-tile": "^1.3.1",
131
+ "@nebula.gl/edit-modes": "0.14.0",
131
132
  "@reduxjs/toolkit": "^1.7.2",
132
133
  "@tippyjs/react": "^4.2.0",
133
134
  "@turf/bbox": "^6.0.1",
@@ -155,7 +156,7 @@
155
156
  "d3-array": "^2.8.0",
156
157
  "d3-axis": "^2.0.0",
157
158
  "d3-brush": "^2.1.0",
158
- "d3-color": "^2.0.0",
159
+ "d3-color": "3.1.0",
159
160
  "d3-dsv": "^2.0.0",
160
161
  "d3-format": "^2.0.0",
161
162
  "d3-hexbin": "^0.2.2",
@@ -180,14 +181,13 @@
180
181
  "react-json-pretty": "^2.2.0",
181
182
  "react-lifecycles-compat": "^3.0.4",
182
183
  "react-map-gl": "^5.0.3",
183
- "react-map-gl-draw": "0.14.8",
184
184
  "react-markdown": "^5.0.2",
185
185
  "react-modal": "^3.8.1",
186
186
  "react-onclickoutside": "^6.7.1",
187
187
  "react-palm": "^3.3.7",
188
188
  "react-redux": "^7.1.3",
189
189
  "react-sortable-hoc": "^1.8.3",
190
- "react-tooltip": "^4.2.10",
190
+ "react-tooltip": "^6.0.8",
191
191
  "react-virtualized": "git+https://git@github.com/remorses/react-virtualized-fixed-import.git#9.22.3",
192
192
  "react-vis": "^1.8.0",
193
193
  "redux": "^4.0.5",
@@ -196,6 +196,7 @@
196
196
  "resize-observer-polyfill": "^1.5.1",
197
197
  "s2-geometry": "^1.2.10",
198
198
  "supercluster": "^7.1.0",
199
+ "uuid": "^11.1.1",
199
200
  "viewport-mercator-project": "^6.0.0",
200
201
  "wellknown": "^0.5.0"
201
202
  },
@@ -65,7 +65,7 @@ export const IconButton = styled(Button)<IconButtonProps>`
65
65
  border: 0;
66
66
  padding: 0;
67
67
 
68
- .__react_component_tooltip {
68
+ .react-tooltip {
69
69
  font-family: ${props => props.theme.fontFamily};
70
70
  }
71
71
  svg {
@@ -130,8 +130,7 @@ export const AnimationWindowControl = ({
130
130
  .map(item => (
131
131
  <IconButton
132
132
  key={item.id}
133
- data-tip
134
- data-for={`${item.id}-tooltip`}
133
+ data-tooltip-id={`${item.id}-tooltip`}
135
134
  className="playback-control-button"
136
135
  onClick={() => {
137
136
  onClick?.(item.id);
@@ -141,7 +140,7 @@ export const AnimationWindowControl = ({
141
140
  >
142
141
  <item.icon height={height} />
143
142
  {item.tooltip ? (
144
- <Tooltip id={`${item.id}-tooltip`} effect="solid" place="top">
143
+ <Tooltip id={`${item.id}-tooltip`} place="top">
145
144
  <FormattedMessage id={item.tooltip} />
146
145
  </Tooltip>
147
146
  ) : null}
@@ -215,8 +214,7 @@ function PlaybackControlsFactory(
215
214
  {/** Window */}
216
215
  {setFilterAnimationWindow ? (
217
216
  <IconButton
218
- data-tip
219
- data-for="animate-window"
217
+ data-tooltip-id="animate-window"
220
218
  className={classnames('playback-control-button', {active: showAnimationWindowControl})}
221
219
  onClick={toggleAnimationWindowControl}
222
220
  {...btnStyle}
@@ -229,7 +227,7 @@ function PlaybackControlsFactory(
229
227
  return null;
230
228
  })()}
231
229
  {animationItems[animationWindow] && animationItems[animationWindow].tooltip ? (
232
- <Tooltip id="animate-window" place="top" delayShow={500} effect="solid">
230
+ <Tooltip id="animate-window" place="top" delayShow={500}>
233
231
  <FormattedMessage id={animationItems[animationWindow].tooltip} />
234
232
  </Tooltip>
235
233
  ) : null}
@@ -251,14 +249,13 @@ function PlaybackControlsFactory(
251
249
  {showAnimationWindowControl || !updateAnimationSpeed ? null : (
252
250
  <StyledSpeedControl>
253
251
  <IconButton
254
- data-tip
255
- data-for="animate-speed"
252
+ data-tooltip-id="animate-speed"
256
253
  className="playback-control-button"
257
254
  {...btnStyle}
258
255
  onClick={hideAndShowSpeedControl}
259
256
  >
260
257
  <playbackIcons.speed height={buttonHeight} />
261
- <Tooltip id="animate-speed" place="top" delayShow={DELAY_SHOW} effect="solid">
258
+ <Tooltip id="animate-speed" place="top" delayShow={DELAY_SHOW}>
262
259
  <span>{preciseRound(speed, 1)}x</span>
263
260
  </Tooltip>
264
261
  </IconButton>
@@ -275,14 +272,13 @@ function PlaybackControlsFactory(
275
272
  {/** Reset */}
276
273
  {showAnimationWindowControl ? null : (
277
274
  <IconButton
278
- data-tip
279
- data-for="animate-reset"
275
+ data-tooltip-id="animate-reset"
280
276
  className="playback-control-button"
281
277
  onClick={resetAnimation}
282
278
  {...btnStyle}
283
279
  >
284
280
  <playbackIcons.reset height={buttonHeight} />
285
- <Tooltip id="animate-reset" place="top" delayShow={DELAY_SHOW} effect="solid">
281
+ <Tooltip id="animate-reset" place="top" delayShow={DELAY_SHOW}>
286
282
  <FormattedMessage id="tooltip.reset" />
287
283
  </Tooltip>
288
284
  </IconButton>
@@ -291,8 +287,7 @@ function PlaybackControlsFactory(
291
287
  {/** Play and pause */}
292
288
  {showAnimationWindowControl ? null : (
293
289
  <IconButton
294
- data-tip
295
- data-for="animate-play-pause"
290
+ data-tooltip-id="animate-play-pause"
296
291
  className={classnames('playback-control-button', {active: isAnimating})}
297
292
  onClick={isAnimating ? pauseAnimation : startAnimation}
298
293
  {...btnStyle}
@@ -302,7 +297,7 @@ function PlaybackControlsFactory(
302
297
  ) : (
303
298
  <playbackIcons.play height={buttonHeight} />
304
299
  )}
305
- <Tooltip id="animate-play-pause" place="top" delayShow={DELAY_SHOW} effect="solid">
300
+ <Tooltip id="animate-play-pause" place="top" delayShow={DELAY_SHOW}>
306
301
  <FormattedMessage id={isAnimating ? 'tooltip.pause' : 'tooltip.play'} />
307
302
  </Tooltip>
308
303
  </IconButton>
@@ -63,11 +63,10 @@ function InfoHelperFactory() {
63
63
  <StyledInfoHelper
64
64
  className={`info-helper ${containerClass || ''}`}
65
65
  width={width}
66
- data-tip
67
- data-for={id}
66
+ data-tooltip-id={id}
68
67
  >
69
68
  {children ? children : <Docs height="16px" />}
70
- <Tooltip id={id} effect="solid">
69
+ <Tooltip id={id}>
71
70
  <div className="info-helper__content">
72
71
  {description && (
73
72
  <FormattedMessage
@@ -18,8 +18,9 @@
18
18
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
19
  // THE SOFTWARE.
20
20
 
21
+ import React from 'react';
21
22
  import styled from 'styled-components';
22
- import ReactTooltip from 'react-tooltip';
23
+ import {Tooltip as ReactTooltip} from 'react-tooltip';
23
24
  import {media} from 'styles/media-breakpoints';
24
25
  import classnames from 'classnames';
25
26
  import {RGBColor} from 'reducers';
@@ -163,40 +164,25 @@ export const SidePanelDivider = styled.div.attrs({
163
164
  height: ${props => props.theme.sidepanelDividerHeight}px;
164
165
  `;
165
166
 
166
- export const Tooltip = styled(ReactTooltip)`
167
- &.__react_component_tooltip {
167
+ // v4 tooltips were position: fixed, which lets them escape overflow-hidden side panels
168
+ const FixedTooltip = (props: React.ComponentProps<typeof ReactTooltip>) => (
169
+ <ReactTooltip positionStrategy="fixed" {...props} />
170
+ );
171
+
172
+ export const Tooltip = styled(FixedTooltip)`
173
+ &.react-tooltip {
168
174
  font-size: ${props => props.theme.tooltipFontSize};
169
175
  font-weight: 400;
170
- padding: 7px 18px;
171
176
  box-shadow: ${props => props.theme.tooltipBoxShadow};
177
+ z-index: 999;
178
+ ${props =>
179
+ !props.variant || props.variant === 'dark'
180
+ ? `background-color: ${props.theme.tooltipBg}; color: ${props.theme.tooltipColor};`
181
+ : ''}
182
+ }
172
183
 
173
- &.type-dark {
174
- background-color: ${props => props.theme.tooltipBg};
175
- color: ${props => props.theme.tooltipColor};
176
- &.place-bottom {
177
- :after {
178
- border-bottom-color: ${props => props.theme.tooltipBg};
179
- }
180
- }
181
-
182
- &.place-top {
183
- :after {
184
- border-top-color: ${props => props.theme.tooltipBg};
185
- }
186
- }
187
-
188
- &.place-right {
189
- :after {
190
- border-right-color: ${props => props.theme.tooltipBg};
191
- }
192
- }
193
-
194
- &.place-left {
195
- :after {
196
- border-left-color: ${props => props.theme.tooltipBg};
197
- }
198
- }
199
- }
184
+ .react-tooltip-content-wrapper {
185
+ padding: 7px 18px;
200
186
  }
201
187
  `;
202
188