{% set COOKIE_BANNER_DEFAULTS = {
  className: '',
  ariaLabel: 'Cookie Banner',
  text: 'This website uses cookies to ensure you get the best experience on website.',
  actions: [
    {
      className: 'button--link button--primary button--sm',
      text: 'Privacy Policy',
      href: '#'
    },
    {
      className: 'button--primary-borderless button--sm',
      text: 'Got it!',
      attrs: {
        'x-bind': 'cookieAccept'
      }
    }
  ],
  pluginOptions: {}
} %}

{% macro CookieBanner(settings = {}) %}
  {% set settings = merge(COOKIE_BANNER_DEFAULTS, settings) %}
  {% set classNames = [settings.className] %}

  <div
    class="cookie-banner {{ setClass(classNames) }}"
    x-data="CookieBanner({{ stringify(settings.pluginOptions) }})"
    x-bind="banner"
    {{ Helpers.setAttr('aria-label', settings.ariaLabel) }}
  >
    <div class="cookie-banner__content-container">
      <p class="cookie-banner__text">{{ settings.text }}</p>
      <div class="cookie-banner__actions">
        {{ RenderButtonsList(settings.actions) }}
      </div>
    </div>
  </div>
{% endmacro %}
