@faststore/core 2.0.146-alpha.0 → 2.0.151-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +15 -15
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/eslint/.cache_1gneedd +1 -1
- package/.next/cache/next-server.js.nft.json +1 -1
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/401.js +5 -5
- package/.next/server/chunks/907.js +4 -4
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.js.nft.json +1 -1
- package/.next/server/pages/[...slug].js +1 -1
- package/.next/server/pages/[...slug].js.nft.json +1 -1
- package/.next/server/pages/[slug]/p.js +1027 -955
- package/.next/server/pages/[slug]/p.js.nft.json +1 -1
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/account.js.nft.json +1 -1
- package/.next/server/pages/checkout.js.nft.json +1 -1
- package/.next/server/pages/en-US/404.html +2 -2
- package/.next/server/pages/en-US/500.html +2 -2
- package/.next/server/pages/en-US/account.html +2 -2
- package/.next/server/pages/en-US/checkout.html +2 -2
- package/.next/server/pages/en-US/login.html +2 -2
- package/.next/server/pages/en-US/s.html +2 -2
- package/.next/server/pages/en-US/s.json +1 -1
- package/.next/server/pages/en-US.html +2 -2
- package/.next/server/pages/index.js.nft.json +1 -1
- package/.next/server/pages/login.js.nft.json +1 -1
- package/.next/server/pages/s.js +1 -1
- package/.next/server/pages/s.js.nft.json +1 -1
- package/.next/server/pages-manifest.json +4 -4
- package/.next/static/{QGL3gfKa2F4ppozosZML6 → SPkTG9-gxU2UejLG7FvOw}/_buildManifest.js +1 -1
- package/.next/static/chunks/pages/[slug]/p-fa35dd93d53f75f6.js +1 -0
- package/.next/static/chunks/webpack-5051dce9659282f3.js +1 -0
- package/.next/static/css/{7701d01af31e31d1.css → 1de3e7b6ba8daaac.css} +1 -1
- package/.next/trace +69 -68
- package/.turbo/turbo-build.log +3 -3
- package/CHANGELOG.md +12 -0
- package/cms/faststore/sections.json +26 -20
- package/package.json +4 -4
- package/src/components/sections/ProductDetails/ProductDetails.tsx +106 -165
- package/src/components/{sections/ProducDetailsContent/ProductDetailsContent.tsx → ui/ProductDescription/ProductDescription.tsx} +7 -7
- package/src/components/ui/ProductDescription/index.ts +1 -0
- package/src/components/ui/ProductDetails/AddToCartLoadingSkeleton.tsx +57 -0
- package/src/components/ui/ProductDetails/ProductDetailsSettings.tsx +125 -0
- package/src/components/ui/ProductDetails/index.ts +2 -0
- package/src/components/ui/ShippingSimulation/ShippingSimulation.tsx +18 -2
- package/.next/static/chunks/pages/[slug]/p-6597f93c2bfe07b3.js +0 -1
- package/.next/static/chunks/webpack-4e162ac7f81d85d4.js +0 -1
- package/src/components/sections/ProducDetailsContent/index.ts +0 -1
- /package/.next/static/{QGL3gfKa2F4ppozosZML6 → SPkTG9-gxU2UejLG7FvOw}/_ssgManifest.js +0 -0
- /package/src/components/{sections/ProducDetailsContent/ProductDetailsContent.stories.mdx → ui/ProductDescription/ProductDescription.stories.mdx} +0 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import type { Dispatch, SetStateAction } from 'react'
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
Icon as UIIcon,
|
|
5
|
+
BuyButton as UIBuyButton,
|
|
6
|
+
QuantitySelector as UIQuantitySelector,
|
|
7
|
+
} from '@faststore/ui'
|
|
8
|
+
|
|
9
|
+
import type { ProductDetailsFragment_ProductFragment } from '@generated/graphql'
|
|
10
|
+
|
|
11
|
+
import { useBuyButton } from 'src/sdk/cart/useBuyButton'
|
|
12
|
+
import { useFormattedPrice } from 'src/sdk/product/useFormattedPrice'
|
|
13
|
+
|
|
14
|
+
import Selectors from 'src/components/ui/SkuSelector'
|
|
15
|
+
import AddToCartLoadingSkeleton from './AddToCartLoadingSkeleton'
|
|
16
|
+
|
|
17
|
+
import { Components } from '../../sections/ProductDetails/Overrides'
|
|
18
|
+
const { Price } = Components
|
|
19
|
+
|
|
20
|
+
interface ProductDetailsSettingsProps {
|
|
21
|
+
product: ProductDetailsFragment_ProductFragment
|
|
22
|
+
buyButtonTitle: string
|
|
23
|
+
buyButtonIcon: string
|
|
24
|
+
isValidating: boolean
|
|
25
|
+
quantity: number
|
|
26
|
+
setQuantity: Dispatch<SetStateAction<number>>
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function ProductDetailsSettings({
|
|
30
|
+
product,
|
|
31
|
+
buyButtonTitle,
|
|
32
|
+
buyButtonIcon: buyButtonIconName,
|
|
33
|
+
isValidating,
|
|
34
|
+
quantity,
|
|
35
|
+
setQuantity,
|
|
36
|
+
}: ProductDetailsSettingsProps) {
|
|
37
|
+
const {
|
|
38
|
+
id,
|
|
39
|
+
sku,
|
|
40
|
+
gtin,
|
|
41
|
+
name: variantName,
|
|
42
|
+
brand,
|
|
43
|
+
isVariantOf,
|
|
44
|
+
isVariantOf: { skuVariants },
|
|
45
|
+
image: productImages,
|
|
46
|
+
additionalProperty,
|
|
47
|
+
offers: {
|
|
48
|
+
lowPrice,
|
|
49
|
+
offers: [{ availability, price, listPrice, seller }],
|
|
50
|
+
},
|
|
51
|
+
} = product
|
|
52
|
+
|
|
53
|
+
const buyDisabled = availability !== 'https://schema.org/InStock'
|
|
54
|
+
|
|
55
|
+
const buyProps = useBuyButton({
|
|
56
|
+
id,
|
|
57
|
+
price,
|
|
58
|
+
listPrice,
|
|
59
|
+
seller,
|
|
60
|
+
quantity,
|
|
61
|
+
itemOffered: {
|
|
62
|
+
sku,
|
|
63
|
+
name: variantName,
|
|
64
|
+
gtin,
|
|
65
|
+
image: productImages,
|
|
66
|
+
brand,
|
|
67
|
+
isVariantOf,
|
|
68
|
+
additionalProperty,
|
|
69
|
+
},
|
|
70
|
+
})
|
|
71
|
+
|
|
72
|
+
return (
|
|
73
|
+
<>
|
|
74
|
+
<section data-fs-product-details-values>
|
|
75
|
+
<div data-fs-product-details-prices>
|
|
76
|
+
<Price
|
|
77
|
+
value={listPrice}
|
|
78
|
+
formatter={useFormattedPrice}
|
|
79
|
+
testId="list-price"
|
|
80
|
+
data-value={listPrice}
|
|
81
|
+
variant="listing"
|
|
82
|
+
SRText="Original price:"
|
|
83
|
+
/>
|
|
84
|
+
<Price
|
|
85
|
+
value={lowPrice}
|
|
86
|
+
formatter={useFormattedPrice}
|
|
87
|
+
testId="price"
|
|
88
|
+
data-value={lowPrice}
|
|
89
|
+
variant="spot"
|
|
90
|
+
className="text__lead"
|
|
91
|
+
SRText="Sale Price:"
|
|
92
|
+
/>
|
|
93
|
+
</div>
|
|
94
|
+
<UIQuantitySelector min={1} max={10} onChange={setQuantity} />
|
|
95
|
+
</section>
|
|
96
|
+
{skuVariants && (
|
|
97
|
+
<Selectors
|
|
98
|
+
slugsMap={skuVariants.slugsMap}
|
|
99
|
+
availableVariations={skuVariants.availableVariations}
|
|
100
|
+
activeVariations={skuVariants.activeVariations}
|
|
101
|
+
data-fs-product-details-selectors
|
|
102
|
+
/>
|
|
103
|
+
)}
|
|
104
|
+
{
|
|
105
|
+
/* NOTE: A loading skeleton had to be used to avoid a Lighthouse's
|
|
106
|
+
non-composited animation violation due to the button transitioning its
|
|
107
|
+
background color when changing from its initial disabled to active state.
|
|
108
|
+
See full explanation on commit https://git.io/JyXV5. */
|
|
109
|
+
isValidating ? (
|
|
110
|
+
<AddToCartLoadingSkeleton />
|
|
111
|
+
) : (
|
|
112
|
+
<UIBuyButton
|
|
113
|
+
disabled={buyDisabled}
|
|
114
|
+
icon={<UIIcon name={buyButtonIconName} />}
|
|
115
|
+
{...buyProps}
|
|
116
|
+
>
|
|
117
|
+
{buyButtonTitle || 'Add to Cart'}
|
|
118
|
+
</UIBuyButton>
|
|
119
|
+
)
|
|
120
|
+
}
|
|
121
|
+
</>
|
|
122
|
+
)
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export default ProductDetailsSettings
|
|
@@ -2,19 +2,29 @@ import {
|
|
|
2
2
|
ShippingSimulation as UIShippingSimulation,
|
|
3
3
|
ShippingSimulationProps as UIShippingSimulationProps,
|
|
4
4
|
} from '@faststore/ui'
|
|
5
|
+
|
|
5
6
|
import { getShippingSimulation } from 'src/sdk/shipping'
|
|
6
7
|
import { ShippingSla } from '@generated/graphql'
|
|
7
8
|
import { useSession } from 'src/sdk/session'
|
|
8
9
|
import { IShippingItem } from '@faststore/api'
|
|
9
10
|
import { useShippingSimulation } from './useShippingSimulation'
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
type ShippingSimulationOptionalProps =
|
|
13
|
+
| 'title'
|
|
14
|
+
| 'formatter'
|
|
15
|
+
| 'inputLabel'
|
|
16
|
+
| 'optionsLabel'
|
|
17
|
+
| 'idkPostalCodeLinkProps'
|
|
18
|
+
|
|
19
|
+
interface ShippingSimulationProps
|
|
20
|
+
extends Partial<
|
|
21
|
+
Pick<UIShippingSimulationProps, ShippingSimulationOptionalProps>
|
|
22
|
+
> {
|
|
12
23
|
productShippingInfo: {
|
|
13
24
|
id: string
|
|
14
25
|
quantity: number
|
|
15
26
|
seller: string
|
|
16
27
|
}
|
|
17
|
-
formatter?: UIShippingSimulationProps['formatter']
|
|
18
28
|
}
|
|
19
29
|
|
|
20
30
|
const fetchShippingSimulation = async (
|
|
@@ -41,6 +51,9 @@ const fetchShippingSimulation = async (
|
|
|
41
51
|
export default function ShippingSimulation({
|
|
42
52
|
productShippingInfo,
|
|
43
53
|
formatter,
|
|
54
|
+
inputLabel,
|
|
55
|
+
title,
|
|
56
|
+
idkPostalCodeLinkProps,
|
|
44
57
|
...otherProps
|
|
45
58
|
}: ShippingSimulationProps) {
|
|
46
59
|
const { country, postalCode: sessionPostalCode } = useSession()
|
|
@@ -73,6 +86,9 @@ export default function ShippingSimulation({
|
|
|
73
86
|
displayClearButton={displayClearButton}
|
|
74
87
|
errorMessage={errorMessage}
|
|
75
88
|
postalCode={postalCode}
|
|
89
|
+
inputLabel={inputLabel}
|
|
90
|
+
title={title}
|
|
91
|
+
idkPostalCodeLinkProps={idkPostalCodeLinkProps}
|
|
76
92
|
{...otherProps}
|
|
77
93
|
/>
|
|
78
94
|
)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[103],{123:function(e,t,r){"use strict";var n=r(2784),a=r(2765),i=r(5045),o=r(875);t.Z=({max:e,min:t=1,initial:r,disabled:s=!1,onChange:l,testId:c="fs-quantity-selector",...d})=>{const[u,p]=(0,n.useState)(r??t),m=u===t,f=u===e,h=e=>{const t=b(u+e);l?.(t),p(t)};function b(r){const n=t?Math.max(r,t):r;return e?Math.min(n,e):n}return(0,n.useEffect)((()=>{r&&p(r)}),[r]),n.createElement("div",{"data-fs-quantity-selector":s?"disabled":"true","data-testid":c,...d},n.createElement(a.Z,{"data-quantity-selector-button":"left",icon:n.createElement(i.Z,{name:"Minus",width:16,height:16,weight:"bold"}),"aria-label":"Decrement Quantity","aria-controls":"quantity-selector-input",disabled:m||s,onClick:()=>h(-1),testId:`${c}-left-button`,size:"small"}),n.createElement(o.Z,{"data-quantity-selector-input":!0,id:"quantity-selector-input","aria-label":"Quantity",value:u,onChange:function(e){const t=e.currentTarget.value;Number.isNaN(Number(t))||p((()=>{const e=b(Number(t));return l?.(e),e}))},disabled:s}),n.createElement(a.Z,{"data-quantity-selector-button":"right","aria-controls":"quantity-selector-input","aria-label":"Increment Quantity",disabled:f||s,icon:n.createElement(i.Z,{name:"Plus",width:16,height:16,weight:"bold"}),onClick:()=>h(1),testId:`${c}-right-button`,size:"small"}))}},2874:function(e,t,r){"use strict";r.d(t,{Z:function(){return B}});var n=r(9499),a=r(4730),i=r(2784),o=r(5045),s=r(7865);var l=(0,i.createContext)({isOpen:!1,dropdownButtonRef:null,selectedDropdownItemIndexRef:null,dropdownItemsRef:null,id:"fs-dropdown"});var c=({children:e,isOpen:t=!1,onDismiss:r,id:n="fs-dropdown"})=>{const[a,o]=(0,i.useState)(t),s=(0,i.useRef)([]),c=(0,i.useRef)(0),d=(0,i.useRef)(null),u=(0,i.useCallback)((()=>{o(!1),r?.()}),[r]),p=()=>{o(!0)},m=(0,i.useCallback)((()=>{o((e=>(e&&(r?.(),d.current?.focus()),!e)))}),[r]);(0,i.useEffect)((()=>{o(t)}),[t]),(0,i.useEffect)((()=>{a&&s?.current[0]?.focus()}),[a]),(0,i.useEffect)((()=>{let e=!0;const t=t=>{const r=s?.current.some((e=>t.target===e));e?e=!1:!r&&u()};return a?document.addEventListener("click",t):document.removeEventListener("click",t),()=>{document.removeEventListener("click",t)}}),[u,a]);const f=(0,i.useMemo)((()=>({isOpen:a,close:u,open:p,toggle:m,dropdownButtonRef:d,onDismiss:r,selectedDropdownItemIndexRef:c,dropdownItemsRef:s,id:n})),[u,n,a,r,m]);return i.createElement(l.Provider,{value:f},e)},d=r(7578);const u=()=>{const e=(0,i.useContext)(l);if(void 0===e)throw new Error("Do not use useDropdown hook outside the Dropdown context.");return e};var p=(0,i.forwardRef)((function({children:e,testId:t="fs-dropdown-button",...r},n){const{toggle:a,dropdownButtonRef:o,isOpen:s,id:l}=u();return(0,i.useImperativeHandle)(n,(()=>o.current),[o]),i.createElement(d.Z,{"data-fs-dropdown-button":!0,onClick:a,"data-testid":t,ref:o,"aria-expanded":s,"aria-haspopup":"menu","aria-controls":l,variant:"tertiary",...r},e)})),m=r(8316);var f=({children:e,testId:t="fs-dropdown-menu",size:r="regular",style:n,...a})=>{const{isOpen:o,close:s,dropdownItemsRef:l,selectedDropdownItemIndexRef:c,dropdownButtonRef:d,id:p}=u(),f=(()=>{const{dropdownButtonRef:e}=u(),t="undefined"!==typeof window,r=e?.current?.getBoundingClientRect(),n=r?.top??0,a=r?.height??0,i=r?.left??0;return{position:"absolute",top:n+a+(t?document?.documentElement?.scrollTop:0),left:i+(t?document?.documentElement?.scrollLeft:0)}})(),h=i.Children.toArray(e).length;return o?(0,m.createPortal)(i.createElement("div",{role:"presentation","data-fs-dropdown-overlay":!0,onKeyDown:e=>{e.defaultPrevented||"Enter"===e.key||(e.preventDefault(),"Escape"===e.key&&(s?.(),d?.current?.focus()),"ArrowDown"===e.key&&(c.current<h-1?c.current++:c.current=0,l?.current[c.current]?.focus()),"ArrowUp"===e.key&&(c.current>0?c.current--:c.current=h-1,l?.current[c.current]?.focus()),"Home"===e.key&&(c.current=0,l?.current[c.current]?.focus()),"End"===e.key&&(c.current=h-1,l?.current[c.current]?.focus()),e.stopPropagation())},"data-testid":`${t}-overlay`},i.createElement("div",{role:"menu","aria-orientation":"vertical","data-fs-dropdown-menu":!0,"data-fs-dropdown-menu-size":r,"data-testid":t,style:{...f,...n},id:p,...a},e)),document.body):(l.current=[],null)};var h=(0,i.forwardRef)((function({children:e,icon:t,onClick:r,testId:n="fs-dropdown-item",...a},o){const{dropdownItemsRef:s,selectedDropdownItemIndexRef:l,close:c}=u(),[d,p]=(0,i.useState)(0),m=(0,i.useRef)(),f=()=>{l.current=d,s?.current[l.current]?.focus()};return(0,i.useImperativeHandle)(o,(()=>m.current),[]),i.createElement("button",{"data-fs-dropdown-item":!0,"data-testid":n,ref:e=>{e&&!s?.current.includes(e)&&(s?.current.push(e),p(s?.current.findIndex((t=>t===e))??0)),m.current=e},onFocus:f,onMouseEnter:f,onClick:e=>{r?.(e),c?.()},role:"menuitem",tabIndex:-1,"data-index":d,...a},!!t&&t,e)})),b=r(1329);var g=({divider:e,testId:t})=>{const r={"data-fs-breadcrumb-divider":!0,"aria-hidden":!0,"data-testid":`${t}-divider`};return i.isValidElement(e)?i.cloneElement(e,r):i.createElement("span",{...r},e??"/")};var v=({children:e,isLastItem:t,divider:r,testId:n})=>{const a={"data-testid":`${n}-item`,"data-fs-breadcrumb-item":!t||"current","aria-current":t?"page":void 0};return i.isValidElement(e)?i.createElement("li",{"data-fs-breadcrumb-list-item":!0},i.cloneElement(e,a),t?null:i.createElement(g,{divider:r,testId:n})):i.createElement("li",{"data-fs-breadcrumb-list-item":!0},i.createElement("span",{...a},e,t?null:i.createElement(g,{divider:r,testId:n})))};var y=(0,i.forwardRef)((function({children:e,divider:t="",testId:r="fs-breadcrumb",...n},a){return i.createElement("nav",{"aria-label":"Breadcrumb",role:"navigation",ref:a,"data-fs-breadcrumb":!0,"data-testid":r,...n},i.createElement(b.Z,{as:"ol","data-fs-breadcrumb-list":!0},i.Children.toArray(e).map(((e,n,a)=>{const o=n===a.length-1;return i.createElement(v,{isLastItem:o,divider:t,key:`breadcrumb-${n}`,testId:r},e)}))))}));var j=(0,i.forwardRef)((function({children:e,divider:t="",testId:r="fs-breadcrumb",breadcrumbList:n,isDesktop:a=!1,renderLink:l,homeLink:d,dropdownButtonIcon:u=i.createElement(o.Z,{name:"DotsThree"}),collapsedItemsIcon:m=i.createElement(o.Z,{"data-fs-dropdown-item-icon":!0,name:"ArrowElbowDownRight"}),...b},g){const v=a?n[0]:null,j=a?n.slice(1,-2):n.slice(0,-2),O=n.slice(-2),w=n.length>4,x=(0,i.useCallback)((e=>{const t=l?.(e),r=e.collapsed?{"data-fs-breadcrumb-dropdown-link":!0}:{"data-fs-breadcrumb-link":!0};return t?(0,i.cloneElement)(t,{...r,key:e.itemProps.position}):i.createElement(s.Z,{...r,href:e.itemProps.item,key:e.itemProps.position},e.itemProps.name)}),[l]);return i.createElement(y,{ref:g,"data-fs-breadcrumb-is-desktop":a,...b},d,!w&&n.map(((e,t)=>n.length===t+1?i.createElement("span",{key:String(e.position)},e.name):x({itemProps:e,collapsed:!1}))),w&&v&&x({itemProps:v,collapsed:!1}),w&&i.createElement(c,null,i.createElement(p,{"data-fs-breadcrumb-dropdown-button":!0,size:"small"},u),i.createElement(f,{"data-fs-breadcrumb-dropdown-menu":!0},j.map((e=>i.createElement(h,{"data-fs-breadcrumb-dropdown-item":!0,key:String(e.position),icon:m},x({itemProps:e,collapsed:!0})))))),w&&O.map(((e,t)=>O.length===t+1?i.createElement("span",{key:String(e.position)},e.name):x({itemProps:e,collapsed:!1}))))}));var O=({breadcrumbList:e,...t})=>i.createElement(i.Fragment,null,i.createElement(j,{breadcrumbList:e,...t}),i.createElement(j,{breadcrumbList:e,isDesktop:!0,...t})),w=r(1093),x=r(2322),E=["icon","alt"];function P(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var k=e=>{var{icon:t="Home",alt:r="Go to homepage"}=e,i=(0,a.Z)(e,E);return(0,x.jsx)(O,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?P(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):P(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({homeLink:(0,x.jsx)(w.Z,{"data-fs-breadcrumb-link":!0,"data-fs-breadcrumb-link-home":!0,"aria-label":r,href:"/",prefetch:!1,children:(0,x.jsx)(o.Z,{name:t,width:18,height:18,weight:"bold"})}),renderLink:e=>{var{itemProps:{item:t,name:r}}=e;return(0,x.jsx)(w.Z,{"data-fs-breadcrumb-link":!0,href:t,prefetch:!1,children:r})}},i))},I=(0,i.memo)(k),S=r(7067),C=r(4579),Z=r.n(C),D=["context"];function _(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?_(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var L=e=>void 0!=(null===e||void 0===e?void 0:e.seo)&&null!=(null===e||void 0===e?void 0:e.seo)&&void 0==(null===e||void 0===e?void 0:e.sku);function N(e){var t,r,n,i,{context:o}=e,s=(0,a.Z)(e,D),l=[{item:"/",name:L(o)?null===o||void 0===o||null===(t=o.seo)||void 0===t?void 0:t.title:"All Products",position:1}],c=void 0!=(null===(i=o)||void 0===i?void 0:i.sku)&&null!=(null===i||void 0===i?void 0:i.sku)?null===o||void 0===o||null===(r=o.breadcrumbList)||void 0===r?void 0:r.itemListElement:L(o)?null===o||void 0===o||null===(n=o.breadcrumbList)||void 0===n?void 0:n.itemListElement:l;return(0,x.jsx)(S.Z,{className:"".concat(Z().section," section-breadcrumb layout__content"),children:(0,x.jsx)(I,R({breadcrumbList:c},s))})}var B=(0,i.memo)(N)},9622:function(e,t,r){"use strict";r.r(t),r.d(t,{__N_SSG:function(){return at},default:function(){return it}});var n=r(9499),a=r(5351),i=r(7231),o=r(6166),s=r(383),l=r(7067),c=r(3581),d=r.n(c),u=r(2322);var p=function(){return(0,u.jsx)(l.Z,{className:"".concat(d().section," section-banner-newsletter layout__content"),children:(0,u.jsxs)("div",{"data-fs-banner-newsletter":!0,children:[(0,u.jsx)(o.Z,{title:"Get to Know Our Next Release",caption:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam elit nisi, vehicula in turpis sit amet, posuere aliquam nisl. ",actionLabel:"Shop Now",actionPath:"/",variant:"secondary",colorVariant:"light"}),(0,u.jsx)(s.Z,{title:"Get News and Special Offers!",description:"Receive our news and promotions in advance. Enjoy and get 10% off your first purchase. For more information click here.",card:!0,lite:!0})]})})},m=r(2874),f=r(2784),h=r(5963),b=e=>{var{items:t,title:r,context:n,kind:a}=e,i=(0,f.useMemo)((()=>[{key:a,value:n.isVariantOf.productGroupID}]),[a,n.isVariantOf.productGroupID]);return(0,u.jsx)(h.Z,{first:t,title:r,selectedFacets:i})},g=r(1072),v=r(123),y=r(7578),j=r(5045);var O=function({testId:e="fs-buy-button",icon:t,children:r,...n}){return f.createElement(y.Z,{"data-fs-buy-button":!0,icon:f.createElement(j.Z,{name:"ShoppingCart"}),iconPosition:"left","data-testid":e,...n},r)},w=r(783);var x=(0,f.forwardRef)((function({title:e,label:t,refTag:r="Ref.: ",refNumber:n,testId:a="fs-product-title",ratingValue:i,...o},s){return f.createElement("header",{ref:s,"data-fs-product-title":!0,"data-testid":a,...o},f.createElement("div",{"data-fs-product-title-header":!0},e,!!t&&t),(n||i)&&f.createElement("p",{"data-fs-product-title-addendum":!0},i&&f.createElement(w.Z,{value:i}),n&&f.createElement(f.Fragment,null,r," ",n)))})),E=r(7549),P=r(9875),k={name:"ProductDetails",components:{}};function I(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var S=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?I(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):I(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({Price:E.Z,DiscountBadge:P.Z},k.components),C=r(395),Z=r(8287);var D=(0,f.forwardRef)((function({testId:e="fs-out-of-stock",title:t,buttonLabel:r="Notify Me",loadingLabel:n="Loading",inputLabel:a,subtitle:i,disabled:o,errorMessage:s,onSubmit:l,...c},d){return f.createElement("form",{"data-fs-out-of-stock":!0,ref:d,"data-testid":e,onSubmit:l,...c},f.createElement("h2",{"data-fs-out-of-stock-title":!0},t),i&&f.createElement("p",{"data-fs-out-of-stock-message":!0},f.createElement(j.Z,{name:"BellRinging",width:16,height:16}),i),f.createElement(Z.Z,{id:"out-of-stock-email",name:"out-of-stock-email",label:a,"aria-label":a,error:s,required:!0}),f.createElement(y.Z,{"data-fs-out-of-stock-button":!0,type:"submit",loading:o,loadingLabel:n,disabled:o,variant:"primary",icon:f.createElement(j.Z,{name:"BellRinging"}),iconPosition:"left"},r))})),_=r(7295);var R=function(){var{postalCode:e}=(0,_.kP)(),{0:t,1:r}=(0,f.useState)(!1),{0:n,1:a}=(0,f.useState)(""),{pushToast:i}=(0,C.l)();return(0,u.jsx)(D,{title:e?"Unavailable in Your Location":"Out of Stock",inputLabel:"Email",subtitle:"Notify me when available",onSubmit:e=>{e.preventDefault(),r(!0);try{setTimeout((()=>r(!1)),2e3),e.currentTarget.reset(),i({title:"Subscribed successfully!",message:"You'll be notified when this product is back to stock.",status:"INFO",icon:(0,u.jsx)(j.Z,{name:"CircleWavyCheck",width:30,height:30})})}catch(t){a(t.message)}},disabled:t,errorMessage:n})},L=r(4730),N=r(7704),B=r(2765);const M=(e,t)=>{e&&(e.scrollHeight>e.clientHeight?(e.style.overflow="auto",window.requestAnimationFrame((()=>e.scrollTo({top:t,behavior:"smooth"}))),setTimeout((()=>e.style.overflow="hidden"),2e3)):e.scrollLeft+=t)};var V=function({images:e,onSelect:t,ImageComponent:r,currentImageIdx:n,testId:a="fs-image-gallery-selector","aria-label":i="Product Images",navigationButtonLeftAriaLabel:o="Backward slide image selector",navigationButtonRightAriaLabel:s="Forward slide image selector"}){const l=(0,f.useRef)(null),c=!!(d=l.current)&&(d.scrollHeight>d.clientHeight||d.scrollWidth>d.clientWidth);var d;const[u,p]=(0,f.useState)(!0),[m,h]=(0,f.useState)(!0),b=(0,f.useCallback)(((t,r)=>{0===t&&p(r),t===e.length-1&&h(r)}),[e.length]);return f.createElement("section",{"data-fs-image-gallery-selector":!0,"data-testid":a,"aria-label":i,"aria-roledescription":"carousel"},c&&!u&&f.createElement("div",{"data-fs-image-gallery-selector-control":!0},f.createElement(B.Z,{"data-fs-image-gallery-selector-control-button":!0,"aria-label":o,icon:f.createElement(j.Z,{name:"ArrowLeft"}),onClick:()=>M(l.current,-400)})),f.createElement("div",{"data-fs-image-gallery-selector-elements":!0,ref:l},e.map(((a,i)=>f.createElement(N.df,{key:i,onChange:e=>b(i,e)},f.createElement(y.Z,{key:i,"aria-label":`${a.alternateName} - Image ${i+1} of ${e.length}`,onClick:()=>t(i),"data-fs-image-gallery-selector-thumbnail":i===n?"selected":"true"},f.createElement(r,{url:a.url??"",loading:0===i?"eager":"lazy",alternateName:a.alternateName??""})))))),c&&!m&&f.createElement("div",{"data-fs-image-gallery-selector-control":!0},f.createElement(B.Z,{"data-fs-image-gallery-selector-control-button":!0,"aria-label":s,icon:f.createElement(j.Z,{name:"ArrowLeft"}),onClick:()=>M(l.current,400)})))};const q=(0,f.forwardRef)((function({images:e,children:t,ImageComponent:r,selectedImageIdx:n,setSelectedImageIdx:a,testId:i="fs-image-gallery",...o},s){const l=e.length>1;return f.createElement("section",{ref:s,"data-fs-image-gallery":l?"with-selector":"without-selector","data-testid":i,...o},t,l&&f.createElement(V,{images:e,onSelect:a,currentImageIdx:n,ImageComponent:r}))}));var T=q;var A=({children:e})=>f.createElement(f.Fragment,null,e),H=r(1163),F=r(9266),$=["images"];function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?z(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):z(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var W=e=>{var{url:t,alternateName:r}=e;return(0,u.jsx)(F.E,{src:t,alt:r,width:68,height:68})},U=e=>{var t,{images:r}=e,n=(0,L.Z)(e,$),{0:a,1:i}=(0,f.useState)(0),o=null!==(t=r[a])&&void 0!==t?t:r[0],s=(0,H.useRouter)().asPath;return(0,f.useEffect)((()=>i(0)),[s]),(0,u.jsx)(T,G(G({images:r,ImageComponent:W,selectedImageIdx:a,setSelectedImageIdx:i},n),{},{children:(0,u.jsx)(A,{children:(0,u.jsx)(F.E,{src:o.url,alt:o.alternateName,sizes:"(max-width: 360px) 50vw, (max-width: 768px) 90vw, 50vw",width:691,height:518.25,loading:"eager"})})}))},Q=r(29),X=r(7865);var Y=(0,f.forwardRef)((function({children:e,variant:t="colored",testId:r="fs-table",...n},a){return f.createElement("div",{"data-fs-table":!0},f.createElement("table",{ref:a,"data-fs-table-content":!0,"data-fs-table-variant":t,"data-testid":r,...n},e))}));var K=(0,f.forwardRef)((function({children:e,testId:t="fs-table-body",...r},n){return f.createElement("tbody",{ref:n,"data-testid":t,"data-fs-table-body":!0,...r},e)}));var J=(0,f.forwardRef)((function({children:e,testId:t="fs-table-row",...r},n){return f.createElement("tr",{ref:n,"data-fs-table-row":!0,"data-testid":t,...r},e)}));var ee=(0,f.forwardRef)((function({scope:e,align:t,children:r,variant:n="data",testId:a="fs-table-cell",...i},o){const s="header"===n?"th":"td";return f.createElement(s,{ref:o,"data-fs-table-cell":n,"data-fs-table-cell-align":t,"data-testid":a,scope:e,...i},r)}));var te=function({testId:e="fs-shipping-simulation",formatter:t,title:r="Shipping",inputLabel:n="Postal Code",optionsLabel:a="Shipping options",idkPostalCodeLinkProps:i,onInput:o,onSubmit:s,onClear:l,location:c,options:d=[],displayClearButton:u=!1,errorMessage:p,postalCode:m,...h}){const b=!!d&&d.length>0;return f.createElement("section",{"data-fs-shipping-simulation":!0,"data-fs-shipping-simulation-empty":b?"false":"true","data-testid":e,...h},f.createElement("h2",{"data-fs-shipping-simulation-title":!0},r),f.createElement(Z.Z,{actionable:!0,error:p,id:`${e}-input-field`,label:n,value:m,onInput:e=>o?.(e),onSubmit:()=>s?.(),onClear:()=>l?.(),displayClearButton:u}),f.createElement(X.Z,{href:"/","data-fs-shipping-simulation-link":!0,size:"small",...i},i?.children??f.createElement(f.Fragment,null,"I don't know my Postal Code",f.createElement(j.Z,{name:"ArrowSquareOut",width:20,height:20}))),b&&f.createElement(f.Fragment,null,f.createElement("header",{"data-fs-shipping-simulation-header":!0},f.createElement("h3",{"data-fs-shipping-simulation-subtitle":!0},a),f.createElement("p",{"data-fs-shipping-simulation-location":!0},c)),f.createElement(Y,null,f.createElement(K,null,d.map((e=>f.createElement(J,{key:e.carrier},f.createElement(ee,{align:"left"},e.carrier),f.createElement(ee,null,e.localizedEstimates),f.createElement(ee,{align:"right"},e.price&&f.createElement(E.Z,{formatter:t,value:e.price,SRText:"price"})))))))))},re=r(180),ne=function(){var e=(0,Q.Z)((function*(e){var{items:t,postalCode:r,country:n}=e;return(yield(0,re.W)("ShippingSimulationQuery",{items:t,postalCode:r,country:n})).shipping}));return function(t){return e.apply(this,arguments)}}();function ae(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ie(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ae(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ae(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var oe=()=>({input:{postalCode:"",displayClearButton:!1,errorMessage:""},shippingSimulation:{location:"",options:[]}}),se=(e,t)=>{var{type:r}=t;switch(r){case"clear":return{input:{postalCode:"",displayClearButton:!1,errorMessage:""},shippingSimulation:{location:"",options:[]}};case"update":var{payload:n}=t;return{input:ie(ie({},e.input),n.input),shippingSimulation:ie(ie({},e.shippingSimulation),n.shippingSimulation)};case"onInput":var{payload:a}=t;return ie(ie({},e),{},{input:ie({},a)});case"onError":var{payload:i}=t;return ie(ie({},e),{},{input:ie(ie({},e.input),i)});default:throw new Error("Action ".concat(r," not implemented"))}},le=(e,t,r,n)=>{var{0:{input:a,shippingSimulation:i},1:o}=(0,f.useReducer)(se,null,oe),{postalCode:s}=a;return(0,f.useEffect)((()=>{function a(){return(a=(0,Q.Z)((function*(){var[a,i]=yield t(e,n,null!==r&&void 0!==r?r:"");o({type:"update",payload:{input:{postalCode:null!==r&&void 0!==r?r:"",displayClearButton:!0,errorMessage:""},shippingSimulation:{location:a,options:i}}})}))).apply(this,arguments)}r&&!s&&function(){a.apply(this,arguments)}()}),[n,t,r,e,s]),{input:a,shippingSimulation:i,handleOnClear:()=>{o({type:"clear"})},handleSubmit:(0,f.useCallback)((0,Q.Z)((function*(){try{var[r,a]=yield t(e,n,null!==s&&void 0!==s?s:"");o({type:"update",payload:{input:{displayClearButton:!0,errorMessage:""},shippingSimulation:{location:r,options:a}}})}catch(i){o({type:"onError",payload:{displayClearButton:!0,errorMessage:"You entered an invalid Postal Code"}})}})),[n,t,e,s]),handleOnInput:(0,f.useCallback)((e=>{var t=e.currentTarget.value;o(t?{type:"onInput",payload:{postalCode:t,displayClearButton:!1,errorMessage:""}}:{type:"clear"})}),[])}},ce=["productShippingInfo","formatter"];function de(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var ue=function(){var e=(0,Q.Z)((function*(e,t,r){var n,a,i,o,s,l,c=yield ne({country:t,postalCode:r,items:[e]});return[null!==(n=[null===c||void 0===c||null===(a=c.address)||void 0===a?void 0:a.neighborhood,null===c||void 0===c||null===(i=c.address)||void 0===i?void 0:i.city].filter(Boolean).join(" / "))&&void 0!==n?n:"",null!==(o=null===c||void 0===c||null===(s=c.logisticsInfo)||void 0===s||null===(l=s[0])||void 0===l?void 0:l.slas)&&void 0!==o?o:[]]}));return function(t,r,n){return e.apply(this,arguments)}}();function pe(e){var{productShippingInfo:t,formatter:r}=e,a=(0,L.Z)(e,ce),{country:i,postalCode:o}=(0,_.kP)(),{input:s,shippingSimulation:l,handleSubmit:c,handleOnInput:d,handleOnClear:p}=le(t,ue,o,i),{postalCode:m,displayClearButton:f,errorMessage:h}=s,{location:b,options:g}=l;return(0,u.jsx)(te,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?de(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):de(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({formatter:r,onInput:d,onSubmit:c,onClear:p,location:b,options:g,displayClearButton:f,errorMessage:h,postalCode:m},a))}var me=r(7216),fe=r(2691);const he=e=>new URL(e).pathname.split("/").slice(-1)[0];const be=(e,t,r,n)=>({getItemHref:(0,f.useCallback)((a=>{if(n)return{getItemHrefProp:n};const i=`/${function(e,t,r){const n=Object.entries(t).flat().join("-");if(n in e)return e[n];const a=Object.keys(e);return e[a.find((e=>e.includes(`${r}-${t[r]}`)))??a[0]]}(t,{...e,[r]:a.value},r)}/p`;return i}),[e,n,t,r])}),ge=({src:e,alt:t,...r})=>f.createElement("img",{src:e,alt:t,...r}),ve=(0,f.forwardRef)((function({availableVariations:e,skuPropertyName:t,testId:r,activeVariations:n,linkProps:a,slugsMap:i,getItemHref:o,ImageComponent:s=ge,variant:l,...c},d){const u=n[t],p=e[t],m=((e,t)=>(0,f.useMemo)((()=>{if(t)return t;if(e.every((e=>e.hexColor)))return"color";const r=e[0]?.src&&he(e[0].src);return e.every((e=>!e.src||he(e.src)===r))?"label":"image"}),[e,t]))(p,l),{getItemHref:h}=be(n,i,t,o);return f.createElement("div",{ref:d,"data-fs-sku-selector":!0,"data-testid":r,"data-fs-sku-selector-variant":m,...c},t&&f.createElement(me.Z,{"data-fs-sku-selector-title":!0},t,": ",f.createElement("strong",null,u)),f.createElement("ul",{"data-fs-sku-selector-list":!0},p.map(((e,r)=>f.createElement("li",{key:String(r),title:e.label,"data-fs-sku-selector-option":!0,"data-fs-sku-selector-disabled":e.disabled,"data-fs-sku-selector-checked":e.value===n[t]},f.createElement(X.Z,{"data-fs-sku-selector-option-link":!0,href:h(e),...a},f.createElement(fe.Z,{text:e.label})),"label"===m&&f.createElement("span",null,e.value),"image"===m&&s&&f.createElement("span",null,f.createElement(s,{src:e.src??"",alt:e.alt??"","data-fs-sku-selector-option-image":!0})),"color"===m&&f.createElement("span",null,f.createElement("div",{"data-fs-sku-selector-option-color":!0,title:e.value,style:{"--data-fs-sku-selector-option-color-bkg-color":e.hexColor}})))))))}));var ye=ve,je=r(1664),Oe=r.n(je),we=["src","alt"],xe=["slugsMap","activeVariations","availableVariations"];function Ee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Pe(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ee(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var ke=e=>{var{src:t,alt:r}=e,n=(0,L.Z)(e,we);return(0,u.jsx)(F.E,Pe({src:t,alt:r,width:34,height:34},n))};var Ie=function(e){var{slugsMap:t,activeVariations:r,availableVariations:n}=e,a=(0,L.Z)(e,xe);return(0,u.jsx)("section",Pe(Pe({},a),{},{children:n&&Object.keys(n).map((e=>(0,u.jsx)(ye,{skuPropertyName:e,availableVariations:n,ImageComponent:ke,activeVariations:r,slugsMap:t,linkProps:{as:Oe(),legacyBehavior:!1}},e)))}))},Se=r(6073),Ce=r(5346),Ze=r(7732),De=r(9739),_e=r(997),Re=r(7743),Le=r(331),Ne=r(1329);function Be(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Me(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Be(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Be(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Ve={first:[0],all:[0,1,2,3],none:[]},qe={description:"Description",about:"About this product",highlights:"Product highlights",learnMore:"Learn More"};var Te=function(e){var{initiallyExpanded:t="first",labels:r={}}=e,{0:n,1:a}=(0,f.useState)(new Set(Ve[t])),i=Me(Me({},qe),r);return(0,u.jsx)("section",{"data-fs-product-details-content":!0,children:(0,u.jsxs)(De.Z,{indices:n,onChange:e=>{a((t=>{var r=new Set(t);return t.has(e)?r.delete(e):r.add(e),r}))},"aria-label":"Product Details Content",children:[(0,u.jsxs)(_e.Z,{as:"article",index:0,"data-fs-product-details-description":!0,prefixId:"product-details-content",children:[(0,u.jsx)(Re.Z,{children:i.description}),(0,u.jsx)(Le.Z,{children:(0,u.jsx)("p",{className:"text__body",children:"Sony WH-1000XM4 Wireless Industry Leading Noise Canceling Overhead Headphones with Mic for Phone-Call and Alexa Voice Control, Black."})})]}),(0,u.jsxs)(_e.Z,{as:"article",index:1,"data-fs-product-details-about":!0,prefixId:"product-details-content",children:[(0,u.jsx)(Re.Z,{children:i.about}),(0,u.jsx)(Le.Z,{children:(0,u.jsx)(Y,{cellPadding:0,cellSpacing:0,className:"text__title-mini-alt",children:(0,u.jsxs)(K,{children:[(0,u.jsxs)(J,{children:[(0,u.jsxs)(ee,{variant:"header",align:"left",children:[(0,u.jsx)(j.Z,{"data-fs-accordion-item-button-icon":!0,name:"Ruler",width:18,height:18}),(0,u.jsx)("span",{children:"Width"})]}),(0,u.jsx)(ee,{align:"right",children:"1.50m"})]}),(0,u.jsxs)(J,{children:[(0,u.jsxs)(ee,{variant:"header",align:"left",children:[(0,u.jsx)(j.Z,{"data-fs-accordion-item-button-icon":!0,name:"Ruler",width:18,height:18}),"Height"]}),(0,u.jsx)(ee,{align:"right",children:"1.50m"})]}),(0,u.jsxs)(J,{children:[(0,u.jsxs)(ee,{variant:"header",align:"left",children:[(0,u.jsx)(j.Z,{"data-fs-accordion-item-button-icon":!0,name:"Ruler",width:18,height:18}),"Dimensions"]}),(0,u.jsx)(ee,{align:"right",children:"7.27 x 3.03 x 9.94 inches"})]}),(0,u.jsxs)(J,{children:[(0,u.jsxs)(ee,{variant:"header",align:"left",children:[(0,u.jsx)(j.Z,{"data-fs-accordion-item-button-icon":!0,name:"Bag",width:18,height:18}),"Weight"]}),(0,u.jsx)(ee,{align:"right",children:"12oz"})]}),(0,u.jsxs)(J,{children:[(0,u.jsxs)(ee,{variant:"header",align:"left",children:[(0,u.jsx)(j.Z,{"data-fs-accordion-item-button-icon":!0,name:"RocketLaunch",width:18,height:18}),"Days to ship"]}),(0,u.jsx)(ee,{align:"right",children:"11 Days"})]}),(0,u.jsxs)(J,{children:[(0,u.jsxs)(ee,{variant:"header",align:"left",children:[(0,u.jsx)(j.Z,{"data-fs-accordion-item-button-icon":!0,name:"CircleWavyCheck",width:18,height:18}),"Estimated"]}),(0,u.jsx)(ee,{align:"right",children:"Nov 10th"})]})]})})})]}),(0,u.jsxs)(_e.Z,{as:"article",className:"text__body",index:2,"data-fs-product-details-highlights":!0,prefixId:"product-details-content",children:[(0,u.jsx)(Re.Z,{children:i.highlights}),(0,u.jsx)(Le.Z,{children:(0,u.jsxs)(Ne.Z,{marker:!0,children:[(0,u.jsx)("li",{children:"Industry-leading noise canceling with Dual Noise Sensor technology"}),(0,u.jsx)("li",{children:"Next-level music with Edge-AI, co-developed with Sony Music Studios Tokyo"}),(0,u.jsx)("li",{children:"Up to 30-hour battery life with quick charging (10 min charge for 5 hours of playback)"}),(0,u.jsx)("li",{children:"Touch Sensor controls to pause play skip tracks, control volume, activate your voice assistant, and answer phone calls"}),(0,u.jsx)("li",{children:"Speak-to-chat technology automatically reduces volume during conversations"}),(0,u.jsx)("li",{children:"Superior call quality with precise voice pickup"}),(0,u.jsx)("li",{children:"Wearing detection pauses playback when headphones are removed"}),(0,u.jsx)("li",{children:"Seamless multiple-device pairing"}),(0,u.jsx)("li",{children:"Adaptive Sound Control provides a personalized listening experience"}),(0,u.jsx)("li",{children:"Updated design relieves pressure for long-lasting comfort"})]})})]}),(0,u.jsxs)(_e.Z,{as:"article",index:3,"data-fs-product-details-learn-more":!0,prefixId:"product-details-content",children:[(0,u.jsx)(Re.Z,{children:i.learnMore}),(0,u.jsx)(Le.Z,{children:(0,u.jsx)("p",{className:"text__body",children:"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laboru."})})]})]})})},Ae=r(2998),He=r.n(Ae);function Fe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function $e(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Fe(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fe(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var{Price:ze,DiscountBadge:Ge}=S;function We(){return(0,u.jsxs)("svg",{role:"img",width:"100%",height:"48","aria-labelledby":"loading-aria",viewBox:"0 0 112 48",preserveAspectRatio:"none",children:[(0,u.jsx)("title",{id:"loading-aria",children:"Loading..."}),(0,u.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",clipPath:"url(#clip-path)",style:{fill:'url("#fill")'}}),(0,u.jsxs)("defs",{children:[(0,u.jsx)("clipPath",{id:"clip-path",children:(0,u.jsx)("rect",{x:"0",y:"0",rx:"2",ry:"2",width:"112",height:"48"})}),(0,u.jsxs)("linearGradient",{id:"fill",children:[(0,u.jsx)("stop",{offset:"0.599964",stopColor:"#f3f3f3",stopOpacity:"1",children:(0,u.jsx)("animate",{attributeName:"offset",values:"-2; -2; 1",keyTimes:"0; 0.25; 1",dur:"2s",repeatCount:"indefinite"})}),(0,u.jsx)("stop",{offset:"1.59996",stopColor:"#ecebeb",stopOpacity:"1",children:(0,u.jsx)("animate",{attributeName:"offset",values:"-1; -1; 2",keyTimes:"0; 0.25; 1",dur:"2s",repeatCount:"indefinite"})}),(0,u.jsx)("stop",{offset:"2.59996",stopColor:"#f3f3f3",stopOpacity:"1",children:(0,u.jsx)("animate",{attributeName:"offset",values:"0; 0; 3",keyTimes:"0; 0.25; 1",dur:"2s",repeatCount:"indefinite"})})]})]})]})}var Ue=function(e){var{context:t}=e,{currency:r}=(0,_.kP)(),{0:n,1:a}=(0,f.useState)(1),{data:i,isValidating:o}=((e,t)=>{var{channel:r,locale:n}=(0,_.kP)(),a=(0,f.useMemo)((()=>{if(!r)throw new Error("useProduct: 'channel' from session is an empty string.");return{locator:[{key:"id",value:e},{key:"channel",value:r},{key:"locale",value:n}]}}),[r,n,e]);return(0,Ze.aM)("BrowserProductQuery",a,{fallbackData:t,revalidateOnMount:!0})})(t.id,{product:t});if(!i)throw new Error("NotFound");var{product:{id:s,sku:c,gtin:d,name:p,brand:m,isVariantOf:h,isVariantOf:{name:b,productGroupID:y,skuVariants:j},image:w,offers:{offers:[{availability:E,price:P,listPrice:k,seller:I}],lowPrice:S},breadcrumbList:Z,additionalProperty:D}}=i,L="https://schema.org/InStock"!==E,N=(e=>{var{openCart:t}=(0,C.l)(),{currency:{code:r}}=(0,_.kP)();return{onClick:(0,f.useCallback)((n=>{n.preventDefault(),e&&((0,g._)({name:"add_to_cart",params:{currency:r,value:e.price*e.quantity,items:[{item_id:e.itemOffered.isVariantOf.productGroupID,item_name:e.itemOffered.isVariantOf.name,item_brand:e.itemOffered.brand.name,item_variant:e.itemOffered.sku,quantity:e.quantity,price:e.price,discount:e.listPrice-e.price,currency:r,item_variant_name:e.itemOffered.name,product_reference_id:e.itemOffered.gtin}]}}),Se.i8.addItem(e),t())}),[r,e,t]),"data-testid":"buy-button","data-sku":null===e||void 0===e?void 0:e.itemOffered.sku,"data-seller":null===e||void 0===e?void 0:e.seller.identifier}})({id:s,price:P,listPrice:k,seller:I,quantity:n,itemOffered:{sku:c,name:p,gtin:d,image:w,brand:m,isVariantOf:h,additionalProperty:D}}),B=()=>(0,u.jsxs)(u.Fragment,{children:[(0,u.jsxs)("section",{"data-fs-product-details-values":!0,children:[(0,u.jsxs)("div",{"data-fs-product-details-prices":!0,children:[(0,u.jsx)(ze,{value:k,formatter:Ce.P,testId:"list-price","data-value":k,variant:"listing",SRText:"Original price:"}),(0,u.jsx)(ze,{value:S,formatter:Ce.P,testId:"price","data-value":S,variant:"spot",className:"text__lead",SRText:"Sale Price:"})]}),(0,u.jsx)(v.Z,{min:1,max:10,onChange:a})]}),j&&(0,u.jsx)(Ie,{slugsMap:j.slugsMap,availableVariations:j.availableVariations,activeVariations:j.activeVariations,"data-fs-product-details-selectors":!0}),o?(0,u.jsx)(We,{}):(0,u.jsx)(O,$e($e({disabled:L},N),{},{children:"Add to Cart"}))]});return(0,f.useEffect)((()=>{(0,g._)({name:"view_item",params:{currency:r.code,value:P,items:[{item_id:h.productGroupID,item_name:h.name,item_brand:m.name,item_variant:c,price:P,discount:k-P,currency:r.code,item_variant_name:p,product_reference_id:d}]}})}),[h.productGroupID,h.name,m.name,c,P,k,r.code,p,d]),(0,u.jsx)(l.Z,{className:"".concat(He().section," section-product-details layout__content layout__section"),children:(0,u.jsx)("section",{"data-fs-product-details":!0,children:(0,u.jsxs)("section",{"data-fs-product-details-body":!0,children:[(0,u.jsx)("header",{"data-fs-product-details-title":!0,"data-fs-product-details-section":!0,children:(0,u.jsx)(x,{title:(0,u.jsx)("h1",{children:b}),label:(0,u.jsx)(Ge,{listPrice:k,spotPrice:S,size:"big"}),refNumber:y})}),(0,u.jsx)(U,{"data-fs-product-details-gallery":!0,images:w}),(0,u.jsxs)("section",{"data-fs-product-details-info":!0,children:[(0,u.jsx)("section",{"data-fs-product-details-settings":!0,"data-fs-product-details-section":!0,children:E?(0,u.jsx)(B,{}):(0,u.jsx)(R,{})}),E&&(0,u.jsx)(pe,{"data-fs-product-details-section":!0,"data-fs-product-details-shipping":!0,productShippingInfo:{id:s,quantity:n,seller:I.identifier},formatter:Ce.P})]}),(0,u.jsx)(Te,{})]})})})},Qe=r(859),Xe=r(2541),Ye=r(5377),Ke=r(7183),Je=r.n(Ke);function et(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function tt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?et(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):et(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var rt=tt({Breadcrumb:m.Z,ProductDetails:Ue,CrossSellingShelf:b,BannerNewsletter:p},Qe.Z);function nt(e){var t,r,{product:n,sections:o,globalSections:s}=e,{currency:l}=(0,_.kP)(),{seo:c}=n,d=c.title||Je().seo.title,p=c.description||Je().seo.description,m="".concat(Je().storeUrl).concat(c.canonical);return(0,u.jsxs)(Ye.ZP,tt(tt({},s),{},{children:[(0,u.jsx)(a.PB,{title:d,description:p,canonical:m,openGraph:{type:"og:product",url:m,title:d,description:p,images:n.image.map((e=>({url:e.url,alt:e.alternateName})))},additionalMetaTags:[{property:"product:price:amount",content:null!==(t=null===(r=n.offers.lowPrice)||void 0===r?void 0:r.toString())&&void 0!==t?t:void 0},{property:"product:price:currency",content:l.code}]}),(0,u.jsx)(a.gR,{itemListElements:n.breadcrumbList.itemListElement}),(0,u.jsx)(a.Qb,{productName:n.name,description:n.description,brand:n.brand.name,sku:n.sku,gtin:n.gtin,releaseDate:n.releaseDate,images:n.image.map((e=>e.url)),offersType:"AggregateOffer",offers:tt(tt(tt({},n.offers),n.offers.offers[0]),{},{url:m})}),(0,u.jsx)(i.Z,{context:n,sections:o,components:rt})]}))}nt.displayName="Page";var at=!0,it=(0,Xe.B)(nt)},6258:function(e,t,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/[slug]/p",function(){return r(9622)}])},3581:function(e){e.exports={section:"section_section__pVnFl"}},4579:function(e){e.exports={section:"section_section__hRV9B"}},2998:function(e){e.exports={section:"section_section__XsOoR"}}},function(e){e.O(0,[391,545,377,366,774,888,179],(function(){return t=6258,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var e={},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}},u=!0;try{e[r].call(i.exports,i,i.exports,n),u=!1}finally{u&&delete t[r]}return i.exports}n.m=e,function(){var e=[];n.O=function(t,r,o,i){if(!r){var u=1/0;for(d=0;d<e.length;d++){r=e[d][0],o=e[d][1],i=e[d][2];for(var a=!0,c=0;c<r.length;c++)(!1&i||u>=i)&&Object.keys(n.O).every((function(e){return n.O[e](r[c])}))?r.splice(c--,1):(a=!1,i<u&&(u=i));if(a){e.splice(d--,1);var f=o();void 0!==f&&(t=f)}}return t}i=i||0;for(var d=e.length;d>0&&e[d-1][2]>i;d--)e[d]=e[d-1];e[d]=[r,o,i]}}(),n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,r){return n.f[r](e,t),t}),[]))},n.u=function(e){return 391===e?"static/chunks/391-47b923ef44945418.js":"static/chunks/"+e+"."+{98:"97381d2021f86cd9",143:"dd8a556e6957baa1",170:"c17ce564bb568265",226:"b57e10ad9932f88c",336:"0846f48eccce57e4",495:"8ffebac98e9475dc",502:"ae82de1669112b15",597:"c5cf3fbeae5ceb63",651:"7142f31ce1e052b3",741:"52f7fb873418346f"}[e]+".js"},n.miniCssF=function(e){return"static/css/"+{103:"7701d01af31e31d1",197:"e02cdad8fc000339",327:"43b1b3821e21630c",330:"2e9de35e0cb999e0",366:"e434797816e17065",377:"e7a6f3559cf45c62",405:"13a4da555ff5e3be",459:"e02cdad8fc000339",502:"2e00f7ba49c754b3",573:"e02cdad8fc000339",597:"48af598df5fe042d",888:"923c4a942e57bc91"}[e]+".css"},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},function(){var e={},t="_N_E:";n.l=function(r,o,i,u){if(e[r])e[r].push(o);else{var a,c;if(void 0!==i)for(var f=document.getElementsByTagName("script"),d=0;d<f.length;d++){var l=f[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+i){a=l;break}}a||(c=!0,(a=document.createElement("script")).charset="utf-8",a.timeout=120,n.nc&&a.setAttribute("nonce",n.nc),a.setAttribute("data-webpack",t+i),a.src=n.tu(r)),e[r]=[o];var s=function(t,n){a.onerror=a.onload=null,clearTimeout(b);var o=e[r];if(delete e[r],a.parentNode&&a.parentNode.removeChild(a),o&&o.forEach((function(e){return e(n)})),t)return t(n)},b=setTimeout(s.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=s.bind(null,a.onerror),a.onload=s.bind(null,a.onload),c&&document.head.appendChild(a)}}}(),n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},function(){var e;n.tt=function(){return void 0===e&&(e={createScriptURL:function(e){return e}},"undefined"!==typeof trustedTypes&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("nextjs#bundler",e))),e}}(),n.tu=function(e){return n.tt().createScriptURL(e)},n.p="/_next/",function(){var e=function(e){return new Promise((function(t,r){var o=n.miniCssF(e),i=n.p+o;if(function(e,t){for(var n=document.getElementsByTagName("link"),r=0;r<n.length;r++){var o=(u=n[r]).getAttribute("data-href")||u.getAttribute("href");if("stylesheet"===u.rel&&(o===e||o===t))return u}var i=document.getElementsByTagName("style");for(r=0;r<i.length;r++){var u;if((o=(u=i[r]).getAttribute("data-href"))===e||o===t)return u}}(o,i))return t();!function(e,t,n,r){var o=document.createElement("link");o.rel="stylesheet",o.type="text/css",o.onerror=o.onload=function(i){if(o.onerror=o.onload=null,"load"===i.type)n();else{var u=i&&("load"===i.type?"missing":i.type),a=i&&i.target&&i.target.href||t,c=new Error("Loading CSS chunk "+e+" failed.\n("+a+")");c.code="CSS_CHUNK_LOAD_FAILED",c.type=u,c.request=a,o.parentNode.removeChild(o),r(c)}},o.href=t,document.head.appendChild(o)}(e,i,t,r)}))},t={272:0};n.f.miniCss=function(n,r){t[n]?r.push(t[n]):0!==t[n]&&{502:1,597:1}[n]&&r.push(t[n]=e(n).then((function(){t[n]=0}),(function(e){throw delete t[n],e})))}}(),function(){var e={272:0};n.f.j=function(t,r){var o=n.o(e,t)?e[t]:void 0;if(0!==o)if(o)r.push(o[2]);else if(272!=t){var i=new Promise((function(n,r){o=e[t]=[n,r]}));r.push(o[2]=i);var u=n.p+n.u(t),a=new Error;n.l(u,(function(r){if(n.o(e,t)&&(0!==(o=e[t])&&(e[t]=void 0),o)){var i=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed.\n("+i+": "+u+")",a.name="ChunkLoadError",a.type=i,a.request=u,o[1](a)}}),"chunk-"+t,t)}else e[t]=0},n.O.j=function(t){return 0===e[t]};var t=function(t,r){var o,i,u=r[0],a=r[1],c=r[2],f=0;if(u.some((function(t){return 0!==e[t]}))){for(o in a)n.o(a,o)&&(n.m[o]=a[o]);if(c)var d=c(n)}for(t&&t(r);f<u.length;f++)i=u[f],n.o(e,i)&&e[i]&&e[i][0](),e[i]=0;return n.O(d)},r=self.webpackChunk_N_E=self.webpackChunk_N_E||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))}()}();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from './ProductDetailsContent'
|
|
File without changes
|