Nicepairs' Heels: Nicepairs offers a stylish collection of heels that combine fashion-forward designs with comfort. From classic pumps to trendy slingbacks, Nicepairs' footwear is crafted with attention to detail. Whether you're looking for kitten heels, pointed toes, or unique colors, Nicepairs has options to suit your style.

Heels

2537 Products
Filter
  • Reset
  • The highest price is 179
    $
    $
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
Filter
  • Price
  • Color
  • Pattern
  • Platform
  • Heel Type
  • Season
    Price
  • The highest price is 179
    $
    $
    Color
    Pattern
    Platform
    Heel Type
    Season
Black Genuine Leather Pointed Toe Kitten Heel Slingback Pumps Nicepairs Black Genuine Leather Pointed Toe Kitten Heel Slingback Pumps Nicepairs

Black Genuine Leather Pointed Toe Kitten Heel Slingback Pumps

$125.00
Add to cart
Nude Chunky Heels Pointed Toe Buckle Strap Pumps Shoes for Women Nicepairs Nude Chunky Heels Pointed Toe Buckle Strap Pumps Shoes for Women Nicepairs

Nude Chunky Heels Pointed Toe Buckle Strap Pumps Shoes for Women

$120.00
Add to cart
Green Round Toe Chunky Heel Platform Mules for Women Nicepairs Green Round Toe Chunky Heel Platform Mules for Women Nicepairs

Green Round Toe Chunky Heel Platform Mules for Women

$115.00
Add to cart
White Pearl Peep Toe Chunky Heel Ankle Strap Pumps for Wedding Nicepairs White Pearl Peep Toe Chunky Heel Ankle Strap Pumps for Wedding Nicepairs

White Pearl Peep Toe Chunky Heel Ankle Strap Pumps for Wedding

$125.00
Add to cart
Elegant Red Vegan Leather Rose Lace-Up Sandals with Stiletto Heels Nicepairs Elegant Red Vegan Leather Rose Lace-Up Sandals with Stiletto Heels Nicepairs

Elegant Red Vegan Leather Rose Lace-Up Sandals with Stiletto Heels

$128.00
Add to cart
Light Pink Heeled Ankle Tie Bridal Shoes with Pearl Flower Decor Nicepairs Light Pink Heeled Ankle Tie Bridal Shoes with Pearl Flower Decor Nicepairs

Light Pink Heeled Ankle Tie Bridal Shoes with Pearl Flower Decor

$112.00
Add to cart
Teal Velvet Braided Strap High Heels Sandals Elegant Evening Shoes Nicepairs Teal Velvet Braided Strap High Heels Sandals Elegant Evening Shoes Nicepairs

Teal Velvet Braided Strap High Heels Sandals Elegant Evening Shoes

$115.00
Add to cart
Women's Ivory Lace Floral Bridal Shoes Ankle Strap Kitten Heel Pumps Nicepairs Women's Ivory Lace Floral Bridal Shoes Ankle Strap Kitten Heel Pumps Nicepairs

Women's Ivory Lace Floral Bridal Shoes Ankle Strap Kitten Heel Pumps

$118.00
Add to cart
Ivory Satin Wedding Shoes Ankle Strap Block Heel Platform Sandals Nicepairs Ivory Satin Wedding Shoes Ankle Strap Block Heel Platform Sandals Nicepairs

Ivory Satin Wedding Shoes Ankle Strap Block Heel Platform Sandals

$112.00
Add to cart
Vintage White Patent Leather Double Strap Block Heel Mary Jane Pumps Nicepairs Vintage White Patent Leather Double Strap Block Heel Mary Jane Pumps Nicepairs

Vintage White Patent Leather Double Strap Block Heel Mary Jane Pumps

$115.00
Add to cart
Ivory Low Chunky Heel Wedding Shoes Ankle Strap Floral Pearl Sandals Nicepairs Ivory Low Chunky Heel Wedding Shoes Ankle Strap Floral Pearl Sandals Nicepairs

