Formal Event Shoes for Women: Whether you're attending a wedding, a high school or college event, or a glamorous soirée, these shoes combine elegance, comfort, and sophistication.

Formal Event

1713 Products
Filter
  • Reset
  • The highest price is 199
    $
    $
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
Filter
  • Price
  • Color
  • Platform
  • Heel Type
  • Season
    Price
  • The highest price is 199
    $
    $
    Color
    Platform
    Heel Type
    Season
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
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
Black Mesh Pointed-toe Rhinestone Ankle Boots with Chunky Heel Nicepairs Black Mesh Pointed-toe Rhinestone Ankle Boots with Chunky Heel Nicepairs

Black Mesh Pointed-toe Rhinestone Ankle Boots with Chunky Heel

$125.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
Classic Genuine Leather Pointed Toe Flats For Women Nicepairs Classic Genuine Leather Pointed Toe Flats For Women Nicepairs

Classic Genuine Leather Pointed Toe Flats For Women

$120.00
Add to cart
Blue Pointed Toe Zipper Ankle Boots Decorative Heel Booties for Women Nicepairs Blue Pointed Toe Zipper Ankle Boots Decorative Heel Booties for Women Nicepairs

Blue Pointed Toe Zipper Ankle Boots Decorative Heel Booties for Women

$132.00
Add to cart
Classic Black Pointed Toe Stiletto Heel Thigh High Boots Nicepairs Classic Black Pointed Toe Stiletto Heel Thigh High Boots Nicepairs

Classic Black Pointed Toe Stiletto Heel Thigh High Boots

$147.00
Add to cart
Fuchsia Faux Suede Pointed Toe Ankle Boots Kitten Heel Booties Nicepairs Fuchsia Faux Suede Pointed Toe Ankle Boots Kitten Heel Booties Nicepairs

Fuchsia Faux Suede Pointed Toe Ankle Boots Kitten Heel Booties

$122.00
Add to cart
Red Glitter Sparkling Heels Closed Pointed Toe Evening Pumps Nicepairs

Red Glitter Sparkling Heels Closed Pointed Toe Evening Pumps

$112.00
Add to cart
Silver Glitter Pointy Toe Rhinestone Knee High Boots with Chunky Heel Nicepairs Silver Glitter Pointy Toe Rhinestone Knee High Boots with Chunky Heel Nicepairs

Silver Glitter Pointy Toe Rhinestone Knee High Boots with Chunky Heel

$199.00
Add to cart
Dark Green Vegan Suede Sewed Knee Lace Up Boots with Block Heels Nicepairs Dark Green Vegan Suede Sewed Knee Lace Up Boots with Block Heels Nicepairs

Dark Green Vegan Suede Sewed Knee Lace Up Boots with Block Heels

$160.00
Add to cart
Golden Classic Pointed Toe Kitten Heel Ankle Boots Nicepairs Golden Classic Pointed Toe Kitten Heel Ankle Boots Nicepairs

Golden Classic Pointed Toe Kitten Heel Ankle Boots

$122.00
Add to cart
Black Lace Up Vintage Shoes Round Toe Cut-Out Chunky Heels for Women Nicepairs Black Lace Up Vintage Shoes Round Toe Cut-Out Chunky Heels for Women Nicepairs

Black Lace Up Vintage Shoes Round Toe Cut-Out Chunky Heels for Women

$108.00
Add to cart
Sexy Faux Suede Back Lace-up Shoes Low Heel Zip Thigh High Boots Nicepairs Sexy Faux Suede Back Lace-up Shoes Low Heel Zip Thigh High Boots Nicepairs

Sexy Faux Suede Back Lace-up Shoes Low Heel Zip Thigh High Boots

$139.00
Add to cart
Light Blue Sparkling 4 Inch Heels Pointed Toe Pumps with Gems Nicepairs Light Blue Sparkling 4 Inch Heels Pointed Toe Pumps with Gems Nicepairs

Light Blue Sparkling 4 Inch Heels Pointed Toe Pumps with Gems

$132.00
Add to cart
Black & White Colorblock Round Toe Vintage Women's Oxfords Nicepairs Black & White Colorblock Round Toe Vintage Women's Oxfords Nicepairs

Black & White Colorblock Round Toe Vintage Women's Oxfords

