Compare commits

...

2 Commits

Author SHA1 Message Date
zstadler 577663f706 Resolve #821 (#822)
Please see code analysis at
https://github.com/maputnik/editor/issues/821#issuecomment-1772360990
2023-10-20 11:01:20 -04:00
Eliav-B 393f4a38b9 Added checkbox for cluster attribute (#810)
* Added additional checkbox to set the cluster attribute when adding a GeoJson source

* Fixed default source function in the 'geojson_json' case

---------

Co-authored-by: shimon <ruisuhsh100@gmail.com>
2023-10-20 10:54:40 -04:00
3 changed files with 28 additions and 14 deletions
+1 -1
View File
@@ -152,7 +152,7 @@ export default class AppToolbar extends React.Component {
id: "inspect", id: "inspect",
group: "general", group: "general",
title: "Inspect", title: "Inspect",
disabled: this.props.renderer !== 'mlgljs', disabled: this.props.renderer === 'ol',
}, },
{ {
id: "filter-deuteranopia", id: "filter-deuteranopia",
+1
View File
@@ -128,6 +128,7 @@ class AddSource extends React.Component {
} }
case 'geojson_json': return { case 'geojson_json': return {
type: 'geojson', type: 'geojson',
cluster: source.cluster || false,
data: {} data: {}
} }
case 'tilejson_vector': return { case 'tilejson_vector': return {
+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>
} }
} }