| 125 | } |
| 126 | |
| 127 | render() { |
| 128 | if (this.state.error) { |
| 129 | return ( |
| 130 | <div className="ts-error-boundary"> |
| 131 | <div className="ts-error-boundary-icon">⚠</div> |
| 132 | <div className="ts-error-boundary-title">Plugin crashed</div> |
| 133 | <div className="ts-error-boundary-msg">{String(this.state.error)}</div> |
| 134 | <button className="ts-button ts-button-outline ts-button-sm" onClick={this.handleRetry}> |
| 135 | Retry |
| 136 | </button> |
| 137 | </div> |
| 138 | ); |
| 139 | } |
| 140 | return this.props.children; |
| 141 | } |
| 142 | } |
| 143 | |
| 144 | // --------------------------------------------------------------------------- |