Sha256: cee5dbabc72c6e26909ecf79d96285aaa22f4be85ac8b90160a9194838c7454f

Contents?: true

Size: 578 Bytes

Versions: 8

Compression:

Stored size: 578 Bytes

Contents

module Spree
  class Asset < Spree::Base
    module Support
      module ActiveStorage
        extend ActiveSupport::Concern

        included do
          def url(style)
            return placeholder(style) unless attachment.attached?

            attachment.variant(resize: dimensions_for_style(style))
          end

          def placeholder(style)
            "noimage/#{style}.png"
          end

          def dimensions_for_style(style)
            self.class.styles.with_indifferent_access[style] || default_style
          end
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
spree_core-3.6.6 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.5 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.4 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.3 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.2 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.1 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.0 app/models/spree/asset/support/active_storage.rb
spree_core-3.6.0.rc1 app/models/spree/asset/support/active_storage.rb