@neowhale/storefront 0.2.42 → 0.2.44

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.
@@ -2304,29 +2304,64 @@ function CollageHeroSection({ section, theme, tracking, onEvent }) {
2304
2304
  c.overlay_opacity ?? 0.45;
2305
2305
  const count = Math.min(images.length, 5);
2306
2306
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { width: "100%", overflow: "hidden", position: "relative" }, children: [
2307
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
2307
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
2308
2308
  display: "grid",
2309
- gridTemplateColumns: count >= 4 ? "repeat(4, 1fr)" : "repeat(2, 1fr)",
2310
- gridTemplateRows: count >= 4 ? "minmax(0, 28vh) minmax(0, 28vh)" : "minmax(0, 50vh)",
2309
+ gridTemplateColumns: "3fr 2fr",
2310
+ gridTemplateRows: "auto",
2311
2311
  gap: "2px"
2312
- }, children: images.slice(0, count).map((img, i) => /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
2313
- gridColumn: i === 0 && count >= 4 ? "span 2" : void 0,
2314
- gridRow: i === 0 && count >= 4 ? "span 2" : void 0,
2315
- overflow: "hidden",
2316
- background: theme.surface
2317
- }, children: /* @__PURE__ */ jsxRuntime.jsx(
2318
- "img",
2319
- {
2320
- src: img.url,
2321
- alt: img.alt || "",
2322
- loading: i < 3 ? "eager" : "lazy",
2323
- style: { width: "100%", height: "100%", objectFit: "cover", display: "block" }
2324
- }
2325
- ) }, i)) }),
2312
+ }, children: [
2313
+ count > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { style: { gridRow: count >= 3 ? "span 2" : void 0, overflow: "hidden", background: theme.surface, maxHeight: "70vh" }, children: /* @__PURE__ */ jsxRuntime.jsx(
2314
+ "img",
2315
+ {
2316
+ src: images[0].url,
2317
+ alt: images[0].alt || "",
2318
+ loading: "eager",
2319
+ style: { width: "100%", height: "100%", objectFit: "cover", display: "block", minHeight: "40vh" }
2320
+ }
2321
+ ) }),
2322
+ count >= 2 && /* @__PURE__ */ jsxRuntime.jsx("div", { style: { overflow: "hidden", background: theme.surface }, children: /* @__PURE__ */ jsxRuntime.jsx(
2323
+ "img",
2324
+ {
2325
+ src: images[1].url,
2326
+ alt: images[1].alt || "",
2327
+ loading: "eager",
2328
+ style: { width: "100%", height: "100%", objectFit: "cover", display: "block", minHeight: "20vh", maxHeight: "35vh" }
2329
+ }
2330
+ ) }),
2331
+ count >= 3 && /* @__PURE__ */ jsxRuntime.jsx("div", { style: { overflow: "hidden", background: theme.surface }, children: /* @__PURE__ */ jsxRuntime.jsx(
2332
+ "img",
2333
+ {
2334
+ src: images[2].url,
2335
+ alt: images[2].alt || "",
2336
+ loading: "lazy",
2337
+ style: { width: "100%", height: "100%", objectFit: "cover", display: "block", minHeight: "20vh", maxHeight: "35vh" }
2338
+ }
2339
+ ) }),
2340
+ count >= 4 && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { gridColumn: "1 / -1", display: "grid", gridTemplateColumns: count >= 5 ? "1fr 1fr" : "1fr", gap: "2px" }, children: [
2341
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: { overflow: "hidden", background: theme.surface, maxHeight: "25vh" }, children: /* @__PURE__ */ jsxRuntime.jsx(
2342
+ "img",
2343
+ {
2344
+ src: images[3].url,
2345
+ alt: images[3].alt || "",
2346
+ loading: "lazy",
2347
+ style: { width: "100%", height: "100%", objectFit: "cover", display: "block" }
2348
+ }
2349
+ ) }),
2350
+ count >= 5 && /* @__PURE__ */ jsxRuntime.jsx("div", { style: { overflow: "hidden", background: theme.surface, maxHeight: "25vh" }, children: /* @__PURE__ */ jsxRuntime.jsx(
2351
+ "img",
2352
+ {
2353
+ src: images[4].url,
2354
+ alt: images[4].alt || "",
2355
+ loading: "lazy",
2356
+ style: { width: "100%", height: "100%", objectFit: "cover", display: "block" }
2357
+ }
2358
+ ) })
2359
+ ] })
2360
+ ] }),
2326
2361
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
2327
2362
  position: "absolute",
