FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
google-map-react/develop/GMapResizable.js at master · groupconecto/google-map-react · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
groupconecto
/
google-map-react
Public
forked from
google-map-react/google-map-react
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
google-map-react
/
develop
/
GMapResizable.js
Copy path
More file actions
More file actions
Latest commit
History
History
History
110 lines (104 loc) · 2.7 KB
Breadcrumbs
google-map-react
/
develop
/
GMapResizable.js
Copy path
File metadata and controls
110 lines (104 loc) · 2.7 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
/* eslint-disable */
import
React
from
'react'
;
import
PropTypes
from
'prop-types'
;
import
{
compose
,
defaultProps
,
withHandlers
,
withState
,
withContext
,
withProps
,
withPropsOnChange
,
}
from
'recompose'
;
import
{
createSelector
}
from
'reselect'
;
import
{
susolvkaCoords
,
generateMarkers
}
from
'./data/fakeData'
;
import
GoogleMapReact
from
'../src'
;
import
SimpleMarker
from
'./markers/SimpleMarker'
;
import
ptInBounds
from
'./utils/ptInBounds'
;
import
withStateSelector
from
'./utils/withStateSelector'
;
export
const
gMapResizable
=
(
{
style
,
hoverDistance
,
options
,
mapParams
:
{
center
,
zoom
}
,
onChange
,
onChildMouseEnter
,
onChildMouseLeave
,
markers
,
draggable
,
// hoveredMarkerId,
}
)
=>
(
<
GoogleMapReact
bootstrapURLKeys
=
{
{
key
:
'AIzaSyBMqz4ueWMfGGqdXlvwE_cIVfar60GROi8'
,
}
}
style
=
{
style
}
options
=
{
options
}
draggable
=
{
draggable
}
hoverDistance
=
{
hoverDistance
}
zoom
=
{
zoom
}
center
=
{
center
}
onChange
=
{
onChange
}
onChildMouseEnter
=
{
onChildMouseEnter
}
onChildMouseLeave
=
{
onChildMouseLeave
}
resetBoundsOnResize
>
{
markers
}
</
GoogleMapReact
>
)
;
export
const
gMapHOC
=
compose
(
defaultProps
(
{
clusterRadius
:
60
,
hoverDistance
:
30
,
options
:
{
minZoom
:
3
,
maxZoom
:
15
,
}
,
style
:
{
position
:
'relative'
,
margin
:
10
,
padding
:
10
,
flex
:
1
,
}
,
}
)
,
withContext
(
{
hello
:
PropTypes
.
string
}
,
(
)
=>
(
{
hello
:
'world'
}
)
)
,
// withState so you could change markers if you want
withStateSelector
(
'markers'
,
'setMarkers'
,
(
)
=>
createSelector
(
(
{
route
:
{
markersCount
=
20
}
}
)
=>
markersCount
,
markersCount
=>
generateMarkers
(
markersCount
)
)
)
,
withState
(
'hoveredMarkerId'
,
'setHoveredMarkerId'
,
-
1
)
,
withState
(
'mapParams'
,
'setMapParams'
,
{
center
:
susolvkaCoords
,
zoom
:
6
}
)
,
// describe events
withHandlers
(
{
onChange
:
(
{
setMapParams
}
)
=>
(
{
center
,
zoom
,
bounds
}
)
=>
{
setMapParams
(
{
center
,
zoom
,
bounds
}
)
;
}
,
onChildMouseEnter
:
(
{
setHoveredMarkerId
}
)
=>
(
hoverKey
,
{
id
}
)
=>
{
setHoveredMarkerId
(
id
)
;
}
,
onChildMouseLeave
:
(
{
setHoveredMarkerId
}
)
=>
(
)
=>
{
setHoveredMarkerId
(
-
1
)
;
}
,
}
)
,
withPropsOnChange
(
[
'markers'
,
'mapParams'
]
,
(
{
markers
,
mapParams
:
{
bounds
}
,
}
)
=>
(
{
markers
:
bounds
?
markers
.
filter
(
m
=>
ptInBounds
(
bounds
,
m
)
)
:
[
]
,
}
)
)
,
withProps
(
(
{
hoveredMarkerId
}
)
=>
(
{
draggable
:
hoveredMarkerId
===
-
1
,
}
)
)
,
withPropsOnChange
(
[
'markers'
]
,
(
{
markers
}
)
=>
(
{
markers
:
markers
.
map
(
(
{
...
markerProps
,
id
}
)
=>
(
<
SimpleMarker
key
=
{
id
}
id
=
{
id
}
{
...
markerProps
}
/>
)
)
,
}
)
)
)
;
export
default
gMapHOC
(
gMapResizable
)
;
Back
|
FazBrowse Home
|
New Git URL