github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/web/src/ErrorModal.tsx (about)

     1  import React, { PureComponent } from "react"
     2  import Modal from "react-modal"
     3  import { linkToTiltDocs, TiltDocsPage } from "./constants"
     4  import "./FatalErrorModal.scss"
     5  import { ShowErrorModal } from "./types"
     6  
     7  type props = {
     8    error: string | undefined
     9    showErrorModal: ShowErrorModal
    10    handleClose: () => void
    11  }
    12  
    13  export default class ErrorModal extends PureComponent<props> {
    14    render() {
    15      let showModal =
    16        Boolean(this.props.error) &&
    17        (this.props.showErrorModal === ShowErrorModal.Default ||
    18          this.props.showErrorModal === ShowErrorModal.Show)
    19      return (
    20        <Modal
    21          isOpen={showModal}
    22          className="FatalErrorModal"
    23          onRequestClose={this.props.handleClose}
    24        >
    25          <h2 className="FatalErrorModal-title">Error</h2>
    26          <div className="FatalErrorModal-pane">
    27            <p>Tilt has encountered an error: {this.props.error}</p>
    28          </div>
    29          <div className="FatalErrorModal-pane">
    30            <p>
    31              To get help try{" "}
    32              <a href="https://github.com/tilt-dev/tilt/issues/new">
    33                opening a GitHub issue
    34              </a>{" "}
    35              or{" "}
    36              <a
    37                href={linkToTiltDocs(
    38                  TiltDocsPage.DebugFaq,
    39                  "#where-can-i-ask-questions"
    40                )}
    41              >
    42                contacting us on Slack
    43              </a>
    44              .
    45            </p>
    46          </div>
    47        </Modal>
    48      )
    49    }
    50  }