2
2
// SPDX-License-Identifier: MIT
3
3
// Copyright (c) vis.gl contributors
4
4
5
- import React , { useState } from 'react' ;
5
+ import React , { useState } from 'react' ;
6
6
import DeckGL from '@deck.gl/react' ;
7
- import { ViewMode , EditableGeoJsonLayer } from '@deck.gl-community/editable-layers' ;
8
- import { Toolbox } from './toolbox/toolbox' ;
7
+ import { ViewMode , EditableGeoJsonLayer } from '@deck.gl-community/editable-layers' ;
8
+ import { Toolbox } from './toolbox/toolbox' ;
9
9
import StaticMap from 'react-map-gl/maplibre' ;
10
10
11
- const initialViewState = {
12
- longitude : - 122.43 ,
13
- latitude : 37.775 ,
14
- zoom : 12
15
- } ;
16
-
17
- export function Example ( ) {
18
- const [ geoJson , setGeoJson ] = useState ( {
11
+ export function getDefaultGeoJSON ( ) {
12
+ return {
19
13
type : 'FeatureCollection' ,
20
14
features : [
21
15
{
@@ -51,7 +45,17 @@ export function Example() {
51
45
}
52
46
}
53
47
]
54
- } ) ;
48
+ } as const ;
49
+ }
50
+
51
+ const initialViewState = {
52
+ longitude : - 122.43 ,
53
+ latitude : 37.775 ,
54
+ zoom : 12
55
+ } ;
56
+
57
+ export function Example ( ) {
58
+ const [ geoJson , setGeoJson ] = useState ( getDefaultGeoJSON ( ) ) ;
55
59
const [ selectedFeatureIndexes , setSelectedFeatureIndexes ] = useState ( [ 0 ] ) ;
56
60
const [ mode , setMode ] = useState ( ( ) => ViewMode ) ;
57
61
const [ modeConfig , setModeConfig ] = useState ( { } ) ;
@@ -61,7 +65,7 @@ export function Example() {
61
65
mode,
62
66
modeConfig,
63
67
selectedFeatureIndexes,
64
- onEdit : ( { updatedData} ) => {
68
+ onEdit : ( { updatedData } ) => {
65
69
setGeoJson ( updatedData ) ;
66
70
}
67
71
} ) ;
0 commit comments