Skip to content

Commit 53b5895

Browse files
authored
feat: support react 17 (#1)
1 parent 6507a22 commit 53b5895

27 files changed

+22694
-2674
lines changed

example/package-lock.json

Lines changed: 18929 additions & 95 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@
2929
"dependencies": {
3030
"es6-promisify": "5.0.0",
3131
"raw.macro": "^0.3.0",
32-
"react": "^16.11.0",
33-
"react-dom": "^16.11.0",
32+
"react": "^17.0.2",
33+
"react-dom": "^17.0.2",
3434
"react-live": "2.2.1",
3535
"react-markdown": "2.5.1",
3636
"react-router": "3.0.5",
@@ -42,8 +42,8 @@
4242
"devDependencies": {
4343
"@types/enzyme": "3.1.14",
4444
"@types/es6-promisify": "5.0.0",
45-
"@types/react": "^16.9.11",
46-
"@types/react-dom": "^16.9.3",
45+
"@types/react": "^17.0.39",
46+
"@types/react-dom": "^17.0.11",
4747
"@types/react-router": "3.0.13",
4848
"@types/xml2js": "0.4.0",
4949
"gh-pages": "1.0.0"

example/src/demos/heatmap.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import * as React from 'react';
2+
import { HeatmapPaint } from 'mapbox-gl';
23
import ReactMapboxGl, { Layer, Feature } from '../../../';
34

45
// tslint:disable-next-line:no-var-requires
@@ -17,7 +18,7 @@ export interface Props {
1718
onStyleLoad?: (map: any) => any;
1819
}
1920

20-
const layerPaint = {
21+
const layerPaint: HeatmapPaint = {
2122
'heatmap-weight': {
2223
property: 'priceIndicator',
2324
type: 'exponential',

example/src/demos/htmlCluster.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ const StyledPopup = styled.div`
4848

4949
export interface State {
5050
popup?: {
51-
coordinates: GeoJSON.Position;
51+
coordinates: [number, number];
5252
total: number;
5353
leaves: Array<React.ReactElement<any>>;
5454
};
@@ -67,7 +67,7 @@ class HtmlCluster extends React.Component<Props, State> {
6767
private zoom: [number] = [4];
6868

6969
private clusterMarker = (
70-
coordinates: GeoJSON.Position,
70+
coordinates: [number, number],
7171
pointCount: number,
7272
getLeaves: (
7373
limit?: number,
@@ -91,7 +91,7 @@ class HtmlCluster extends React.Component<Props, State> {
9191
};
9292

9393
private clusterClick = (
94-
coordinates: GeoJSON.Position,
94+
coordinates: [number, number],
9595
total: number,
9696
getLeaves: (
9797
limit?: number,

example/src/demos/londonCycle.tsx

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -113,9 +113,24 @@ export default class LondonCycle extends React.Component<Props, State> {
113113
{Object.keys(stations).map((stationK, index) => (
114114
<Feature
115115
key={stationK}
116-
onMouseEnter={this.onToggleHover.bind(this, 'pointer')}
117-
onMouseLeave={this.onToggleHover.bind(this, '')}
118-
onClick={this.markerClick.bind(this, stations[stationK])}
116+
onMouseEnter={
117+
(this.onToggleHover.bind(
118+
this,
119+
'pointer'
120+
) as unknown) as React.MouseEventHandler<HTMLElement>
121+
}
122+
onMouseLeave={
123+
(this.onToggleHover.bind(
124+
this,
125+
''
126+
) as unknown) as React.MouseEventHandler<HTMLElement>
127+
}
128+
onClick={
129+
(this.markerClick.bind(
130+
this,
131+
stations[stationK]
132+
) as unknown) as React.MouseEventHandler<HTMLElement>
133+
}
119134
coordinates={stations[stationK].position}
120135
/>
121136
))}

example/src/demos/londonCycleData.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import promisify from 'es6-promisify';
33
export interface Station {
44
id: string;
55
name: string;
6-
position: number[];
6+
position: [number, number];
77
bikes: number;
88
slots: number;
99
}

example/src/demos/raws/heatmap.raw

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import * as React from 'react';
2+
import { HeatmapPaint } from 'mapbox-gl';
23
import ReactMapboxGl, { Layer, Feature } from '../../../';
34

45
// tslint:disable-next-line:no-var-requires
@@ -17,7 +18,7 @@ export interface Props {
1718
onStyleLoad?: (map: any) => any;
1819
}
1920

20-
const layerPaint = {
21+
const layerPaint: HeatmapPaint = {
2122
'heatmap-weight': {
2223
property: 'priceIndicator',
2324
type: 'exponential',

example/src/demos/raws/htmlCluster.raw

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ const StyledPopup = styled.div`
4848

4949
export interface State {
5050
popup?: {
51-
coordinates: GeoJSON.Position;
51+
coordinates: [number, number];
5252
total: number;
5353
leaves: Array<React.ReactElement<any>>;
5454
};
@@ -67,7 +67,7 @@ class HtmlCluster extends React.Component<Props, State> {
6767
private zoom: [number] = [4];
6868

6969
private clusterMarker = (
70-
coordinates: GeoJSON.Position,
70+
coordinates: [number, number],
7171
pointCount: number,
7272
getLeaves: (
7373
limit?: number,
@@ -91,7 +91,7 @@ class HtmlCluster extends React.Component<Props, State> {
9191
};
9292

9393
private clusterClick = (
94-
coordinates: GeoJSON.Position,
94+
coordinates: [number, number],
9595
total: number,
9696
getLeaves: (
9797
limit?: number,

example/src/demos/raws/londonCycle.raw

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -113,9 +113,24 @@ export default class LondonCycle extends React.Component<Props, State> {
113113
{Object.keys(stations).map((stationK, index) => (
114114
<Feature
115115
key={stationK}
116-
onMouseEnter={this.onToggleHover.bind(this, 'pointer')}
117-
onMouseLeave={this.onToggleHover.bind(this, '')}
118-
onClick={this.markerClick.bind(this, stations[stationK])}
116+
onMouseEnter={
117+
(this.onToggleHover.bind(
118+
this,
119+
'pointer'
120+
) as unknown) as React.MouseEventHandler<HTMLElement>
121+
}
122+
onMouseLeave={
123+
(this.onToggleHover.bind(
124+
this,
125+
''
126+
) as unknown) as React.MouseEventHandler<HTMLElement>
127+
}
128+
onClick={
129+
(this.markerClick.bind(
130+
this,
131+
stations[stationK]
132+
) as unknown) as React.MouseEventHandler<HTMLElement>
133+
}
119134
coordinates={stations[stationK].position}
120135
/>
121136
))}

example/src/demos/raws/vectorLayer.raw

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ export default class VectorLayer extends React.Component<Props> {
104104
<Layer
105105
id="mapillary"
106106
type="line"
107-
source="mapillary"
107+
sourceId="mapillary"
108108
sourceLayer="mapillary-sequences"
109109
layout={lineLayout}
110110
paint={linePaint}

0 commit comments

Comments
 (0)