     
     open func showError(_ message: String?) {
         toggleError(message ?? "")
+        status = .error
         showBanner()
     }
 

            // This is a hack to get the banner to start in the right place
            }, completion: { finished in
                if self.showing {
                    self.spinner.startAnimating()
                    self.heightConstraint.constant = self.height
                } else {
                    self.spinner.stopAnimating()
                    self.heightConstraint.constant = 0.0
                }
                UIView.animate(withDuration: 0.3, delay: 0.0, usingSpringWithDamping: 1.0, initialSpringVelocity: 1.0, options: [], animations: {

    
    open func showLoading() {
        toggleError(nil)
        status = .loading
        loadingLabel.text = defaultText
        toggleSpinner(toShowing: true)
        showBanner()
    }
    
    open func showMessage(_ text: String?) {
        toggleError(nil)
        status = .loading
        loadingLabel.text = text
        toggleSpinner(toShowing: true)
        showBanner()
    }
    
    open func showSuccess(message: String?, for duration: Double = 2.0) {
        toggleError(nil)
        status = .success
        loadingLabel.text = message
        toggleSpinner(toShowing: false)
        showBanner()
        delay(duration) { 
            self.dismissBanner()
