@nok-integration/storefront-react 0.19.14 → 0.19.15
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/dist/index.d.ts +66 -0
- package/dist/index.mjs +135 -64
- package/dist/standalone/storefront.mjs +135 -64
- package/dist/standalone/styles.css +36 -40
- package/dist/styles.css +36 -40
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2503,6 +2503,7 @@ declare function createClient(options: ClientOptions): {
|
|
|
2503
2503
|
cta: string;
|
|
2504
2504
|
image?: string | undefined;
|
|
2505
2505
|
target?: string | undefined;
|
|
2506
|
+
video?: string | undefined;
|
|
2506
2507
|
focal_y?: number | undefined;
|
|
2507
2508
|
}[];
|
|
2508
2509
|
}>;
|
|
@@ -2858,6 +2859,7 @@ declare function createClient(options: ClientOptions): {
|
|
|
2858
2859
|
amount: number;
|
|
2859
2860
|
currency: string;
|
|
2860
2861
|
} | undefined;
|
|
2862
|
+
returned_qty?: number | undefined;
|
|
2861
2863
|
}[];
|
|
2862
2864
|
totals: {
|
|
2863
2865
|
shipping: {
|
|
@@ -2951,6 +2953,7 @@ declare function createClient(options: ClientOptions): {
|
|
|
2951
2953
|
amount: number;
|
|
2952
2954
|
currency: string;
|
|
2953
2955
|
} | undefined;
|
|
2956
|
+
returned_qty?: number | undefined;
|
|
2954
2957
|
}[];
|
|
2955
2958
|
totals: {
|
|
2956
2959
|
shipping: {
|
|
@@ -3729,6 +3732,20 @@ declare const OrderDetail: z.ZodObject<{
|
|
|
3729
3732
|
*/
|
|
3730
3733
|
cancelled_qty: z.ZodNumber;
|
|
3731
3734
|
refunded_qty: z.ZodNumber;
|
|
3735
|
+
/**
|
|
3736
|
+
* Units already reported as coming back.
|
|
3737
|
+
*
|
|
3738
|
+
* **The returns screen cannot compute what is left without it, and got it wrong.** The
|
|
3739
|
+
* engine refuses a return of more than `qty - cancelled_qty - refunded_qty - returned_qty`
|
|
3740
|
+
* (`returns.service`), and this was the only one of those four not on the wire — so a
|
|
3741
|
+
* line returned in full still offered its full quantity, and choosing it answered 400
|
|
3742
|
+
* `invalid_request` with "Only 0 of line_1 can be returned". Seen on UAT order 611887,
|
|
3743
|
+
* 28 Aug.
|
|
3744
|
+
*
|
|
3745
|
+
* Optional so an engine that predates it stays valid; absent means zero, which is what a
|
|
3746
|
+
* consumer already assumed.
|
|
3747
|
+
*/
|
|
3748
|
+
returned_qty: z.ZodOptional<z.ZodNumber>;
|
|
3732
3749
|
}, "strip", z.ZodTypeAny, {
|
|
3733
3750
|
sku: string;
|
|
3734
3751
|
qty: number;
|
|
@@ -3750,6 +3767,7 @@ declare const OrderDetail: z.ZodObject<{
|
|
|
3750
3767
|
title?: string | undefined;
|
|
3751
3768
|
image?: string | undefined;
|
|
3752
3769
|
attributes?: Record<string, string> | undefined;
|
|
3770
|
+
returned_qty?: number | undefined;
|
|
3753
3771
|
}, {
|
|
3754
3772
|
sku: string;
|
|
3755
3773
|
qty: number;
|
|
@@ -3771,6 +3789,7 @@ declare const OrderDetail: z.ZodObject<{
|
|
|
3771
3789
|
title?: string | undefined;
|
|
3772
3790
|
image?: string | undefined;
|
|
3773
3791
|
attributes?: Record<string, string> | undefined;
|
|
3792
|
+
returned_qty?: number | undefined;
|
|
3774
3793
|
}>, "many">;
|
|
3775
3794
|
ship_to: z.ZodObject<{
|
|
3776
3795
|
name: z.ZodString;
|
|
@@ -3951,6 +3970,7 @@ declare const OrderDetail: z.ZodObject<{
|
|
|
3951
3970
|
title?: string | undefined;
|
|
3952
3971
|
image?: string | undefined;
|
|
3953
3972
|
attributes?: Record<string, string> | undefined;
|
|
3973
|
+
returned_qty?: number | undefined;
|
|
3954
3974
|
}[];
|
|
3955
3975
|
totals: {
|
|
3956
3976
|
shipping: {
|
|
@@ -4037,6 +4057,7 @@ declare const OrderDetail: z.ZodObject<{
|
|
|
4037
4057
|
title?: string | undefined;
|
|
4038
4058
|
image?: string | undefined;
|
|
4039
4059
|
attributes?: Record<string, string> | undefined;
|
|
4060
|
+
returned_qty?: number | undefined;
|
|
4040
4061
|
}[];
|
|
4041
4062
|
totals: {
|
|
4042
4063
|
shipping: {
|
|
@@ -5769,6 +5790,51 @@ export declare interface ShopSurfaceProps extends Omit<ComponentPropsWithoutRef<
|
|
|
5769
5790
|
|
|
5770
5791
|
export declare type ShopTone = 'dark' | 'light';
|
|
5771
5792
|
|
|
5793
|
+
/**
|
|
5794
|
+
* Full-bleed background video: muted, looping, inline, and never showing a control.
|
|
5795
|
+
*
|
|
5796
|
+
* The four attributes below are not stylistic. `muted` and `playsInline` together are the
|
|
5797
|
+
* only combination iOS will start without a gesture — a video that is unmuted, or that is
|
|
5798
|
+
* allowed to go fullscreen, simply does not play, and the panel shows its poster forever.
|
|
5799
|
+
* `loop` is the brief. `controls` is absent because this is artwork behind copy, not a
|
|
5800
|
+
* player: a tap belongs to the CTA stretched over the panel, and a play button in the
|
|
5801
|
+
* middle of a category slide would sit directly on that hit area.
|
|
5802
|
+
*
|
|
5803
|
+
* **Playback follows visibility.** The shop entry is five full-screen panels, so a naive
|
|
5804
|
+
* page decodes five simultaneous streams for four panels nobody is looking at. Each clip
|
|
5805
|
+
* starts when its panel comes into view and pauses when it leaves, which keeps one video
|
|
5806
|
+
* decoding at a time. Fetching is deferred the same way: `preload="none"` until the
|
|
5807
|
+
* observer fires, so a fan who never scrolls past the hero pays for the hero alone.
|
|
5808
|
+
*
|
|
5809
|
+
* **Reduced motion is honoured by not playing at all.** Autoplaying background video is
|
|
5810
|
+
* exactly what the preference is about, and there is a good still to fall back to — the
|
|
5811
|
+
* poster is frame 0 of the clip, so the panel is the design's own opening frame rather
|
|
5812
|
+
* than an empty box. The preference is read live rather than once: a fan can change it
|
|
5813
|
+
* while the page is open, and on iOS it changes with the low-power setting.
|
|
5814
|
+
*/
|
|
5815
|
+
export declare function ShopVideo({ src, poster, fill, className, style, priority, }: ShopVideoProps): JSX.Element;
|
|
5816
|
+
|
|
5817
|
+
export declare interface ShopVideoProps {
|
|
5818
|
+
src: string;
|
|
5819
|
+
/**
|
|
5820
|
+
* Still shown until the first frame decodes, and the only thing shown when motion is
|
|
5821
|
+
* reduced. Cut from frame 0 of `src` so there is no jump when playback starts.
|
|
5822
|
+
*/
|
|
5823
|
+
poster?: string;
|
|
5824
|
+
/**
|
|
5825
|
+
* Fill the positioned ancestor, as `ShopImage`'s `fill` does. The parent must be
|
|
5826
|
+
* `position: relative` (or absolute/fixed) — same requirement, same reason.
|
|
5827
|
+
*/
|
|
5828
|
+
fill?: boolean;
|
|
5829
|
+
className?: string;
|
|
5830
|
+
style?: CSSProperties;
|
|
5831
|
+
/**
|
|
5832
|
+
* Above the fold. Fetches the file immediately instead of waiting for the panel to come
|
|
5833
|
+
* into view. One video per screen should carry this; the rest should not.
|
|
5834
|
+
*/
|
|
5835
|
+
priority?: boolean;
|
|
5836
|
+
}
|
|
5837
|
+
|
|
5772
5838
|
/**
|
|
5773
5839
|
* Sizing help, shown in the PDP "Size guide" overlay (Figma `size-guide`, 4882:58365).
|
|
5774
5840
|
*
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useContext, useEffect, useState, useRef, useCallback, useMemo, createContext, forwardRef } from "react";
|
|
3
|
+
import { useContext, useEffect, useState, useRef, useCallback, useMemo, createContext, forwardRef, Fragment as Fragment$1 } from "react";
|
|
4
4
|
var client = {};
|
|
5
5
|
var catalog = {};
|
|
6
6
|
var zod = {};
|
|
@@ -4392,6 +4392,7 @@ function requireContent() {
|
|
|
4392
4392
|
cta: zod_1.z.string().min(1),
|
|
4393
4393
|
target: zod_1.z.string().min(1).optional(),
|
|
4394
4394
|
image: zod_1.z.string().min(1).optional(),
|
|
4395
|
+
video: zod_1.z.string().min(1).optional(),
|
|
4395
4396
|
focal_y: zod_1.z.number().int().min(0).max(100).optional()
|
|
4396
4397
|
});
|
|
4397
4398
|
exports.HomeContent = zod_1.z.object({
|
|
@@ -4673,7 +4674,8 @@ function requireOrderTracking() {
|
|
|
4673
4674
|
image: common_1.Url.optional(),
|
|
4674
4675
|
attributes: common_1.Attributes.optional(),
|
|
4675
4676
|
cancelled_qty: zod_1.z.number().int().nonnegative(),
|
|
4676
|
-
refunded_qty: zod_1.z.number().int().nonnegative()
|
|
4677
|
+
refunded_qty: zod_1.z.number().int().nonnegative(),
|
|
4678
|
+
returned_qty: zod_1.z.number().int().nonnegative().optional()
|
|
4677
4679
|
});
|
|
4678
4680
|
exports.OrderSummaryItem = zod_1.z.object({
|
|
4679
4681
|
order_ref: ids_1.OrderRef,
|
|
@@ -5338,6 +5340,64 @@ function ShopImage({ src, alt, fill: fill2 = false, width, height, sizes, classN
|
|
|
5338
5340
|
fetchPriority: priority ? "high" : void 0
|
|
5339
5341
|
});
|
|
5340
5342
|
}
|
|
5343
|
+
function ShopVideo({ src, poster, fill: fill2 = false, className, style, priority = false }) {
|
|
5344
|
+
const assetUrl = useAssetUrl();
|
|
5345
|
+
const ref = useRef(null);
|
|
5346
|
+
useEffect(() => {
|
|
5347
|
+
const el = ref.current;
|
|
5348
|
+
if (!el || typeof IntersectionObserver === "undefined") return;
|
|
5349
|
+
const reduced = window.matchMedia?.("(prefers-reduced-motion: reduce)");
|
|
5350
|
+
const play = () => {
|
|
5351
|
+
if (reduced?.matches) {
|
|
5352
|
+
el.pause();
|
|
5353
|
+
return;
|
|
5354
|
+
}
|
|
5355
|
+
void el.play().catch(() => {
|
|
5356
|
+
});
|
|
5357
|
+
};
|
|
5358
|
+
const observer = new IntersectionObserver((entries) => {
|
|
5359
|
+
for (const entry of entries) {
|
|
5360
|
+
if (entry.isIntersecting) {
|
|
5361
|
+
if (el.preload === "none") el.preload = "auto";
|
|
5362
|
+
play();
|
|
5363
|
+
} else {
|
|
5364
|
+
el.pause();
|
|
5365
|
+
}
|
|
5366
|
+
}
|
|
5367
|
+
}, {
|
|
5368
|
+
threshold: 0.25
|
|
5369
|
+
});
|
|
5370
|
+
observer.observe(el);
|
|
5371
|
+
reduced?.addEventListener("change", play);
|
|
5372
|
+
return () => {
|
|
5373
|
+
observer.disconnect();
|
|
5374
|
+
reduced?.removeEventListener("change", play);
|
|
5375
|
+
};
|
|
5376
|
+
}, []);
|
|
5377
|
+
const fillStyle = fill2 ? {
|
|
5378
|
+
position: "absolute",
|
|
5379
|
+
inset: 0,
|
|
5380
|
+
width: "100%",
|
|
5381
|
+
height: "100%"
|
|
5382
|
+
} : {};
|
|
5383
|
+
return jsx("video", {
|
|
5384
|
+
ref,
|
|
5385
|
+
src: assetUrl(src),
|
|
5386
|
+
poster: poster ? assetUrl(poster) : void 0,
|
|
5387
|
+
className,
|
|
5388
|
+
style: {
|
|
5389
|
+
...fillStyle,
|
|
5390
|
+
...style
|
|
5391
|
+
},
|
|
5392
|
+
autoPlay: true,
|
|
5393
|
+
loop: true,
|
|
5394
|
+
muted: true,
|
|
5395
|
+
playsInline: true,
|
|
5396
|
+
preload: priority ? "auto" : "none",
|
|
5397
|
+
"aria-hidden": true,
|
|
5398
|
+
tabIndex: -1
|
|
5399
|
+
});
|
|
5400
|
+
}
|
|
5341
5401
|
const badge$5 = "_badge_1bagf_1";
|
|
5342
5402
|
const neutral$1 = "_neutral_1bagf_12";
|
|
5343
5403
|
const success$1 = "_success_1bagf_17";
|
|
@@ -5555,7 +5615,6 @@ const ES = {
|
|
|
5555
5615
|
"Close size guide": "Cerrar la guía de tallas",
|
|
5556
5616
|
Color: "Color",
|
|
5557
5617
|
"Color:": "Color:",
|
|
5558
|
-
"Complete the look with everyday essentials and finishing details": "Completa tu look con básicos para el día a día y detalles que marcan la diferencia",
|
|
5559
5618
|
"Continue shopping": "Seguir comprando",
|
|
5560
5619
|
DAZN: "DAZN",
|
|
5561
5620
|
"DAZN Shop": "Tienda DAZN",
|
|
@@ -5618,7 +5677,6 @@ const ES = {
|
|
|
5618
5677
|
"Shipping address": "Dirección de envío",
|
|
5619
5678
|
"Shipping and returns": "Envíos y devoluciones",
|
|
5620
5679
|
"Shop menu": "Menú de la tienda",
|
|
5621
|
-
"Shop now": "Comprar ahora",
|
|
5622
5680
|
Size: "Talla",
|
|
5623
5681
|
"Size guide": "Guía de tallas",
|
|
5624
5682
|
"Something looks off": "Algo no va bien",
|
|
@@ -5626,6 +5684,7 @@ const ES = {
|
|
|
5626
5684
|
"Standard or express delivery": "Envío estándar o urgente",
|
|
5627
5685
|
Subtotal: "Subtotal",
|
|
5628
5686
|
"Swipe down for more": "Desliza hacia abajo para ver más",
|
|
5687
|
+
"The DAZN Shop collection": "La colección de DAZN Shop",
|
|
5629
5688
|
"T-Shirts": "Camisetas",
|
|
5630
5689
|
Tax: "Impuestos",
|
|
5631
5690
|
"That is not possible right now": "Eso no es posible en este momento",
|
|
@@ -6937,15 +6996,18 @@ const RETURN_REASONS = [{
|
|
|
6937
6996
|
label: "Changed my mind"
|
|
6938
6997
|
}];
|
|
6939
6998
|
const REASON_LABEL = new Map(RETURN_REASONS.map((r) => [r.value, r.label]));
|
|
6999
|
+
function unitsLeft(item2) {
|
|
7000
|
+
return item2.qty - item2.cancelled_qty - item2.refunded_qty - (item2.returned_qty ?? 0);
|
|
7001
|
+
}
|
|
6940
7002
|
function ReturnItemsView({ order, onSubmit, busy = false }) {
|
|
6941
7003
|
const { format } = useMoney();
|
|
6942
7004
|
const [chosen, setChosen] = useState({});
|
|
6943
7005
|
const [reasonFor, setReasonFor] = useState(null);
|
|
6944
|
-
const returnable = useMemo(() => order.items.filter((i) => i
|
|
7006
|
+
const returnable = useMemo(() => order.items.filter((i) => unitsLeft(i) > 0), [order.items]);
|
|
6945
7007
|
const selected2 = Object.entries(chosen).filter(([, reason2]) => reason2 !== void 0);
|
|
6946
7008
|
const canSubmit = selected2.length > 0;
|
|
6947
7009
|
function remaining(item2) {
|
|
6948
|
-
return item2
|
|
7010
|
+
return unitsLeft(item2);
|
|
6949
7011
|
}
|
|
6950
7012
|
function toggle2(lineRef) {
|
|
6951
7013
|
if (lineRef in chosen) {
|
|
@@ -10601,29 +10663,28 @@ function ProductView({ sku, initialData, showRecommendations = true, onNotFound
|
|
|
10601
10663
|
}
|
|
10602
10664
|
return unavailable;
|
|
10603
10665
|
}
|
|
10604
|
-
const showcase = "
|
|
10605
|
-
const panel = "
|
|
10606
|
-
const image = "
|
|
10607
|
-
const
|
|
10608
|
-
const
|
|
10609
|
-
const
|
|
10610
|
-
const
|
|
10611
|
-
const
|
|
10612
|
-
const
|
|
10613
|
-
const
|
|
10614
|
-
const
|
|
10615
|
-
const
|
|
10616
|
-
const
|
|
10617
|
-
const
|
|
10618
|
-
const
|
|
10619
|
-
const
|
|
10620
|
-
const
|
|
10621
|
-
const
|
|
10666
|
+
const showcase = "_showcase_144lm_44";
|
|
10667
|
+
const panel = "_panel_144lm_48";
|
|
10668
|
+
const image = "_image_144lm_76";
|
|
10669
|
+
const hero = "_hero_144lm_116";
|
|
10670
|
+
const heroContent = "_heroContent_144lm_174";
|
|
10671
|
+
const heroText = "_heroText_144lm_197";
|
|
10672
|
+
const logo = "_logo_144lm_206";
|
|
10673
|
+
const heroTitle = "_heroTitle_144lm_226";
|
|
10674
|
+
const heroSub = "_heroSub_144lm_250";
|
|
10675
|
+
const swipe = "_swipe_144lm_269";
|
|
10676
|
+
const swipeLabel = "_swipeLabel_144lm_276";
|
|
10677
|
+
const chevron$1 = "_chevron_144lm_282";
|
|
10678
|
+
const overlay$1 = "_overlay_144lm_11";
|
|
10679
|
+
const copy = "_copy_144lm_315";
|
|
10680
|
+
const title$2 = "_title_144lm_320";
|
|
10681
|
+
const subtitle$1 = "_subtitle_144lm_327";
|
|
10682
|
+
const cta = "_cta_144lm_333";
|
|
10683
|
+
const mosaic = "_mosaic_144lm_377";
|
|
10622
10684
|
const styles$2 = {
|
|
10623
10685
|
showcase,
|
|
10624
10686
|
panel,
|
|
10625
10687
|
image,
|
|
10626
|
-
heroImageBox,
|
|
10627
10688
|
hero,
|
|
10628
10689
|
heroContent,
|
|
10629
10690
|
heroText,
|
|
@@ -10637,7 +10698,8 @@ const styles$2 = {
|
|
|
10637
10698
|
copy,
|
|
10638
10699
|
title: title$2,
|
|
10639
10700
|
subtitle: subtitle$1,
|
|
10640
|
-
cta
|
|
10701
|
+
cta,
|
|
10702
|
+
mosaic
|
|
10641
10703
|
};
|
|
10642
10704
|
const SETTLE_MS = 150;
|
|
10643
10705
|
function useDocumentSnap(ref, enabled = true) {
|
|
@@ -10670,40 +10732,29 @@ function useDocumentSnap(ref, enabled = true) {
|
|
|
10670
10732
|
}, [ref, enabled]);
|
|
10671
10733
|
}
|
|
10672
10734
|
const FALLBACK_PANELS = [{
|
|
10673
|
-
key: "all-items",
|
|
10674
|
-
title: "All items",
|
|
10675
|
-
subtitle: "Heavyweight comfort built for training days and off-duty moments",
|
|
10676
|
-
cta: "See more",
|
|
10677
|
-
to: "/category/t-shirts",
|
|
10678
|
-
image: "/figma/home/new.jpg"
|
|
10679
|
-
}, {
|
|
10680
10735
|
key: "hoodies",
|
|
10681
10736
|
title: "Hoodies",
|
|
10682
10737
|
subtitle: "Heavyweight comfort built for training days and off-duty moments",
|
|
10683
10738
|
cta: "See more",
|
|
10684
10739
|
to: "/category/hoodies",
|
|
10685
|
-
|
|
10740
|
+
video: "/figma/home/hoodies.mp4",
|
|
10741
|
+
image: "/figma/home/hoodies-poster.jpg"
|
|
10742
|
+
}, {
|
|
10743
|
+
key: "zip-ups",
|
|
10744
|
+
title: "Zip Ups",
|
|
10745
|
+
subtitle: "Everyday essentials with sport-inspired fits and minimal branding",
|
|
10746
|
+
cta: "See more",
|
|
10747
|
+
to: "/category/zip-ups",
|
|
10748
|
+
video: "/figma/home/zip-ups.mp4",
|
|
10749
|
+
image: "/figma/home/zip-ups-poster.jpg"
|
|
10686
10750
|
}, {
|
|
10687
10751
|
key: "t-shirts",
|
|
10688
10752
|
title: "T-Shirts",
|
|
10689
10753
|
subtitle: "Everyday essentials with sport-inspired fits and minimal branding",
|
|
10690
|
-
cta: "Explore",
|
|
10691
|
-
to: "/category/t-shirts",
|
|
10692
|
-
image: "/figma/home/tshirts.jpg"
|
|
10693
|
-
}, {
|
|
10694
|
-
key: "jackets",
|
|
10695
|
-
title: "Jackets",
|
|
10696
|
-
subtitle: "Heavyweight comfort built for training days and off-duty moments",
|
|
10697
10754
|
cta: "See more",
|
|
10698
|
-
to: "/category/
|
|
10699
|
-
|
|
10700
|
-
|
|
10701
|
-
key: "seasonal",
|
|
10702
|
-
title: "Seasonal",
|
|
10703
|
-
subtitle: "Complete the look with everyday essentials and finishing details",
|
|
10704
|
-
cta: "Shop now",
|
|
10705
|
-
to: "/category/summer",
|
|
10706
|
-
image: "/figma/home/accessories.jpg"
|
|
10755
|
+
to: "/category/t-shirts",
|
|
10756
|
+
video: "/figma/home/tshirts.mp4",
|
|
10757
|
+
image: "/figma/home/tshirts-poster.jpg"
|
|
10707
10758
|
}];
|
|
10708
10759
|
function CategoryPanel({ panel: panel2 }) {
|
|
10709
10760
|
return jsxs("section", {
|
|
@@ -10714,7 +10765,12 @@ function CategoryPanel({ panel: panel2 }) {
|
|
|
10714
10765
|
"--slide-focal-y": `${panel2.focalY}%`
|
|
10715
10766
|
}
|
|
10716
10767
|
},
|
|
10717
|
-
children: [jsx(
|
|
10768
|
+
children: [panel2.video ? jsx(ShopVideo, {
|
|
10769
|
+
src: panel2.video,
|
|
10770
|
+
poster: panel2.image,
|
|
10771
|
+
fill: true,
|
|
10772
|
+
className: styles$2.image
|
|
10773
|
+
}) : jsx(ShopImage, {
|
|
10718
10774
|
src: panel2.image,
|
|
10719
10775
|
alt: "",
|
|
10720
10776
|
fill: true,
|
|
@@ -10740,6 +10796,19 @@ function CategoryPanel({ panel: panel2 }) {
|
|
|
10740
10796
|
})]
|
|
10741
10797
|
});
|
|
10742
10798
|
}
|
|
10799
|
+
function MosaicPanel() {
|
|
10800
|
+
const t = useT();
|
|
10801
|
+
return jsx("section", {
|
|
10802
|
+
className: `${styles$2.panel} ${styles$2.mosaic}`,
|
|
10803
|
+
"aria-label": t("The DAZN Shop collection"),
|
|
10804
|
+
children: jsx(ShopVideo, {
|
|
10805
|
+
src: "/figma/home/mosaic.mp4",
|
|
10806
|
+
poster: "/figma/home/mosaic-poster.jpg",
|
|
10807
|
+
fill: true,
|
|
10808
|
+
className: styles$2.image
|
|
10809
|
+
})
|
|
10810
|
+
});
|
|
10811
|
+
}
|
|
10743
10812
|
function useSlides() {
|
|
10744
10813
|
const t = useT();
|
|
10745
10814
|
const shop = useShopOptional();
|
|
@@ -10763,6 +10832,9 @@ function useSlides() {
|
|
|
10763
10832
|
cta: s.cta,
|
|
10764
10833
|
to: s.target ? `/category/${s.target}` : "/",
|
|
10765
10834
|
image: s.image ?? "",
|
|
10835
|
+
...s.video === void 0 ? {} : {
|
|
10836
|
+
video: s.video
|
|
10837
|
+
},
|
|
10766
10838
|
...s.focal_y === void 0 ? {} : {
|
|
10767
10839
|
focalY: s.focal_y
|
|
10768
10840
|
}
|
|
@@ -10790,16 +10862,12 @@ function HomeShowcase() {
|
|
|
10790
10862
|
children: [jsxs("section", {
|
|
10791
10863
|
className: `${styles$2.panel} ${styles$2.hero}`,
|
|
10792
10864
|
"aria-label": t("DAZN Shop"),
|
|
10793
|
-
children: [jsx(
|
|
10794
|
-
|
|
10795
|
-
|
|
10796
|
-
|
|
10797
|
-
|
|
10798
|
-
|
|
10799
|
-
priority: true,
|
|
10800
|
-
sizes: "(max-width: 480px) 100vw, 480px",
|
|
10801
|
-
className: styles$2.image
|
|
10802
|
-
})
|
|
10865
|
+
children: [jsx(ShopVideo, {
|
|
10866
|
+
src: "/figma/home/hero.mp4",
|
|
10867
|
+
poster: "/figma/home/hero-poster.jpg",
|
|
10868
|
+
fill: true,
|
|
10869
|
+
priority: true,
|
|
10870
|
+
className: styles$2.image
|
|
10803
10871
|
}), jsxs("div", {
|
|
10804
10872
|
className: styles$2.heroContent,
|
|
10805
10873
|
children: [jsxs("div", {
|
|
@@ -10835,9 +10903,11 @@ function HomeShowcase() {
|
|
|
10835
10903
|
})]
|
|
10836
10904
|
})]
|
|
10837
10905
|
})]
|
|
10838
|
-
}), panels.map((p) =>
|
|
10839
|
-
|
|
10840
|
-
|
|
10906
|
+
}), panels.map((p, i) => jsxs(Fragment$1, {
|
|
10907
|
+
children: [jsx(CategoryPanel, {
|
|
10908
|
+
panel: p
|
|
10909
|
+
}), i === 0 && jsx(MosaicPanel, {})]
|
|
10910
|
+
}, p.key)), panels.length === 0 && jsx(MosaicPanel, {})]
|
|
10841
10911
|
})
|
|
10842
10912
|
});
|
|
10843
10913
|
}
|
|
@@ -11353,6 +11423,7 @@ export {
|
|
|
11353
11423
|
ShopLink,
|
|
11354
11424
|
ShopMenuSheet,
|
|
11355
11425
|
ShopSurface,
|
|
11426
|
+
ShopVideo,
|
|
11356
11427
|
SizeGuideSheet,
|
|
11357
11428
|
SizeSelector,
|
|
11358
11429
|
Skeleton,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useContext, useEffect, useState, useRef, useCallback, useMemo, createContext, forwardRef } from "react";
|
|
3
|
+
import { useContext, useEffect, useState, useRef, useCallback, useMemo, createContext, forwardRef, Fragment as Fragment$1 } from "react";
|
|
4
4
|
var client = {};
|
|
5
5
|
var catalog = {};
|
|
6
6
|
var zod = {};
|
|
@@ -4392,6 +4392,7 @@ function requireContent() {
|
|
|
4392
4392
|
cta: zod_1.z.string().min(1),
|
|
4393
4393
|
target: zod_1.z.string().min(1).optional(),
|
|
4394
4394
|
image: zod_1.z.string().min(1).optional(),
|
|
4395
|
+
video: zod_1.z.string().min(1).optional(),
|
|
4395
4396
|
focal_y: zod_1.z.number().int().min(0).max(100).optional()
|
|
4396
4397
|
});
|
|
4397
4398
|
exports.HomeContent = zod_1.z.object({
|
|
@@ -4673,7 +4674,8 @@ function requireOrderTracking() {
|
|
|
4673
4674
|
image: common_1.Url.optional(),
|
|
4674
4675
|
attributes: common_1.Attributes.optional(),
|
|
4675
4676
|
cancelled_qty: zod_1.z.number().int().nonnegative(),
|
|
4676
|
-
refunded_qty: zod_1.z.number().int().nonnegative()
|
|
4677
|
+
refunded_qty: zod_1.z.number().int().nonnegative(),
|
|
4678
|
+
returned_qty: zod_1.z.number().int().nonnegative().optional()
|
|
4677
4679
|
});
|
|
4678
4680
|
exports.OrderSummaryItem = zod_1.z.object({
|
|
4679
4681
|
order_ref: ids_1.OrderRef,
|
|
@@ -5338,6 +5340,64 @@ function ShopImage({ src, alt, fill: fill2 = false, width, height, sizes, classN
|
|
|
5338
5340
|
fetchPriority: priority ? "high" : void 0
|
|
5339
5341
|
});
|
|
5340
5342
|
}
|
|
5343
|
+
function ShopVideo({ src, poster, fill: fill2 = false, className, style, priority = false }) {
|
|
5344
|
+
const assetUrl = useAssetUrl();
|
|
5345
|
+
const ref = useRef(null);
|
|
5346
|
+
useEffect(() => {
|
|
5347
|
+
const el = ref.current;
|
|
5348
|
+
if (!el || typeof IntersectionObserver === "undefined") return;
|
|
5349
|
+
const reduced = window.matchMedia?.("(prefers-reduced-motion: reduce)");
|
|
5350
|
+
const play = () => {
|
|
5351
|
+
if (reduced?.matches) {
|
|
5352
|
+
el.pause();
|
|
5353
|
+
return;
|
|
5354
|
+
}
|
|
5355
|
+
void el.play().catch(() => {
|
|
5356
|
+
});
|
|
5357
|
+
};
|
|
5358
|
+
const observer = new IntersectionObserver((entries) => {
|
|
5359
|
+
for (const entry of entries) {
|
|
5360
|
+
if (entry.isIntersecting) {
|
|
5361
|
+
if (el.preload === "none") el.preload = "auto";
|
|
5362
|
+
play();
|
|
5363
|
+
} else {
|
|
5364
|
+
el.pause();
|
|
5365
|
+
}
|
|
5366
|
+
}
|
|
5367
|
+
}, {
|
|
5368
|
+
threshold: 0.25
|
|
5369
|
+
});
|
|
5370
|
+
observer.observe(el);
|
|
5371
|
+
reduced?.addEventListener("change", play);
|
|
5372
|
+
return () => {
|
|
5373
|
+
observer.disconnect();
|
|
5374
|
+
reduced?.removeEventListener("change", play);
|
|
5375
|
+
};
|
|
5376
|
+
}, []);
|
|
5377
|
+
const fillStyle = fill2 ? {
|
|
5378
|
+
position: "absolute",
|
|
5379
|
+
inset: 0,
|
|
5380
|
+
width: "100%",
|
|
5381
|
+
height: "100%"
|
|
5382
|
+
} : {};
|
|
5383
|
+
return jsx("video", {
|
|
5384
|
+
ref,
|
|
5385
|
+
src: assetUrl(src),
|
|
5386
|
+
poster: poster ? assetUrl(poster) : void 0,
|
|
5387
|
+
className,
|
|
5388
|
+
style: {
|
|
5389
|
+
...fillStyle,
|
|
5390
|
+
...style
|
|
5391
|
+
},
|
|
5392
|
+
autoPlay: true,
|
|
5393
|
+
loop: true,
|
|
5394
|
+
muted: true,
|
|
5395
|
+
playsInline: true,
|
|
5396
|
+
preload: priority ? "auto" : "none",
|
|
5397
|
+
"aria-hidden": true,
|
|
5398
|
+
tabIndex: -1
|
|
5399
|
+
});
|
|
5400
|
+
}
|
|
5341
5401
|
const badge$5 = "_badge_1bagf_1";
|
|
5342
5402
|
const neutral$1 = "_neutral_1bagf_12";
|
|
5343
5403
|
const success$1 = "_success_1bagf_17";
|
|
@@ -5555,7 +5615,6 @@ const ES = {
|
|
|
5555
5615
|
"Close size guide": "Cerrar la guía de tallas",
|
|
5556
5616
|
Color: "Color",
|
|
5557
5617
|
"Color:": "Color:",
|
|
5558
|
-
"Complete the look with everyday essentials and finishing details": "Completa tu look con básicos para el día a día y detalles que marcan la diferencia",
|
|
5559
5618
|
"Continue shopping": "Seguir comprando",
|
|
5560
5619
|
DAZN: "DAZN",
|
|
5561
5620
|
"DAZN Shop": "Tienda DAZN",
|
|
@@ -5618,7 +5677,6 @@ const ES = {
|
|
|
5618
5677
|
"Shipping address": "Dirección de envío",
|
|
5619
5678
|
"Shipping and returns": "Envíos y devoluciones",
|
|
5620
5679
|
"Shop menu": "Menú de la tienda",
|
|
5621
|
-
"Shop now": "Comprar ahora",
|
|
5622
5680
|
Size: "Talla",
|
|
5623
5681
|
"Size guide": "Guía de tallas",
|
|
5624
5682
|
"Something looks off": "Algo no va bien",
|
|
@@ -5626,6 +5684,7 @@ const ES = {
|
|
|
5626
5684
|
"Standard or express delivery": "Envío estándar o urgente",
|
|
5627
5685
|
Subtotal: "Subtotal",
|
|
5628
5686
|
"Swipe down for more": "Desliza hacia abajo para ver más",
|
|
5687
|
+
"The DAZN Shop collection": "La colección de DAZN Shop",
|
|
5629
5688
|
"T-Shirts": "Camisetas",
|
|
5630
5689
|
Tax: "Impuestos",
|
|
5631
5690
|
"That is not possible right now": "Eso no es posible en este momento",
|
|
@@ -6937,15 +6996,18 @@ const RETURN_REASONS = [{
|
|
|
6937
6996
|
label: "Changed my mind"
|
|
6938
6997
|
}];
|
|
6939
6998
|
const REASON_LABEL = new Map(RETURN_REASONS.map((r) => [r.value, r.label]));
|
|
6999
|
+
function unitsLeft(item2) {
|
|
7000
|
+
return item2.qty - item2.cancelled_qty - item2.refunded_qty - (item2.returned_qty ?? 0);
|
|
7001
|
+
}
|
|
6940
7002
|
function ReturnItemsView({ order, onSubmit, busy = false }) {
|
|
6941
7003
|
const { format } = useMoney();
|
|
6942
7004
|
const [chosen, setChosen] = useState({});
|
|
6943
7005
|
const [reasonFor, setReasonFor] = useState(null);
|
|
6944
|
-
const returnable = useMemo(() => order.items.filter((i) => i
|
|
7006
|
+
const returnable = useMemo(() => order.items.filter((i) => unitsLeft(i) > 0), [order.items]);
|
|
6945
7007
|
const selected2 = Object.entries(chosen).filter(([, reason2]) => reason2 !== void 0);
|
|
6946
7008
|
const canSubmit = selected2.length > 0;
|
|
6947
7009
|
function remaining(item2) {
|
|
6948
|
-
return item2
|
|
7010
|
+
return unitsLeft(item2);
|
|
6949
7011
|
}
|
|
6950
7012
|
function toggle2(lineRef) {
|
|
6951
7013
|
if (lineRef in chosen) {
|
|
@@ -10601,29 +10663,28 @@ function ProductView({ sku, initialData, showRecommendations = true, onNotFound
|
|
|
10601
10663
|
}
|
|
10602
10664
|
return unavailable;
|
|
10603
10665
|
}
|
|
10604
|
-
const showcase = "
|
|
10605
|
-
const panel = "
|
|
10606
|
-
const image = "
|
|
10607
|
-
const
|
|
10608
|
-
const
|
|
10609
|
-
const
|
|
10610
|
-
const
|
|
10611
|
-
const
|
|
10612
|
-
const
|
|
10613
|
-
const
|
|
10614
|
-
const
|
|
10615
|
-
const
|
|
10616
|
-
const
|
|
10617
|
-
const
|
|
10618
|
-
const
|
|
10619
|
-
const
|
|
10620
|
-
const
|
|
10621
|
-
const
|
|
10666
|
+
const showcase = "_showcase_144lm_44";
|
|
10667
|
+
const panel = "_panel_144lm_48";
|
|
10668
|
+
const image = "_image_144lm_76";
|
|
10669
|
+
const hero = "_hero_144lm_116";
|
|
10670
|
+
const heroContent = "_heroContent_144lm_174";
|
|
10671
|
+
const heroText = "_heroText_144lm_197";
|
|
10672
|
+
const logo = "_logo_144lm_206";
|
|
10673
|
+
const heroTitle = "_heroTitle_144lm_226";
|
|
10674
|
+
const heroSub = "_heroSub_144lm_250";
|
|
10675
|
+
const swipe = "_swipe_144lm_269";
|
|
10676
|
+
const swipeLabel = "_swipeLabel_144lm_276";
|
|
10677
|
+
const chevron$1 = "_chevron_144lm_282";
|
|
10678
|
+
const overlay$1 = "_overlay_144lm_11";
|
|
10679
|
+
const copy = "_copy_144lm_315";
|
|
10680
|
+
const title$2 = "_title_144lm_320";
|
|
10681
|
+
const subtitle$1 = "_subtitle_144lm_327";
|
|
10682
|
+
const cta = "_cta_144lm_333";
|
|
10683
|
+
const mosaic = "_mosaic_144lm_377";
|
|
10622
10684
|
const styles$2 = {
|
|
10623
10685
|
showcase,
|
|
10624
10686
|
panel,
|
|
10625
10687
|
image,
|
|
10626
|
-
heroImageBox,
|
|
10627
10688
|
hero,
|
|
10628
10689
|
heroContent,
|
|
10629
10690
|
heroText,
|
|
@@ -10637,7 +10698,8 @@ const styles$2 = {
|
|
|
10637
10698
|
copy,
|
|
10638
10699
|
title: title$2,
|
|
10639
10700
|
subtitle: subtitle$1,
|
|
10640
|
-
cta
|
|
10701
|
+
cta,
|
|
10702
|
+
mosaic
|
|
10641
10703
|
};
|
|
10642
10704
|
const SETTLE_MS = 150;
|
|
10643
10705
|
function useDocumentSnap(ref, enabled = true) {
|
|
@@ -10670,40 +10732,29 @@ function useDocumentSnap(ref, enabled = true) {
|
|
|
10670
10732
|
}, [ref, enabled]);
|
|
10671
10733
|
}
|
|
10672
10734
|
const FALLBACK_PANELS = [{
|
|
10673
|
-
key: "all-items",
|
|
10674
|
-
title: "All items",
|
|
10675
|
-
subtitle: "Heavyweight comfort built for training days and off-duty moments",
|
|
10676
|
-
cta: "See more",
|
|
10677
|
-
to: "/category/t-shirts",
|
|
10678
|
-
image: "/figma/home/new.jpg"
|
|
10679
|
-
}, {
|
|
10680
10735
|
key: "hoodies",
|
|
10681
10736
|
title: "Hoodies",
|
|
10682
10737
|
subtitle: "Heavyweight comfort built for training days and off-duty moments",
|
|
10683
10738
|
cta: "See more",
|
|
10684
10739
|
to: "/category/hoodies",
|
|
10685
|
-
|
|
10740
|
+
video: "/figma/home/hoodies.mp4",
|
|
10741
|
+
image: "/figma/home/hoodies-poster.jpg"
|
|
10742
|
+
}, {
|
|
10743
|
+
key: "zip-ups",
|
|
10744
|
+
title: "Zip Ups",
|
|
10745
|
+
subtitle: "Everyday essentials with sport-inspired fits and minimal branding",
|
|
10746
|
+
cta: "See more",
|
|
10747
|
+
to: "/category/zip-ups",
|
|
10748
|
+
video: "/figma/home/zip-ups.mp4",
|
|
10749
|
+
image: "/figma/home/zip-ups-poster.jpg"
|
|
10686
10750
|
}, {
|
|
10687
10751
|
key: "t-shirts",
|
|
10688
10752
|
title: "T-Shirts",
|
|
10689
10753
|
subtitle: "Everyday essentials with sport-inspired fits and minimal branding",
|
|
10690
|
-
cta: "Explore",
|
|
10691
|
-
to: "/category/t-shirts",
|
|
10692
|
-
image: "/figma/home/tshirts.jpg"
|
|
10693
|
-
}, {
|
|
10694
|
-
key: "jackets",
|
|
10695
|
-
title: "Jackets",
|
|
10696
|
-
subtitle: "Heavyweight comfort built for training days and off-duty moments",
|
|
10697
10754
|
cta: "See more",
|
|
10698
|
-
to: "/category/
|
|
10699
|
-
|
|
10700
|
-
|
|
10701
|
-
key: "seasonal",
|
|
10702
|
-
title: "Seasonal",
|
|
10703
|
-
subtitle: "Complete the look with everyday essentials and finishing details",
|
|
10704
|
-
cta: "Shop now",
|
|
10705
|
-
to: "/category/summer",
|
|
10706
|
-
image: "/figma/home/accessories.jpg"
|
|
10755
|
+
to: "/category/t-shirts",
|
|
10756
|
+
video: "/figma/home/tshirts.mp4",
|
|
10757
|
+
image: "/figma/home/tshirts-poster.jpg"
|
|
10707
10758
|
}];
|
|
10708
10759
|
function CategoryPanel({ panel: panel2 }) {
|
|
10709
10760
|
return jsxs("section", {
|
|
@@ -10714,7 +10765,12 @@ function CategoryPanel({ panel: panel2 }) {
|
|
|
10714
10765
|
"--slide-focal-y": `${panel2.focalY}%`
|
|
10715
10766
|
}
|
|
10716
10767
|
},
|
|
10717
|
-
children: [jsx(
|
|
10768
|
+
children: [panel2.video ? jsx(ShopVideo, {
|
|
10769
|
+
src: panel2.video,
|
|
10770
|
+
poster: panel2.image,
|
|
10771
|
+
fill: true,
|
|
10772
|
+
className: styles$2.image
|
|
10773
|
+
}) : jsx(ShopImage, {
|
|
10718
10774
|
src: panel2.image,
|
|
10719
10775
|
alt: "",
|
|
10720
10776
|
fill: true,
|
|
@@ -10740,6 +10796,19 @@ function CategoryPanel({ panel: panel2 }) {
|
|
|
10740
10796
|
})]
|
|
10741
10797
|
});
|
|
10742
10798
|
}
|
|
10799
|
+
function MosaicPanel() {
|
|
10800
|
+
const t = useT();
|
|
10801
|
+
return jsx("section", {
|
|
10802
|
+
className: `${styles$2.panel} ${styles$2.mosaic}`,
|
|
10803
|
+
"aria-label": t("The DAZN Shop collection"),
|
|
10804
|
+
children: jsx(ShopVideo, {
|
|
10805
|
+
src: "/figma/home/mosaic.mp4",
|
|
10806
|
+
poster: "/figma/home/mosaic-poster.jpg",
|
|
10807
|
+
fill: true,
|
|
10808
|
+
className: styles$2.image
|
|
10809
|
+
})
|
|
10810
|
+
});
|
|
10811
|
+
}
|
|
10743
10812
|
function useSlides() {
|
|
10744
10813
|
const t = useT();
|
|
10745
10814
|
const shop = useShopOptional();
|
|
@@ -10763,6 +10832,9 @@ function useSlides() {
|
|
|
10763
10832
|
cta: s.cta,
|
|
10764
10833
|
to: s.target ? `/category/${s.target}` : "/",
|
|
10765
10834
|
image: s.image ?? "",
|
|
10835
|
+
...s.video === void 0 ? {} : {
|
|
10836
|
+
video: s.video
|
|
10837
|
+
},
|
|
10766
10838
|
...s.focal_y === void 0 ? {} : {
|
|
10767
10839
|
focalY: s.focal_y
|
|
10768
10840
|
}
|
|
@@ -10790,16 +10862,12 @@ function HomeShowcase() {
|
|
|
10790
10862
|
children: [jsxs("section", {
|
|
10791
10863
|
className: `${styles$2.panel} ${styles$2.hero}`,
|
|
10792
10864
|
"aria-label": t("DAZN Shop"),
|
|
10793
|
-
children: [jsx(
|
|
10794
|
-
|
|
10795
|
-
|
|
10796
|
-
|
|
10797
|
-
|
|
10798
|
-
|
|
10799
|
-
priority: true,
|
|
10800
|
-
sizes: "(max-width: 480px) 100vw, 480px",
|
|
10801
|
-
className: styles$2.image
|
|
10802
|
-
})
|
|
10865
|
+
children: [jsx(ShopVideo, {
|
|
10866
|
+
src: "/figma/home/hero.mp4",
|
|
10867
|
+
poster: "/figma/home/hero-poster.jpg",
|
|
10868
|
+
fill: true,
|
|
10869
|
+
priority: true,
|
|
10870
|
+
className: styles$2.image
|
|
10803
10871
|
}), jsxs("div", {
|
|
10804
10872
|
className: styles$2.heroContent,
|
|
10805
10873
|
children: [jsxs("div", {
|
|
@@ -10835,9 +10903,11 @@ function HomeShowcase() {
|
|
|
10835
10903
|
})]
|
|
10836
10904
|
})]
|
|
10837
10905
|
})]
|
|
10838
|
-
}), panels.map((p) =>
|
|
10839
|
-
|
|
10840
|
-
|
|
10906
|
+
}), panels.map((p, i) => jsxs(Fragment$1, {
|
|
10907
|
+
children: [jsx(CategoryPanel, {
|
|
10908
|
+
panel: p
|
|
10909
|
+
}), i === 0 && jsx(MosaicPanel, {})]
|
|
10910
|
+
}, p.key)), panels.length === 0 && jsx(MosaicPanel, {})]
|
|
10841
10911
|
})
|
|
10842
10912
|
});
|
|
10843
10913
|
}
|
|
@@ -11353,6 +11423,7 @@ export {
|
|
|
11353
11423
|
ShopLink,
|
|
11354
11424
|
ShopMenuSheet,
|
|
11355
11425
|
ShopSurface,
|
|
11426
|
+
ShopVideo,
|
|
11356
11427
|
SizeGuideSheet,
|
|
11357
11428
|
SizeSelector,
|
|
11358
11429
|
Skeleton,
|
|
@@ -3423,10 +3423,10 @@
|
|
|
3423
3423
|
column-gap: var(--space-12);
|
|
3424
3424
|
row-gap: var(--space-24);
|
|
3425
3425
|
}
|
|
3426
|
-
.
|
|
3426
|
+
._showcase_144lm_44 {
|
|
3427
3427
|
background: #080e12;
|
|
3428
3428
|
}
|
|
3429
|
-
.
|
|
3429
|
+
._panel_144lm_48 {
|
|
3430
3430
|
position: relative;
|
|
3431
3431
|
height: calc(100lvh - var(--showcase-top, 0px));
|
|
3432
3432
|
scroll-snap-align: start;
|
|
@@ -3434,39 +3434,28 @@
|
|
|
3434
3434
|
overflow: hidden;
|
|
3435
3435
|
background: #080e12;
|
|
3436
3436
|
}
|
|
3437
|
-
.
|
|
3437
|
+
._image_144lm_76 {
|
|
3438
3438
|
object-fit: cover;
|
|
3439
3439
|
object-position: 50% var(--slide-focal-y, 50%);
|
|
3440
3440
|
}
|
|
3441
|
-
.
|
|
3442
|
-
position: absolute;
|
|
3443
|
-
top: 31px;
|
|
3444
|
-
left: 0;
|
|
3445
|
-
right: 0;
|
|
3446
|
-
aspect-ratio: 750 / 1348;
|
|
3447
|
-
overflow: hidden;
|
|
3448
|
-
}
|
|
3449
|
-
._hero_a0wva_119::after {
|
|
3441
|
+
._hero_144lm_116::after {
|
|
3450
3442
|
content: "";
|
|
3451
3443
|
position: absolute;
|
|
3452
3444
|
inset: 0;
|
|
3453
3445
|
background:
|
|
3454
3446
|
linear-gradient(
|
|
3455
3447
|
to bottom,
|
|
3456
|
-
rgba(8, 14, 18,
|
|
3457
|
-
rgba(8, 14, 18, 0)
|
|
3448
|
+
rgba(8, 14, 18, 0.45) 118px,
|
|
3449
|
+
rgba(8, 14, 18, 0) 180px),
|
|
3458
3450
|
linear-gradient(
|
|
3459
|
-
to
|
|
3460
|
-
rgba(8, 14, 18, 0)
|
|
3461
|
-
rgba(8, 14, 18,
|
|
3451
|
+
to top,
|
|
3452
|
+
rgba(8, 14, 18, 0.6) 330px,
|
|
3453
|
+
rgba(8, 14, 18, 0) 520px);
|
|
3462
3454
|
pointer-events: none;
|
|
3463
3455
|
}
|
|
3464
|
-
.
|
|
3465
|
-
object-position: top;
|
|
3466
|
-
}
|
|
3467
|
-
._hero_a0wva_119 ._heroContent_a0wva_190 {
|
|
3456
|
+
._hero_144lm_116 ._heroContent_144lm_174 {
|
|
3468
3457
|
position: absolute;
|
|
3469
|
-
bottom:
|
|
3458
|
+
bottom: 32px;
|
|
3470
3459
|
left: 0;
|
|
3471
3460
|
right: 0;
|
|
3472
3461
|
z-index: 1;
|
|
@@ -3475,7 +3464,7 @@
|
|
|
3475
3464
|
gap: 24px;
|
|
3476
3465
|
align-items: stretch;
|
|
3477
3466
|
}
|
|
3478
|
-
.
|
|
3467
|
+
._heroText_144lm_197 {
|
|
3479
3468
|
display: flex;
|
|
3480
3469
|
flex-direction: column;
|
|
3481
3470
|
gap: 8px;
|
|
@@ -3483,11 +3472,11 @@
|
|
|
3483
3472
|
padding: 0 24px;
|
|
3484
3473
|
text-align: center;
|
|
3485
3474
|
}
|
|
3486
|
-
.
|
|
3475
|
+
._heroText_144lm_197 ._logo_144lm_206 {
|
|
3487
3476
|
width: 48px;
|
|
3488
3477
|
height: 48px;
|
|
3489
3478
|
}
|
|
3490
|
-
.
|
|
3479
|
+
._heroTitle_144lm_226 {
|
|
3491
3480
|
width: 100%;
|
|
3492
3481
|
margin: 0;
|
|
3493
3482
|
font-family:
|
|
@@ -3502,34 +3491,33 @@
|
|
|
3502
3491
|
letter-spacing: -1.12px;
|
|
3503
3492
|
color: #f9fafa;
|
|
3504
3493
|
}
|
|
3505
|
-
.
|
|
3494
|
+
._heroSub_144lm_250 {
|
|
3506
3495
|
margin: 0;
|
|
3507
3496
|
font-size: 16px;
|
|
3508
3497
|
line-height: 1.55;
|
|
3509
3498
|
color: #f9fafa;
|
|
3510
3499
|
max-width: 327px;
|
|
3511
3500
|
}
|
|
3512
|
-
.
|
|
3501
|
+
._swipe_144lm_269 {
|
|
3513
3502
|
display: flex;
|
|
3514
3503
|
flex-direction: column;
|
|
3515
3504
|
align-items: center;
|
|
3516
3505
|
gap: 6px;
|
|
3517
3506
|
padding: 8px 0;
|
|
3518
|
-
background: #080e12;
|
|
3519
3507
|
}
|
|
3520
|
-
.
|
|
3508
|
+
._swipeLabel_144lm_276 {
|
|
3521
3509
|
margin: 0;
|
|
3522
3510
|
font-size: 14px;
|
|
3523
3511
|
line-height: 1;
|
|
3524
3512
|
color: rgba(255, 255, 255, 0.54);
|
|
3525
3513
|
}
|
|
3526
|
-
.
|
|
3514
|
+
._chevron_144lm_282 {
|
|
3527
3515
|
width: 24px;
|
|
3528
3516
|
height: 24px;
|
|
3529
3517
|
color: rgba(255, 255, 255, 0.54);
|
|
3530
|
-
animation:
|
|
3518
|
+
animation: _bob_144lm_1 1.8s ease-in-out infinite;
|
|
3531
3519
|
}
|
|
3532
|
-
@keyframes
|
|
3520
|
+
@keyframes _bob_144lm_1 {
|
|
3533
3521
|
0%, 100% {
|
|
3534
3522
|
transform: translateY(0);
|
|
3535
3523
|
}
|
|
@@ -3537,10 +3525,15 @@
|
|
|
3537
3525
|
transform: translateY(4px);
|
|
3538
3526
|
}
|
|
3539
3527
|
}
|
|
3540
|
-
.
|
|
3528
|
+
._overlay_144lm_11 {
|
|
3541
3529
|
position: absolute;
|
|
3542
3530
|
inset: 0;
|
|
3543
3531
|
z-index: 1;
|
|
3532
|
+
background:
|
|
3533
|
+
linear-gradient(
|
|
3534
|
+
to top,
|
|
3535
|
+
rgba(8, 14, 18, 0.6) 260px,
|
|
3536
|
+
rgba(8, 14, 18, 0) 460px);
|
|
3544
3537
|
display: flex;
|
|
3545
3538
|
flex-direction: column;
|
|
3546
3539
|
justify-content: flex-end;
|
|
@@ -3548,25 +3541,25 @@
|
|
|
3548
3541
|
align-items: flex-start;
|
|
3549
3542
|
padding: 0 24px 24px;
|
|
3550
3543
|
}
|
|
3551
|
-
.
|
|
3544
|
+
._copy_144lm_315 {
|
|
3552
3545
|
display: flex;
|
|
3553
3546
|
flex-direction: column;
|
|
3554
3547
|
gap: 8px;
|
|
3555
3548
|
}
|
|
3556
|
-
.
|
|
3549
|
+
._title_144lm_320 {
|
|
3557
3550
|
margin: 0;
|
|
3558
3551
|
font-size: 32px;
|
|
3559
3552
|
line-height: 1.2;
|
|
3560
3553
|
font-weight: 700;
|
|
3561
3554
|
color: #f9fafa;
|
|
3562
3555
|
}
|
|
3563
|
-
.
|
|
3556
|
+
._subtitle_144lm_327 {
|
|
3564
3557
|
margin: 0;
|
|
3565
3558
|
font-size: 16px;
|
|
3566
3559
|
line-height: 1.55;
|
|
3567
3560
|
color: #f9fafa;
|
|
3568
3561
|
}
|
|
3569
|
-
.
|
|
3562
|
+
._cta_144lm_333 {
|
|
3570
3563
|
display: inline-flex;
|
|
3571
3564
|
align-items: center;
|
|
3572
3565
|
justify-content: center;
|
|
@@ -3580,18 +3573,21 @@
|
|
|
3580
3573
|
font-weight: 700;
|
|
3581
3574
|
text-decoration: none;
|
|
3582
3575
|
}
|
|
3583
|
-
.
|
|
3576
|
+
._cta_144lm_333::after {
|
|
3584
3577
|
content: "";
|
|
3585
3578
|
position: absolute;
|
|
3586
3579
|
inset: 0;
|
|
3587
3580
|
}
|
|
3588
|
-
.
|
|
3581
|
+
._cta_144lm_333:active {
|
|
3589
3582
|
background: rgba(249, 250, 250, 0.12);
|
|
3590
3583
|
}
|
|
3591
|
-
.
|
|
3584
|
+
._cta_144lm_333:focus-visible {
|
|
3592
3585
|
outline: none;
|
|
3593
3586
|
box-shadow: var(--focus-ring);
|
|
3594
3587
|
}
|
|
3588
|
+
._mosaic_144lm_377 {
|
|
3589
|
+
background: #080e12;
|
|
3590
|
+
}
|
|
3595
3591
|
._header_8o3d7_25 {
|
|
3596
3592
|
position: sticky;
|
|
3597
3593
|
top: 0;
|
package/dist/styles.css
CHANGED
|
@@ -3423,10 +3423,10 @@
|
|
|
3423
3423
|
column-gap: var(--space-12);
|
|
3424
3424
|
row-gap: var(--space-24);
|
|
3425
3425
|
}
|
|
3426
|
-
.
|
|
3426
|
+
._showcase_144lm_44 {
|
|
3427
3427
|
background: #080e12;
|
|
3428
3428
|
}
|
|
3429
|
-
.
|
|
3429
|
+
._panel_144lm_48 {
|
|
3430
3430
|
position: relative;
|
|
3431
3431
|
height: calc(100lvh - var(--showcase-top, 0px));
|
|
3432
3432
|
scroll-snap-align: start;
|
|
@@ -3434,39 +3434,28 @@
|
|
|
3434
3434
|
overflow: hidden;
|
|
3435
3435
|
background: #080e12;
|
|
3436
3436
|
}
|
|
3437
|
-
.
|
|
3437
|
+
._image_144lm_76 {
|
|
3438
3438
|
object-fit: cover;
|
|
3439
3439
|
object-position: 50% var(--slide-focal-y, 50%);
|
|
3440
3440
|
}
|
|
3441
|
-
.
|
|
3442
|
-
position: absolute;
|
|
3443
|
-
top: 31px;
|
|
3444
|
-
left: 0;
|
|
3445
|
-
right: 0;
|
|
3446
|
-
aspect-ratio: 750 / 1348;
|
|
3447
|
-
overflow: hidden;
|
|
3448
|
-
}
|
|
3449
|
-
._hero_a0wva_119::after {
|
|
3441
|
+
._hero_144lm_116::after {
|
|
3450
3442
|
content: "";
|
|
3451
3443
|
position: absolute;
|
|
3452
3444
|
inset: 0;
|
|
3453
3445
|
background:
|
|
3454
3446
|
linear-gradient(
|
|
3455
3447
|
to bottom,
|
|
3456
|
-
rgba(8, 14, 18,
|
|
3457
|
-
rgba(8, 14, 18, 0)
|
|
3448
|
+
rgba(8, 14, 18, 0.45) 118px,
|
|
3449
|
+
rgba(8, 14, 18, 0) 180px),
|
|
3458
3450
|
linear-gradient(
|
|
3459
|
-
to
|
|
3460
|
-
rgba(8, 14, 18, 0)
|
|
3461
|
-
rgba(8, 14, 18,
|
|
3451
|
+
to top,
|
|
3452
|
+
rgba(8, 14, 18, 0.6) 330px,
|
|
3453
|
+
rgba(8, 14, 18, 0) 520px);
|
|
3462
3454
|
pointer-events: none;
|
|
3463
3455
|
}
|
|
3464
|
-
.
|
|
3465
|
-
object-position: top;
|
|
3466
|
-
}
|
|
3467
|
-
._hero_a0wva_119 ._heroContent_a0wva_190 {
|
|
3456
|
+
._hero_144lm_116 ._heroContent_144lm_174 {
|
|
3468
3457
|
position: absolute;
|
|
3469
|
-
bottom:
|
|
3458
|
+
bottom: 32px;
|
|
3470
3459
|
left: 0;
|
|
3471
3460
|
right: 0;
|
|
3472
3461
|
z-index: 1;
|
|
@@ -3475,7 +3464,7 @@
|
|
|
3475
3464
|
gap: 24px;
|
|
3476
3465
|
align-items: stretch;
|
|
3477
3466
|
}
|
|
3478
|
-
.
|
|
3467
|
+
._heroText_144lm_197 {
|
|
3479
3468
|
display: flex;
|
|
3480
3469
|
flex-direction: column;
|
|
3481
3470
|
gap: 8px;
|
|
@@ -3483,11 +3472,11 @@
|
|
|
3483
3472
|
padding: 0 24px;
|
|
3484
3473
|
text-align: center;
|
|
3485
3474
|
}
|
|
3486
|
-
.
|
|
3475
|
+
._heroText_144lm_197 ._logo_144lm_206 {
|
|
3487
3476
|
width: 48px;
|
|
3488
3477
|
height: 48px;
|
|
3489
3478
|
}
|
|
3490
|
-
.
|
|
3479
|
+
._heroTitle_144lm_226 {
|
|
3491
3480
|
width: 100%;
|
|
3492
3481
|
margin: 0;
|
|
3493
3482
|
font-family:
|
|
@@ -3502,34 +3491,33 @@
|
|
|
3502
3491
|
letter-spacing: -1.12px;
|
|
3503
3492
|
color: #f9fafa;
|
|
3504
3493
|
}
|
|
3505
|
-
.
|
|
3494
|
+
._heroSub_144lm_250 {
|
|
3506
3495
|
margin: 0;
|
|
3507
3496
|
font-size: 16px;
|
|
3508
3497
|
line-height: 1.55;
|
|
3509
3498
|
color: #f9fafa;
|
|
3510
3499
|
max-width: 327px;
|
|
3511
3500
|
}
|
|
3512
|
-
.
|
|
3501
|
+
._swipe_144lm_269 {
|
|
3513
3502
|
display: flex;
|
|
3514
3503
|
flex-direction: column;
|
|
3515
3504
|
align-items: center;
|
|
3516
3505
|
gap: 6px;
|
|
3517
3506
|
padding: 8px 0;
|
|
3518
|
-
background: #080e12;
|
|
3519
3507
|
}
|
|
3520
|
-
.
|
|
3508
|
+
._swipeLabel_144lm_276 {
|
|
3521
3509
|
margin: 0;
|
|
3522
3510
|
font-size: 14px;
|
|
3523
3511
|
line-height: 1;
|
|
3524
3512
|
color: rgba(255, 255, 255, 0.54);
|
|
3525
3513
|
}
|
|
3526
|
-
.
|
|
3514
|
+
._chevron_144lm_282 {
|
|
3527
3515
|
width: 24px;
|
|
3528
3516
|
height: 24px;
|
|
3529
3517
|
color: rgba(255, 255, 255, 0.54);
|
|
3530
|
-
animation:
|
|
3518
|
+
animation: _bob_144lm_1 1.8s ease-in-out infinite;
|
|
3531
3519
|
}
|
|
3532
|
-
@keyframes
|
|
3520
|
+
@keyframes _bob_144lm_1 {
|
|
3533
3521
|
0%, 100% {
|
|
3534
3522
|
transform: translateY(0);
|
|
3535
3523
|
}
|
|
@@ -3537,10 +3525,15 @@
|
|
|
3537
3525
|
transform: translateY(4px);
|
|
3538
3526
|
}
|
|
3539
3527
|
}
|
|
3540
|
-
.
|
|
3528
|
+
._overlay_144lm_11 {
|
|
3541
3529
|
position: absolute;
|
|
3542
3530
|
inset: 0;
|
|
3543
3531
|
z-index: 1;
|
|
3532
|
+
background:
|
|
3533
|
+
linear-gradient(
|
|
3534
|
+
to top,
|
|
3535
|
+
rgba(8, 14, 18, 0.6) 260px,
|
|
3536
|
+
rgba(8, 14, 18, 0) 460px);
|
|
3544
3537
|
display: flex;
|
|
3545
3538
|
flex-direction: column;
|
|
3546
3539
|
justify-content: flex-end;
|
|
@@ -3548,25 +3541,25 @@
|
|
|
3548
3541
|
align-items: flex-start;
|
|
3549
3542
|
padding: 0 24px 24px;
|
|
3550
3543
|
}
|
|
3551
|
-
.
|
|
3544
|
+
._copy_144lm_315 {
|
|
3552
3545
|
display: flex;
|
|
3553
3546
|
flex-direction: column;
|
|
3554
3547
|
gap: 8px;
|
|
3555
3548
|
}
|
|
3556
|
-
.
|
|
3549
|
+
._title_144lm_320 {
|
|
3557
3550
|
margin: 0;
|
|
3558
3551
|
font-size: 32px;
|
|
3559
3552
|
line-height: 1.2;
|
|
3560
3553
|
font-weight: 700;
|
|
3561
3554
|
color: #f9fafa;
|
|
3562
3555
|
}
|
|
3563
|
-
.
|
|
3556
|
+
._subtitle_144lm_327 {
|
|
3564
3557
|
margin: 0;
|
|
3565
3558
|
font-size: 16px;
|
|
3566
3559
|
line-height: 1.55;
|
|
3567
3560
|
color: #f9fafa;
|
|
3568
3561
|
}
|
|
3569
|
-
.
|
|
3562
|
+
._cta_144lm_333 {
|
|
3570
3563
|
display: inline-flex;
|
|
3571
3564
|
align-items: center;
|
|
3572
3565
|
justify-content: center;
|
|
@@ -3580,18 +3573,21 @@
|
|
|
3580
3573
|
font-weight: 700;
|
|
3581
3574
|
text-decoration: none;
|
|
3582
3575
|
}
|
|
3583
|
-
.
|
|
3576
|
+
._cta_144lm_333::after {
|
|
3584
3577
|
content: "";
|
|
3585
3578
|
position: absolute;
|
|
3586
3579
|
inset: 0;
|
|
3587
3580
|
}
|
|
3588
|
-
.
|
|
3581
|
+
._cta_144lm_333:active {
|
|
3589
3582
|
background: rgba(249, 250, 250, 0.12);
|
|
3590
3583
|
}
|
|
3591
|
-
.
|
|
3584
|
+
._cta_144lm_333:focus-visible {
|
|
3592
3585
|
outline: none;
|
|
3593
3586
|
box-shadow: var(--focus-ring);
|
|
3594
3587
|
}
|
|
3588
|
+
._mosaic_144lm_377 {
|
|
3589
|
+
background: #080e12;
|
|
3590
|
+
}
|
|
3595
3591
|
._header_8o3d7_25 {
|
|
3596
3592
|
position: sticky;
|
|
3597
3593
|
top: 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nok-integration/storefront-react",
|
|
3
|
-
"version": "0.19.
|
|
3
|
+
"version": "0.19.15",
|
|
4
4
|
"description": "Mountable React storefront components: catalogue, product detail and cart, mounted directly into a host DOM tree. No iframe.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"type": "module",
|