@randy.tarampi/jsx
Version:
Some common JSX components for www.randytarampi.ca
28 lines (26 loc) • 927 B
JavaScript
import { createAction } from "redux-actions";
import { updateMap } from "../updateMap";
export var HANDLE_GOOGLE_MAP_BOUNDS_CHANGED = "HANDLE_GOOGLE_MAP_BOUNDS_CHANGED";
export var onGoogleMapBoundsChangedCreator = (getGoogleMap, id) => dispatch => {
// eslint-disable-line no-unused-vars
var googleMap = getGoogleMap();
if (googleMap) {
var bounds = googleMap.getBounds();
var center = bounds.getCenter();
var sw = bounds.getSouthWest();
var ne = bounds.getNorthEast();
var payload = {
id,
bounds: bounds.toJSON(),
center: center.toJSON(),
sw: sw.toJSON(),
ne: ne.toJSON()
};
dispatch(onGoogleMapBoundsChanged(payload));
dispatch(updateMap(payload));
return Promise.resolve(payload);
}
return Promise.resolve();
};
export var onGoogleMapBoundsChanged = createAction(HANDLE_GOOGLE_MAP_BOUNDS_CHANGED);
export default onGoogleMapBoundsChangedCreator;