Class: EPlat::Product::Variant

Inherits:
Base
  • Object
show all
Defined in:
lib/e_plat/resource/product/variant.rb,
lib/e_plat/resource/product/variant/option_value.rb

Defined Under Namespace

Classes: OptionValue

Constant Summary

Constants included from Concerns::GraphQLable

Concerns::GraphQLable::FILTER_ARGS, Concerns::GraphQLable::QUERY_ARG_ARGS

Instance Attribute Summary

Attributes inherited from Base

#mapped_attributes, #mapping

Attributes included from Concerns::Aliases

#type_coercer

Instance Method Summary collapse

Methods inherited from Base

cached_shopify_webhook?, client, #client, exclude_from_json, #formatted_id, #graphql_input, #headers, #include_root_in_json, inherited, #initialize, initialize_singleton!, #mapped?, #native_keys, platform_specific_class?, prefix=, #read_only?

Methods included from Countable

#count

Methods included from Concerns::GraphQLable

#graphql_mutation_string, #mutate_graphql, #remove_mutation_root_from

Methods included from Concerns::Aliases

#add_aliases!

Methods included from Concerns::FullJson

#as_full_json, #to_full_json

Methods included from Concerns::OverwriteRequestMethods

#collection_path, #element_path, included

Methods included from Concerns::OverwriteInstanceMethods

#as_eplat_json, #as_json, #create, #create_resource_for, #to_eplat_json, #to_json, #update

Constructor Details

This class inherits a constructor from EPlat::Base

Instance Method Details

#image_src(images = []) ⇒ Object

EPlat::Product::Image => string



40
41
42
43
44
45
46
47
48
# File 'lib/e_plat/resource/product/variant.rb', line 40

def image_src(images=[]) # EPlat::Product::Image => string
	if client.bigcommerce?
		image_url
	elsif is_a?(EPlat::ShopifyWebhook::Product::Variant)
		images.to_a.find{ |i| i.id == image_id }.try(:src)
	elsif is_a?(EPlat::Shopify::Product::Variant)
		image&.src
	end
end

#saveObject



35
36
37
38
# File 'lib/e_plat/resource/product/variant.rb', line 35

def save
	prefix_options[:product] ||= try(:product)&.id
	super
end