Sha256: 07cb802a838819733e226629f0bec38c5d914c08752633b9269944c510fe4bbc

Contents?: true

Size: 716 Bytes

Versions: 6

Compression:

Stored size: 716 Bytes

Contents

# frozen_string_literal: true

module BootstrapEmail
  module Converter
    class PreviewText < Base
      def build
        preview_node = doc.at_css('preview')
        return if preview_node.nil?

        # https://www.litmus.com/blog/the-little-known-preview-text-hack-you-may-want-to-use-in-every-email/
        # apply spacing after the text max of 278 characters so it doesn't show body text
        preview_node.inner_html += '&#847; &zwnj; &nbsp; ' * [(278 - preview_node.content.length.to_i), 0].max
        node = template('div', classes: 'preview', contents: preview_node.content)
        preview_node.remove

        body = doc.at_css('body')
        body.prepend_child(node)
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
bootstrap-email-1.5.1 lib/bootstrap-email/converters/preview_text.rb
bootstrap-email-1.5.0 lib/bootstrap-email/converters/preview_text.rb
bootstrap-email-1.4.1 lib/bootstrap-email/converters/preview_text.rb
bootstrap-email-1.4.0 lib/bootstrap-email/converters/preview_text.rb
bootstrap-email-1.3.1 lib/bootstrap-email/converters/preview_text.rb
bootstrap-email-1.3.0 lib/bootstrap-email/converters/preview_text.rb