Home
ADU
12㎡ Compact Timber Studio
20㎡ Compact Timber Studio
Materials
Structure Timber
Sheathing & Panels
Finishes
Electrical
Projects
Contact
More links
Log in
Create an account
${(data.data && data.data.count) > 999 ? '999+' : (data.data && data.data.count)}
${(data.data && data.data.count) > 999 ? '999+' : (data.data && data.data.count)}
Search
Home
ADU
ADU
12㎡ Compact Timber Studio
20㎡ Compact Timber Studio
Materials
Materials
Structure Timber
Sheathing & Panels
Finishes
Finishes
Electrical
Projects
Contact
Log in
function setSearchUrl(searchValue) { return Promise.resolve({ url: '/search?q=' + searchValue }); } exportFunction('setSearchUrl', setSearchUrl);
${function() { if (data === undefined || typeof data !== 'string' || data == '') return ''; const searchEmpty = ("Your search for \"{test}\" did not yield any results.").replace('{test}', data); return `
View more
${searchEmpty}
`; }()}
Home
/
South America Taiwan US gauge socket 110v120 Japanese 15A American six-hole usb-type Thailand Thai switch
${data.index + 1}/66
South America Taiwan US gauge socket 110v120 Japanese 15A American six-hole usb-type Thailand Thai switch
Free shipping
Hot
Sold 0 only
999999999
item(s) left
${function() { let availableQuantity = data && data.available_quantity; if (availableQuantity == undefined) { return ("This product variant does not exist"); } availableQuantity = Math.max(availableQuantity, 0); const availableQuantityDom = `
${availableQuantity}
` return ("Sold 0 only {stock} item(s) left").replace(/\{*stock*\}/, availableQuantityDom); }()}
$10.00
${function(){ const variant = data.variant; const price = "5"; const priceMax = "30"; const saveType = "amount"; const saveText = "Save {off_ratio}"; return `
-
${saveText.replace('{off_ratio}', saveType == 'percent' ? variant.off_ratio + '%' : `
` )}
` }()}
Model:
20a american six holes (120*70)
20a american six holes (120*70)
USB+TYPE-(120*70)
Large doorbell switch (120*70)
One large board order (120*70)
Large board with multiple controls (120*70)
Large board with one open and one pair (120*70)
Telephone (120*70)
Two-karat order (120*70)
Two-open multi-control (120*70)
Two openings and double (120*70)
Flat two holes (120*70)
Flat two-hole + category 6 computers (120*70)
Flat two-hole + category 5 computers (120*70)
Flat six holes (120*70)
Category 6 telephone computers (120*70)
Category 6 computers (120*70)
Category six two-position computers (120*70)
Category six-digit computer (120*70)
Category six three-digit computer (120*70)
Category 6 four-digit computer (120*70)
American nine holes (120*70)
American six holes (1/3+1/3) (120*70)
American six holes (120*70)
American six-hole + sc optical fiber (120*70)
American six-hole+usb+type-2.1a (120*70)
American three holes (2/3) (120*70)
American three holes (1/3)
American three-hole 2/3+usb+type-c2.1a)
American three-hole+usb+type-c+two holes (120*70)
American three holes 2/3 + two holes (120*70)
American three-hole + category 6 computers + two holes (120*70)
American three-hole 1/3+category six networks (120*70)
American three-hole + category 5 computers + two holes (120*70)
American three-hole 2/3+class fifth network (120*70)
American three-hole + audio + hdmi (120*70)
1/3 small doorbell (120*70)
Three orders (120*70)
Dual usb2.1a+dual type-c2.1a (120*70)
Four holes 1/3+1/3 (120*70)
Four holes + category 6 computers (120*70)
Four holes + category 5 computers (120*70)
Category 5 telephone computers (120*70)
Category 5 computers (120*70)
Category 5 two-position computer (120*70)
Category 5 and six-digit computer (120*70)
Category 5 three-digit computer (120*70)
Category 5 four-digit computer (120*70)
Small two openings and double 1/3 (120*70)
Small two openings double + two holes (120*70)
Small two openings + american six holes (120*70)
Small two-way double 1/3 + american three-hole 2/3 (120*70)
Small two-way double 1/3 + american three-hole 1/3 (120*70)
Small six open double (120*70) white
Small four openings (120*70)
Small one order 1/3 (120*70)
One-open order + usb + type-c + american three-hole (120*70)
One opening order 1/3 + two holes 1/3 (120*70)
One order + american six holes (120*70)
One order + american three holes 2/3 (120*70)
One order 1/3 + american three holes 1/3 (120*70)
One open multi-control 1/3 (120*70)
One opening and dual control 1/3 (120*70)
${data.value}
Quantity
${function() { const minDays = parseInt('3'); const maxDays = parseInt('7'); const customText = "Estimated Delivery\uff1a{min_date} - {max_date}"; const minDate = new Date(Date.now() + (minDays * 86400000)); const maxDate = new Date(Date.now() + (maxDays * 86400000)); const formatDate = (minDate.getFullYear() == maxDate.getFullYear() && minDate.getFullYear() == new Date().getFullYear()) ? new Intl.DateTimeFormat('en', { month: 'short', day: '2-digit' }) : new Intl.DateTimeFormat('en', { month: 'short', day: '2-digit', year: 'numeric' }); const tipText = customText.replace(/\{min_date\}/g, '
' + formatDate.format(minDate) + '
') .replace(/\{max_date\}/g, '
' + formatDate.format(maxDate) + '
'); return `
${tipText}
`; }()}
Add to cart
-
$10.00
-
Buy now
Free worldwide shipping
Free returns
Sustainably made
Secure payments
Share the love
Watch the creative process behind the product
Click to watch
See how it works
Description
Description
You may also like
Recently viewed
${ data == 1 ? ("1 product was added to your cart!") : ("{count} products were added to your cart!").replace('{count}', data) }
${function() { const freeShippingAmount = 0; const totalPrice = data.data.total_price; const diffAmount = freeShippingAmount - totalPrice; const freeShippingText = diffAmount > 0 ? "Spend {amount} more and get free shipping!" : "Your order is free delivery"; return `
${diffAmount > 0 ? freeShippingText.replace('{amount}', `
`) : freeShippingText}
`; }()}
${data.title}
${data.variant.options.map(option => option.value).join(' / ')}
${(data.parsedProperties || []).map((propertie)=>{ if (propertie.isImage){ return `
${propertie.name}:
View image
` }else{ return `
${propertie.name}: ${propertie.value}
` } }).join('')}
${data.data.item_count == 1 ? ("Cart subtotal (1 product)") : ("Cart subtotal ( {count} products)").replace('{count}', data.data.line_items.reduce((res, item) => res + Number(item.quantity), 0))}
${("Save {off_ratio}").replace('{off_ratio}', `
`)}
Taxes and shipping calculated at checkout
View cart
Continue shopping
You may also like
${function() { const force_image_size = "natural"; const product_hover_on = true; const product_show_sale_label = false; const product_save_type = "amount"; const badge1 = ""; const badge2 = ""; const badge3 = ""; const product_title_mobile_hide = false; const product_title_style = "full"; const enable_collection_thumb_image = true; const variantNames = ["color"]; const thumbMaxNum = 4; const suffix_id = Math.random().toFixed(6).slice(-6); const url = data.withinUrl; const productId = data.id; const price = data.price; const productAvailable = data.available; const productVariants = data.variants || []; const images = data.images || []; const image = data.image || {}; const imageWidth = image.width; let imageHeight = image.height; let image2 = data.secondImage; let imageHoverOn = !!image2.src; if (force_image_size !== 'natural') { imageHeight = imageWidth * force_image_size; } let compareAtPrice = data.compare_at_price; let offRatio = data.off_ratio; let discountMaxUrl = url; const showFrom = data.price_min != data.price_max ? true : false; for (let i = 0; i < productVariants.length; i++) { const variant = productVariants[i]; if (variant.price == price && compareAtPrice < variant.compare_at_price) { compareAtPrice = variant.compare_at_price; offRatio = variant.off_ratio; variant.available && (discountMaxUrl = variant.withinUrl); } } const soldOutText = "Sold out"; let soldOn = false; let saleOn = false; if (productAvailable) { if (product_show_sale_label && +price < +compareAtPrice) { saleOn = true; } } else { soldOn = true; } const diffPrice = compareAtPrice - price; const saveLabelContent = product_save_type == 'percent' ? (offRatio + '%') : `
`; let saveText = "Save {off_ratio}"; saveText = saveText.replace('{off_ratio}', saveLabelContent); const productTitle = data.title; const variantValues = []; const showVariants = []; if (data.need_variant_image && enable_collection_thumb_image && variantNames.length > 0) { for (let i = 0; i < (data.options || []).length; i++) { const option = data.options[i]; const optionName = option.name.toLowerCase(); if (variantNames.includes(optionName)) { for (let j = 0; j < productVariants.length; j++) { const variant = productVariants[j]; const value = variant.options[i].value; if (!variantValues.includes(value)) { variantValues.push(value); showVariants.push(variant); } } break; } } } return `
${saleOn ? saveText : soldOutText}
${badge1}
${badge2}
${badge3}
${ "title" === 'subtitle' ? data.brief : data.title }
From
${saveText}
${showVariants.map((item, idx) => { let showMoreHtml = ''; if (idx == thumbMaxNum) { showMoreHtml += `
+${showVariants.length - thumbMaxNum}
`; } return ` ${showMoreHtml}
`; }).join('') }
`; }()}
${function() { const defaultSelectedVariant = data.variants.find(v => v.available) || data.variants[0]; const defaultIndex = !!defaultSelectedVariant ? data.images.findIndex(img => img.src == (defaultSelectedVariant.image && defaultSelectedVariant.image.src)) : -1; const initialSlide = defaultIndex == -1 ? 0 : defaultIndex; const attrs = data.images.length > 1 ? 'slide controls' : ''; return `
`; }()}
${data.title}
${data.brief}
${function() { const defaultSelectedVariant = data.variants.find(v => v.available) || data.variants[0]; return `
${("Save {off_ratio}").replace('{off_ratio}', ("amount") == 'percent' ? defaultSelectedVariant.off_ratio + '%' : `
` )}
-
`; }()}
${function(){ const defaultSelectedVariant = data.variants.find(v => v.available) || data.variants[0]; let status_lan = "Add to cart"; if ((defaultSelectedVariant && !defaultSelectedVariant.available) || (!defaultSelectedVariant && !data.available)) { status_lan = "Sold out"; } return `
Quantity
${status_lan}
Buy now
` }()}
${function() { return data.product.options.map((option, index) => { const optionName = option.name || ''; const optionId = option.id || ''; let isThumbImage = !!option.showThumbImage; const thumbStyle = "image_with_text"; const thumbType = isThumbImage ? thumbStyle.replace(/_/g, '-') : 'text'; const variantType = null; const selectedVariantVal = data.selectedOptions && data.selectedOptions.length && data.selectedOptions.find(v => v.name === optionName).value[0] || ''; const isSelected = (value) => { const selected = (data.selectedOptions || []).find(v => v.name === optionName); return selected && selected.value.length && selected.value[0] == value; }; const getThumbImage = (value) => { const options = data.product.options || []; const option = options.find(o => o.name === optionName); if (option.thumbImages) { const thumbImage = option.thumbImages.find(t => t.value === value); if (thumbImage && thumbImage.image) { return { src: thumbImage.image.src, alt: thumbImage.image.alt }; } } return {src: '', alt: ''}; }; return `
${optionName.slice(0, 1).toUpperCase() + optionName.slice(1).toLowerCase()} :
${selectedVariantVal}
${option.values.map((value, idx) => { return `
${value}
${value}
` }).join('')}
`; }).join(''); }()}
${data.value || ''}
${("Save {off_ratio}").replace('{off_ratio}', ("amount") == 'percent' ? data.variant.off_ratio + '%' : `
` )}
-
-