 		@data.image = @data.skus[0].image
 
 		# Build selectors from given select strings.
-		@select = _.mapObj @options.selectors, (key, val) =>
+		@select = _.mapObj $.skuSelector.selectors, (key, val) =>
 			( => $(val, @context) )
+		console.log @select
 
 		@select.inputs = => $('input, select', @context)
 		@select.itemDimension = (dimensionName) => $(".item-dimension-#{_.sanitize(dimensionName)}", @context)

	warnUnavailable: false
	selectOnOpening: false
	confirmBuy: false
	selectors:
		listPriceValue: '.skuselector-list-price .value'
		bestPriceValue: '.skuselector-best-price .value'
		installment: '.skuselector-installment'
		buyButton: '.skuselector-buy-btn'
		confirmButton: '.skuselector-confirm-btn'
		price: '.skuselector-price'
		priceRange: '.skuselector-price-range'
		warning: '.skuselector-warning'
		warnUnavailable: '.skuselector-warn-unavailable'

# Called when we failed to receive variations.
	skuVariationsFailHandler: ($el, options, reason) ->

# DEPENDENCIES:
# jQuery
# vtex-utils
# dust

$ = window.jQuery


#
# SHARED FUNCTIONS
#

$.skuSelector = {}

# Given a product id, return a promise for a request for the sku variations
$.skuSelector.getSkusForProduct = (productId) ->
	$.get '/api/catalog_system/pub/products/variations/' + productId

$.skuSelector.getAddUrlForSku = (sku, seller = 1, qty = 1, salesChannel = 1, redirect = true) ->
	"/checkout/cart/add?qty=#{qty}&seller=#{seller}&sku=#{sku}&sc=#{salesChannel}&redirect=#{redirect}"

$.skuSelector.selectors =
	listPriceValue: '.skuselector-list-price .value'
	bestPriceValue: '.skuselector-best-price .value'
	installment: '.skuselector-installment'
	buyButton: '.skuselector-buy-btn'
	confirmButton: '.skuselector-confirm-btn'
	price: '.skuselector-price'
	priceRange: '.skuselector-price-range'
	warning: '.skuselector-warning'
	warnUnavailable: '.skuselector-warn-unavailable'


#
# CLASSES
