Module: ActiveStorage::AsyncVariants::VariationExtension

Defined in:
lib/active_storage/async_variants/variation_extension.rb

Constant Summary collapse

ASYNC_KEYS =
%i[processing failed transformer].freeze

Instance Method Summary collapse

Instance Method Details

#async_optionsObject



19
20
21
# File 'lib/active_storage/async_variants/variation_extension.rb', line 19

def async_options
  @async_options || {}
end

#default_to(defaults) ⇒ Object



23
24
25
# File 'lib/active_storage/async_variants/variation_extension.rb', line 23

def default_to(defaults)
  self.class.new(transformations.merge(@async_options).reverse_merge(defaults))
end

#initialize(transformations) ⇒ Object



8
9
10
11
12
13
14
15
16
17
# File 'lib/active_storage/async_variants/variation_extension.rb', line 8

def initialize(transformations)
  if transformations.is_a?(Hash)
    @async_options = transformations.slice(*ASYNC_KEYS)
    super(transformations.except(*ASYNC_KEYS))
  else
    @async_options = {}
    super
  end
  ActiveStorage::AsyncVariants::Registry.register(digest, @async_options) if @async_options[:processing].present?
end