import { Component, ReactNode } from "react"; import { ClipList } from "@Component/ClipList/ClipList"; import { useStatusWithEvent, IMixinStatusProps } from "@Context/Status"; import { Theme } from "@Component/Theme/Theme"; import { Message } from "@Input/Message/Message"; import { Clip } from "@Model/Clip"; import { ActuatorModel } from "@Model/Actuator"; import "./ClipPlayer.scss"; @useStatusWithEvent("clipChange", "focusClipChange", "actuatorStartChange") class ClipPlayer extends Component { private renderMessage(): ReactNode { return ; } private renderClipList(clipList: Clip[]): ReactNode { const disable = !this.props.status?.focusClip && ( this.props.status?.actuator.mod === ActuatorModel.Record || this.props.status?.actuator.mod === ActuatorModel.Offline ); return ; } public render(): ReactNode { const clipList = this.props.status?.model.clipPool ?? []; return { clipList.length > 0 ? null : this.renderMessage() } { this.renderClipList(clipList) } ; } } export { ClipPlayer };