\r\n
\r\n {this.props.icon &&

}\r\n
\r\n {this.props.label}\r\n
\r\n
\r\n {!this.props.useEuler && `X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}`}\r\n {this.props.useEuler &&\r\n `X: ${Tools.ToDegrees(this.state.value.x).toFixed(2)}, Y: ${Tools.ToDegrees(this.state.value.y).toFixed(2)}, Z: ${Tools.ToDegrees(\r\n this.state.value.z\r\n ).toFixed(2)}`}\r\n
\r\n
this.switchExpandState()} title=\"Expand\">\r\n {chevron}\r\n
\r\n
\r\n {this.state.isExpanded && !this.props.useEuler && (\r\n
\r\n this.updateStateX(value)}\r\n />\r\n this.updateStateY(value)}\r\n />\r\n this.updateStateZ(value)}\r\n />\r\n
\r\n )}\r\n {this.state.isExpanded && this.props.useEuler && !this.props.noSlider && (\r\n
\r\n this.updateStateX(Tools.ToRadians(value))}\r\n />\r\n this.updateStateY(Tools.ToRadians(value))}\r\n />\r\n this.updateStateZ(Tools.ToRadians(value))}\r\n />\r\n
\r\n )}\r\n {this.state.isExpanded && this.props.useEuler && this.props.noSlider && (\r\n
\r\n this.updateStateX(Tools.ToRadians(value))}\r\n />\r\n this.updateStateY(Tools.ToRadians(value))}\r\n />\r\n this.updateStateZ(Tools.ToRadians(value))}\r\n />\r\n
\r\n )}\r\n
\r\n );\r\n }\r\n}\r\n","import * as React from \"react\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\nimport type { Quaternion, Vector3 } from \"core/Maths/math.vector\";\r\nimport { NumericInputComponent } from \"shared-ui-components/lines/numericInputComponent\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faMinus, faPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport type { PropertyChangedEvent } from \"../../propertyChangedEvent\";\r\nimport { Tools } from \"core/Misc/tools\";\r\nimport { FloatLineComponent } from \"shared-ui-components/lines/floatLineComponent\";\r\nimport type { LockObject } from \"shared-ui-components/tabs/propertyGrids/lockObject\";\r\n\r\ninterface IQuaternionLineComponentProps {\r\n label: string;\r\n target: any;\r\n useEuler?: boolean;\r\n propertyName: string;\r\n onPropertyChangedObservable?: Observable