@deframe-sdk/components 0.1.50 → 0.1.52

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
@@ -3130,8 +3130,8 @@ function KYCPageHeader({
3130
3130
  onBack,
3131
3131
  onClose,
3132
3132
  className,
3133
- backLabel,
3134
- closeLabel
3133
+ backLabel = "Voltar",
3134
+ closeLabel = "Fechar"
3135
3135
  }) {
3136
3136
  return /* @__PURE__ */ jsxs(
3137
3137
  "div",
@@ -3273,13 +3273,6 @@ function KYCFormPage({
3273
3273
  ] })
3274
3274
  ] });
3275
3275
  }
3276
- function CountrySelect() {
3277
- const [value, setValue] = useState("brasil");
3278
- return /* @__PURE__ */ jsxs(Select, { value, onValueChange: setValue, children: [
3279
- /* @__PURE__ */ jsx(SelectTrigger, { placeholder: "Selecione o pa\xEDs" }),
3280
- /* @__PURE__ */ jsx(SelectContent, { children: /* @__PURE__ */ jsx(SelectItem, { value: "brasil", children: "Brasil" }) })
3281
- ] });
3282
- }
3283
3276
  function DefaultAddressLoadingContent() {
3284
3277
  return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
3285
3278
  /* @__PURE__ */ jsx(Skeleton, { width: "100%", height: "48px", variant: "rect" }),
@@ -3354,7 +3347,7 @@ function KYCAddressPage({
3354
3347
  className: "flex flex-col gap-[var(--deframe-widget-size-gap-xs)]",
3355
3348
  children: [
3356
3349
  /* @__PURE__ */ jsx(InputLabel, { htmlFor: "country", children: "Pa\xEDs" }),
3357
- /* @__PURE__ */ jsx(CountrySelect, {})
3350
+ /* @__PURE__ */ jsx(InputField, { id: "country", value: "Brasil", disabled: true, readOnly: true })
3358
3351
  ]
3359
3352
  }
3360
3353
  )
@@ -3556,10 +3549,21 @@ function KYCIntroPage({
3556
3549
  primaryAction,
3557
3550
  className,
3558
3551
  containerMode = "fullscreen",
3559
- backLabel,
3560
- closeLabel
3552
+ backLabel = "Voltar",
3553
+ closeLabel = "Fechar",
3554
+ visualVariant = "default"
3561
3555
  }) {
3562
- return /* @__PURE__ */ jsxs(KYCPageShell, { screenId, containerMode, children: [
3556
+ const isCompact = visualVariant === "compact";
3557
+ const iconClasses = twMerge(
3558
+ "flex items-center justify-center text-[color:var(--deframe-widget-color-brand-primary)]",
3559
+ isCompact ? "h-[44px] w-[44px]" : [
3560
+ "h-[64px] w-[64px] rounded-[var(--deframe-widget-size-radius-full)]",
3561
+ "[background:color-mix(in_srgb,var(--deframe-widget-color-brand-primary)_12%,transparent)]",
3562
+ "[box-shadow:0_0_0_7px_color-mix(in_srgb,var(--deframe-widget-color-brand-primary)_12%,transparent),0_0_24px_color-mix(in_srgb,var(--deframe-widget-color-brand-primary)_22%,transparent)]"
3563
+ ].join(" ")
3564
+ );
3565
+ const iconSize = isCompact ? 32 : 36;
3566
+ return /* @__PURE__ */ jsxs(KYCPageShell, { screenId, containerMode, className: isCompact ? "min-h-0" : void 0, children: [
3563
3567
  onClose && /* @__PURE__ */ jsx(KYCPageHeader, { onClose, backLabel, closeLabel }),
3564
3568
  /* @__PURE__ */ jsxs(
3565
3569
  "div",
@@ -3576,13 +3580,8 @@ function KYCIntroPage({
3576
3580
  "div",
3577
3581
  {
3578
3582
  "data-test-id": "kyc-intro-icon",
3579
- className: "flex h-[64px] w-[64px] items-center justify-center rounded-[var(--deframe-widget-size-radius-full)]",
3580
- style: {
3581
- background: "color-mix(in srgb, var(--deframe-widget-color-brand-primary) 12%, transparent)",
3582
- boxShadow: "0 0 0 7px color-mix(in srgb, var(--deframe-widget-color-brand-primary) 12%, transparent), 0 0 24px color-mix(in srgb, var(--deframe-widget-color-brand-primary) 22%, transparent)",
3583
- color: "var(--deframe-widget-color-brand-primary)"
3584
- },
3585
- children: /* @__PURE__ */ jsxs("svg", { width: "36", height: "36", viewBox: "0 0 44 44", fill: "none", "aria-hidden": "true", children: [
3583
+ className: iconClasses,
3584
+ children: /* @__PURE__ */ jsxs("svg", { width: iconSize, height: iconSize, viewBox: "0 0 44 44", fill: "none", "aria-hidden": "true", children: [
3586
3585
  /* @__PURE__ */ jsx("rect", { x: "8", y: "10", width: "28", height: "20", rx: "3", stroke: "currentColor", strokeWidth: "3" }),
3587
3586
  /* @__PURE__ */ jsx("circle", { cx: "22", cy: "20", r: "5", stroke: "currentColor", strokeWidth: "3" }),
3588
3587
  /* @__PURE__ */ jsx("path", { d: "M12 34c0-4 4.5-7 10-7s10 3 10 7", stroke: "currentColor", strokeWidth: "3", strokeLinecap: "round" })
@@ -3633,22 +3632,34 @@ function KYCLoadingPage({
3633
3632
  note,
3634
3633
  className,
3635
3634
  containerMode = "fullscreen",
3636
- backLabel,
3637
- closeLabel,
3638
- loadingLabel
3635
+ backLabel = "Voltar",
3636
+ closeLabel = "Fechar",
3637
+ loadingLabel = "Carregando",
3638
+ visualVariant = "default"
3639
3639
  }) {
3640
- return /* @__PURE__ */ jsxs(KYCPageShell, { screenId, className, containerMode, children: [
3640
+ const isCompact = visualVariant === "compact";
3641
+ const loadingFrameClasses = twMerge(
3642
+ "flex items-center justify-center rounded-[var(--deframe-widget-size-radius-full)]",
3643
+ isCompact ? "h-12 w-12" : [
3644
+ "h-[72px] w-[72px]",
3645
+ "[background:color-mix(in_srgb,var(--deframe-widget-color-brand-primary)_12%,transparent)]",
3646
+ "[box-shadow:0_0_0_7px_color-mix(in_srgb,var(--deframe-widget-color-brand-primary)_12%,transparent),0_0_24px_color-mix(in_srgb,var(--deframe-widget-color-brand-primary)_22%,transparent)]"
3647
+ ].join(" ")
3648
+ );
3649
+ const spinnerClasses = twMerge(
3650
+ "rounded-[var(--deframe-widget-size-radius-full)] border-[3px] border-[color:var(--deframe-widget-color-brand-primary)] border-t-transparent animate-spin",
3651
+ isCompact ? "h-10 w-10" : "h-9 w-9"
3652
+ );
3653
+ return /* @__PURE__ */ jsxs(KYCPageShell, { screenId, className: twMerge(isCompact && "min-h-0", className), containerMode, children: [
3641
3654
  onClose && /* @__PURE__ */ jsx(KYCPageHeader, { onClose, backLabel, closeLabel }),
3642
3655
  /* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col items-center justify-center gap-[var(--deframe-widget-size-gap-xl)] px-[var(--deframe-widget-size-padding-x-md)] py-[var(--deframe-widget-size-padding-y-xl)] text-center", children: [
3643
3656
  /* @__PURE__ */ jsx(
3644
3657
  "div",
3645
3658
  {
3646
- className: "flex h-[72px] w-[72px] items-center justify-center rounded-[var(--deframe-widget-size-radius-full)]",
3647
- style: {
3648
- background: "color-mix(in srgb, var(--deframe-widget-color-brand-primary) 12%, transparent)",
3649
- boxShadow: "0 0 0 7px color-mix(in srgb, var(--deframe-widget-color-brand-primary) 12%, transparent), 0 0 24px color-mix(in srgb, var(--deframe-widget-color-brand-primary) 22%, transparent)"
3650
- },
3651
- children: /* @__PURE__ */ jsx("div", { className: "h-9 w-9 rounded-full border-[3px] border-[color:var(--deframe-widget-color-brand-primary)] border-t-transparent animate-spin" })
3659
+ "data-slot": "kyc-loading-indicator",
3660
+ "data-test-id": "kyc-loading-indicator",
3661
+ className: loadingFrameClasses,
3662
+ children: /* @__PURE__ */ jsx("div", { className: spinnerClasses })
3652
3663
  }
3653
3664
  ),
3654
3665
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-[var(--deframe-widget-size-gap-xs)]", children: [
@@ -3656,9 +3667,8 @@ function KYCLoadingPage({
3656
3667
  description && /* @__PURE__ */ jsx("p", { className: "text-[length:var(--deframe-widget-font-size-sm)] leading-[var(--deframe-widget-font-leading-sm)] text-[color:var(--deframe-widget-color-text-tertiary)]", children: description })
3657
3668
  ] }),
3658
3669
  note && /* @__PURE__ */ jsx(KYCMessageBanner, { variant: "info", children: note }),
3659
- /* @__PURE__ */ jsxs("div", { className: "text-[length:var(--deframe-widget-font-size-xs)] text-[color:var(--deframe-widget-color-text-tertiary)]", children: [
3660
- loadingLabel,
3661
- " ",
3670
+ /* @__PURE__ */ jsxs("div", { className: "inline-flex items-center justify-center gap-[var(--deframe-widget-size-gap-xs)] text-[length:var(--deframe-widget-font-size-xs)] text-[color:var(--deframe-widget-color-text-tertiary)]", children: [
3671
+ /* @__PURE__ */ jsx("span", { children: loadingLabel }),
3662
3672
  /* @__PURE__ */ jsx(LoadingDots, {})
3663
3673
  ] })
3664
3674
  ] })
@@ -3888,7 +3898,7 @@ var STATUS_STYLES = {
3888
3898
  }
3889
3899
  };
3890
3900
  function resolveStatusBadgeTone(status = "SUCCESS") {
3891
- if (status === "PENDING") return "pending";
3901
+ if (status === "PENDING" || status === "INITIAL") return "pending";
3892
3902
  if (status === "FAILED") return "failed";
3893
3903
  if (status === "REFUNDED") return "refunded";
3894
3904
  return "success";
@@ -9006,6 +9016,11 @@ var variantStyles2 = {
9006
9016
  dotClass: "bg-[var(--deframe-widget-color-state-warning)]",
9007
9017
  labelClass: "text-[color:var(--deframe-widget-color-state-warning)]"
9008
9018
  },
9019
+ INITIAL: {
9020
+ wrapper: "bg-[color:color-mix(in_srgb,var(--deframe-widget-color-state-warning)_16%,transparent)] border-[color:color-mix(in_srgb,var(--deframe-widget-color-state-warning)_32%,transparent)]",
9021
+ dotClass: "bg-[var(--deframe-widget-color-state-warning)]",
9022
+ labelClass: "text-[color:var(--deframe-widget-color-state-warning)]"
9023
+ },
9009
9024
  FAILED: {
9010
9025
  wrapper: "bg-[color:color-mix(in_srgb,var(--deframe-widget-color-state-error)_16%,transparent)] border-[color:color-mix(in_srgb,var(--deframe-widget-color-state-error)_32%,transparent)]",
9011
9026
  dotClass: "bg-[var(--deframe-widget-color-state-error)]",
@@ -9020,6 +9035,7 @@ var variantStyles2 = {
9020
9035
  var STATUS_LABEL_KEY = {
9021
9036
  SUCCESS: "success",
9022
9037
  PENDING: "pending",
9038
+ INITIAL: "pending",
9023
9039
  FAILED: "failed",
9024
9040
  REFUNDED: "refunded"
9025
9041
  };
@@ -10696,14 +10712,14 @@ var EarnDesktopViewSimple = ({
10696
10712
  });
10697
10713
  }, [categories, strategies, labels == null ? void 0 : labels.stablecoinsBannerDescription, labels == null ? void 0 : labels.realsBannerDescription]);
10698
10714
  const historyByAsset = React6__default.useMemo(() => {
10699
- var _a, _b, _c, _d;
10715
+ var _a, _b, _c, _d, _e;
10700
10716
  const map = /* @__PURE__ */ new Map();
10701
10717
  for (const item of historyItems) {
10702
10718
  const isDeposit = item.type.includes("DEPOSIT");
10703
- const assetIn = (_a = item.amounts) == null ? void 0 : _a.assetIn;
10704
- const symbol = (_d = assetIn && "token" in assetIn ? (_c = (_b = assetIn.token) == null ? void 0 : _b.symbol) == null ? void 0 : _c.toUpperCase() : null) != null ? _d : "";
10719
+ const primaryAsset = isDeposit ? (_a = item.amounts) == null ? void 0 : _a.assetIn : (_b = item.amounts) == null ? void 0 : _b.assetOut;
10720
+ const symbol = (_e = primaryAsset && "token" in primaryAsset ? (_d = (_c = primaryAsset.token) == null ? void 0 : _c.symbol) == null ? void 0 : _d.toUpperCase() : null) != null ? _e : "";
10705
10721
  if (!symbol) continue;
10706
- const amount = assetIn && "amountInUSD" in assetIn && assetIn.amountInUSD ? formatCurrency(parseFloat(assetIn.amountInUSD)) : assetIn && "amountHumanized" in assetIn ? `${assetIn.amountHumanized} ${symbol}` : "";
10722
+ const amount = primaryAsset && "amountInUSD" in primaryAsset && primaryAsset.amountInUSD ? formatCurrency(parseFloat(primaryAsset.amountInUSD)) : primaryAsset && "amountHumanized" in primaryAsset ? `${primaryAsset.amountHumanized} ${symbol}` : "";
10707
10723
  const date = new Date(item.createdAt).toLocaleString(locale, {
10708
10724
  day: "2-digit",
10709
10725
  month: "2-digit",