1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Add support for "presentation" gallery attribute

This commit is contained in:
Javan Makhmali 2018-10-03 12:11:39 -04:00
parent e5cc70ea17
commit 2bd0f608f2
2 changed files with 5 additions and 4 deletions

View file

@ -4,7 +4,7 @@ module ActionText
TAG_NAME = "action-text-attachment" TAG_NAME = "action-text-attachment"
SELECTOR = TAG_NAME SELECTOR = TAG_NAME
ATTRIBUTES = %w( sgid content-type url href filename filesize width height previewable caption ) ATTRIBUTES = %w( sgid content-type url href filename filesize width height previewable presentation caption )
class << self class << self
def fragment_by_canonicalizing_attachments(content) def fragment_by_canonicalizing_attachments(content)

View file

@ -3,7 +3,8 @@ module ActionText
TAG_NAME = "figure" TAG_NAME = "figure"
SELECTOR = "[data-trix-attachment]" SELECTOR = "[data-trix-attachment]"
ATTRIBUTES = %w( sgid contentType url href filename filesize width height previewable content caption ) COMPOSED_ATTRIBUTES = %w( caption presentation )
ATTRIBUTES = %w( sgid contentType url href filename filesize width height previewable content ) + COMPOSED_ATTRIBUTES
ATTRIBUTE_TYPES = { ATTRIBUTE_TYPES = {
"previewable" => ->(value) { value.to_s == "true" }, "previewable" => ->(value) { value.to_s == "true" },
"filesize" => ->(value) { Integer(value.to_s) rescue value }, "filesize" => ->(value) { Integer(value.to_s) rescue value },
@ -16,8 +17,8 @@ module ActionText
def from_attributes(attributes) def from_attributes(attributes)
attributes = process_attributes(attributes) attributes = process_attributes(attributes)
trix_attachment_attributes = attributes.except("caption") trix_attachment_attributes = attributes.except(*COMPOSED_ATTRIBUTES)
trix_attributes = attributes.slice("caption") trix_attributes = attributes.slice(*COMPOSED_ATTRIBUTES)
node = ActionText::HtmlConversion.create_element(TAG_NAME) node = ActionText::HtmlConversion.create_element(TAG_NAME)
node["data-trix-attachment"] = JSON.generate(trix_attachment_attributes) node["data-trix-attachment"] = JSON.generate(trix_attachment_attributes)