- icon_name = 'bullhorn' - dismissable = message.dismissable? - preview = local_assigns.fetch(:preview, false) - unless message.notification? .gl-broadcast-message.broadcast-banner-message{ role: "alert", class: "js-broadcast-notification-#{message.id} #{message.theme}" } .gl-broadcast-message-content .gl-broadcast-message-icon = sprite_icon(icon_name) .gl-broadcast-message-text.js-broadcast-message-preview - if message.message.present? = render_broadcast_message(message) - else = yield - if dismissable && !preview = render Pajamas::ButtonComponent.new(category: :tertiary, icon: 'close', size: :small, button_options: { class: 'gl-close-btn-color-inherit gl-broadcast-message-dismiss js-dismiss-current-broadcast-notification', 'aria-label': _('Close'), data: { id: message.id, expire_date: message.ends_at.iso8601 } }, icon_classes: 'gl-mx-3! gl-text-white') - else - notification_class = "js-broadcast-notification-#{message.id}" - notification_class << ' preview' if preview .broadcast-message.broadcast-notification-message.mt-2{ role: "alert", class: notification_class } = sprite_icon(icon_name, css_class: 'vertical-align-text-top') - if message.message.present? = render_broadcast_message(message) - else = yield - if !preview = render Pajamas::ButtonComponent.new(variant: :link, icon: 'close', size: :small, button_options: { class: 'js-dismiss-current-broadcast-notification', 'aria-label': _('Close'), data: { id: message.id, expire_date: message.ends_at.iso8601 } }, icon_classes: 'gl-mx-3! gl-text-gray-700')