(function registerAxeViolationList(global) {
  'use strict';

  function AxeViolationList(props) {
    var React = global.React;
    var violations = props && props.violations || [];
    if (!violations.length) {
      return React.createElement('p', { className: 'free-seo-empty' }, 'No accessibility violations were found by axe/static inspection.');
    }
    return React.createElement('ul', { className: 'free-seo-violation-list' }, violations.map(function mapViolation(violation, index) {
      var nodes = violation.nodes || [];
      return React.createElement('li', { key: violation.id + ':' + index, className: 'impact-' + (violation.impact || 'unknown') }, [
        React.createElement('div', { key: 'main' }, [
          React.createElement('strong', { key: 'title' }, violation.help || violation.id),
          React.createElement('span', { key: 'impact' }, violation.impact || 'unknown')
        ]),
        React.createElement('p', { key: 'description' }, violation.description || ''),
        nodes.length ? React.createElement('div', { key: 'nodes', className: 'free-seo-node-targets' }, nodes.slice(0, 3).map(function mapNode(node, nodeIndex) {
          return React.createElement('code', { key: nodeIndex }, (node.target || []).join(' '));
        })) : null
      ]);
    }));
  }

  global.FreeSeoAxeViolationList = AxeViolationList;
})(typeof window !== 'undefined' ? window : globalThis);
