Migration of more components

This commit is contained in:
HarelM
2023-12-22 14:44:16 +02:00
parent a36f56fe93
commit a192b04135
2 changed files with 20 additions and 21 deletions
@@ -1,5 +1,4 @@
import React from 'react' import React from 'react'
import PropTypes from 'prop-types'
import Icon from '@mdi/react' import Icon from '@mdi/react'
import { import {
mdiMenuDown, mdiMenuDown,
@@ -13,21 +12,22 @@ import {
} from 'react-accessible-accordion'; } from 'react-accessible-accordion';
export default class LayerEditorGroup extends React.Component { type LayerEditorGroupProps = {
static propTypes = { "id"?: string
"id": PropTypes.string, "data-wd-key"?: string
"data-wd-key": PropTypes.string, title: string
title: PropTypes.string.isRequired, isActive: boolean
isActive: PropTypes.bool.isRequired, children: React.ReactElement
children: PropTypes.element.isRequired, onActiveToggle(...args: unknown[]): unknown
onActiveToggle: PropTypes.func.isRequired };
}
export default class LayerEditorGroup extends React.Component<LayerEditorGroupProps> {
render() { render() {
return <AccordionItem uuid={this.props.id}> return <AccordionItem uuid={this.props.id}>
<AccordionItemHeading className="maputnik-layer-editor-group" <AccordionItemHeading className="maputnik-layer-editor-group"
data-wd-key={"layer-editor-group:"+this.props["data-wd-key"]} data-wd-key={"layer-editor-group:"+this.props["data-wd-key"]}
onClick={e => this.props.onActiveToggle(!this.props.isActive)} onClick={_e => this.props.onActiveToggle(!this.props.isActive)}
> >
<AccordionItemButton className="maputnik-layer-editor-group__button"> <AccordionItemButton className="maputnik-layer-editor-group__button">
<span style={{flexGrow: 1}}>{this.props.title}</span> <span style={{flexGrow: 1}}>{this.props.title}</span>
@@ -1,21 +1,20 @@
import React from 'react' import React from 'react'
import PropTypes from 'prop-types'
import Collapser from './Collapser' import Collapser from './Collapser'
export default class LayerListGroup extends React.Component { type LayerListGroupProps = {
static propTypes = { title: string
title: PropTypes.string.isRequired, "data-wd-key"?: string
"data-wd-key": PropTypes.string, isActive: boolean
isActive: PropTypes.bool.isRequired, onActiveToggle(...args: unknown[]): unknown
onActiveToggle: PropTypes.func.isRequired, 'aria-controls'?: string
'aria-controls': PropTypes.string, };
}
export default class LayerListGroup extends React.Component<LayerListGroupProps> {
render() { render() {
return <li className="maputnik-layer-list-group"> return <li className="maputnik-layer-list-group">
<div className="maputnik-layer-list-group-header" <div className="maputnik-layer-list-group-header"
data-wd-key={"layer-list-group:"+this.props["data-wd-key"]} data-wd-key={"layer-list-group:"+this.props["data-wd-key"]}
onClick={e => this.props.onActiveToggle(!this.props.isActive)} onClick={_e => this.props.onActiveToggle(!this.props.isActive)}
> >
<button <button
className="maputnik-layer-list-group-title" className="maputnik-layer-list-group-title"