Ivory Low Chunky Heel Wedding Shoes Ankle Strap Floral Pearl Sandals

$112.00
Add to cart
Maroon Faux Suede Pointed Toe Buckle Strappy Studded Chunky Heels Nicepairs Maroon Faux Suede Pointed Toe Buckle Strappy Studded Chunky Heels Nicepairs

Maroon Faux Suede Pointed Toe Buckle Strappy Studded Chunky Heels

$120.00
Add to cart
White Pointed Toe Grommet Buckle Straps Block Heel Pumps Nicepairs White Pointed Toe Grommet Buckle Straps Block Heel Pumps Nicepairs

White Pointed Toe Grommet Buckle Straps Block Heel Pumps

$120.00
Add to cart
Black & Beige Vintage Shoes Round Toe Lace Up Oxford Heels Nicepairs Black & Beige Vintage Shoes Round Toe Lace Up Oxford Heels Nicepairs

Black & Beige Vintage Shoes Round Toe Lace Up Oxford Heels

$115.00
Add to cart
Royal Blue Satin Ankle Strap Heels Open Toe Sequin Platform Sandals Nicepairs Royal Blue Satin Ankle Strap Heels Open Toe Sequin Platform Sandals Nicepairs

Royal Blue Satin Ankle Strap Heels Open Toe Sequin Platform Sandals

$120.00
Add to cart
White Satin Wedding Sandals Square Toe Bow High Heel Mules for Women Nicepairs White Satin Wedding Sandals Square Toe Bow High Heel Mules for Women Nicepairs

White Satin Wedding Sandals Square Toe Bow High Heel Mules for Women

$120.00
Add to cart
Women's Leopard Print Pointed Toe Kitten Heel Pumps Office Shoes Nicepairs Women's Leopard Print Pointed Toe Kitten Heel Pumps Office Shoes Nicepairs

Women's Leopard Print Pointed Toe Kitten Heel Pumps Office Shoes

$100.00
Add to cart
Black & White Pointed Toe Kitten Heel Zebra Stripe Slingback Pumps Nicepairs Black & White Pointed Toe Kitten Heel Zebra Stripe Slingback Pumps Nicepairs

Black & White Pointed Toe Kitten Heel Zebra Stripe Slingback Pumps

$112.00
Add to cart
Black Satin Pointed Toe 4'' Decorative Heel Buckle Strap Pumps Shoes Nicepairs Black Satin Pointed Toe 4'' Decorative Heel Buckle Strap Pumps Shoes Nicepairs

Black Satin Pointed Toe 4'' Decorative Heel Buckle Strap Pumps Shoes

$108.00
Add to cart
Black Patent Leather Pointed Toe Decorative Heel Pearl Pumps Nicepairs Black Patent Leather Pointed Toe Decorative Heel Pearl Pumps Nicepairs

Black Patent Leather Pointed Toe Decorative Heel Pearl Pumps

$120.00
Add to cart
Silver Metallic Finish Pointed Toe Slingback Pumps Evening Heels Nicepairs Silver Metallic Finish Pointed Toe Slingback Pumps Evening Heels Nicepairs

Silver Metallic Finish Pointed Toe Slingback Pumps Evening Heels

$100.00
Add to cart
Pink Square Toe Strappy High Heel Sandals Floral Wedding Shoes Nicepairs Pink Square Toe Strappy High Heel Sandals Floral Wedding Shoes Nicepairs

Pink Square Toe Strappy High Heel Sandals Floral Wedding Shoes

$109.00
Add to cart
Multi Color Open Toe Cross Strap Block Heel Sandals Buckle Slingbacks Nicepairs Multi Color Open Toe Cross Strap Block Heel Sandals Buckle Slingbacks Nicepairs

Multi Color Open Toe Cross Strap Block Heel Sandals Buckle Slingbacks

$108.00
Add to cart
Mustard Slingback Pumps Square Toe Block Heel Vintage Mary Jane Shoes Nicepairs Mustard Slingback Pumps Square Toe Block Heel Vintage Mary Jane Shoes Nicepairs