2328
2363
  inset: 0,
2329
- background: "linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.2) 40%, transparent 60%)",
2364
+ background: "linear-gradient(to top, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.15) 35%, transparent 55%)",
2330
2365
  pointerEvents: "none"
2331
2366
  } }),
2332
2367
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
@@ -2780,6 +2815,300 @@ function SuccessState({ theme, heading, message, couponCode }) {
2780
2815
  }, children: couponCode })
2781
2816
  ] }) });
2782
2817
  }
2818
+ function TestimonialsSection({ section, theme }) {
2819
+ const c = section.content;
2820
+ const layout = section.config?.layout || "grid";
2821
+ const reviews = c.reviews || [];
2822
+ if (reviews.length === 0) return null;
2823
+ const overallRating = c.rating ?? 5;
2824
+ const reviewCount = c.review_count ?? reviews.length;
2825
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { padding: "3rem 1.5rem", maxWidth: 640, margin: "0 auto" }, children: [
2826
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { textAlign: "center", marginBottom: "2rem" }, children: [
2827
+ c.heading && /* @__PURE__ */ jsxRuntime.jsx("h2", { style: {
2828
+ fontSize: "clamp(1.25rem, 4vw, 1.75rem)",
2829
+ fontWeight: 300,
2830
+ fontFamily: theme.fontDisplay || "inherit",
2831
+ margin: "0 0 0.75rem",
2832
+ lineHeight: 1.2,
2833
+ letterSpacing: "-0.02em",
2834
+ color: theme.fg
2835
+ }, children: /* @__PURE__ */ jsxRuntime.jsx(AnimatedText, { text: c.heading }) }),
2836
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", gap: "0.5rem", marginBottom: "0.25rem" }, children: [
2837
+ /* @__PURE__ */ jsxRuntime.jsx(Stars, { rating: overallRating, color: theme.accent, size: 18 }),
2838
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: "1.1rem", fontWeight: 500, color: theme.fg }, children: /* @__PURE__ */ jsxRuntime.jsx(AnimatedText, { text: overallRating.toFixed(1) }) })
2839
+ ] }),
2840
+ c.subtitle ? /* @__PURE__ */ jsxRuntime.jsx("p", { style: { fontSize: "0.8rem", color: theme.muted, margin: 0, letterSpacing: "0.1em", textTransform: "uppercase" }, children: c.subtitle }) : /* @__PURE__ */ jsxRuntime.jsxs("p", { style: { fontSize: "0.8rem", color: theme.muted, margin: 0, letterSpacing: "0.1em", textTransform: "uppercase" }, children: [
2841
+ "from ",
2842
+ /* @__PURE__ */ jsxRuntime.jsx(AnimatedText, { text: String(reviewCount) }),
2843
+ " reviews"
2844
+ ] })
2845
+ ] }),
2846
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
2847
+ display: "grid",
2848
+ gridTemplateColumns: layout === "list" ? "1fr" : `repeat(${Math.min(reviews.length, 2)}, 1fr)`,
2849
+ gap: "0.75rem"
2850
+ }, children: reviews.map((review, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
2851
+ background: theme.surface,
2852
+ border: `1px solid ${theme.fg}08`,
2853
+ padding: "1.25rem"
2854
+ }, children: [
2855
+ /* @__PURE__ */ jsxRuntime.jsx(Stars, { rating: review.rating ?? 5, color: theme.accent, size: 14 }),
2856
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { style: {
2857
+ fontSize: "0.88rem",
2858
+ color: `${theme.fg}CC`,
2859
+ margin: "0.75rem 0",
2860
+ lineHeight: 1.6,
2861
+ fontWeight: 300,
2862
+ fontStyle: "italic"
2863
+ }, children: [
2864
+ '"',
2865
+ review.text,
2866
+ '"'
2867
+ ] }),
2868
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "flex", alignItems: "baseline", gap: "0.375rem" }, children: [
2869
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: "0.8rem", fontWeight: 500, color: theme.fg }, children: review.name }),
2870
+ review.location && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: "0.7rem", color: theme.muted }, children: review.location })
2871
+ ] })
2872
+ ] }, i)) })
2873
+ ] });
2874
+ }
2875
+ function Stars({ rating, color, size }) {
2876
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { style: { display: "inline-flex", gap: "1px" }, children: [1, 2, 3, 4, 5].map((n) => /* @__PURE__ */ jsxRuntime.jsx(
2877
+ "svg",
2878
+ {
2879
+ width: size,
2880
+ height: size,
2881
+ viewBox: "0 0 20 20",
2882
+ fill: n <= Math.round(rating) ? color : "none",
2883
+ stroke: color,
2884
+ strokeWidth: 1.5,
2885
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M10 1.5l2.47 5.01 5.53.8-4 3.9.94 5.5L10 14.26 5.06 16.7l.94-5.5-4-3.9 5.53-.8z" })
2886
+ },
2887
+ n
2888
+ )) });
2889
+ }
2890
+ function ValueStackSection({ section, theme }) {
2891
+ const c = section.content;
2892
+ const items = c.items || [];
2893
+ if (items.length === 0) return null;
2894
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { style: { padding: "3rem 1.5rem", maxWidth: 520, margin: "0 auto" }, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { background: theme.surface, border: `1px solid ${theme.fg}08`, padding: "clamp(1.5rem, 5vw, 2.5rem)" }, children: [
2895
+ c.heading && /* @__PURE__ */ jsxRuntime.jsx("h2", { style: {
2896
+ fontSize: "clamp(1.25rem, 4vw, 1.5rem)",
2897
+ fontWeight: 300,
2898
+ fontFamily: theme.fontDisplay || "inherit",
2899
+ margin: "0 0 0.25rem",
2900
+ lineHeight: 1.2,
2901
+ letterSpacing: "-0.02em",
2902
+ color: theme.fg,
2903
+ textAlign: "center"
2904
+ }, children: c.heading }),
2905
+ c.subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { style: {
2906
+ fontSize: "0.8rem",
2907
+ color: theme.accent,
2908
+ margin: "0 0 1.5rem",
2909
+ letterSpacing: "0.15em",
2910
+ textTransform: "uppercase",
2911
+ textAlign: "center"
2912
+ }, children: c.subtitle }),
2913
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: { display: "flex", flexDirection: "column", gap: "0.625rem" }, children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
2914
+ display: "flex",
2915
+ alignItems: "flex-start",
2916
+ gap: "0.75rem",
2917
+ padding: "0.5rem 0",
2918
+ borderBottom: i < items.length - 1 ? `1px solid ${theme.fg}08` : void 0
2919
+ }, children: [
2920
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { color: theme.accent, fontSize: "1rem", lineHeight: 1, flexShrink: 0, marginTop: "0.1rem" }, children: "\u2713" }),
2921
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { flex: 1, fontSize: "0.9rem", color: `${theme.fg}CC`, fontWeight: 300, lineHeight: 1.5 }, children: item.text }),
2922
+ item.value && /* @__PURE__ */ jsxRuntime.jsx("span", { style: {
2923
+ fontSize: "0.8rem",
2924
+ color: theme.muted,
2925
+ fontWeight: 400,
2926
+ textDecoration: "line-through",
2927
+ flexShrink: 0
2928
+ }, children: item.value })
2929
+ ] }, i)) }),
2930
+ (c.total_value || c.offer_label) && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
2931
+ marginTop: "1.5rem",
2932
+ padding: "1rem",
2933
+ background: `${theme.accent}0A`,
2934
+ border: `1px dashed ${theme.accent}30`,
2935
+ textAlign: "center"
2936
+ }, children: [
2937
+ c.total_value && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { fontSize: "0.75rem", color: theme.muted, marginBottom: "0.25rem", letterSpacing: "0.1em", textTransform: "uppercase" }, children: [
2938
+ "Total value: ",
2939
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { textDecoration: "line-through" }, children: c.total_value })
2940
+ ] }),
2941
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
2942
+ fontSize: "clamp(1.25rem, 4vw, 1.5rem)",
2943
+ fontWeight: 500,
2944
+ fontFamily: theme.fontDisplay || "inherit",
2945
+ color: theme.accent
2946
+ }, children: c.offer_label || "Free" })
2947
+ ] })
2948
+ ] }) });
2949
+ }
2950
+ function FAQSection({ section, theme }) {
2951
+ const c = section.content;
2952
+ const items = c.items || [];
2953
+ if (items.length === 0) return null;
2954
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { padding: "2.5rem 1.5rem", maxWidth: 580, margin: "0 auto" }, children: [
2955
+ c.heading && /* @__PURE__ */ jsxRuntime.jsx("h2", { style: {
2956
+ fontSize: 11,
2957
+ fontWeight: 500,
2958
+ textTransform: "uppercase",
2959
+ letterSpacing: "0.25em",
2960
+ color: `${theme.fg}40`,
2961
+ margin: "0 0 1.25rem",
2962
+ textAlign: "center"
2963
+ }, children: c.heading }),
2964
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: { display: "flex", flexDirection: "column", gap: 0 }, children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx(FAQItem, { question: item.question, answer: item.answer, theme }, i)) })
2965
+ ] });
2966
+ }
2967
+ function FAQItem({ question, answer, theme }) {
2968
+ const [open, setOpen] = react.useState(false);
2969
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { borderBottom: `1px solid ${theme.fg}0A` }, children: [
2970
+ /* @__PURE__ */ jsxRuntime.jsxs(
2971
+ "button",
2972
+ {
2973
+ onClick: () => setOpen(!open),
2974
+ style: {
2975
+ width: "100%",
2976
+ display: "flex",
2977
+ justifyContent: "space-between",
2978
+ alignItems: "center",
2979
+ padding: "1rem 0",
2980
+ background: "none",
2981
+ border: "none",
2982
+ cursor: "pointer",
2983
+ color: theme.fg,
2984
+ fontFamily: "inherit",
2985
+ textAlign: "left"
2986
+ },
2987
+ children: [
2988
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: "0.9rem", fontWeight: 400, lineHeight: 1.4 }, children: question }),
2989
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: {
2990
+ fontSize: "1.25rem",
2991
+ fontWeight: 200,
2992
+ color: theme.muted,
2993
+ transition: "transform 0.2s",
2994
+ transform: open ? "rotate(45deg)" : "none",
2995
+ flexShrink: 0,
2996
+ marginLeft: "1rem"
2997
+ }, children: "+" })
2998
+ ]
2999
+ }
3000
+ ),
3001
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
3002
+ maxHeight: open ? "20rem" : 0,
3003
+ overflow: "hidden",
3004
+ transition: "max-height 0.3s ease"
3005
+ }, children: /* @__PURE__ */ jsxRuntime.jsx("p", { style: {
3006
+ fontSize: "0.85rem",
3007
+ color: `${theme.fg}88`,
3008
+ lineHeight: 1.7,
3009
+ fontWeight: 300,
3010
+ margin: 0,
3011
+ padding: "0 0 1rem"
3012
+ }, children: answer }) })
3013
+ ] });
3014
+ }
3015
+ function TrustBadgesSection({ section, theme }) {
3016
+ const c = section.content;
3017
+ const badges = c.badges || [];
3018
+ if (badges.length === 0) return null;
3019
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
3020
+ padding: "1.25rem 1.5rem",
3021
+ borderTop: `1px solid ${theme.fg}08`,
3022
+ borderBottom: `1px solid ${theme.fg}08`
3023
+ }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
3024
+ display: "flex",
3025
+ justifyContent: "center",
3026
+ alignItems: "center",
3027
+ gap: "clamp(1rem, 4vw, 2.5rem)",
3028
+ flexWrap: "wrap"
3029
+ }, children: badges.map((badge, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
3030
+ display: "flex",
3031
+ alignItems: "center",
3032
+ gap: "0.375rem"
3033
+ }, children: [
3034
+ badge.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: "0.9rem" }, children: badge.icon }),
3035
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: {
3036
+ fontSize: "0.7rem",
3037
+ fontWeight: 500,
3038
+ textTransform: "uppercase",
3039
+ letterSpacing: "0.15em",
3040
+ color: theme.muted
3041
+ }, children: badge.label })
3042
+ ] }, i)) }) });
3043
+ }
3044
+ function CountdownSection({ section, theme }) {
3045
+ const c = section.content;
3046
+ const endDate = c.end_date ? new Date(c.end_date) : null;
3047
+ const [remaining, setRemaining] = react.useState(null);
3048
+ const [expired, setExpired] = react.useState(false);
3049
+ react.useEffect(() => {
3050
+ if (!endDate) return;
3051
+ function tick() {
3052
+ const diff = endDate.getTime() - Date.now();
3053
+ if (diff <= 0) {
3054
+ setExpired(true);
3055
+ return;
3056
+ }
3057
+ setRemaining({
3058
+ d: Math.floor(diff / 864e5),
3059
+ h: Math.floor(diff % 864e5 / 36e5),
3060
+ m: Math.floor(diff % 36e5 / 6e4),
3061
+ s: Math.floor(diff % 6e4 / 1e3)
3062
+ });
3063
+ }
3064
+ tick();
3065
+ const id = setInterval(tick, 1e3);
3066
+ return () => clearInterval(id);
3067
+ }, [endDate?.getTime()]);
3068
+ if (!endDate) return null;
3069
+ if (expired) {
3070
+ return c.expired_text ? /* @__PURE__ */ jsxRuntime.jsx("div", { style: { padding: "1.5rem", textAlign: "center" }, children: /* @__PURE__ */ jsxRuntime.jsx("p", { style: { fontSize: "0.85rem", color: theme.muted, margin: 0 }, children: c.expired_text }) }) : null;
3071
+ }
3072
+ if (!remaining) return null;
3073
+ const units = [
3074
+ { label: "Days", value: remaining.d },
3075
+ { label: "Hours", value: remaining.h },
3076
+ { label: "Min", value: remaining.m },
3077
+ { label: "Sec", value: remaining.s }
3078
+ ];
3079
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { padding: "2rem 1.5rem", maxWidth: 480, margin: "0 auto", textAlign: "center" }, children: [
3080
+ c.heading && /* @__PURE__ */ jsxRuntime.jsx("p", { style: {
3081
+ fontSize: "0.8rem",
3082
+ color: theme.accent,
3083
+ margin: "0 0 1rem",
3084
+ letterSpacing: "0.15em",
3085
+ textTransform: "uppercase"
3086
+ }, children: c.heading }),
3087
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: { display: "flex", justifyContent: "center", gap: "0.5rem" }, children: units.map((u) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: {
3088
+ minWidth: "clamp(3.5rem, 12vw, 4.5rem)",
3089
+ padding: "0.75rem 0.25rem",
3090
+ background: theme.surface,
3091
+ border: `1px solid ${theme.fg}08`
3092
+ }, children: [
3093
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
3094
+ fontFamily: theme.fontDisplay || "inherit",
3095
+ fontSize: "clamp(1.5rem, 5vw, 2rem)",
3096
+ fontWeight: 300,
3097
+ lineHeight: 1,
3098
+ color: theme.fg,
3099
+ fontVariantNumeric: "tabular-nums"
3100
+ }, children: String(u.value).padStart(2, "0") }),
3101
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
3102
+ fontSize: "0.6rem",
3103
+ fontWeight: 500,
3104
+ textTransform: "uppercase",
3105
+ letterSpacing: "0.2em",
3106
+ color: theme.muted,
3107
+ marginTop: "0.375rem"
3108
+ }, children: u.label })
3109
+ ] }, u.label)) })
3110
+ ] });
3111
+ }
2783
3112
  function SectionRenderer({
2784
3113
  section,
2785
3114
  data,
@@ -2814,6 +3143,16 @@ function SectionRenderer({
2814
3143
  return /* @__PURE__ */ jsxRuntime.jsx(SocialLinksSection, { section, theme });
2815
3144
  case "lead_capture":
2816
3145
  return /* @__PURE__ */ jsxRuntime.jsx(LeadCaptureSection, { section, data, theme, onEvent });
3146
+ case "testimonials":
3147
+ return /* @__PURE__ */ jsxRuntime.jsx(TestimonialsSection, { section, theme });
3148
+ case "value_stack":
3149
+ return /* @__PURE__ */ jsxRuntime.jsx(ValueStackSection, { section, theme });
3150
+ case "faq":
3151
+ return /* @__PURE__ */ jsxRuntime.jsx(FAQSection, { section, theme });
3152
+ case "trust_badges":
3153
+ return /* @__PURE__ */ jsxRuntime.jsx(TrustBadgesSection, { section, theme });
3154
+ case "countdown":
3155
+ return /* @__PURE__ */ jsxRuntime.jsx(CountdownSection, { section, theme });
2817
3156
  case "divider":
2818
3157
  return /* @__PURE__ */ jsxRuntime.jsx(DividerSection, { theme });
2819
3158
  default: