Sha256: 3c772609875ee0ea241ddf3411582fe375eed8d037cb4679343cf96bf07391f9
Contents?: true
Size: 1.14 KB
Versions: 2
Compression:
Stored size: 1.14 KB
Contents
module Types::Objects::Base class AttachmentType < Types::BaseObject field :id, Int, nil, null: false field :filename, String, nil, null: false field :url, String, nil, null: false field :base64, String, nil, null: false def id if object.class.eql?(ActiveStorage::Variant) object.blob.id else object.id end end def filename if object.class.eql?(ActiveStorage::Variant) object.blob.filename.to_s + "-" + object.variation.transformations[:resize] else object.filename.to_s end end def url if object.class.eql?(ActiveStorage::Variant) Rails.application.routes.url_helpers.rails_representation_url(object) elsif defined?(object.service_url) object.service_url else object.url end end def base64 data = if object.class.eql?(ActiveStorage::Variant) Base64.strict_encode64(object.blob.download) else Base64.strict_encode64(object.download) end "data:#{object.content_type};base64,#{data}" end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cm-graphql-0.0.6 | app/graphql/types/objects/base/attachment_type.rb |
cm-graphql-0.0.5 | app/graphql/types/objects/base/attachment_type.rb |