Added additional checkbox to set the cluster attribute when adding a GeoJson source

This commit is contained in:
shimon
2023-06-10 15:46:43 +03:00
parent 2ff3d08bb0
commit d9b1e7e97c
2 changed files with 28 additions and 14 deletions
+2 -1
View File
@@ -128,7 +128,8 @@ class AddSource extends React.Component {
} }
case 'geojson_json': return { case 'geojson_json': return {
type: 'geojson', type: 'geojson',
data: {} data: {},
cluster: false
} }
case 'tilejson_vector': return { case 'tilejson_vector': return {
type: 'vector', type: 'vector',
+26 -13
View File
@@ -8,6 +8,7 @@ import FieldSelect from './FieldSelect'
import FieldDynamicArray from './FieldDynamicArray' import FieldDynamicArray from './FieldDynamicArray'
import FieldArray from './FieldArray' import FieldArray from './FieldArray'
import FieldJson from './FieldJson' import FieldJson from './FieldJson'
import FieldCheckbox from './FieldCheckbox'
class TileJSONSourceEditor extends React.Component { class TileJSONSourceEditor extends React.Component {
@@ -80,7 +81,7 @@ class TileURLSourceEditor extends React.Component {
})} })}
/> />
{this.props.children} {this.props.children}
</div> </div>
} }
} }
@@ -205,23 +206,35 @@ class GeoJSONSourceFieldJsonEditor extends React.Component {
} }
render() { render() {
return <Block label={"GeoJSON"} fieldSpec={latest.source_geojson.data}> return <div>
<FieldJson <Block label={"GeoJSON"} fieldSpec={latest.source_geojson.data}>
layer={this.props.source.data} <FieldJson
maxHeight={200} layer={this.props.source.data}
mode={{ maxHeight={200}
name: "javascript", mode={{
json: true name: "javascript",
}} json: true
lint={true} }}
onChange={data => { lint={true}
onChange={data => {
this.props.onChange({
...this.props.source,
data,
})
}}
/>
</Block>
<FieldCheckbox
label={'Cluster'}
value={this.props.source.cluster}
onChange={cluster => {
this.props.onChange({ this.props.onChange({
...this.props.source, ...this.props.source,
data, cluster: cluster,
}) })
}} }}
/> />
</Block> </div>
} }
} }