Mustard Slingback Pumps Square Toe Block Heel Vintage Mary Jane Shoes

$100.00
Add to cart
Red Satin Flower Heels Clear Band Pointed Toe Mule Shoes for Women Nicepairs Red Satin Flower Heels Clear Band Pointed Toe Mule Shoes for Women Nicepairs

Red Satin Flower Heels Clear Band Pointed Toe Mule Shoes for Women

$100.00
Add to cart
Ivory Lace Floral Embroidered Bridal Shoes Lace-Up Block Heel Pumps Nicepairs Ivory Lace Floral Embroidered Bridal Shoes Lace-Up Block Heel Pumps Nicepairs

Ivory Lace Floral Embroidered Bridal Shoes Lace-Up Block Heel Pumps

$112.00
Add to cart
Gold Metallic Chunky Heels Round Toe Ankle Strap Platform Sandals Nicepairs Gold Metallic Chunky Heels Round Toe Ankle Strap Platform Sandals Nicepairs

Gold Metallic Chunky Heels Round Toe Ankle Strap Platform Sandals

$108.00
Add to cart
Black Strappy Heels Patent Leather Square Toe Floral Decor Sandals Nicepairs Black Strappy Heels Patent Leather Square Toe Floral Decor Sandals Nicepairs

Black Strappy Heels Patent Leather Square Toe Floral Decor Sandals

$120.00
Add to cart
Brown Pointed Toe Buckle Fastening Strappy Pumps with Chunky Heels Nicepairs Brown Pointed Toe Buckle Fastening Strappy Pumps with Chunky Heels Nicepairs

Brown Pointed Toe Buckle Fastening Strappy Pumps with Chunky Heels

$120.00
Add to cart
Elegant Pink Satin Open-Toe Bow Double Strap Mule Heels for Women Nicepairs Elegant Pink Satin Open-Toe Bow Double Strap Mule Heels for Women Nicepairs

Elegant Pink Satin Open-Toe Bow Double Strap Mule Heels for Women

$118.00
Add to cart
White & Red Patchwork Pointed Toe Western Inspired Heeled Mules Nicepairs White & Red Patchwork Pointed Toe Western Inspired Heeled Mules Nicepairs

White & Red Patchwork Pointed Toe Western Inspired Heeled Mules

$112.00
Add to cart
Black & White Square Toe Slingback Mary Jane Pumps with Block Heel Nicepairs Black & White Square Toe Slingback Mary Jane Pumps with Block Heel Nicepairs

Black & White Square Toe Slingback Mary Jane Pumps with Block Heel

$105.00
Add to cart
Nude Velvet Bridal Shoes Open Toe Cross Strap Block Heel Sandals Nicepairs Nude Velvet Bridal Shoes Open Toe Cross Strap Block Heel Sandals Nicepairs

Nude Velvet Bridal Shoes Open Toe Cross Strap Block Heel Sandals

$105.00
Add to cart
Off-White Satin Bridal Shoes Square Toe Ankle Tie Block Heel Sandals Nicepairs Off-White Satin Bridal Shoes Square Toe Ankle Tie Block Heel Sandals Nicepairs

Off-White Satin Bridal Shoes Square Toe Ankle Tie Block Heel Sandals

$100.00
Add to cart
Black Patent Leather Cut Out Multi Strap Mid-Calf Mary Jane Pumps Nicepairs Black Patent Leather Cut Out Multi Strap Mid-Calf Mary Jane Pumps Nicepairs

Black Patent Leather Cut Out Multi Strap Mid-Calf Mary Jane Pumps

$116.00
Add to cart
Women's Vintage Green Square Toe Slip-On Horsebit Loafer Heels Nicepairs Women's Vintage Green Square Toe Slip-On Horsebit Loafer Heels Nicepairs

Women's Vintage Green Square Toe Slip-On Horsebit Loafer Heels

