/**
 * StatusBadge Component
 *
 * @package Advanced_Customer_Account
 */

import { __ } from '@wordpress/i18n';

/**
 * Order status labels mapping.
 */
const statusLabels = {
    pending: __( 'Pending', 'advanced-customer-account' ),
    processing: __( 'Processing', 'advanced-customer-account' ),
    'on-hold': __( 'On Hold', 'advanced-customer-account' ),
    completed: __( 'Completed', 'advanced-customer-account' ),
    cancelled: __( 'Cancelled', 'advanced-customer-account' ),
    refunded: __( 'Refunded', 'advanced-customer-account' ),
    failed: __( 'Failed', 'advanced-customer-account' ),
};

/**
 * Order status badge component.
 *
 * @param {Object} props        Component props.
 * @param {string} props.status Order status.
 * @return {JSX.Element} Status badge.
 */
const StatusBadge = ( { status } ) => {
    return (
        <span className={ `aca-status-badge aca-status-badge--${ status }` }>
            { statusLabels[ status ] || status }
        </span>
    );
};

export default StatusBadge;