$100.00
Add to cart
Red Leather Pointed Toe Kitten Heel Classic Pumps for Women Nicepairs Red Leather Pointed Toe Kitten Heel Classic Pumps for Women Nicepairs

Red Leather Pointed Toe Kitten Heel Classic Pumps for Women

$129.00
Add to cart
Women's Cut Out Genuine Leather Pointed Toe Flats Nicepairs Women's Cut Out Genuine Leather Pointed Toe Flats Nicepairs

Women's Cut Out Genuine Leather Pointed Toe Flats

$125.00
Add to cart
Red Patent Leather Pointed Toe Slingback Pumps with Kitten Heel Nicepairs Red Patent Leather Pointed Toe Slingback Pumps with Kitten Heel Nicepairs

Red Patent Leather Pointed Toe Slingback Pumps with Kitten Heel

$105.00
Add to cart
Red Patent Leather Pointed Toe Bow Decor Pumps With Chunky Heel Nicepairs Red Patent Leather Pointed Toe Bow Decor Pumps With Chunky Heel Nicepairs

Red Patent Leather Pointed Toe Bow Decor Pumps With Chunky Heel

$120.00
Add to cart
Navy & Nude Pointed Toe Ankle Strap Kitten Heel Pumps Nicepairs Navy & Nude Pointed Toe Ankle Strap Kitten Heel Pumps Nicepairs

Navy & Nude Pointed Toe Ankle Strap Kitten Heel Pumps

$106.00
Add to cart
Full Black Patent Leatehr Oxford Shoes Low Chunky Minimalist Oxfords Nicepairs Full Black Patent Leatehr Oxford Shoes Low Chunky Minimalist Oxfords Nicepairs

Full Black Patent Leatehr Oxford Shoes Low Chunky Minimalist Oxfords

$120.00
Add to cart
Leather Pointed Toe 4'' Stiletto Heel Slingback Pumps Nicepairs Leather Pointed Toe 4'' Stiletto Heel Slingback Pumps Nicepairs

Leather Pointed Toe 4'' Stiletto Heel Slingback Pumps

$120.00
Add to cart
Classic Black Round Toe Shoes Knee High Wedge Boots with Zipper Nicepairs Classic Black Round Toe Shoes Knee High Wedge Boots with Zipper Nicepairs

Classic Black Round Toe Shoes Knee High Wedge Boots with Zipper

$139.00
Add to cart
Gold Metallic Square Toe Bow Detail Mary Jane Flats Nicepairs Gold Metallic Square Toe Bow Detail Mary Jane Flats Nicepairs

Gold Metallic Square Toe Bow Detail Mary Jane Flats

$103.00
Add to cart
Elegant Mesh Slip-on Low Heels Pointed Toe Rhinestone Ballet Flats Nicepairs Elegant Mesh Slip-on Low Heels Pointed Toe Rhinestone Ballet Flats Nicepairs

Elegant Mesh Slip-on Low Heels Pointed Toe Rhinestone Ballet Flats

$112.00
Add to cart
Gold Patent Leather Pointed Toe Chunky Heel Mules with Platform Nicepairs Gold Patent Leather Pointed Toe Chunky Heel Mules with Platform Nicepairs

Gold Patent Leather Pointed Toe Chunky Heel Mules with Platform

$109.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
Clear PVC Pointed Toe 4'' Stiletto Heel Slingback Pumps with Bow Nicepairs Clear PVC Pointed Toe 4'' Stiletto Heel Slingback Pumps with Bow Nicepairs

Clear PVC Pointed Toe 4'' Stiletto Heel Slingback Pumps with Bow

$117.00
Add to cart
White Lace Open Toe Boots Hallow Flower Pear Bow Decor Wedding Boots Nicepairs White Lace Open Toe Boots Hallow Flower Pear Bow Decor Wedding Boots Nicepairs

White Lace Open Toe Boots Hallow Flower Pear Bow Decor Wedding Boots

$120.00
Add to cart
Full Black Pointed Toe Kitten Heel Ankle Boots Patent Leather Short Boots Nicepairs Full Black Pointed Toe Kitten Heel Ankle Boots Patent Leather Short Boots Nicepairs

Full Black Pointed Toe Kitten Heel Ankle Boots Patent Leather Short Boots

