mirror of
https://github.com/a-nyx/maputnik-with-pmtiles.git
synced 2024-12-28 02:05:25 +01:00
Only show 'switch to layer' button if layer not already selected.
This commit is contained in:
parent
adea3d0f13
commit
39333953d7
2 changed files with 15 additions and 8 deletions
|
@ -732,6 +732,7 @@ export default class App extends React.Component {
|
||||||
/> : null
|
/> : null
|
||||||
|
|
||||||
const bottomPanel = (this.state.errors.length + this.state.infos.length) > 0 ? <MessagePanel
|
const bottomPanel = (this.state.errors.length + this.state.infos.length) > 0 ? <MessagePanel
|
||||||
|
currentLayer={selectedLayer}
|
||||||
onLayerSelect={this.onLayerSelect}
|
onLayerSelect={this.onLayerSelect}
|
||||||
mapStyle={this.state.mapStyle}
|
mapStyle={this.state.mapStyle}
|
||||||
errors={this.state.errors}
|
errors={this.state.errors}
|
||||||
|
|
|
@ -7,6 +7,7 @@ class MessagePanel extends React.Component {
|
||||||
infos: PropTypes.array,
|
infos: PropTypes.array,
|
||||||
mapStyle: PropTypes.object,
|
mapStyle: PropTypes.object,
|
||||||
onLayerSelect: PropTypes.func,
|
onLayerSelect: PropTypes.func,
|
||||||
|
currentLayer: PropTypes.object,
|
||||||
}
|
}
|
||||||
|
|
||||||
static defaultProps = {
|
static defaultProps = {
|
||||||
|
@ -18,17 +19,22 @@ class MessagePanel extends React.Component {
|
||||||
let content;
|
let content;
|
||||||
if (error.parsed && error.parsed.type === "layer") {
|
if (error.parsed && error.parsed.type === "layer") {
|
||||||
const {parsed} = error;
|
const {parsed} = error;
|
||||||
const {mapStyle} = this.props;
|
const {mapStyle, currentLayer} = this.props;
|
||||||
const layerId = mapStyle.layers[parsed.data.index].id;
|
const layerId = mapStyle.layers[parsed.data.index].id;
|
||||||
content = (
|
content = (
|
||||||
<>
|
<>
|
||||||
Layer <span>'{layerId}'</span>: {parsed.data.message} —
|
Layer <span>'{layerId}'</span>: {parsed.data.message}
|
||||||
<button
|
{currentLayer.id !== layerId &&
|
||||||
className="maputnik-message-panel__switch-button"
|
<>
|
||||||
onClick={() => this.props.onLayerSelect(layerId)}
|
—
|
||||||
>
|
<button
|
||||||
switch to layer
|
className="maputnik-message-panel__switch-button"
|
||||||
</button>
|
onClick={() => this.props.onLayerSelect(layerId)}
|
||||||
|
>
|
||||||
|
switch to layer
|
||||||
|
</button>
|
||||||
|
</>
|
||||||
|
}
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue