@cashub/ui 0.7.0 → 0.8.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.
|
@@ -71,7 +71,7 @@ var DatetimePicker = function DatetimePicker(_ref) {
|
|
|
71
71
|
});
|
|
72
72
|
};
|
|
73
73
|
|
|
74
|
-
var Wrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .react-datepicker-wrapper,\n .react-datepicker__input-container {\n > input {\n width: 100%;\n height: 36px;\n color: var(--color-white);\n background: transparent;\n border-radius: var(--border-radius-l);\n border: var(--border-width) solid var(--border-color);\n padding: 0 var(--spacing-s);\n outline: none;\n\n ", "\n }\n }\n\n .react-datepicker-popper[data-placement^='top'] {\n padding-bottom: var(--spacing-xs);\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n padding-top: var(--spacing-xs);\n }\n\n .react-datepicker {\n box-shadow: var(--box-shadow);\n border-radius: var(--border-radius);\n border: var(--border-width) solid var(--border-color);\n padding: var(--spacing-s);\n font-size: var(--font-body1);\n color: var(--color-white);\n background: var(--color-background1);\n\n .react-datepicker__triangle {\n &::before,\n &::after {\n display: none;\n }\n }\n\n .react-datepicker__header {\n border: none;\n padding: 0;\n background: var(--color-background1);\n }\n\n .react-datepicker__current-month {\n line-height: 36px;\n color: var(--color-white);\n font-size: var(--font-body1);\n font-weight: var(--font-normal);\n }\n\n .react-datepicker__day-names {\n margin: 0;\n }\n\n .react-datepicker__day-name,\n .react-datepicker__day {\n width: 36px;\n height: 36px;\n line-height: 36px;\n color: var(--color-white);\n font-weight: var(--font-normal);\n margin: 0;\n border-radius: 4px;\n }\n\n .react-datepicker__day:hover {\n background: var(--color-hover);\n }\n\n .react-datepicker__day--disabled {\n color: var(--font-on-mute);\n background: none !important;\n }\n }\n\n .react-datepicker__month {\n margin: 0;\n }\n\n .react-datepicker__navigation {\n top: 0;\n width: 36px;\n height: 36px;\n margin: var(--spacing-s) var(--spacing-s) 0 var(--spacing-s);\n border-radius: 4px;\n\n &.react-datepicker__navigation--previous {\n left: 0;\n }\n\n &.react-datepicker__navigation--next {\n right: 0;\n }\n\n &:hover {\n background: var(--color-hover);\n }\n\n .react-datepicker__navigation-icon::before {\n border-color: var(--color-white);\n }\n\n .react-datepicker__navigation-icon--previous::before {\n right: -4px;\n }\n\n .react-datepicker__navigation-icon--next::before {\n left: -4px;\n }\n }\n\n .react-datepicker__day--selected,\n .react-datepicker__day--in-selecting-range,\n .react-datepicker__day--in-range,\n .react-datepicker__month-text--selected,\n .react-datepicker__month-text--in-selecting-range,\n .react-datepicker__month-text--in-range,\n .react-datepicker__quarter-text--selected,\n .react-datepicker__quarter-text--in-selecting-range,\n .react-datepicker__quarter-text--in-range,\n .react-datepicker__year-text--selected,\n .react-datepicker__year-text--in-selecting-range,\n .react-datepicker__year-text--in-range {\n background: var(--color-primary) !important;\n }\n\n .react-datepicker__day--keyboard-selected,\n .react-datepicker__month-text--keyboard-selected,\n .react-datepicker__quarter-text--keyboard-selected,\n .react-datepicker__year-text--keyboard-selected {\n background: none;\n }\n\n .react-datepicker__input-time-container {\n margin: 0;\n margin-top: var(--spacing-s);\n margin-left: var(--spacing-xs);\n\n .react-datepicker-time__input input {\n height: 36px;\n padding: 0 var(--spacing-xs);\n border-radius: var(--border-radius);\n border: var(--border-width) solid var(--border-color);\n background: transparent;\n color: var(--font-on-background);\n outline: none;\n }\n }\n"])), function (_ref2) {
|
|
74
|
+
var Wrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .react-datepicker-wrapper,\n .react-datepicker__input-container {\n > input {\n width: 100%;\n height: 36px;\n color: var(--color-white);\n background: transparent;\n border-radius: var(--border-radius-l);\n border: var(--border-width) solid var(--border-color);\n padding: 0 var(--spacing-s);\n outline: none;\n\n ", "\n }\n }\n\n .react-datepicker-popper {\n z-index: 2;\n }\n\n .react-datepicker-popper[data-placement^='top'] {\n padding-bottom: var(--spacing-xs);\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n padding-top: var(--spacing-xs);\n }\n\n .react-datepicker {\n box-shadow: var(--box-shadow);\n border-radius: var(--border-radius);\n border: var(--border-width) solid var(--border-color);\n padding: var(--spacing-s);\n font-size: var(--font-body1);\n color: var(--color-white);\n background: var(--color-background1);\n\n .react-datepicker__triangle {\n &::before,\n &::after {\n display: none;\n }\n }\n\n .react-datepicker__header {\n border: none;\n padding: 0;\n background: var(--color-background1);\n }\n\n .react-datepicker__current-month {\n line-height: 36px;\n color: var(--color-white);\n font-size: var(--font-body1);\n font-weight: var(--font-normal);\n }\n\n .react-datepicker__day-names {\n margin: 0;\n }\n\n .react-datepicker__day-name,\n .react-datepicker__day {\n width: 36px;\n height: 36px;\n line-height: 36px;\n color: var(--color-white);\n font-weight: var(--font-normal);\n margin: 0;\n border-radius: 4px;\n }\n\n .react-datepicker__day:hover {\n background: var(--color-hover);\n }\n\n .react-datepicker__day--disabled {\n color: var(--font-on-mute);\n background: none !important;\n }\n }\n\n .react-datepicker__month {\n margin: 0;\n }\n\n .react-datepicker__navigation {\n top: 0;\n width: 36px;\n height: 36px;\n margin: var(--spacing-s) var(--spacing-s) 0 var(--spacing-s);\n border-radius: 4px;\n\n &.react-datepicker__navigation--previous {\n left: 0;\n }\n\n &.react-datepicker__navigation--next {\n right: 0;\n }\n\n &:hover {\n background: var(--color-hover);\n }\n\n .react-datepicker__navigation-icon::before {\n border-color: var(--color-white);\n }\n\n .react-datepicker__navigation-icon--previous::before {\n right: -4px;\n }\n\n .react-datepicker__navigation-icon--next::before {\n left: -4px;\n }\n }\n\n .react-datepicker__day--selected,\n .react-datepicker__day--in-selecting-range,\n .react-datepicker__day--in-range,\n .react-datepicker__month-text--selected,\n .react-datepicker__month-text--in-selecting-range,\n .react-datepicker__month-text--in-range,\n .react-datepicker__quarter-text--selected,\n .react-datepicker__quarter-text--in-selecting-range,\n .react-datepicker__quarter-text--in-range,\n .react-datepicker__year-text--selected,\n .react-datepicker__year-text--in-selecting-range,\n .react-datepicker__year-text--in-range {\n background: var(--color-primary) !important;\n }\n\n .react-datepicker__day--keyboard-selected,\n .react-datepicker__month-text--keyboard-selected,\n .react-datepicker__quarter-text--keyboard-selected,\n .react-datepicker__year-text--keyboard-selected {\n background: none;\n }\n\n .react-datepicker__input-time-container {\n margin: 0;\n margin-top: var(--spacing-s);\n margin-left: var(--spacing-xs);\n\n .react-datepicker-time__input input {\n height: 36px;\n padding: 0 var(--spacing-xs);\n border-radius: var(--border-radius);\n border: var(--border-width) solid var(--border-color);\n background: transparent;\n color: var(--font-on-background);\n outline: none;\n }\n }\n"])), function (_ref2) {
|
|
75
75
|
var disabled = _ref2.disabled;
|
|
76
76
|
return disabled ? 'cursor: not-allowed ; opacity: 0.5;' : '';
|
|
77
77
|
});
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports.default = void 0;
|
|
7
9
|
|
|
8
|
-
var _styledComponents =
|
|
10
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
9
11
|
|
|
10
12
|
var _rcTimePicker = _interopRequireDefault(require("rc-time-picker"));
|
|
11
13
|
|
|
@@ -13,10 +15,14 @@ require("rc-time-picker/assets/index.css");
|
|
|
13
15
|
|
|
14
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
17
|
|
|
16
|
-
var _templateObject;
|
|
18
|
+
var _templateObject, _templateObject2;
|
|
17
19
|
|
|
18
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
21
|
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
+
|
|
24
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
|
+
|
|
20
26
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
21
27
|
|
|
22
28
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -27,11 +33,15 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
27
33
|
|
|
28
34
|
var TimeInput = function TimeInput(props) {
|
|
29
35
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Wrapper, {
|
|
36
|
+
disabled: props.disabled,
|
|
30
37
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_rcTimePicker.default, _objectSpread({}, props))
|
|
31
38
|
});
|
|
32
39
|
};
|
|
33
40
|
|
|
34
|
-
var Wrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .rc-time-picker {\n width: 100%;\n\n .rc-time-picker-input {\n height: 36px;\n border-radius: var(--border-radius);\n border: var(--border-width) solid var(--border-color);\n padding: 10px var(--spacing-s);\n color: var(--font-on-background);\n background: transparent;\n font-size: var(--font-body1);\n\n &:focus {\n border: var(--border-width) solid var(--color-primary);\n outline: none;\n }\n }\n\n .rc-time-picker-clear {\n top: 6px;\n right: 8px;\n\n i:after {\n font-size: var(--font-body1);\n }\n }\n }\n"])))
|
|
41
|
+
var Wrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .rc-time-picker {\n width: 100%;\n\n .rc-time-picker-input {\n height: 36px;\n border-radius: var(--border-radius);\n border: var(--border-width) solid var(--border-color);\n padding: 10px var(--spacing-s);\n color: var(--font-on-background);\n background: transparent;\n font-size: var(--font-body1);\n\n ", ";\n\n &:focus {\n border: var(--border-width) solid var(--color-primary);\n outline: none;\n }\n }\n\n .rc-time-picker-clear {\n top: 6px;\n right: 8px;\n\n i:after {\n font-size: var(--font-body1);\n }\n }\n }\n"])), function (_ref) {
|
|
42
|
+
var disabled = _ref.disabled;
|
|
43
|
+
return disabled && (0, _styledComponents.css)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n opacity: 0.5;\n "])));
|
|
44
|
+
});
|
|
35
45
|
|
|
36
46
|
var _default = TimeInput;
|
|
37
47
|
exports.default = _default;
|
|
@@ -15,7 +15,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
15
|
|
|
16
16
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
17
17
|
|
|
18
|
-
var CustomLeafletMapContainer = (0, _styledComponents.default)(_reactLeaflet.MapContainer)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 100%;\n height: ", "px;\n border-radius: var(--border-radius);\n z-index: 1;\n\n &:focus {\n border: 1px solid var(--border-color);\n box-shadow: var(--box-shadow);\n }\n\n .leaflet-control-container {\n .leaflet-
|
|
18
|
+
var CustomLeafletMapContainer = (0, _styledComponents.default)(_reactLeaflet.MapContainer)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 100%;\n height: ", "px;\n border-radius: var(--border-radius);\n z-index: 1;\n\n &:focus {\n border: 1px solid var(--border-color);\n box-shadow: var(--box-shadow);\n }\n\n .leaflet-control-container {\n .leaflet-control-zoom {\n box-shadow: var(--box-shadow);\n border-radius: var(--border-radius);\n\n a {\n background: transparent;\n border-bottom: 1px solid var(--border-color);\n color: #fff;\n\n &:last-child {\n border-bottom: none;\n }\n\n &.leaflet-disabled {\n opacity: 0.5;\n }\n }\n }\n\n .leaflet-draw {\n box-shadow: var(--box-shadow);\n border-radius: var(--border-radius);\n\n a {\n background-color: var(--color-background1);\n }\n\n .leaflet-draw-draw-polyline {\n background-position: -3px -3px;\n }\n\n .leaflet-draw-draw-polygon {\n background-position: -32px -3px;\n }\n\n .leaflet-draw-draw-rectangle {\n background-position: -63px -3px;\n }\n\n .leaflet-draw-draw-circle {\n background-position: -93px -3px;\n }\n\n .leaflet-draw-draw-marker {\n background-position: -123px -3px;\n }\n\n .leaflet-draw-draw-circlemarker {\n background-position: -273px -3px;\n }\n\n .leaflet-draw-edit-edit {\n background-position: -213px -3px;\n }\n\n .leaflet-draw-edit-remove {\n background-position: -243px -3px;\n }\n }\n\n .leaflet-left .leaflet-control {\n margin-left: var(--spacing-s);\n }\n\n .leaflet-right .leaflet-control {\n margin-right: var(--spacing-s);\n }\n\n .leaflet-top .leaflet-control {\n margin-top: var(--spacing-s);\n }\n\n .leaflet-control {\n font-weight: bold;\n background: var(--color-background1);\n\n &.leaflet-control-attribution {\n background: var(--font-on-mute);\n margin: 0;\n }\n }\n }\n\n .leaflet-edit-move {\n border-radius: 50px;\n border-color: var(--border-color);\n }\n\n .leaflet-edit-resize {\n border-radius: 50px;\n border-color: var(--border-color);\n }\n\n &.leaflet-touch {\n .leaflet-bar {\n border: none;\n\n a {\n width: 24px;\n height: 24px;\n line-height: 24px;\n }\n }\n\n .leaflet-left .leaflet-control {\n margin-left: var(--spacing-s);\n }\n\n .leaflet-right .leaflet-control {\n margin-right: var(--spacing-s);\n }\n\n .leaflet-top .leaflet-control {\n margin-top: var(--spacing-s);\n }\n }\n\n .marker-cluster {\n background: var(--color-primary) a1;\n\n div {\n background: var(--color-primary);\n }\n }\n\n .leaflet-popup-content-wrapper {\n background: transparent;\n box-shadow: unset;\n }\n\n .leaflet-popup-tip {\n display: none;\n }\n\n .sr-only {\n display: none;\n }\n"])), function (_ref) {
|
|
19
19
|
var height = _ref.height;
|
|
20
20
|
return height;
|
|
21
21
|
});
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var _leaflet = _interopRequireWildcard(require("leaflet"));
|
|
11
|
+
|
|
12
|
+
var _leafletDraw = _interopRequireDefault(require("leaflet-draw"));
|
|
13
|
+
|
|
14
|
+
require("leaflet-draw/dist/leaflet.draw.css");
|
|
15
|
+
|
|
16
|
+
var _core = require("@react-leaflet/core");
|
|
17
|
+
|
|
18
|
+
var _fastDeepEqual = _interopRequireDefault(require("fast-deep-equal"));
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
+
|
|
24
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
|
+
|
|
26
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
27
|
+
|
|
28
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
29
|
+
|
|
30
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
31
|
+
|
|
32
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
33
|
+
|
|
34
|
+
var eventHandlers = {
|
|
35
|
+
onEdited: 'draw:edited',
|
|
36
|
+
onDrawStart: 'draw:drawstart',
|
|
37
|
+
onDrawStop: 'draw:drawstop',
|
|
38
|
+
onDrawVertex: 'draw:drawvertex',
|
|
39
|
+
onEditStart: 'draw:editstart',
|
|
40
|
+
onEditMove: 'draw:editmove',
|
|
41
|
+
onEditResize: 'draw:editresize',
|
|
42
|
+
onEditVertex: 'draw:editvertex',
|
|
43
|
+
onEditStop: 'draw:editstop',
|
|
44
|
+
onDeleted: 'draw:deleted',
|
|
45
|
+
onDeleteStart: 'draw:deletestart',
|
|
46
|
+
onDeleteStop: 'draw:deletestop'
|
|
47
|
+
};
|
|
48
|
+
_leaflet.default.drawLocal.edit.handlers.edit.tooltip = {
|
|
49
|
+
text: 'Drag handles or markers to edit features.',
|
|
50
|
+
subtext: null
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
var DrawControl = function DrawControl(props) {
|
|
54
|
+
var _useLeafletContext = (0, _core.useLeafletContext)(),
|
|
55
|
+
map = _useLeafletContext.map,
|
|
56
|
+
layerContainer = _useLeafletContext.layerContainer;
|
|
57
|
+
|
|
58
|
+
var drawRef = (0, _react.useRef)();
|
|
59
|
+
var propsRef = (0, _react.useRef)(props);
|
|
60
|
+
var onDrawCreate = (0, _react.useCallback)(function (e) {
|
|
61
|
+
var container = layerContainer;
|
|
62
|
+
container.addLayer(e.layer);
|
|
63
|
+
}, [layerContainer]);
|
|
64
|
+
var enableEdit = (0, _react.useCallback)(function () {
|
|
65
|
+
// programatically enable edit mode
|
|
66
|
+
// https://github.com/Leaflet/Leaflet.draw/issues/129
|
|
67
|
+
var editHandler = drawRef.current._toolbars.edit.getModeHandlers()[0].handler; // this is hacky but needed otherwise enabling the edit mode will fail
|
|
68
|
+
// when the code attempts to fire map events for edit start etc
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
editHandler._map = map;
|
|
72
|
+
editHandler.enable();
|
|
73
|
+
}, [map]);
|
|
74
|
+
(0, _react.useEffect)(function () {
|
|
75
|
+
// if rendered and all props no change prevent render again
|
|
76
|
+
if (drawRef.current && props.draw !== undefined && (0, _fastDeepEqual.default)(props.draw, propsRef.current.draw) && (0, _fastDeepEqual.default)(props.edit, propsRef.current.edit) && props.position === propsRef.current.position) {
|
|
77
|
+
return;
|
|
78
|
+
} // add event listener
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
for (var key in eventHandlers) {
|
|
82
|
+
map.on(eventHandlers[key], function (evt) {
|
|
83
|
+
var handlers = Object.keys(eventHandlers).filter(function (handler) {
|
|
84
|
+
return eventHandlers[handler] === evt.type;
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
if (handlers.length === 1) {
|
|
88
|
+
var handler = handlers[0];
|
|
89
|
+
props[handler] && props[handler](evt);
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
} // add create draw event listener
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
map.on(_leaflet.default.Draw.Event.CREATED, onDrawCreate); // create draw element and render on map
|
|
96
|
+
|
|
97
|
+
drawRef.current = createDrawElement(props, layerContainer);
|
|
98
|
+
map.addControl(drawRef.current);
|
|
99
|
+
drawRef.current.enableEdit = enableEdit;
|
|
100
|
+
|
|
101
|
+
if (props.onMounted) {
|
|
102
|
+
props.onMounted(drawRef.current);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
return function () {
|
|
106
|
+
drawRef.current.remove(map);
|
|
107
|
+
drawRef.current = null;
|
|
108
|
+
map.off(_leaflet.default.Draw.Event.CREATED, onDrawCreate);
|
|
109
|
+
|
|
110
|
+
for (var _key in eventHandlers) {
|
|
111
|
+
if (props[_key]) {
|
|
112
|
+
map.off(eventHandlers[_key], props[_key]);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
}, [props, map, layerContainer, onDrawCreate, enableEdit]);
|
|
117
|
+
return null;
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
var createDrawElement = function createDrawElement(props, layerContainer) {
|
|
121
|
+
var draw = props.draw,
|
|
122
|
+
edit = props.edit,
|
|
123
|
+
position = props.position;
|
|
124
|
+
var options = {
|
|
125
|
+
edit: {
|
|
126
|
+
featureGroup: layerContainer
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
if (draw !== undefined) {
|
|
131
|
+
if (_typeof(draw) === 'object') {
|
|
132
|
+
options.draw = _objectSpread({}, draw);
|
|
133
|
+
} else {
|
|
134
|
+
options.draw = draw;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
if (edit) {
|
|
139
|
+
options.edit = _objectSpread(_objectSpread({}, options.edit), edit);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
if (position) {
|
|
143
|
+
options.position = position;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
return new _leaflet.Control.Draw(options);
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
var _default = DrawControl;
|
|
150
|
+
exports.default = _default;
|
package/map/LeafletMap.js
CHANGED
|
@@ -52,7 +52,8 @@ var LeafletMap = function LeafletMap(_ref) {
|
|
|
52
52
|
} : _ref$data,
|
|
53
53
|
onError = _ref.onError,
|
|
54
54
|
customPopup = _ref.customPopup,
|
|
55
|
-
checkPrimaryLocation = _ref.checkPrimaryLocation
|
|
55
|
+
checkPrimaryLocation = _ref.checkPrimaryLocation,
|
|
56
|
+
children = _ref.children;
|
|
56
57
|
|
|
57
58
|
var _useState = (0, _react.useState)(true),
|
|
58
59
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -94,7 +95,7 @@ var LeafletMap = function LeafletMap(_ref) {
|
|
|
94
95
|
}
|
|
95
96
|
|
|
96
97
|
locations.forEach(function (e, index) {
|
|
97
|
-
if (!e.latitude && e.latitude !== 0 || !e.longitude && e.longitude !== 0 || e.latitude === 0 && e.longitude === 0) {
|
|
98
|
+
if (!e.latitude && e.latitude !== 0 || !e.longitude && e.longitude !== 0 || e.latitude === 0 && e.longitude === 0 || e.latitude === '0' && e.longitude === '0') {
|
|
98
99
|
return;
|
|
99
100
|
} // prevent duplicate LatLngBounds
|
|
100
101
|
|
|
@@ -172,7 +173,7 @@ var LeafletMap = function LeafletMap(_ref) {
|
|
|
172
173
|
});
|
|
173
174
|
},
|
|
174
175
|
children: markers
|
|
175
|
-
})]
|
|
176
|
+
}), children]
|
|
176
177
|
});
|
|
177
178
|
}
|
|
178
179
|
|
|
@@ -187,6 +188,9 @@ var MapInteractor = function MapInteractor(_ref2) {
|
|
|
187
188
|
defaultPosition = _ref2.defaultPosition,
|
|
188
189
|
position = _ref2.position;
|
|
189
190
|
var map = (0, _reactLeaflet.useMapEvents)({
|
|
191
|
+
click: function click(e) {
|
|
192
|
+
e.originalEvent.stopPropagation();
|
|
193
|
+
},
|
|
190
194
|
focus: function focus() {
|
|
191
195
|
map.scrollWheelZoom.enable();
|
|
192
196
|
},
|
package/map/index.js
CHANGED
|
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "CustomLeafletMapContainer", {
|
|
|
9
9
|
return _CustomLeafletMapContainer.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "DrawControl", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _DrawControl.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
12
18
|
Object.defineProperty(exports, "LeafletMap", {
|
|
13
19
|
enumerable: true,
|
|
14
20
|
get: function get() {
|
|
@@ -20,4 +26,6 @@ var _CustomLeafletMapContainer = _interopRequireDefault(require("./CustomLeaflet
|
|
|
20
26
|
|
|
21
27
|
var _LeafletMap = _interopRequireDefault(require("./LeafletMap"));
|
|
22
28
|
|
|
29
|
+
var _DrawControl = _interopRequireDefault(require("./DrawControl"));
|
|
30
|
+
|
|
23
31
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|