/* * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Copyright (c) 2020 Mobify Research & Development Inc. All rights reserved. */
/* * * * * * * * * * * * * * * * * * * * * * * * * * * */
/**
* Shop API
* No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
*
* OpenAPI spec version: 20.4
*
*
* NOTE: This class is auto generated by the swagger code generator program.
* https://github.com/swagger-api/swagger-codegen.git
* Do not edit the class manually.
*
*/
import ApiClient from '../ApiClient'
import BundledProduct from './BundledProduct'
import ImageGroup from './ImageGroup'
import Inventory from './Inventory'
import Master from './Master'
import Option from './Option'
import ProductLink from './ProductLink'
import ProductPromotion from './ProductPromotion'
import ProductType from './ProductType'
import Recommendation from './Recommendation'
import Variant from './Variant'
import VariationAttribute from './VariationAttribute'
import VariationGroup from './VariationGroup'
/**
* The Product model module.
* @module models/Product
* @version 20.4
*/
export default class Product {
/**
* Constructs a new <code>Product</code>.
* Document representing a product.
* @alias module:models/Product
* @class
* @param id {String} The id (SKU) of the product.
*/
constructor(id) {
this.id = id
}
/**
* Constructs a <code>Product</code> from a plain JavaScript object, optionally creating a new instance.
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @param {module:models/Product} obj Optional instance to populate.
* @return {module:models/Product} The populated <code>Product</code> instance.
*/
static constructFromObject(data, obj) {
if (data) {
obj = obj || new Product()
if (data.hasOwnProperty('brand')) {
obj.brand = ApiClient.convertToType(data.brand, 'String')
}
if (data.hasOwnProperty('bundled_products')) {
obj.bundled_products = ApiClient.convertToType(data.bundled_products, [BundledProduct])
}
if (data.hasOwnProperty('c_availableForInStorePickup')) {
obj.c_availableForInStorePickup = ApiClient.convertToType(data.c_availableForInStorePickup, 'Boolean')
}
if (data.hasOwnProperty('c_batteryLife')) {
obj.c_batteryLife = ApiClient.convertToType(data.c_batteryLife, 'String')
}
if (data.hasOwnProperty('c_batteryType')) {
obj.c_batteryType = ApiClient.convertToType(data.c_batteryType, 'String')
}
if (data.hasOwnProperty('c_bootType')) {
obj.c_bootType = ApiClient.convertToType(data.c_bootType, ['String'])
}
if (data.hasOwnProperty('c_bottomType')) {
obj.c_bottomType = ApiClient.convertToType(data.c_bottomType, ['String'])
}
if (data.hasOwnProperty('c_color')) {
obj.c_color = ApiClient.convertToType(data.c_color, 'String')
}
if (data.hasOwnProperty('c_consoleWarranty')) {
obj.c_consoleWarranty = ApiClient.convertToType(data.c_consoleWarranty, 'String')
}
if (data.hasOwnProperty('c_customCSSFile')) {
obj.c_customCSSFile = ApiClient.convertToType(data.c_customCSSFile, 'String')
}
if (data.hasOwnProperty('c_digitalCameraFeatures')) {
obj.c_digitalCameraFeatures = ApiClient.convertToType(data.c_digitalCameraFeatures, ['String'])
}
if (data.hasOwnProperty('c_digitalCameraPixels')) {
obj.c_digitalCameraPixels = ApiClient.convertToType(data.c_digitalCameraPixels, 'String')
}
if (data.hasOwnProperty('c_digitalCameraType')) {
obj.c_digitalCameraType = ApiClient.convertToType(data.c_digitalCameraType, 'String')
}
if (data.hasOwnProperty('c_digitalCameraWarranty')) {
obj.c_digitalCameraWarranty = ApiClient.convertToType(data.c_digitalCameraWarranty, 'String')
}
if (data.hasOwnProperty('c_dimDepth')) {
obj.c_dimDepth = ApiClient.convertToType(data.c_dimDepth, 'String')
}
if (data.hasOwnProperty('c_dimHeight')) {
obj.c_dimHeight = ApiClient.convertToType(data.c_dimHeight, 'String')
}
if (data.hasOwnProperty('c_dimWeight')) {
obj.c_dimWeight = ApiClient.convertToType(data.c_dimWeight, 'String')
}
if (data.hasOwnProperty('c_dimWidth')) {
obj.c_dimWidth = ApiClient.convertToType(data.c_dimWidth, 'String')
}
if (data.hasOwnProperty('c_displaySize')) {
obj.c_displaySize = ApiClient.convertToType(data.c_displaySize, 'String')
}
if (data.hasOwnProperty('c_gameGenre')) {
obj.c_gameGenre = ApiClient.convertToType(data.c_gameGenre, ['String'])
}
if (data.hasOwnProperty('c_gameRating')) {
obj.c_gameRating = ApiClient.convertToType(data.c_gameRating, 'String')
}
if (data.hasOwnProperty('c_gameSystemType')) {
obj.c_gameSystemType = ApiClient.convertToType(data.c_gameSystemType, 'String')
}
if (data.hasOwnProperty('c_gpsFeatures')) {
obj.c_gpsFeatures = ApiClient.convertToType(data.c_gpsFeatures, ['String'])
}
if (data.hasOwnProperty('c_gpsType')) {
obj.c_gpsType = ApiClient.convertToType(data.c_gpsType, ['String'])
}
if (data.hasOwnProperty('c_gpsWarranty')) {
obj.c_gpsWarranty = ApiClient.convertToType(data.c_gpsWarranty, 'String')
}
if (data.hasOwnProperty('c_imageAspectRatio')) {
obj.c_imageAspectRatio = ApiClient.convertToType(data.c_imageAspectRatio, 'String')
}
if (data.hasOwnProperty('c_isNew')) {
obj.c_isNew = ApiClient.convertToType(data.c_isNew, 'Boolean')
}
if (data.hasOwnProperty('c_isNewtest')) {
obj.c_isNewtest = ApiClient.convertToType(data.c_isNewtest, 'Boolean')
}
if (data.hasOwnProperty('c_isSale')) {
obj.c_isSale = ApiClient.convertToType(data.c_isSale, 'Boolean')
}
if (data.hasOwnProperty('c_kidsAge')) {
obj.c_kidsAge = ApiClient.convertToType(data.c_kidsAge, 'String')
}
if (data.hasOwnProperty('c_length')) {
obj.c_length = ApiClient.convertToType(data.c_length, 'String')
}
if (data.hasOwnProperty('c_lensAperture')) {
obj.c_lensAperture = ApiClient.convertToType(data.c_lensAperture, 'String')
}
if (data.hasOwnProperty('c_materialTest')) {
obj.c_materialTest = ApiClient.convertToType(data.c_materialTest, ['String'])
}
if (data.hasOwnProperty('c_mediaFormat')) {
obj.c_mediaFormat = ApiClient.convertToType(data.c_mediaFormat, ['String'])
}
if (data.hasOwnProperty('c_memorySize')) {
obj.c_memorySize = ApiClient.convertToType(data.c_memorySize, 'String')
}
if (data.hasOwnProperty('c_memoryType')) {
obj.c_memoryType = ApiClient.convertToType(data.c_memoryType, ['String'])
}
if (data.hasOwnProperty('c_musicStorage')) {
obj.c_musicStorage = ApiClient.convertToType(data.c_musicStorage, 'String')
}
if (data.hasOwnProperty('c_opticalZoom')) {
obj.c_opticalZoom = ApiClient.convertToType(data.c_opticalZoom, 'String')
}
if (data.hasOwnProperty('c_outerwearType')) {
obj.c_outerwearType = ApiClient.convertToType(data.c_outerwearType, 'String')
}
if (data.hasOwnProperty('c_portableAudioType')) {
obj.c_portableAudioType = ApiClient.convertToType(data.c_portableAudioType, ['String'])
}
if (data.hasOwnProperty('c_refinementColor')) {
obj.c_refinementColor = ApiClient.convertToType(data.c_refinementColor, 'String')
}
if (data.hasOwnProperty('c_resolution')) {
obj.c_resolution = ApiClient.convertToType(data.c_resolution, 'String')
}
if (data.hasOwnProperty('c_sandalType')) {
obj.c_sandalType = ApiClient.convertToType(data.c_sandalType, 'String')
}
if (data.hasOwnProperty('c_sheets')) {
obj.c_sheets = ApiClient.convertToType(data.c_sheets, ['String'])
}
if (data.hasOwnProperty('c_shoeType')) {
obj.c_shoeType = ApiClient.convertToType(data.c_shoeType, 'String')
}
if (data.hasOwnProperty('c_size')) {
obj.c_size = ApiClient.convertToType(data.c_size, 'String')
}
if (data.hasOwnProperty('c_skinConcern')) {
obj.c_skinConcern = ApiClient.convertToType(data.c_skinConcern, ['String'])
}
if (data.hasOwnProperty('c_styleNumber')) {
obj.c_styleNumber = ApiClient.convertToType(data.c_styleNumber, 'String')
}
if (data.hasOwnProperty('c_tabDescription')) {
obj.c_tabDescription = ApiClient.convertToType(data.c_tabDescription, 'String')
}
if (data.hasOwnProperty('c_tabDetails')) {
obj.c_tabDetails = ApiClient.convertToType(data.c_tabDetails, 'String')
}
if (data.hasOwnProperty('c_test')) {
obj.c_test = ApiClient.convertToType(data.c_test, 'String')
}
if (data.hasOwnProperty('c_topType')) {
obj.c_topType = ApiClient.convertToType(data.c_topType, 'String')
}
if (data.hasOwnProperty('c_tvSignalFormat')) {
obj.c_tvSignalFormat = ApiClient.convertToType(data.c_tvSignalFormat, 'String')
}
if (data.hasOwnProperty('c_tvSize')) {
obj.c_tvSize = ApiClient.convertToType(data.c_tvSize, 'String')
}
if (data.hasOwnProperty('c_tvType')) {
obj.c_tvType = ApiClient.convertToType(data.c_tvType, 'String')
}
if (data.hasOwnProperty('c_tvWarranty')) {
obj.c_tvWarranty = ApiClient.convertToType(data.c_tvWarranty, 'String')
}
if (data.hasOwnProperty('c_videoStorage')) {
obj.c_videoStorage = ApiClient.convertToType(data.c_videoStorage, 'String')
}
if (data.hasOwnProperty('c_waist')) {
obj.c_waist = ApiClient.convertToType(data.c_waist, 'String')
}
if (data.hasOwnProperty('c_width')) {
obj.c_width = ApiClient.convertToType(data.c_width, 'String')
}
if (data.hasOwnProperty('currency')) {
obj.currency = ApiClient.convertToType(data.currency, 'String')
}
if (data.hasOwnProperty('ean')) {
obj.ean = ApiClient.convertToType(data.ean, 'String')
}
if (data.hasOwnProperty('fetch_date')) {
obj.fetch_date = ApiClient.convertToType(data.fetch_date, 'Number')
}
if (data.hasOwnProperty('id')) {
obj.id = ApiClient.convertToType(data.id, 'String')
}
if (data.hasOwnProperty('image_groups')) {
obj.image_groups = ApiClient.convertToType(data.image_groups, [ImageGroup])
}
if (data.hasOwnProperty('inventories')) {
obj.inventories = ApiClient.convertToType(data.inventories, [Inventory])
}
if (data.hasOwnProperty('inventory')) {
obj.inventory = Inventory.constructFromObject(data.inventory)
}
if (data.hasOwnProperty('long_description')) {
obj.long_description = ApiClient.convertToType(data.long_description, 'String')
}
if (data.hasOwnProperty('manufacturer_name')) {
obj.manufacturer_name = ApiClient.convertToType(data.manufacturer_name, 'String')
}
if (data.hasOwnProperty('manufacturer_sku')) {
obj.manufacturer_sku = ApiClient.convertToType(data.manufacturer_sku, 'String')
}
if (data.hasOwnProperty('master')) {
obj.master = Master.constructFromObject(data.master)
}
if (data.hasOwnProperty('min_order_quantity')) {
obj.min_order_quantity = ApiClient.convertToType(data.min_order_quantity, 'Number')
}
if (data.hasOwnProperty('name')) {
obj.name = ApiClient.convertToType(data.name, 'String')
}
if (data.hasOwnProperty('options')) {
obj.options = ApiClient.convertToType(data.options, [Option])
}
if (data.hasOwnProperty('page_description')) {
obj.page_description = ApiClient.convertToType(data.page_description, 'String')
}
if (data.hasOwnProperty('page_keywords')) {
obj.page_keywords = ApiClient.convertToType(data.page_keywords, 'String')
}
if (data.hasOwnProperty('page_title')) {
obj.page_title = ApiClient.convertToType(data.page_title, 'String')
}
if (data.hasOwnProperty('price')) {
obj.price = ApiClient.convertToType(data.price, 'Number')
}
if (data.hasOwnProperty('price_max')) {
obj.price_max = ApiClient.convertToType(data.price_max, 'Number')
}
if (data.hasOwnProperty('prices')) {
obj.prices = ApiClient.convertToType(data.prices, {String: 'Number'})
}
if (data.hasOwnProperty('primary_category_id')) {
obj.primary_category_id = ApiClient.convertToType(data.primary_category_id, 'String')
}
if (data.hasOwnProperty('product_links')) {
obj.product_links = ApiClient.convertToType(data.product_links, [ProductLink])
}
if (data.hasOwnProperty('product_promotions')) {
obj.product_promotions = ApiClient.convertToType(data.product_promotions, [ProductPromotion])
}
if (data.hasOwnProperty('recommendations')) {
obj.recommendations = ApiClient.convertToType(data.recommendations, [Recommendation])
}
if (data.hasOwnProperty('set_products')) {
obj.set_products = ApiClient.convertToType(data.set_products, [Product])
}
if (data.hasOwnProperty('short_description')) {
obj.short_description = ApiClient.convertToType(data.short_description, 'String')
}
if (data.hasOwnProperty('step_quantity')) {
obj.step_quantity = ApiClient.convertToType(data.step_quantity, 'Number')
}
if (data.hasOwnProperty('type')) {
obj.type = ProductType.constructFromObject(data.type)
}
if (data.hasOwnProperty('unit')) {
obj.unit = ApiClient.convertToType(data.unit, 'String')
}
if (data.hasOwnProperty('upc')) {
obj.upc = ApiClient.convertToType(data.upc, 'String')
}
if (data.hasOwnProperty('valid_from')) {
obj.valid_from = ApiClient.convertToType(data.valid_from, 'Date')
}
if (data.hasOwnProperty('valid_to')) {
obj.valid_to = ApiClient.convertToType(data.valid_to, 'Date')
}
if (data.hasOwnProperty('variants')) {
obj.variants = ApiClient.convertToType(data.variants, [Variant])
}
if (data.hasOwnProperty('variation_attributes')) {
obj.variation_attributes = ApiClient.convertToType(data.variation_attributes, [VariationAttribute])
}
if (data.hasOwnProperty('variation_groups')) {
obj.variation_groups = ApiClient.convertToType(data.variation_groups, [VariationGroup])
}
if (data.hasOwnProperty('variation_values')) {
obj.variation_values = ApiClient.convertToType(data.variation_values, {String: 'String'})
}
}
return obj
}
/**
* The product's brand.
* @member {String} brand
*/
brand = undefined;
/**
* The array of all bundled products of this product.
* @member {Array.<module:models/BundledProduct>} bundled_products
*/
bundled_products = undefined;
/**
* Signals if there are inventory lists for brick-and-mortar stores associated with this product.
* @member {Boolean} c_availableForInStorePickup
*/
c_availableForInStorePickup = undefined;
/**
* @member {String} c_batteryLife
*/
c_batteryLife = undefined;
/**
* @member {String} c_batteryType
*/
c_batteryType = undefined;
/**
* Type of Boot for search refinement.
* @member {Array.<module:models/Product.CBootTypeEnum>} c_bootType
*/
c_bootType = undefined;
/**
* Bottom type for search refinement
* @member {Array.<module:models/Product.CBottomTypeEnum>} c_bottomType
*/
c_bottomType = undefined;
/**
* Product color used for variation attribute
* @member {String} c_color
*/
c_color = undefined;
/**
* @member {String} c_consoleWarranty
*/
c_consoleWarranty = undefined;
/**
* Use this attribute to apply custom styles for this product.
* @member {String} c_customCSSFile
*/
c_customCSSFile = undefined;
/**
* @member {Array.<module:models/Product.CDigitalCameraFeaturesEnum>} c_digitalCameraFeatures
*/
c_digitalCameraFeatures = undefined;
/**
* @member {String} c_digitalCameraPixels
*/
c_digitalCameraPixels = undefined;
/**
* @member {String} c_digitalCameraType
*/
c_digitalCameraType = undefined;
/**
* @member {String} c_digitalCameraWarranty
*/
c_digitalCameraWarranty = undefined;
/**
* @member {String} c_dimDepth
*/
c_dimDepth = undefined;
/**
* @member {String} c_dimHeight
*/
c_dimHeight = undefined;
/**
* @member {String} c_dimWeight
*/
c_dimWeight = undefined;
/**
* @member {String} c_dimWidth
*/
c_dimWidth = undefined;
/**
* @member {String} c_displaySize
*/
c_displaySize = undefined;
/**
* @member {Array.<module:models/Product.CGameGenreEnum>} c_gameGenre
*/
c_gameGenre = undefined;
/**
* @member {String} c_gameRating
*/
c_gameRating = undefined;
/**
* @member {String} c_gameSystemType
*/
c_gameSystemType = undefined;
/**
* @member {Array.<module:models/Product.CGpsFeaturesEnum>} c_gpsFeatures
*/
c_gpsFeatures = undefined;
/**
* @member {Array.<module:models/Product.CGpsTypeEnum>} c_gpsType
*/
c_gpsType = undefined;
/**
* @member {String} c_gpsWarranty
*/
c_gpsWarranty = undefined;
/**
* @member {String} c_imageAspectRatio
*/
c_imageAspectRatio = undefined;
/**
* @member {Boolean} c_isNew
*/
c_isNew = undefined;
/**
* This indiciates if the product is a new arrival.
* @member {Boolean} c_isNewtest
*/
c_isNewtest = undefined;
/**
* This is the help text. It is used for sorting rules.
* @member {Boolean} c_isSale
*/
c_isSale = undefined;
/**
* Kids Age used for search refinements
* @member {module:models/Product.CKidsAgeEnum} c_kidsAge
*/
c_kidsAge = undefined;
/**
* This attribute is used for mens and womens pants lengths.
* @member {String} c_length
*/
c_length = undefined;
/**
* @member {String} c_lensAperture
*/
c_lensAperture = undefined;
/**
* @member {Array.<module:models/Product.CMaterialTestEnum>} c_materialTest
*/
c_materialTest = undefined;
/**
* Media Format
* @member {Array.<module:models/Product.CMediaFormatEnum>} c_mediaFormat
*/
c_mediaFormat = undefined;
/**
* Memory Size
* @member {String} c_memorySize
*/
c_memorySize = undefined;
/**
* @member {Array.<module:models/Product.CMemoryTypeEnum>} c_memoryType
*/
c_memoryType = undefined;
/**
* @member {String} c_musicStorage
*/
c_musicStorage = undefined;
/**
* @member {String} c_opticalZoom
*/
c_opticalZoom = undefined;
/**
* Type of Outerwear for search refinement
* @member {module:models/Product.COuterwearTypeEnum} c_outerwearType
*/
c_outerwearType = undefined;
/**
* @member {Array.<module:models/Product.CPortableAudioTypeEnum>} c_portableAudioType
*/
c_portableAudioType = undefined;
/**
* @member {module:models/Product.CRefinementColorEnum} c_refinementColor
*/
c_refinementColor = undefined;
/**
* @member {String} c_resolution
*/
c_resolution = undefined;
/**
* Type of Sandal for search refinement
* @member {module:models/Product.CSandalTypeEnum} c_sandalType
*/
c_sandalType = undefined;
/**
* test attribute
* @member {Array.<module:models/Product.CSheetsEnum>} c_sheets
*/
c_sheets = undefined;
/**
* Type of Shoe for search refinements
* @member {module:models/Product.CShoeTypeEnum} c_shoeType
*/
c_shoeType = undefined;
/**
* This attribute is used for all footwear, apparel and accessory sizing for men, women and kids products.
* @member {String} c_size
*/
c_size = undefined;
/**
* @member {Array.<module:models/Product.CSkinConcernEnum>} c_skinConcern
*/
c_skinConcern = undefined;
/**
* @member {String} c_styleNumber
*/
c_styleNumber = undefined;
/**
* @member {String} c_tabDescription
*/
c_tabDescription = undefined;
/**
* @member {String} c_tabDetails
*/
c_tabDetails = undefined;
/**
* @member {String} c_test
*/
c_test = undefined;
/**
* Type of tops in clothing
* @member {String} c_topType
*/
c_topType = undefined;
/**
* @member {String} c_tvSignalFormat
*/
c_tvSignalFormat = undefined;
/**
* @member {String} c_tvSize
*/
c_tvSize = undefined;
/**
* @member {module:models/Product.CTvTypeEnum} c_tvType
*/
c_tvType = undefined;
/**
* @member {String} c_tvWarranty
*/
c_tvWarranty = undefined;
/**
* @member {String} c_videoStorage
*/
c_videoStorage = undefined;
/**
* Attribute used for apparel waist sizing.
* @member {String} c_waist
*/
c_waist = undefined;
/**
* This attribute is used for shoe widths for mens, womens and kids.
* @member {String} c_width
*/
c_width = undefined;
/**
* The ISO 4217 mnemonic code of the currency.
* @member {String} currency
*/
currency = undefined;
/**
* The European Article Number.
* @member {String} ean
*/
ean = undefined;
/**
* @member {Number} fetch_date
*/
fetch_date = undefined;
/**
* The id (SKU) of the product.
* @member {String} id
*/
id = undefined;
/**
* The array of product image groups.
* @member {Array.<module:models/ImageGroup>} image_groups
*/
image_groups = undefined;
/**
* The array of product inventories explicitly requested via 'inventory_ids' query parameter. This property is only returned in context of the 'availability' expansion.
* @member {Array.<module:models/Inventory>} inventories
*/
inventories = undefined;
/**
* The site default inventory information. This property is only returned in context of the 'availability' expansion.
* @member {module:models/Inventory} inventory
*/
inventory = undefined;
/**
* The localized product long description.
* @member {String} long_description
*/
long_description = undefined;
/**
* The products manufacturer name.
* @member {String} manufacturer_name
*/
manufacturer_name = undefined;
/**
* The products manufacturer sku.
* @member {String} manufacturer_sku
*/
manufacturer_sku = undefined;
/**
* The master product information. Only for types master, variation group and variant.
* @member {module:models/Master} master
*/
master = undefined;
/**
* The minimum order quantity for this product.
* @member {Number} min_order_quantity
*/
min_order_quantity = undefined;
/**
* The localized product name.
* @member {String} name
*/
name = undefined;
/**
* The array of product options. This array can be empty. Only for type option.
* @member {Array.<module:models/Option>} options
*/
options = undefined;
/**
* The localized products page description.
* @member {String} page_description
*/
page_description = undefined;
/**
* The localized products page description.
* @member {String} page_keywords
*/
page_keywords = undefined;
/**
* The localized products page title.
* @member {String} page_title
*/
page_title = undefined;
/**
* The sales price of the product. In case of complex products like master or set this is the minimum price of related child products.
* @member {Number} price
*/
price = undefined;
/**
* The maximum sales of related child products in case of complex products like master or set.
* @member {Number} price_max
*/
price_max = undefined;
/**
* The prices map with price book ids and their values.
* @member {Object.<String, Number>} prices
*/
prices = undefined;
/**
* The id of the products primary category.
* @member {String} primary_category_id
*/
primary_category_id = undefined;
/**
* The array of source and target products links information.
* @member {Array.<module:models/ProductLink>} product_links
*/
product_links = undefined;
/**
* The array of active customer product promotions for this product. This array can be empty. Coupon promotions are not returned in this array.
* @member {Array.<module:models/ProductPromotion>} product_promotions
*/
product_promotions = undefined;
/**
* Returns a list of recommendations.
* @member {Array.<module:models/Recommendation>} recommendations
*/
recommendations = undefined;
/**
* The array of set products of this product.
* @member {Array.<module:models/Product>} set_products
*/
set_products = undefined;
/**
* The localized product short description.
* @member {String} short_description
*/
short_description = undefined;
/**
* The steps in which the order amount of the product can be increased.
* @member {Number} step_quantity
*/
step_quantity = undefined;
/**
* The product type information. Can be one or multiple of the following values: item,master,variation_group,variant,bundle,set.
* @member {module:models/ProductType} type
*/
type = undefined;
/**
* The sales unit of the product.
* @member {String} unit
*/
unit = undefined;
/**
* The Universal Product Code.
* @member {String} upc
*/
upc = undefined;
/**
* The time when product is valid from.
* @member {Date} valid_from
*/
valid_from = undefined;
/**
* The time when product is valid to.
* @member {Date} valid_to
*/
valid_to = undefined;
/**
* The array of actual variants. This array can be empty. Only for types master, variation group and variant.
* @member {Array.<module:models/Variant>} variants
*/
variants = undefined;
/**
* Sorted array of variation attributes information. This array can be empty. Only for types master, variation group and variant.
* @member {Array.<module:models/VariationAttribute>} variation_attributes
*/
variation_attributes = undefined;
/**
* The array of actual variation groups. This array can be empty. Only for types master, variation group and variant.
* @member {Array.<module:models/VariationGroup>} variation_groups
*/
variation_groups = undefined;
/**
* The actual variation attribute id - value pairs. Only for type variant and variation group.
* @member {Object.<String, String>} variation_values
*/
variation_values = undefined;
/**
* Allowed values for the <code>cBootType</code> property.
* @enum {String}
* @readonly
*/
static CBootTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070'
};
/**
* Allowed values for the <code>cBottomType</code> property.
* @enum {String}
* @readonly
*/
static CBottomTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080'
};
/**
* Allowed values for the <code>cDigitalCameraFeatures</code> property.
* @enum {String}
* @readonly
*/
static CDigitalCameraFeaturesEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080',
/**
* value: "0090"
* @const
*/
'0090': '0090',
/**
* value: "0100"
* @const
*/
'0100': '0100',
/**
* value: "0110"
* @const
*/
'0110': '0110',
/**
* value: "0120"
* @const
*/
'0120': '0120',
/**
* value: "0130"
* @const
*/
'0130': '0130',
/**
* value: "0140"
* @const
*/
'0140': '0140',
/**
* value: "0150"
* @const
*/
'0150': '0150',
/**
* value: "0160"
* @const
*/
'0160': '0160',
/**
* value: "0170"
* @const
*/
'0170': '0170',
/**
* value: "0180"
* @const
*/
'0180': '0180',
/**
* value: "0190"
* @const
*/
'0190': '0190',
/**
* value: "0200"
* @const
*/
'0200': '0200',
/**
* value: "0210"
* @const
*/
'0210': '0210',
/**
* value: "0220"
* @const
*/
'0220': '0220',
/**
* value: "0230"
* @const
*/
'0230': '0230',
/**
* value: "0240"
* @const
*/
'0240': '0240',
/**
* value: "0250"
* @const
*/
'0250': '0250',
/**
* value: "0260"
* @const
*/
'0260': '0260',
/**
* value: "0270"
* @const
*/
'0270': '0270',
/**
* value: "0280"
* @const
*/
'0280': '0280'
};
/**
* Allowed values for the <code>cGameGenre</code> property.
* @enum {String}
* @readonly
*/
static CGameGenreEnum = {
/**
* value: "Action"
* @const
*/
Action: 'Action',
/**
* value: "Educational"
* @const
*/
Educational: 'Educational',
/**
* value: "Kids"
* @const
*/
Kids: 'Kids',
/**
* value: "Racing"
* @const
*/
Racing: 'Racing',
/**
* value: "Role-Playing"
* @const
*/
'Role-Playing': 'Role-Playing',
/**
* value: "Sports"
* @const
*/
Sports: 'Sports',
/**
* value: "Strategy"
* @const
*/
Strategy: 'Strategy'
};
/**
* Allowed values for the <code>cGpsFeatures</code> property.
* @enum {String}
* @readonly
*/
static CGpsFeaturesEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080',
/**
* value: "0090"
* @const
*/
'0090': '0090',
/**
* value: "0100"
* @const
*/
'0100': '0100',
/**
* value: "0110"
* @const
*/
'0110': '0110',
/**
* value: "0120"
* @const
*/
'0120': '0120',
/**
* value: "0130"
* @const
*/
'0130': '0130',
/**
* value: "0140"
* @const
*/
'0140': '0140',
/**
* value: "0150"
* @const
*/
'0150': '0150',
/**
* value: "0160"
* @const
*/
'0160': '0160',
/**
* value: "0170"
* @const
*/
'0170': '0170',
/**
* value: "0180"
* @const
*/
'0180': '0180',
/**
* value: "0190"
* @const
*/
'0190': '0190',
/**
* value: "0200"
* @const
*/
'0200': '0200',
/**
* value: "0210"
* @const
*/
'0210': '0210',
/**
* value: "0230"
* @const
*/
'0230': '0230'
};
/**
* Allowed values for the <code>cGpsType</code> property.
* @enum {String}
* @readonly
*/
static CGpsTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040'
};
/**
* Allowed values for the <code>c_kidsAge</code> property.
* @enum {String}
* @readonly
*/
static CKidsAgeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070'
};
/**
* Allowed values for the <code>cMaterialTest</code> property.
* @enum {String}
* @readonly
*/
static CMaterialTestEnum = {
/**
* value: "cotton"
* @const
*/
cotton: 'cotton',
/**
* value: "wool"
* @const
*/
wool: 'wool',
/**
* value: "polyester"
* @const
*/
polyester: 'polyester'
};
/**
* Allowed values for the <code>cMediaFormat</code> property.
* @enum {String}
* @readonly
*/
static CMediaFormatEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080',
/**
* value: "0090"
* @const
*/
'0090': '0090',
/**
* value: "0100"
* @const
*/
'0100': '0100'
};
/**
* Allowed values for the <code>cMemoryType</code> property.
* @enum {String}
* @readonly
*/
static CMemoryTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080',
/**
* value: "0090"
* @const
*/
'0090': '0090'
};
/**
* Allowed values for the <code>c_outerwearType</code> property.
* @enum {String}
* @readonly
*/
static COuterwearTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080'
};
/**
* Allowed values for the <code>cPortableAudioType</code> property.
* @enum {String}
* @readonly
*/
static CPortableAudioTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030'
};
/**
* Allowed values for the <code>c_refinementColor</code> property.
* @enum {String}
* @readonly
*/
static CRefinementColorEnum = {
/**
* value: "black"
* @const
*/
black: 'black',
/**
* value: "blue"
* @const
*/
blue: 'blue',
/**
* value: "green"
* @const
*/
green: 'green',
/**
* value: "red"
* @const
*/
red: 'red',
/**
* value: "orange"
* @const
*/
orange: 'orange',
/**
* value: "pink"
* @const
*/
pink: 'pink',
/**
* value: "purple"
* @const
*/
purple: 'purple',
/**
* value: "white"
* @const
*/
white: 'white',
/**
* value: "yellow"
* @const
*/
yellow: 'yellow',
/**
* value: "grey"
* @const
*/
grey: 'grey',
/**
* value: "beige"
* @const
*/
beige: 'beige',
/**
* value: "miscellaneous"
* @const
*/
miscellaneous: 'miscellaneous',
/**
* value: "brown"
* @const
*/
brown: 'brown',
/**
* value: "navy"
* @const
*/
navy: 'navy'
};
/**
* Allowed values for the <code>c_sandalType</code> property.
* @enum {String}
* @readonly
*/
static CSandalTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030'
};
/**
* Allowed values for the <code>cSheets</code> property.
* @enum {String}
* @readonly
*/
static CSheetsEnum = {
/**
* value: "value1"
* @const
*/
value1: 'value1',
/**
* value: "value2"
* @const
*/
value2: 'value2',
/**
* value: "value3"
* @const
*/
value3: 'value3'
};
/**
* Allowed values for the <code>c_shoeType</code> property.
* @enum {String}
* @readonly
*/
static CShoeTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040',
/**
* value: "0050"
* @const
*/
'0050': '0050',
/**
* value: "0060"
* @const
*/
'0060': '0060',
/**
* value: "0070"
* @const
*/
'0070': '0070',
/**
* value: "0080"
* @const
*/
'0080': '0080',
/**
* value: "0090"
* @const
*/
'0090': '0090',
/**
* value: "0100"
* @const
*/
'0100': '0100',
/**
* value: "0110"
* @const
*/
'0110': '0110'
};
/**
* Allowed values for the <code>cSkinConcern</code> property.
* @enum {String}
* @readonly
*/
static CSkinConcernEnum = {
/**
* value: "dryTight"
* @const
*/
dryTight: 'dryTight',
/**
* value: "comprehensive"
* @const
*/
comprehensive: 'comprehensive',
/**
* value: "liftingLossFirm"
* @const
*/
liftingLossFirm: 'liftingLossFirm'
};
/**
* Allowed values for the <code>c_tvType</code> property.
* @enum {String}
* @readonly
*/
static CTvTypeEnum = {
/**
* value: "0010"
* @const
*/
'0010': '0010',
/**
* value: "0020"
* @const
*/
'0020': '0020',
/**
* value: "0030"
* @const
*/
'0030': '0030',
/**
* value: "0040"
* @const
*/
'0040': '0040'
};
}