Methods

Included Modules

Attributes

[R] node

Class Public methods

attachment_selector()

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 43
      def attachment_selector
        "#{ActionText::Attachment.tag_name}[presentation=gallery]"
      end
🔎 See on GitHub
📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 27
      def find_attachment_gallery_nodes(content)
        Fragment.wrap(content).find_all(selector).select do |node|
          node.children.all? do |child|
            if child.text?
              /\A(\n|\ )*\z/.match?(child.text)
            else
              child.matches? attachment_selector
            end
          end
        end
      end
🔎 See on GitHub

fragment_by_canonicalizing_attachment_galleries(content)

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 13
      def fragment_by_canonicalizing_attachment_galleries(content)
        fragment_by_replacing_attachment_gallery_nodes(content) do |node|
          "<#{TAG_NAME}>#{node.inner_html}</#{TAG_NAME}>"
        end
      end
🔎 See on GitHub
📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 19
      def fragment_by_replacing_attachment_gallery_nodes(content)
        Fragment.wrap(content).update do |source|
          find_attachment_gallery_nodes(source).each do |node|
            node.replace(yield(node).to_s)
          end
        end
      end
🔎 See on GitHub

from_node(node)

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 39
      def from_node(node)
        new(node)
      end
🔎 See on GitHub

new(node)

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 54
    def initialize(node)
      @node = node
    end
🔎 See on GitHub

selector()

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 47
      def selector
        "#{TAG_NAME}:has(#{attachment_selector} + #{attachment_selector})"
      end
🔎 See on GitHub

Instance Public methods

attachments()

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 58
    def attachments
      @attachments ||= node.css(ActionText::AttachmentGallery.attachment_selector).map do |node|
        ActionText::Attachment.from_node(node).with_full_attributes
      end
    end
🔎 See on GitHub

inspect()

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 68
    def inspect
      "#<#{self.class.name} size=#{size.inspect}>"
    end
🔎 See on GitHub

size()

📝 Source code
# File actiontext/lib/action_text/attachment_gallery.rb, line 64
    def size
      attachments.size
    end
🔎 See on GitHub