$122.00
Add to cart
Brown Lace Up Suede Boots Zipper Block Heels Nicepairs Brown Lace Up Suede Boots Zipper Block Heels Nicepairs

Brown Lace Up Suede Boots Zipper Block Heels

$160.00
Add to cart
Silver Square Toe Pull-On Buckle Mary Jane Flats Nicepairs Silver Square Toe Pull-On Buckle Mary Jane Flats Nicepairs

Silver Square Toe Pull-On Buckle Mary Jane Flats

$100.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
Red Pointed Toe Stiletto Heels Bow Decor Pumps Shoes Nicepairs Red Pointed Toe Stiletto Heels Bow Decor Pumps Shoes Nicepairs

Red Pointed Toe Stiletto Heels Bow Decor Pumps Shoes

$120.00
Add to cart
Green Velvet Closed Pointed Toe Strappy Pumps with Chunky Heel Nicepairs Green Velvet Closed Pointed Toe Strappy Pumps with Chunky Heel Nicepairs

Green Velvet Closed Pointed Toe Strappy Pumps with Chunky Heel

$105.00
Add to cart
Fuchsia & Green Satin Pointed Toe Kitten Heel Pumps with Bow Nicepairs Fuchsia & Green Satin Pointed Toe Kitten Heel Pumps with Bow Nicepairs

Fuchsia & Green Satin Pointed Toe Kitten Heel Pumps with Bow

$120.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
Silver Rounded Toe Block Heel Lace Up Glitter Oxford Shoes Nicepairs

Silver Rounded Toe Block Heel Lace Up Glitter Oxford Shoes

$112.00
Add to cart
Brown Vegan Suede Pointed Toe Stiletto Heel Mules with Pom Decor Nicepairs Brown Vegan Suede Pointed Toe Stiletto Heel Mules with Pom Decor Nicepairs

Brown Vegan Suede Pointed Toe Stiletto Heel Mules with Pom Decor

$112.00
Add to cart
Vintage Slip-on Leather Chunky Loafers for Women Nicepairs Vintage Slip-on Leather Chunky Loafers for Women Nicepairs

Vintage Slip-on Leather Chunky Loafers for Women

$128.00
Add to cart
Black Leather Pointed Toe Comma Heel Pumps with Two-Color Stitching Nicepairs Black Leather Pointed Toe Comma Heel Pumps with Two-Color Stitching Nicepairs

Black Leather Pointed Toe Comma Heel Pumps with Two-Color Stitching

$126.00
Add to cart
Black Patent Leather Closed Toe Chunky Heel Loafer Shoes Nicepairs Black Patent Leather Closed Toe Chunky Heel Loafer Shoes Nicepairs

Black Patent Leather Closed Toe Chunky Heel Loafer Shoes

$109.00
Add to cart
White Patent Leather Flats With Gold Chain Decor For Women Nicepairs White Patent Leather Flats With Gold Chain Decor For Women Nicepairs

White Patent Leather Flats With Gold Chain Decor For Women

$115.00
Add to cart
Yellow Faux Fur Boots Pointed Toe Stiletto Heel Booties for Women Nicepairs

Yellow Faux Fur Boots Pointed Toe Stiletto Heel Booties for Women

$128.00
Add to cart
Sexy Black Vegan Suede Stiletto Heel Thigh High Boots with Zipper Nicepairs Sexy Black Vegan Suede Stiletto Heel Thigh High Boots with Zipper Nicepairs

Sexy Black Vegan Suede Stiletto Heel Thigh High Boots with Zipper

$139.00
Add to cart
Black Vegan Suede Block Heel Mid-Calf Faux Fur Boots Nicepairs Black Vegan Suede Block Heel Mid-Calf Faux Fur Boots Nicepairs

Black Vegan Suede Block Heel Mid-Calf Faux Fur Boots

$139.99
Add to cart
White And Black Flanel Pointed Toe Ankle Boots Chunky Heel Ankle Boots With Bow-knot Nicepairs White And Black Flanel Pointed Toe Ankle Boots Chunky Heel Ankle Boots With Bow-knot Nicepairs

White And Black Flanel Pointed Toe Ankle Boots Chunky Heel Ankle Boots With Bow-knot

$125.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);