PageSourceSearch

https://www.sellpy.se/market/ItemRow.C7-Ndhc2.bundle.js

js sellpy.se collected 2026-10-02 03:05:59 UTC 9,184 bytes, 52 lines download raw bytes

1import{j as s,n as k,I as m,P as T,t as h,b as x,aT as Q,h as w}from"./npm.sellpy-design-system.DdsWMDHW.bundle.js";import{r as C}from"./npm.react-hook-form.HNw-giVQ.bundle.js";import{g as y}from"./npm.styled-components.CzYR6Qdp.bundle.js";import{bB as B,fZ as G,bF as P,gD as _,fX as H,J as S,gE as K,cT as X,b2 as Z,b3 as J,y as W,ad as Y,gF as ee,av as te}from"./index.DWkcZ-_z.bundle.js";import{u as M}from"./CheckoutProvider.C0OXsiZM.bundle.js";import{j as A,h as E,e as ne}from"./npm.apollo-client.CXJpJPbe.bundle.js";import{u as F}from"./npm.react-i18next.BwOa93YU.bundle.js";import{u as ie}from"./itemTitles.DPqsUG8J.bundle.js";import{u as se,r as oe,d as ae,w as re}from"./MarketItemTile.EzOdm3nI.bundle.js";import{aa as ce,aq as le,aM as de,ab as N,o as pe}from"./npm.sellpy-commons.B413ARrd.bundle.js";import{m as ue}from"./tools.DUKVunGT.bundle.js";try{let e=typeof window!="undefined"?window:typeof global!="undefined"?global:typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:{},n=new e.Error().stack;
1n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a0ac49c5-8b6f-4ca7-8523-982f709ce844",e._sentryDebugIdIdentifier="sentry-dbid-a0ac49c5-8b6f-4ca7-8523-982f709ce844")}catch(e){}{let e=typeof window!="undefined"?window:typeof global!="undefined"?global:typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:{};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[new e.Error().stack]=Object.assign({},e._sentryModuleMetadata[new e.Error().stack],{"_sentryBundlerPluginAppKey:sellpy-market":!0})}const me=y.div`
2  display: flex;
3  align-items: center;
4  gap: 8px;
5`,Ve=({items:e,freightAlternativeGroup:n})=>{var r;const{t:c}=F("cart"),{hasLoyaltyPeriod:o}=B(),{mov:i}=G(),[{promoCode:p}]=M(),{cartReservations:f}=P(),g=_(f,e,p),{freightAlternatives:u}=n!=null?n:{},d=((r=g.originalPrice)==null?void 0:r.amount)/(i==null?void 0:i.amount)*100,a=!((u==null?void 0:u.length)&&u[0].price.amount===0||d>=100)&&i?i.sub(g.originalPrice):null;return o?s.jsxs(me,{children:[s.jsx(k,{type:"sellpyFirst",onlyIcon:m.FIRST}),s.jsx(T,{design:"body4",noMargin:!0,children:c("freeFreightBar.sellpyFirstBadge")})]}):s.jsx(H,{amountLeft:a,percentage:d,design:"body4"})},fe=y.div`
6  display: flex;
7  flex-direction: column;
8  gap: 2px;
9`,ye=y.div`
10  display: flex;
11  align-items: center;
12  gap: 4px;
13`,v=({iconName:e,color:n,label:c})=>s.jsxs(ye,{children:[s.jsx(x,{name:e,style:{color:n,fontSize:"16px"}}),s.jsx(T,{design:"body3",noMargin:!0,style:{color:n},children:c})]}),ge=({itemId:e,price:n,setItemStatus:c,className:o,inCart:i,lastChance:p})=>{const{data:f,complete:g}=A({fragment:K,fragmentName:"BuyerItemInfoBlobsFragment",from:`Item:${e}`,variables:{locale:S}}),{hasLoyaltyPeriod:u}=B(),{t:d}=F("item"),{MIV:t}=X(),a=Z([J.noMOV],{skipRegisteringTestExposure:!0}),r=se(f);if(!g||!t)return null;const l=!a&&ce({item:{itemStatus:c?le.UTLAGD:f.itemStatus,salesChannel:"market",p2p:f.p2p},price:n,miv:t[W()]});return s.jsxs(fe,{className:o,children:[p&&s.jsx(v,{iconName:m.HOURGLASS,color:h.colour.text.interactive.negative.default,label:d("blob.lastChance")}),!u&&l&&s.jsx(v,{iconName:m.PACKAGE,color:h.colour.text.interactive.nr200.default,label:d("blob.freeFreight")}),r&&i&&s.jsx(v,{iconName:m.FAST_TRUCK,color:h.colour.text.interactive.nr200.default,label:d("blob.fastDelivery")})]})},be=y.div`
14  background-color: ${({theme:e})=>e.color.white.default};
15  border: 1px solid ${({theme:e})=>e.color.grey.shade8};
16  border-radius: 16px;
17  display: flex;
18  align-items: flex-start;
19  gap: 8px;
20  padding: 16px;
21`,xe=()=>{const{t:e}=F("item");return s.jsxs(be,{children:[s.jsx(x,{name:m.INFORMATION_CIRCLE,style:{fontSize:"16px"}}),s.jsx(T,{design:"body3",noMargin:!0,style:{alignSelf:"center"},children:e("itemNotInShelfInfo")})]})},he=`#import "../../../components/ItemTitles.fragment.gql"
22
23query ItemRowQuery($itemId: ID!, $locale: String!) {
24  item(id: $itemId) {
25    objectId
26    ...ItemTitlesFragment
27  }
28}
29`,I={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"ItemRowQuery"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"itemId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"locale"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"item"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"itemId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"objectId"},arguments:[],directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ItemTitlesFragment"},directives:[]}]}}]}}],loc:{start:0,end:213,source:{name:"GraphQL request",locationOffset:{line:1,column:1},body:he}}},ve=e=>{const n={};return e.filter(function(c){if(c.kind!=="FragmentDefinition")return!0;const o=c.name.value;return n[o]?!1:(n[o]=!0,!0)})};I.definitions=ve(I.definitions.concat(Y.definitions));const Se=(e,n)=>{const c=(t,a)=>{if(t.kind==="FragmentSpread")a.add(t.name.value);else if(t.kind==="VariableDefinition"){const r=t.type;r.kind==="NamedType"&&a.add(r.name.value)}return t&&"selectionSet"in t&&t.selectionSet&&t.selectionSet.selections.forEach(r=>{c(r,a)}),t&&"variableDefinitions"in t&&t.variableDefinitions&&t.variableDefinitions.forEach(r=>{c(r,a)}),t&&"definitions"in t&&t.definitions&&t.definitions.forEach(r=>{c(r,a)}),a},o=t=>{const a={};return t.definitions.forEach(function(r){"name"in r&&r.name&&(a[r.name.value]=c(r,new Set))}),a},i=(t,a)=>{for(let r=0;r<t.definitions.length;r++){const l=t.definitions[r];if(l&&"name"in l&&l.name&&l.name.value==a)return l}},p=o(e),f=Object.assign({},e,{definitions:[i(e,n)]}),g=p[n]||new Set,u=new Set;let d=new Set;for(g.forEach(t=>{d.add(t)});d.size>0;){const t=d;d=new Set,t.forEach(a=>{u.has(a)||(u.add(a),(p[a]||new Set).forEach(l=>{d.add(l)}))})}return u.forEach(t=>{const a=i(e,t);a&&f.definitions.push(a)}),f},Ie=Se(I,"ItemRowQuery"),ke=y.div`
30  padding: 16px 0;
31  ${({$skipTopPadding:e})=>e&&"padding-top: 0px;"}
32  ${({theme:e,$showBottomBorder:n})=>n?`border-bottom: 1px solid ${e.color.grey.shade8};`:"padding-bottom: 0px;"}
33`,Te=y.img`
34  width: 100%;
35  height: 100%;
36  object-fit: cover;
37  display: block;
38  mix-blend-mode: multiply;
39`,Fe=y.div`
40  display: flex;
41  align-items: flex-start;
42  gap: 8px;
43`,De=y(k)`
44  margin: 8px 0 0 8px;
45`,je=y(k)`
46  margin: 8px;
47`,Re=({featuredIn:e})=>{const{campaign:n}=ae({curationIds:e!=null?e:[]});return n?s.jsx(je,{variant:"subtle",type:n.variant,text:n.promoCode}):null},we=({p2p:e,saleType:n,userId:c})=>{var i;return(i=[{type:"sellpyCircle",condition:e,iconName:m.CIRCLE}
47,{type:"neutral",condition:n==="business"&&!re.includes(c),iconName:m.BUSINESS},{type:"sellpyUpcycle",condition:n==="upcycle",iconName:m.UPCYCLE}].find(({condition:p})=>!!p))!=null?i:null},Ce=({p2p:e,saleType:n,userId:c})=>{const o=we({p2p:e,saleType:n,userId:c});return o?s.jsx(De,{type:o.type,onlyIcon:o.iconName}):null},Ee=ne`
48  query getExpectedShippingDates($itemIds: [ID!]!) {
49    expectedShelfDate: getExpectedShippingDates(itemIds: $itemIds)
50  }
51`,ze=({itemId:e,index:n,numItems:c,algoliaItem:o})=>{var j,R;const{data:i,complete:p}=A({fragment:ee,fragmentName:"ItemRowFragment",from:`Item:${e}`,variables:{locale:S}});E(Ie,{variables:{itemId:e,locale:S}});const{title:f,subtitle:g}=ie(e),[{promoCode:u}]=M(),{getReservationForItem:d,cartReservations:t}=P(),a=d(e),r=C.useMemo(()=>p?[i]:[],[p,i]),l=_(t,r,u),{toggleFavorite:L,isFavorited:$}=te(),q=de({objectId:e}),{data:O={}}=E(Ee,{variables:{itemIds:[e]},skip:!p||!!i.site}),{expectedShelfDate:D}=O,U=C.useMemo(()=>ue({photos:i==null?void 0:i.photos,itemStatus:i==null?void 0:i.itemStatus}),[i==null?void 0:i.photos,i==null?void 0:i.itemStatus]);if(!p)return null;const V=l.price.amount!==l.originalPrice.amount,z=!!(D&&D[e]);return s.jsx(ke,{$showBottomBorder:n<c-1,$skipTopPadding:n===0,children:s.jsx(Q,{href:q,displayComponent:s.jsx(Te,{src:pe((j=U[0])==null?void 0:j.url,{width:400}),alt:""}),imageTopArea:s.jsx(Ce,{p2p:o==null?void 0:o.p2p,saleType:o==null?void 0:o.saleType,userId:o==null?void 0:o.user}),imageBottomArea:s.jsx(Re,{featuredIn:(R=i.featuredIn)==null?void 0:R.map(({value:b})=>b)}),title:f,subtitle:g,price:N(l.price),strikethroughPrice:V?N(l.originalPrice):void 0,detailsArea:s.jsx(ge,{itemId:e,price:l.price,lastChance:!!(o!=null&&o.lastChance),inCart:!0}),subDetailsArea:z?s.jsx(xe,{}):void 0,additionalActionsArea:s.jsxs(Fe,{children:[s.jsx(w,{type:"button",color:"grey",variant:"text",icon:s.jsx(x,{name:$(e)?m.HEART_FILLED:m.HEART,style:{fontSize:"24px"}}),onClick:b=>{b.preventDefault(),b.stopPropagation(),L(e)}}),s.jsx(w,{type:"button",color:"grey",variant:"text",icon:s.jsx(x,{name:m.TRASH,style:{fontSize:"24px"}}),onClick:b=>{b.preventDefault(),b.stopPropagation(),a&&oe(a)}})]})})})};export{Ve as F,ze as I};
52//# sourceMappingURL=ItemRow.C7-Ndhc2.bundle.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.