@deriv-web-design/ui 0.1.26 → 0.1.28

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.mjs CHANGED
@@ -1162,7 +1162,7 @@ var FaqAccordion = ({
1162
1162
  open: openIndex === index,
1163
1163
  onToggle: handleToggle(index),
1164
1164
  showTopDivider: false,
1165
- showBottomDivider: true,
1165
+ showBottomDivider: index < items.length - 1,
1166
1166
  children: item.answer
1167
1167
  },
1168
1168
  `${item.question}-${index}`
@@ -4945,18 +4945,92 @@ var TextScroll = ({ text, className }) => {
4945
4945
  };
4946
4946
 
4947
4947
  // templates/StickyMarketCards/StickyMarketCards.tsx
4948
- import { useEffect as useEffect12, useRef as useRef15 } from "react";
4949
- import { jsx as jsx39, jsxs as jsxs35 } from "react/jsx-runtime";
4948
+ import { useEffect as useEffect12, useRef as useRef15, useState as useState13 } from "react";
4949
+ import { Fragment as Fragment6, jsx as jsx39, jsxs as jsxs35 } from "react/jsx-runtime";
4950
4950
  var PLACEHOLDER_IMAGE3 = "https://cdn.prod.website-files.com/68da5c86c91c54f39c86c28a/69b9309379ac08e59ca8210a_1f3f555da9a5cbb13a6fe1bf0d5fe1b6_placeholder-image.webp";
4951
+ function safeHref(value) {
4952
+ if (!value) return null;
4953
+ if (value.startsWith("/") && !value.startsWith("//")) return value;
4954
+ try {
4955
+ const url = new URL(value);
4956
+ return url.protocol === "https:" ? value : null;
4957
+ } catch {
4958
+ return null;
4959
+ }
4960
+ }
4961
+ function safeLottieSrc(value) {
4962
+ const href = safeHref(value);
4963
+ if (!href || !isLottieSrc(href)) return null;
4964
+ return href;
4965
+ }
4966
+ function PlaybackGlyph({ playing }) {
4967
+ return /* @__PURE__ */ jsxs35("svg", { className: "smc__control-icon", viewBox: "0 0 64 64", "aria-hidden": "true", children: [
4968
+ /* @__PURE__ */ jsx39("circle", { className: "smc__control-disc", cx: "32", cy: "32", r: "32" }),
4969
+ playing ? /* @__PURE__ */ jsxs35(Fragment6, { children: [
4970
+ /* @__PURE__ */ jsx39("rect", { className: "smc__control-glyph", x: "23", y: "21", width: "6", height: "22", rx: "2" }),
4971
+ /* @__PURE__ */ jsx39("rect", { className: "smc__control-glyph", x: "35", y: "21", width: "6", height: "22", rx: "2" })
4972
+ ] }) : /* @__PURE__ */ jsx39(
4973
+ "path",
4974
+ {
4975
+ className: "smc__control-glyph",
4976
+ d: "M26.5058 19.9527L42.7058 29.8527C43.4933 30.359 43.9996 31.259 43.9996 32.159C43.9996 33.1152 43.4933 34.0152 42.7058 34.4652L26.5058 44.3652C25.6621 44.8715 24.5933 44.9277 23.7496 44.4215C22.9058 43.9715 22.3996 43.0715 22.3996 42.059V22.259C22.3996 21.3027 22.9058 20.4027 23.7496 19.9527C24.5933 19.4465 25.6621 19.4465 26.5058 19.9527Z"
4977
+ }
4978
+ )
4979
+ ] });
4980
+ }
4981
+ function LottiePanel({ item, index, playing, onToggle }) {
4982
+ const src = safeLottieSrc(item.lottieSrc);
4983
+ const posterSrc = safeHref(item.lottiePosterUrl);
4984
+ const controlId = `smc-lottie-${index}-${item.title}`.replace(/[^a-zA-Z0-9_-]/g, "-").slice(0, 80);
4985
+ return /* @__PURE__ */ jsxs35("div", { className: "smc__lottie", children: [
4986
+ /* @__PURE__ */ jsx39("div", { id: controlId, className: "smc__lottie-media", "aria-hidden": "true", children: src ? /* @__PURE__ */ jsx39(
4987
+ DotLottieInView,
4988
+ {
4989
+ src,
4990
+ enabled: playing,
4991
+ loop: true,
4992
+ className: "smc__lottie-player",
4993
+ style: { alignItems: "stretch", justifyContent: "stretch" },
4994
+ poster: posterSrc ? /* @__PURE__ */ jsx39("img", { src: posterSrc, alt: "", loading: "lazy", decoding: "async" }) : void 0
4995
+ }
4996
+ ) : null }),
4997
+ posterSrc && !playing ? /* @__PURE__ */ jsx39(
4998
+ "img",
4999
+ {
5000
+ className: "smc__lottie-poster",
5001
+ src: posterSrc,
5002
+ alt: "",
5003
+ "aria-hidden": "true",
5004
+ loading: "lazy",
5005
+ decoding: "async"
5006
+ }
5007
+ ) : null,
5008
+ src ? /* @__PURE__ */ jsx39(
5009
+ "button",
5010
+ {
5011
+ type: "button",
5012
+ className: `smc__playback-toggle${playing ? " smc__playback-toggle--playing" : ""}`,
5013
+ "aria-controls": controlId,
5014
+ "aria-pressed": playing,
5015
+ "aria-label": `${playing ? "Pause" : "Play"} ${item.title} animation`,
5016
+ onClick: onToggle,
5017
+ children: /* @__PURE__ */ jsx39(PlaybackGlyph, { playing })
5018
+ }
5019
+ ) : null
5020
+ ] });
5021
+ }
4951
5022
  var StickyMarketCards = ({
4952
5023
  sectionTitle,
4953
5024
  sectionDescription,
5025
+ variant = "default",
4954
5026
  items,
4955
5027
  className,
4956
5028
  ...props
4957
5029
  }) => {
4958
5030
  const cardRefs = useRef15([]);
4959
5031
  const cardInnerRefs = useRef15([]);
5032
+ const [playing, setPlaying] = useState13({});
5033
+ const isLottie = variant === "lottie";
4960
5034
  useEffect12(() => {
4961
5035
  if (typeof window === "undefined") return;
4962
5036
  let rafId = 0;
@@ -5023,14 +5097,14 @@ var StickyMarketCards = ({
5023
5097
  return () => {
5024
5098
  window.removeEventListener("resize", syncHeights);
5025
5099
  };
5026
- }, [items.length]);
5100
+ }, [items.length, variant]);
5027
5101
  const n = items.length;
5028
5102
  const maxStack = 4;
5029
5103
  const baseIndex = Math.max(0, n - maxStack);
5030
5104
  return /* @__PURE__ */ jsx39(
5031
5105
  "section",
5032
5106
  {
5033
- className: ["smc", className].filter(Boolean).join(" "),
5107
+ className: ["smc", isLottie ? "smc--lottie" : null, className].filter(Boolean).join(" "),
5034
5108
  ...props,
5035
5109
  children: /* @__PURE__ */ jsxs35("div", { className: "smc__inner", children: [
5036
5110
  /* @__PURE__ */ jsxs35("div", { className: "smc__header-wrap", children: [
@@ -5059,10 +5133,11 @@ var StickyMarketCards = ({
5059
5133
  },
5060
5134
  className: [
5061
5135
  "smc__card-inner",
5062
- `smc__card-inner--${theme}`
5063
- ].join(" "),
5136
+ `smc__card-inner--${theme}`,
5137
+ isLottie ? "smc__card-inner--lottie" : null
5138
+ ].filter(Boolean).join(" "),
5064
5139
  children: [
5065
- /* @__PURE__ */ jsxs35("div", { className: "smc__card-bg", children: [
5140
+ !isLottie ? /* @__PURE__ */ jsxs35("div", { className: "smc__card-bg", children: [
5066
5141
  /* @__PURE__ */ jsx39(
5067
5142
  "img",
5068
5143
  {
@@ -5081,11 +5156,37 @@ var StickyMarketCards = ({
5081
5156
  ].join(" ")
5082
5157
  }
5083
5158
  )
5084
- ] }),
5085
- /* @__PURE__ */ jsxs35("div", { className: "smc__card-content", children: [
5086
- /* @__PURE__ */ jsx39("div", { className: "smc__card-title-wrap", children: /* @__PURE__ */ jsx39("h3", { className: "smc__card-title", children: item.title }) }),
5087
- /* @__PURE__ */ jsx39("div", { className: "smc__card-desc-wrap", children: /* @__PURE__ */ jsx39("p", { className: "smc__card-desc", children: item.description }) })
5088
- ] })
5159
+ ] }) : null,
5160
+ /* @__PURE__ */ jsx39(
5161
+ "div",
5162
+ {
5163
+ className: [
5164
+ "smc__card-content",
5165
+ isLottie ? "smc__card-content--lottie" : null
5166
+ ].filter(Boolean).join(" "),
5167
+ children: isLottie ? /* @__PURE__ */ jsxs35(Fragment6, { children: [
5168
+ /* @__PURE__ */ jsx39(
5169
+ LottiePanel,
5170
+ {
5171
+ item,
5172
+ index: i,
5173
+ playing: Boolean(playing[i]),
5174
+ onToggle: () => setPlaying((prev) => ({
5175
+ ...prev,
5176
+ [i]: !prev[i]
5177
+ }))
5178
+ }
5179
+ ),
5180
+ /* @__PURE__ */ jsxs35("div", { className: "smc__card-text", children: [
5181
+ /* @__PURE__ */ jsx39("h3", { className: "smc__card-title", children: item.title }),
5182
+ /* @__PURE__ */ jsx39("p", { className: "smc__card-desc", children: item.description })
5183
+ ] })
5184
+ ] }) : /* @__PURE__ */ jsxs35(Fragment6, { children: [
5185
+ /* @__PURE__ */ jsx39("div", { className: "smc__card-title-wrap", children: /* @__PURE__ */ jsx39("h3", { className: "smc__card-title", children: item.title }) }),
5186
+ /* @__PURE__ */ jsx39("div", { className: "smc__card-desc-wrap", children: /* @__PURE__ */ jsx39("p", { className: "smc__card-desc", children: item.description }) })
5187
+ ] })
5188
+ }
5189
+ )
5089
5190
  ]
5090
5191
  }
5091
5192
  )
@@ -5099,8 +5200,8 @@ var StickyMarketCards = ({
5099
5200
  };
5100
5201
 
5101
5202
  // templates/Table/Table.tsx
5102
- import { useState as useState13, useMemo as useMemo2 } from "react";
5103
- import { Fragment as Fragment6, jsx as jsx40, jsxs as jsxs36 } from "react/jsx-runtime";
5203
+ import { useState as useState14, useMemo as useMemo2 } from "react";
5204
+ import { Fragment as Fragment7, jsx as jsx40, jsxs as jsxs36 } from "react/jsx-runtime";
5104
5205
  var InfoIcon = ({ className }) => /* @__PURE__ */ jsxs36("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", className, children: [
5105
5206
  /* @__PURE__ */ jsx40("circle", { cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "1.5" }),
5106
5207
  /* @__PURE__ */ jsx40("path", { d: "M12 16V12", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }),
@@ -5117,9 +5218,9 @@ var Table = ({
5117
5218
  className,
5118
5219
  ...props
5119
5220
  }) => {
5120
- const [search, setSearch] = useState13("");
5121
- const [page, setPage] = useState13(1);
5122
- const [tooltip, setTooltip] = useState13({ visible: false, heading: "", description: "", x: 0, y: 0, arrowOffset: 0 });
5221
+ const [search, setSearch] = useState14("");
5222
+ const [page, setPage] = useState14(1);
5223
+ const [tooltip, setTooltip] = useState14({ visible: false, heading: "", description: "", x: 0, y: 0, arrowOffset: 0 });
5123
5224
  const mainKey = mainColumnKey ?? columns.find((c) => c.width === "main")?.key ?? columns[0]?.key;
5124
5225
  const filtered = useMemo2(() => {
5125
5226
  const q = search.trim().toLowerCase();
@@ -5157,7 +5258,7 @@ var Table = ({
5157
5258
  "aria-label": searchPlaceholder
5158
5259
  }
5159
5260
  ) }),
5160
- /* @__PURE__ */ jsx40("div", { className: "tbl__summary", children: filtered.length > 0 ? /* @__PURE__ */ jsxs36(Fragment6, { children: [
5261
+ /* @__PURE__ */ jsx40("div", { className: "tbl__summary", children: filtered.length > 0 ? /* @__PURE__ */ jsxs36(Fragment7, { children: [
5161
5262
  "Showing ",
5162
5263
  startIdx + 1,
5163
5264
  "- ",
@@ -5350,11 +5451,11 @@ var DynamicTable = ({
5350
5451
  };
5351
5452
 
5352
5453
  // templates/Leaders/Leaders.tsx
5353
- import { useState as useState14 } from "react";
5354
- import { Fragment as Fragment7, jsx as jsx42, jsxs as jsxs38 } from "react/jsx-runtime";
5454
+ import { useState as useState15 } from "react";
5455
+ import { Fragment as Fragment8, jsx as jsx42, jsxs as jsxs38 } from "react/jsx-runtime";
5355
5456
  var ChevronDownIcon4 = () => /* @__PURE__ */ jsx42("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", children: /* @__PURE__ */ jsx42("path", { d: "M4 6L8 10L12 6", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) });
5356
5457
  var ChevronUpIcon = () => /* @__PURE__ */ jsx42("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", children: /* @__PURE__ */ jsx42("path", { d: "M12 10L8 6L4 10", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) });
5357
- var CardContent = ({ item }) => /* @__PURE__ */ jsxs38(Fragment7, { children: [
5458
+ var CardContent = ({ item }) => /* @__PURE__ */ jsxs38(Fragment8, { children: [
5358
5459
  /* @__PURE__ */ jsx42("div", { className: "avatar-grid__image-wrapper", children: /* @__PURE__ */ jsx42(
5359
5460
  "img",
5360
5461
  {
@@ -5392,7 +5493,7 @@ var AvatarGrid = ({
5392
5493
  className,
5393
5494
  ...props
5394
5495
  }) => {
5395
- const [isExpanded, setIsExpanded] = useState14(false);
5496
+ const [isExpanded, setIsExpanded] = useState15(false);
5396
5497
  const hasMore = items.length > initialVisibleCount;
5397
5498
  const visibleItems = items.slice(0, initialVisibleCount);
5398
5499
  const extraItems = items.slice(initialVisibleCount);
@@ -5568,7 +5669,7 @@ var ImageBanner = ({
5568
5669
  };
5569
5670
 
5570
5671
  // templates/Testimonial/Testimonial.tsx
5571
- import { useCallback as useCallback3, useEffect as useEffect13, useId as useId3, useRef as useRef16, useState as useState15 } from "react";
5672
+ import { useCallback as useCallback3, useEffect as useEffect13, useId as useId3, useRef as useRef16, useState as useState16 } from "react";
5572
5673
 
5573
5674
  // assets/quote-left.webp
5574
5675
  var quote_left_default = "data:image/webp;base64,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";
@@ -5647,8 +5748,8 @@ var TrustpilotTestimonial = ({
5647
5748
  ...props
5648
5749
  }) => {
5649
5750
  const trackRef = useRef16(null);
5650
- const [canPrev, setCanPrev] = useState15(false);
5651
- const [canNext, setCanNext] = useState15(true);
5751
+ const [canPrev, setCanPrev] = useState16(false);
5752
+ const [canNext, setCanNext] = useState16(true);
5652
5753
  const syncScrollState = useCallback3(() => {
5653
5754
  const next = readScrollState(trackRef.current);
5654
5755
  setCanPrev(next.canPrev);
@@ -5758,8 +5859,8 @@ var DefaultTestimonial = ({
5758
5859
  className,
5759
5860
  ...props
5760
5861
  }) => {
5761
- const [activeIndex, setActiveIndex] = useState15(0);
5762
- const [phase, setPhase] = useState15("idle");
5862
+ const [activeIndex, setActiveIndex] = useState16(0);
5863
+ const [phase, setPhase] = useState16("idle");
5763
5864
  const pendingIndex = useRef16(null);
5764
5865
  const autoRef = useRef16(null);
5765
5866
  const goTo = (next) => {
@@ -5974,7 +6075,7 @@ var ArticleHero = ({
5974
6075
  };
5975
6076
 
5976
6077
  // templates/ArticleSection/ArticleSection.tsx
5977
- import { Fragment as Fragment8, jsx as jsx46, jsxs as jsxs42 } from "react/jsx-runtime";
6078
+ import { Fragment as Fragment9, jsx as jsx46, jsxs as jsxs42 } from "react/jsx-runtime";
5978
6079
  var ArticleSection = ({
5979
6080
  variant = "featured",
5980
6081
  sectionTitle,
@@ -5996,7 +6097,7 @@ var ArticleSection = ({
5996
6097
  linkText && /* @__PURE__ */ jsx46(Link, { colorScheme: "coral", label: linkText, onClick: onLinkClick })
5997
6098
  ] }),
5998
6099
  /* @__PURE__ */ jsxs42("div", { className: "as-desktop", children: [
5999
- !isShowcase && !isGrid && featured && /* @__PURE__ */ jsxs42(Fragment8, { children: [
6100
+ !isShowcase && !isGrid && featured && /* @__PURE__ */ jsxs42(Fragment9, { children: [
6000
6101
  /* @__PURE__ */ jsx46("div", { className: "as-featuredRow", children: /* @__PURE__ */ jsx46(
6001
6102
  Card,
6002
6103
  {
@@ -6151,7 +6252,7 @@ var ArticleSection = ({
6151
6252
  };
6152
6253
 
6153
6254
  // templates/CoralBanner/CoralBanner.tsx
6154
- import { useCallback as useCallback4, useEffect as useEffect14, useRef as useRef17, useState as useState16 } from "react";
6255
+ import { useCallback as useCallback4, useEffect as useEffect14, useRef as useRef17, useState as useState17 } from "react";
6155
6256
  import { jsx as jsx47, jsxs as jsxs43 } from "react/jsx-runtime";
6156
6257
  var DEFAULT_SLIDES = [
6157
6258
  {
@@ -6265,7 +6366,7 @@ var CoralBanner = ({
6265
6366
  const resolvedSlides = slides && slides.length > 0 ? slides : DEFAULT_SLIDES;
6266
6367
  const count = resolvedSlides.length;
6267
6368
  const isCarousel = variant === "carousel" && count > 1;
6268
- const [activeIndex, setActiveIndex] = useState16(0);
6369
+ const [activeIndex, setActiveIndex] = useState17(0);
6269
6370
  const autoplayTimer = useRef17(null);
6270
6371
  const dragState = useRef17(null);
6271
6372
  const goTo = useCallback4(
@@ -6556,7 +6657,7 @@ var FeatureBlog = ({
6556
6657
  };
6557
6658
 
6558
6659
  // templates/FeatureBlogCategories/FeatureBlogCategories.tsx
6559
- import { useMemo as useMemo3, useState as useState17 } from "react";
6660
+ import { useMemo as useMemo3, useState as useState18 } from "react";
6560
6661
  import { jsx as jsx50, jsxs as jsxs46 } from "react/jsx-runtime";
6561
6662
  var isExternalUrl = (href) => Boolean(href && /^https?:\/\//i.test(href));
6562
6663
  var FEATURE_BLOG_CATEGORIES_TEXT_CONTENT = {
@@ -6620,8 +6721,8 @@ var FeatureBlogCategories = ({
6620
6721
  className,
6621
6722
  ...props
6622
6723
  }) => {
6623
- const [search, setSearch] = useState17("");
6624
- const [internalActiveId, setInternalActiveId] = useState17(defaultActiveCategoryId ?? allCategoryId);
6724
+ const [search, setSearch] = useState18("");
6725
+ const [internalActiveId, setInternalActiveId] = useState18(defaultActiveCategoryId ?? allCategoryId);
6625
6726
  const isControlled = activeCategoryId !== void 0;
6626
6727
  const activeId = isControlled ? activeCategoryId : internalActiveId;
6627
6728
  const tabs = useMemo3(
@@ -6680,9 +6781,9 @@ var FeatureBlogCategories = ({
6680
6781
  };
6681
6782
 
6682
6783
  // templates/HelpCentreCategories/HelpCentreCategories.tsx
6683
- import { Fragment as Fragment9, jsx as jsx51, jsxs as jsxs47 } from "react/jsx-runtime";
6784
+ import { Fragment as Fragment10, jsx as jsx51, jsxs as jsxs47 } from "react/jsx-runtime";
6684
6785
  var externalLinkRel3 = (href) => href && /^https?:\/\//i.test(href) ? "noopener noreferrer" : void 0;
6685
- var CategoryTileContent = ({ category }) => /* @__PURE__ */ jsxs47(Fragment9, { children: [
6786
+ var CategoryTileContent = ({ category }) => /* @__PURE__ */ jsxs47(Fragment10, { children: [
6686
6787
  category.icon && /* @__PURE__ */ jsx51("span", { className: "hcc-tile-icon", children: typeof category.icon === "string" ? /* @__PURE__ */ jsx51(
6687
6788
  "img",
6688
6789
  {
@@ -6729,7 +6830,7 @@ var HelpCentreCategories = ({
6729
6830
  };
6730
6831
 
6731
6832
  // templates/HelpCentreSubCategories/HelpCentreSubCategories.tsx
6732
- import { useMemo as useMemo4, useState as useState18 } from "react";
6833
+ import { useMemo as useMemo4, useState as useState19 } from "react";
6733
6834
  import { jsx as jsx52, jsxs as jsxs48 } from "react/jsx-runtime";
6734
6835
  var externalLinkRel4 = (href) => href && /^https?:\/\//i.test(href) ? "noopener noreferrer" : void 0;
6735
6836
  var QuestionCard = ({ item }) => {
@@ -6746,7 +6847,7 @@ var HelpCentreSubCategories = ({
6746
6847
  noResultsText = 'No results found for "{query}"',
6747
6848
  onSearchChange
6748
6849
  }) => {
6749
- const [search, setSearch] = useState18("");
6850
+ const [search, setSearch] = useState19("");
6750
6851
  const filtered = useMemo4(() => {
6751
6852
  const q = search.trim().toLowerCase();
6752
6853
  if (!q) return items;
@@ -6778,7 +6879,7 @@ var HelpCentreSubCategories = ({
6778
6879
  };
6779
6880
 
6780
6881
  // templates/HelpCenterPage/HelpCenterPage.tsx
6781
- import { useMemo as useMemo5, useState as useState19 } from "react";
6882
+ import { useMemo as useMemo5, useState as useState20 } from "react";
6782
6883
  import { jsx as jsx53, jsxs as jsxs49 } from "react/jsx-runtime";
6783
6884
  var externalLinkRel5 = (href) => href && /^https?:\/\//i.test(href) ? "noopener noreferrer" : void 0;
6784
6885
  var ChevronDownIcon5 = () => /* @__PURE__ */ jsx53("svg", { "aria-hidden": "true", fill: "none", height: "16", viewBox: "0 0 16 16", width: "16", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx53("path", { d: "M4 6l4 4 4-4", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }) });
@@ -6844,9 +6945,9 @@ var HelpCenterPage = ({
6844
6945
  articlesSheetTitle = "Articles in this section",
6845
6946
  className
6846
6947
  }) => {
6847
- const [search, setSearch] = useState19("");
6848
- const [internalActiveId, setInternalActiveId] = useState19(defaultActiveQuestionId ?? questions[0]?.id);
6849
- const [sheetOpen, setSheetOpen] = useState19(false);
6948
+ const [search, setSearch] = useState20("");
6949
+ const [internalActiveId, setInternalActiveId] = useState20(defaultActiveQuestionId ?? questions[0]?.id);
6950
+ const [sheetOpen, setSheetOpen] = useState20(false);
6850
6951
  const isControlled = activeQuestionId !== void 0;
6851
6952
  const activeId = isControlled ? activeQuestionId : internalActiveId;
6852
6953
  const activeItem = questions.find((item) => item.id === activeId);
@@ -6913,7 +7014,7 @@ var HelpCenterPage = ({
6913
7014
  };
6914
7015
 
6915
7016
  // templates/FeatureBlogPage/FeatureBlogPage.tsx
6916
- import { useEffect as useEffect15, useMemo as useMemo6, useState as useState20 } from "react";
7017
+ import { useEffect as useEffect15, useMemo as useMemo6, useState as useState21 } from "react";
6917
7018
 
6918
7019
  // assets/share-link.png
6919
7020
  var share_link_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABYklEQVR4AezVgU3DMBAFUMRAzMEQzMEQzMEQzMFE+FX5kuNGF4cgIVWp8us73/n/76vaPj/98+sycE3gmsBDTuCl/bQELayfv5zAW5P6avgYwEzb2n7OGBiJGYjK9xLoYWhJ75ffGCCUm2bF/N7e4HVZxS28Pc7cgvHtiAG3ITiSZd+tIRrizyXRs4TrZdYAgowyxG4IcqyjMXupOS+/w4wBh3txoojsqUVky0D20uPcCnsGCBByCEnEe2JjVtOj3wpiEKcuXmHPwJZ4SBEhloM8kPdnmUxttVYGeoLcfHV4SJiBUbw8WxkI/+ieSGo+CoL29IkPGa8MIIvQuBKz1xvQf0gcQWXArfQgtvZgoK8zAnrUyrFrCmYMIAZnmBEDEWAECAd6p1AZ6MkI+hU0YjEQIMwE9P1qU6gMIAgpITlkT3waewYIEHRDfzIgB7XTmDFwWqQiuAxcE3j8CVTfALUfAAAA//85/ClxAAAABklEQVQDABFpTkF24Li2AAAAAElFTkSuQmCC";
@@ -6970,7 +7071,7 @@ var TocCard = ({
6970
7071
  idSuffix,
6971
7072
  collapsible
6972
7073
  }) => {
6973
- const [open, setOpen] = useState20(defaultOpen);
7074
+ const [open, setOpen] = useState21(defaultOpen);
6974
7075
  const panelId = `fbp-toc-panel-${idSuffix}`;
6975
7076
  const isOpen = collapsible ? open : true;
6976
7077
  const list = /* @__PURE__ */ jsx54("ol", { className: "fbp-tocList", id: panelId, children: headings.map((heading) => /* @__PURE__ */ jsx54("li", { className: "fbp-tocItem", children: /* @__PURE__ */ jsx54(
@@ -7012,7 +7113,7 @@ var ShareRow = ({
7012
7113
  onShare,
7013
7114
  copiedLabel
7014
7115
  }) => {
7015
- const [copied, setCopied] = useState20(false);
7116
+ const [copied, setCopied] = useState21(false);
7016
7117
  const handleCopy = async () => {
7017
7118
  onShare?.("copy");
7018
7119
  try {
@@ -7122,7 +7223,7 @@ var FeatureBlogPage = ({
7122
7223
  ).map(({ block, i }) => ({ id: headingIds.get(i), text: block.text ?? "" })),
7123
7224
  [content, headingIds]
7124
7225
  );
7125
- const [activeId, setActiveId] = useState20(null);
7226
+ const [activeId, setActiveId] = useState21(null);
7126
7227
  useEffect15(() => {
7127
7228
  if (typeof IntersectionObserver === "undefined" || headings.length === 0) return;
7128
7229
  const elements = headings.map((heading) => document.getElementById(heading.id)).filter((el) => el !== null);
@@ -7337,8 +7438,8 @@ var ParallaxBanner = ({
7337
7438
  };
7338
7439
 
7339
7440
  // templates/TradingCalculator/TradingCalculator.tsx
7340
- import { useCallback as useCallback5, useEffect as useEffect16, useId as useId4, useMemo as useMemo7, useRef as useRef19, useState as useState21 } from "react";
7341
- import { Fragment as Fragment10, jsx as jsx56, jsxs as jsxs52 } from "react/jsx-runtime";
7441
+ import { useCallback as useCallback5, useEffect as useEffect16, useId as useId4, useMemo as useMemo7, useRef as useRef19, useState as useState22 } from "react";
7442
+ import { Fragment as Fragment11, jsx as jsx56, jsxs as jsxs52 } from "react/jsx-runtime";
7342
7443
  var DEFAULT_SYMBOLS_ENDPOINT = "https://deriv-static-pricingfeedv2.firebaseio.com/n8n/row/prod/dynamic_trading_specs.json";
7343
7444
  var DEFAULT_EXCHANGE_RATE_WS_URL = "wss://ws.derivws.com/websockets/v3?app_id=1089";
7344
7445
  var USD = "USD";
@@ -7451,10 +7552,10 @@ function useExchangeRates(wsUrl) {
7451
7552
  return getRates;
7452
7553
  }
7453
7554
  function useSymbols(symbolsProp, endpoint) {
7454
- const [state, setState] = useState21(
7555
+ const [state, setState] = useState22(
7455
7556
  symbolsProp ? { status: "ready", data: symbolsProp } : { status: "loading" }
7456
7557
  );
7457
- const [retryToken, setRetryToken] = useState21(0);
7558
+ const [retryToken, setRetryToken] = useState22(0);
7458
7559
  useEffect16(() => {
7459
7560
  if (symbolsProp) {
7460
7561
  setState({ status: "ready", data: symbolsProp });
@@ -7499,9 +7600,9 @@ function groupByAssetClass(symbols) {
7499
7600
  return [...groups.entries()];
7500
7601
  }
7501
7602
  var SymbolCombobox = ({ symbolsState, onRetry, selected, onSelect, error, inputId }) => {
7502
- const [query, setQuery] = useState21("");
7503
- const [isOpen, setIsOpen] = useState21(false);
7504
- const [activeIndex, setActiveIndex] = useState21(-1);
7603
+ const [query, setQuery] = useState22("");
7604
+ const [isOpen, setIsOpen] = useState22(false);
7605
+ const [activeIndex, setActiveIndex] = useState22(-1);
7505
7606
  const wrapperRef = useRef19(null);
7506
7607
  const listboxId = useId4();
7507
7608
  const isLoading = symbolsState.status === "loading";
@@ -7555,7 +7656,7 @@ var SymbolCombobox = ({ symbolsState, onRetry, selected, onSelect, error, inputI
7555
7656
  SearchField,
7556
7657
  {
7557
7658
  id: inputId,
7558
- label: /* @__PURE__ */ jsxs52(Fragment10, { children: [
7659
+ label: /* @__PURE__ */ jsxs52(Fragment11, { children: [
7559
7660
  "Symbols ",
7560
7661
  /* @__PURE__ */ jsx56("span", { className: "tcalc-required", children: "*" })
7561
7662
  ] }),
@@ -7658,13 +7759,13 @@ var TradingCalculator = ({
7658
7759
  const showTradeVolume = variant === "main";
7659
7760
  const [symbolsState, retrySymbols] = useSymbols(symbolsProp, symbolsEndpoint);
7660
7761
  const getRates = useExchangeRates(exchangeRateWsUrl);
7661
- const [selectedSymbol, setSelectedSymbol] = useState21(null);
7662
- const [volumeInLots, setVolumeInLots] = useState21("");
7663
- const [assetPrice, setAssetPrice] = useState21("");
7664
- const [errors, setErrors] = useState21({});
7665
- const [results, setResults] = useState21(null);
7666
- const [isCalculating, setIsCalculating] = useState21(false);
7667
- const [calcError, setCalcError] = useState21(null);
7762
+ const [selectedSymbol, setSelectedSymbol] = useState22(null);
7763
+ const [volumeInLots, setVolumeInLots] = useState22("");
7764
+ const [assetPrice, setAssetPrice] = useState22("");
7765
+ const [errors, setErrors] = useState22({});
7766
+ const [results, setResults] = useState22(null);
7767
+ const [isCalculating, setIsCalculating] = useState22(false);
7768
+ const [calcError, setCalcError] = useState22(null);
7668
7769
  const didPreselect = useRef19(false);
7669
7770
  useEffect16(() => {
7670
7771
  if (didPreselect.current || !defaultSymbol || symbolsState.status !== "ready") return;
@@ -7755,7 +7856,7 @@ var TradingCalculator = ({
7755
7856
  {
7756
7857
  id: volumeInputId,
7757
7858
  className: "tcalc-numberField",
7758
- label: /* @__PURE__ */ jsxs52(Fragment10, { children: [
7859
+ label: /* @__PURE__ */ jsxs52(Fragment11, { children: [
7759
7860
  "Volume in Lots ",
7760
7861
  /* @__PURE__ */ jsx56("span", { className: "tcalc-required", children: "*" })
7761
7862
  ] }),
@@ -7790,7 +7891,7 @@ var TradingCalculator = ({
7790
7891
  {
7791
7892
  id: priceInputId,
7792
7893
  className: "tcalc-numberField",
7793
- label: /* @__PURE__ */ jsxs52(Fragment10, { children: [
7894
+ label: /* @__PURE__ */ jsxs52(Fragment11, { children: [
7794
7895
  "Asset price ",
7795
7896
  /* @__PURE__ */ jsx56("span", { className: "tcalc-required", children: "*" })
7796
7897
  ] }),
@@ -7856,7 +7957,7 @@ var TradingCalculator = ({
7856
7957
  " ",
7857
7958
  calcError
7858
7959
  ] }),
7859
- showSwap && /* @__PURE__ */ jsxs52(Fragment10, { children: [
7960
+ showSwap && /* @__PURE__ */ jsxs52(Fragment11, { children: [
7860
7961
  /* @__PURE__ */ jsxs52("div", { className: "tcalc-infoGrid", children: [
7861
7962
  /* @__PURE__ */ jsx56(InfoRow, { label: "Swap long rate", value: selectedSymbol ? String(selectedSymbol.swap_rate_long) : "-" }),
7862
7963
  /* @__PURE__ */ jsx56(InfoRow, { label: "Swap short rate", value: selectedSymbol ? String(selectedSymbol.swap_rate_short) : "-" })
@@ -7870,8 +7971,8 @@ var TradingCalculator = ({
7870
7971
  };
7871
7972
 
7872
7973
  // templates/TradingCalculatorHowTo/TradingCalculatorHowTo.tsx
7873
- import { Fragment as Fragment11, useEffect as useEffect17, useLayoutEffect as useLayoutEffect3, useRef as useRef20, useState as useState22 } from "react";
7874
- import { Fragment as Fragment12, jsx as jsx57, jsxs as jsxs53 } from "react/jsx-runtime";
7974
+ import { Fragment as Fragment12, useEffect as useEffect17, useLayoutEffect as useLayoutEffect3, useRef as useRef20, useState as useState23 } from "react";
7975
+ import { Fragment as Fragment13, jsx as jsx57, jsxs as jsxs53 } from "react/jsx-runtime";
7875
7976
  var MARGIN_CONTENT = {
7876
7977
  title: "How to calculate margin requirements",
7877
7978
  description: "Use this formula to calculate how much margin is required based on your lot size, leverage ratio, and the current market price.",
@@ -8045,7 +8146,7 @@ var ConnectorArrow = () => /* @__PURE__ */ jsxs53("svg", { width: "8", height: "
8045
8146
  var CalculationStrip = ({ tokens }) => {
8046
8147
  const wrapperRef = useRef20(null);
8047
8148
  const stripRef = useRef20(null);
8048
- const [fit, setFit] = useState22({ scale: 1, naturalHeight: 0 });
8149
+ const [fit, setFit] = useState23({ scale: 1, naturalHeight: 0 });
8049
8150
  useIsomorphicLayoutEffect(() => {
8050
8151
  const wrapper = wrapperRef.current;
8051
8152
  const strip = stripRef.current;
@@ -8082,7 +8183,7 @@ var CalculationStrip = ({ tokens }) => {
8082
8183
  style: isShrunk ? { transform: `scale(${fit.scale})` } : void 0,
8083
8184
  role: "img",
8084
8185
  "aria-label": tokens.map((token) => token.text).join(" "),
8085
- children: tokens.map((token, i) => /* @__PURE__ */ jsxs53(Fragment11, { children: [
8186
+ children: tokens.map((token, i) => /* @__PURE__ */ jsxs53(Fragment12, { children: [
8086
8187
  /* @__PURE__ */ jsx57(
8087
8188
  "span",
8088
8189
  {
@@ -8100,7 +8201,7 @@ var CalculationStrip = ({ tokens }) => {
8100
8201
  )
8101
8202
  }
8102
8203
  ),
8103
- /* @__PURE__ */ jsx57("span", { className: "tchow-stripCaption", "aria-hidden": "true", children: token.label && /* @__PURE__ */ jsxs53(Fragment12, { children: [
8204
+ /* @__PURE__ */ jsx57("span", { className: "tchow-stripCaption", "aria-hidden": "true", children: token.label && /* @__PURE__ */ jsxs53(Fragment13, { children: [
8104
8205
  /* @__PURE__ */ jsx57(ConnectorArrow, {}),
8105
8206
  /* @__PURE__ */ jsx57(
8106
8207
  "span",
@@ -8127,7 +8228,7 @@ var TradingCalculatorHowTo = ({
8127
8228
  ...props
8128
8229
  }) => {
8129
8230
  const isSwap = variant === "swap-points" || variant === "swap-percentage";
8130
- const [swapTab, setSwapTab] = useState22(() => swapModeForVariant(variant));
8231
+ const [swapTab, setSwapTab] = useState23(() => swapModeForVariant(variant));
8131
8232
  useEffect17(() => {
8132
8233
  setSwapTab(swapModeForVariant(variant));
8133
8234
  }, [variant]);
@@ -8166,7 +8267,7 @@ var TradingCalculatorHowTo = ({
8166
8267
  };
8167
8268
 
8168
8269
  // templates/FeatureOffices/FeatureOffices.tsx
8169
- import { useMemo as useMemo8, useState as useState23 } from "react";
8270
+ import { useMemo as useMemo8, useState as useState24 } from "react";
8170
8271
  import { jsx as jsx58, jsxs as jsxs54 } from "react/jsx-runtime";
8171
8272
  var isExternalUrl2 = (href) => Boolean(href && /^https?:\/\//i.test(href));
8172
8273
  var FEATURE_OFFICES_TEXT_CONTENT = {
@@ -8220,7 +8321,7 @@ var FeatureOffices = ({
8220
8321
  className,
8221
8322
  ...props
8222
8323
  }) => {
8223
- const [internalActiveId, setInternalActiveId] = useState23(
8324
+ const [internalActiveId, setInternalActiveId] = useState24(
8224
8325
  defaultActiveRegionId ?? regions[0]?.id
8225
8326
  );
8226
8327
  const isControlled = activeRegionId !== void 0;
@@ -8487,9 +8588,9 @@ import {
8487
8588
  useEffect as useEffect18,
8488
8589
  useId as useId5,
8489
8590
  useRef as useRef21,
8490
- useState as useState24
8591
+ useState as useState25
8491
8592
  } from "react";
8492
- import { Fragment as Fragment13, jsx as jsx63, jsxs as jsxs59 } from "react/jsx-runtime";
8593
+ import { Fragment as Fragment14, jsx as jsx63, jsxs as jsxs59 } from "react/jsx-runtime";
8493
8594
  var OPTIONS_TYPES_PLACEHOLDER_ITEMS = [
8494
8595
  {
8495
8596
  id: "option-type",
@@ -8500,7 +8601,7 @@ var OPTIONS_TYPES_PLACEHOLDER_ITEMS = [
8500
8601
  platforms: [{ label: "Platform" }]
8501
8602
  }
8502
8603
  ];
8503
- function safeHref(value) {
8604
+ function safeHref2(value) {
8504
8605
  if (!value) return null;
8505
8606
  if (value.startsWith("/") && !value.startsWith("//")) return value;
8506
8607
  try {
@@ -8510,8 +8611,8 @@ function safeHref(value) {
8510
8611
  return null;
8511
8612
  }
8512
8613
  }
8513
- function safeLottieSrc(value) {
8514
- const href = safeHref(value);
8614
+ function safeLottieSrc2(value) {
8615
+ const href = safeHref2(value);
8515
8616
  if (!href) return null;
8516
8617
  try {
8517
8618
  const pathname = href.startsWith("/") ? href : new URL(href).pathname;
@@ -8543,7 +8644,7 @@ var iconPaths = {
8543
8644
  ]
8544
8645
  };
8545
8646
  function MetaIcon({ icon, iconUrl }) {
8546
- const imageSrc = safeHref(iconUrl);
8647
+ const imageSrc = safeHref2(iconUrl);
8547
8648
  if (imageSrc) {
8548
8649
  return /* @__PURE__ */ jsx63(
8549
8650
  "img",
@@ -8567,18 +8668,18 @@ function MetaIcon({ icon, iconUrl }) {
8567
8668
  }
8568
8669
  function MetaList({ items = [] }) {
8569
8670
  return /* @__PURE__ */ jsx63("ul", { className: "ot__meta-list", children: items.map((item, index) => {
8570
- const href = safeHref(item.href);
8571
- const content = /* @__PURE__ */ jsxs59(Fragment13, { children: [
8671
+ const href = safeHref2(item.href);
8672
+ const content = /* @__PURE__ */ jsxs59(Fragment14, { children: [
8572
8673
  /* @__PURE__ */ jsx63(MetaIcon, { icon: item.icon, iconUrl: item.iconUrl }),
8573
8674
  /* @__PURE__ */ jsx63("span", { children: item.label })
8574
8675
  ] });
8575
8676
  return /* @__PURE__ */ jsx63("li", { children: href ? /* @__PURE__ */ jsx63("a", { href, children: content }) : /* @__PURE__ */ jsx63("span", { children: content }) }, `${item.label}-${index}`);
8576
8677
  }) });
8577
8678
  }
8578
- function PlaybackGlyph({ playing }) {
8679
+ function PlaybackGlyph2({ playing }) {
8579
8680
  return /* @__PURE__ */ jsxs59("svg", { className: "ot__control-icon", viewBox: "0 0 64 64", "aria-hidden": "true", children: [
8580
8681
  /* @__PURE__ */ jsx63("circle", { className: "ot__control-disc", cx: "32", cy: "32", r: "32" }),
8581
- playing ? /* @__PURE__ */ jsxs59(Fragment13, { children: [
8682
+ playing ? /* @__PURE__ */ jsxs59(Fragment14, { children: [
8582
8683
  /* @__PURE__ */ jsx63("rect", { className: "ot__control-glyph", x: "23", y: "21", width: "6", height: "22", rx: "2" }),
8583
8684
  /* @__PURE__ */ jsx63("rect", { className: "ot__control-glyph", x: "35", y: "21", width: "6", height: "22", rx: "2" })
8584
8685
  ] }) : /* @__PURE__ */ jsx63(
@@ -8596,8 +8697,8 @@ function AnimationCard({
8596
8697
  playing,
8597
8698
  onToggle
8598
8699
  }) {
8599
- const src = safeLottieSrc(animation.src);
8600
- const posterSrc = safeHref(animation.posterUrl);
8700
+ const src = safeLottieSrc2(animation.src);
8701
+ const posterSrc = safeHref2(animation.posterUrl);
8601
8702
  const controlId = `ot-animation-${itemId}-${animation.id ?? animation.label}`.replace(/[^a-zA-Z0-9_-]/g, "-");
8602
8703
  return /* @__PURE__ */ jsxs59("div", { className: "ot__animation-card", children: [
8603
8704
  /* @__PURE__ */ jsx63("div", { id: controlId, className: "ot__animation-media", "aria-hidden": "true", children: src ? /* @__PURE__ */ jsx63(
@@ -8629,7 +8730,7 @@ function AnimationCard({
8629
8730
  "aria-pressed": playing,
8630
8731
  "aria-label": `${playing ? "Pause" : "Play"} ${animation.label} animation`,
8631
8732
  onClick: onToggle,
8632
- children: /* @__PURE__ */ jsx63(PlaybackGlyph, { playing })
8733
+ children: /* @__PURE__ */ jsx63(PlaybackGlyph2, { playing })
8633
8734
  }
8634
8735
  ) : null
8635
8736
  ] });
@@ -8695,7 +8796,7 @@ function TogglePanel({
8695
8796
  setPlaying
8696
8797
  }) {
8697
8798
  const animations = item.animations;
8698
- const [activeIndex, setActiveIndex] = useState24(0);
8799
+ const [activeIndex, setActiveIndex] = useState25(0);
8699
8800
  const switchRefs = useRef21([]);
8700
8801
  const safeIndex = Math.min(activeIndex, Math.max(animations.length - 1, 0));
8701
8802
  useEffect18(() => {
@@ -8758,7 +8859,7 @@ function TogglePanel({
8758
8859
  onKeyDown: onSwitchKeyDown,
8759
8860
  children: animations.map((animation, index) => {
8760
8861
  const isActive = index === safeIndex;
8761
- const iconUrl = safeHref(animation.iconUrl);
8862
+ const iconUrl = safeHref2(animation.iconUrl);
8762
8863
  return /* @__PURE__ */ jsx63(
8763
8864
  "button",
8764
8865
  {
@@ -8821,11 +8922,11 @@ function OptionsTypes({
8821
8922
  ...props
8822
8923
  }) {
8823
8924
  const usableItems = Array.isArray(items) ? items.filter((item) => item?.id) : [];
8824
- const [internalActiveId, setInternalActiveId] = useState24(
8925
+ const [internalActiveId, setInternalActiveId] = useState25(
8825
8926
  defaultActiveId ?? usableItems[0]?.id ?? ""
8826
8927
  );
8827
8928
  const selectedId = usableItems.find((item) => item.id === activeId)?.id ?? usableItems.find((item) => item.id === internalActiveId)?.id ?? usableItems[0]?.id ?? "";
8828
- const [playing, setPlaying] = useState24({});
8929
+ const [playing, setPlaying] = useState25({});
8829
8930
  const generatedId = useId5().replace(/:/g, "");
8830
8931
  const tabPrefix = `options-types-${generatedId}`;
8831
8932
  const Heading = headingLevel;
@@ -9245,7 +9346,7 @@ var CountryLinkGrid = ({
9245
9346
  };
9246
9347
 
9247
9348
  // templates/DocumentChips/DocumentChips.tsx
9248
- import { useState as useState25 } from "react";
9349
+ import { useState as useState26 } from "react";
9249
9350
  import { jsx as jsx66, jsxs as jsxs62 } from "react/jsx-runtime";
9250
9351
  var DEFAULT_GROUPS = [
9251
9352
  {
@@ -9349,7 +9450,7 @@ var DocumentChips = ({
9349
9450
  }) => {
9350
9451
  const resolvedGroups = groups && groups.length > 0 ? groups : DEFAULT_GROUPS;
9351
9452
  const groupKeys = resolvedGroups.map((group, i) => String(group.id ?? i));
9352
- const [openKeys, setOpenKeys] = useState25(void 0);
9453
+ const [openKeys, setOpenKeys] = useState26(void 0);
9353
9454
  const resolvedOpenKeys = openKeys === void 0 ? groupKeys.slice(0, 1) : openKeys;
9354
9455
  const handleToggle = (key, next) => {
9355
9456
  setOpenKeys((current) => {
@@ -9613,7 +9714,7 @@ var LanguageSelectModal = ({
9613
9714
  };
9614
9715
 
9615
9716
  // templates/AffiliatesSlider/AffiliatesSlider.tsx
9616
- import { useCallback as useCallback7, useMemo as useMemo9, useState as useState26 } from "react";
9717
+ import { useCallback as useCallback7, useMemo as useMemo9, useState as useState27 } from "react";
9617
9718
  import { jsx as jsx69, jsxs as jsxs65 } from "react/jsx-runtime";
9618
9719
  var ArrowIcon2 = () => /* @__PURE__ */ jsx69(
9619
9720
  "svg",
@@ -9698,7 +9799,7 @@ var AffiliatesSlider = ({
9698
9799
  className,
9699
9800
  ...props
9700
9801
  }) => {
9701
- const [internalValue, setInternalValue] = useState26(defaultValue);
9802
+ const [internalValue, setInternalValue] = useState27(defaultValue);
9702
9803
  const currentValue = value ?? internalValue;
9703
9804
  const handleChange = useCallback7(
9704
9805
  (next) => {