{% import 'admin-bar/_plugin-widgets-macros' as pluginWidgets %}

{% if entry ?? false %}
  {% set popoverInfo = [] %}

  {% if entry.dateCreated %}
    {% set popoverInfo = popoverInfo|merge([['widget-craft-published-created-at'|t('admin-bar', language = userLanguage), entry.dateCreated|date(widgetConfig.dateFormat) ~ ' ' ~ entry.dateCreated|time(widgetConfig.timeFormat)]]) %}
  {% endif %}

  {% if entry.dateUpdated %}
    {% set popoverInfo = popoverInfo|merge([['widget-craft-published-updated-at'|t('admin-bar', language = userLanguage), entry.dateUpdated|date(widgetConfig.dateFormat) ~ ' ' ~ entry.dateUpdated|time(widgetConfig.timeFormat)]]) %}
  {% endif %}

  {% if entry.id %}
    {% set popoverInfo = popoverInfo|merge([['widget-craft-published-entry-id'|t('admin-bar', language = userLanguage), entry.id]]) %}
  {% endif %}

  {% if entry.currentRevision.revisionNotes ?? false %}
    {% set popoverInfo = popoverInfo|merge([['widget-craft-published-notes'|t('admin-bar', language = userLanguage), entry.currentRevision.revisionNotes]]) %}
  {% endif %}

  {% set postDateValue = entry.postDate|date(widgetConfig.dateFormat) ~ ' ' ~ entry.postDate|time(widgetConfig.timeFormat) %}
  <admin-bar-button class="admin-bar-widget admin-bar-widget--published" badge-content="{{ postDateValue }}">
    {{ iconSvg('newspaper')|attr({ class: 'icon', slot: "before-label" }) }}
    {{ pluginWidgets.widgetBadgeAndLabel(null, 'widget-craft-published-post-date'|t('admin-bar', language = userLanguage), displayWidgetLabels) }}

    {% if popoverInfo|length %}
      <div slot="popover">
        <admin-bar-text dl-content="{{ popoverInfo|json_encode }}"></admin-bar-text>
      </div>
    {% endif %}
  </admin-bar-button>
{% endif %}