$115.00
Add to cart
Pink Satin Chunky Heels Square Toe Floral Buckle Slingback Pumps Nicepairs Pink Satin Chunky Heels Square Toe Floral Buckle Slingback Pumps Nicepairs

Pink Satin Chunky Heels Square Toe Floral Buckle Slingback Pumps

$108.00
Add to cart
Red Patent Leather Square Buckle Pointed Toe Slingback Pumps Nicepairs Red Patent Leather Square Buckle Pointed Toe Slingback Pumps Nicepairs

Red Patent Leather Square Buckle Pointed Toe Slingback Pumps

$108.00
Add to cart
Blue Denim Patchwork Closed Pointed Toe Stiletto Heel Mules Shoes Nicepairs Blue Denim Patchwork Closed Pointed Toe Stiletto Heel Mules Shoes Nicepairs

Blue Denim Patchwork Closed Pointed Toe Stiletto Heel Mules Shoes

$108.00
Add to cart
Indigo Vegan Suede Kitten Heels Open Toe Floral Inlay Ankle Strap Sandals Nicepairs Indigo Vegan Suede Kitten Heels Open Toe Floral Inlay Ankle Strap Sandals Nicepairs

Indigo Vegan Suede Kitten Heels Open Toe Floral Inlay Ankle Strap Sandals

$115.00
Add to cart
Black Patent Leather Pointed Toe Stiletto Heel Slingback Pumps Nicepairs Black Patent Leather Pointed Toe Stiletto Heel Slingback Pumps Nicepairs

Black Patent Leather Pointed Toe Stiletto Heel Slingback Pumps

$108.00
Add to cart
Elegant Pointy Toe Stiletto Heels Evening Ankle Strap Zip Gold Pumps Nicepairs Elegant Pointy Toe Stiletto Heels Evening Ankle Strap Zip Gold Pumps Nicepairs

Elegant Pointy Toe Stiletto Heels Evening Ankle Strap Zip Gold Pumps

$103.00
Add to cart
Gold Patent Leather Buckle Strap Mary Jane Pumps with Chunky Heels Nicepairs Gold Patent Leather Buckle Strap Mary Jane Pumps with Chunky Heels Nicepairs

Gold Patent Leather Buckle Strap Mary Jane Pumps with Chunky Heels

$108.00
Add to cart
Green Velvet Chunky Heel Sandals Criss-Cross Strappy Bridal Shoes Nicepairs Green Velvet Chunky Heel Sandals Criss-Cross Strappy Bridal Shoes Nicepairs

Green Velvet Chunky Heel Sandals Criss-Cross Strappy Bridal Shoes

$105.00
Add to cart
Red Square Toe Wide Band Kitten Heel Mules for Women Nicepairs Red Square Toe Wide Band Kitten Heel Mules for Women Nicepairs

Red Square Toe Wide Band Kitten Heel Mules for Women

$100.00
Add to cart
Red Faux Suede Ankle Strap Heels Open Toe Rhinestone Platform Sandals Nicepairs Red Faux Suede Ankle Strap Heels Open Toe Rhinestone Platform Sandals Nicepairs

Red Faux Suede Ankle Strap Heels Open Toe Rhinestone Platform Sandals

$125.00
Add to cart
Metallic Silver Chunky Heels Pointed Toe Ankle Strap Platform Pumps Nicepairs Metallic Silver Chunky Heels Pointed Toe Ankle Strap Platform Pumps Nicepairs

Metallic Silver Chunky Heels Pointed Toe Ankle Strap Platform Pumps

$112.00
Add to cart
Gold Crystal Square Buckle Slingback Pumps with Kitten Heel Nicepairs Gold Crystal Square Buckle Slingback Pumps with Kitten Heel Nicepairs

Gold Crystal Square Buckle Slingback Pumps with Kitten Heel

$112.00
Add to cart
Sorry, there are no products in this collection.
class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }, true); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart-block', SpzSmartBlockComponent);