'; echo '
' . wp_kses( Icons::svg( 'ok' === $tone ? 'shield' : 'alert' ), Html::allowed() ); echo '
' . esc_html( Health::headline( $issues ) ) . ''; if ( $issues ) { echo '' . esc_html( $issues[0]['title'] ) . ( count( $issues ) > 1 ? ' …' : '' ) . ''; } echo '
'; echo '
'; $this->figure( $protection['reduced'], __( 'reduced', 'strikewise' ), '' ); $this->figure( $protection['corrected'], __( 'corrected', 'strikewise' ), 'ok' ); $this->figure( $protection['hidden'], __( 'not shown as a reduction', 'strikewise' ), '' ); echo '
'; /** * Fires inside the Strikewise dashboard widget (premium: scanner status, Black Friday). */ do_action( 'strikewise_dashboard_widget' ); echo ''; echo ''; } private function figure( int $value, string $label, string $tone ): void { echo '
' . esc_html( number_format_i18n( $value ) ) . '' . esc_html( $label ) . '
'; } /** * One status line of the widget, for the premium features. * * @param string $tone ok, warning, critical or info. * @param string $text Plain text. * @param string $url Link target. * @param string $link Link text. */ public static function row( string $tone, string $text, string $url, string $link ): void { echo '

' . esc_html( $text ) . '

'; echo '' . esc_html( $link ) . '
'; } }