import { Component, ReactNode } from "react"; import { DetailsList } from "@Component/DetailsList/DetailsList"; import { useStatus, IMixinStatusProps } from "@Context/Status"; import { Localization } from "@Component/Localization/Localization"; @useStatus class ObjectList extends Component { private handelChange = () => { this.forceUpdate(); } public componentDidMount(){ if (this.props.status) { this.props.status.model.on("objectChange", this.handelChange); } } public componentWillUnmount(){ if (this.props.status) { this.props.status.model.off("objectChange", this.handelChange); } } private renderList() { const objList = this.props.status?.model.objectPool ?? []; if (objList.length <= 0) { return } return { return { key: object.id.toString(), name: object.displayName, color: object.color, display: object.display, update: object.update } }))} columns={[ { key: "name", render: (name) => {name} // }, { // key: "behaviors", // render: (behaviors) => {(behaviors as Record<"name", string>[]).map(r => r.name).join(", ")} // }, { // key: "label", // render: (label) => {(label as Record<"name", string>[]).map(r => r.name).join(", ")} } ]} /> } public render(): ReactNode { return this.renderList(); } } export { ObjectList };