@deframe-sdk/components 0.1.78 → 0.1.79

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.js CHANGED
@@ -12340,6 +12340,7 @@ var EarnAmountInputView = ({
12340
12340
  onChange,
12341
12341
  ariaLabel,
12342
12342
  dollarAmountFormatted,
12343
+ disabled,
12343
12344
  availableBalanceFormatted
12344
12345
  }) => {
12345
12346
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 flex flex-col items-end justify-between min-h-[86px] text-right", children: [
@@ -12353,6 +12354,7 @@ var EarnAmountInputView = ({
12353
12354
  autoComplete: "off",
12354
12355
  "aria-label": ariaLabel,
12355
12356
  value,
12357
+ disabled,
12356
12358
  min: "0",
12357
12359
  step: "any",
12358
12360
  className: "[font-size:var(--deframe-widget-font-size-xxl)] [font-weight:var(--deframe-widget-font-weight-extrabold)] bg-transparent outline-none text-right w-full min-w-[105px] placeholder:text-[color:var(--deframe-widget-color-text-primary-disabled)] [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none",
@@ -13009,7 +13011,8 @@ var EarnAmountInputSimpleView = ({
13009
13011
  value,
13010
13012
  onChange,
13011
13013
  ariaLabel,
13012
- dollarAmountFormatted
13014
+ dollarAmountFormatted,
13015
+ disabled
13013
13016
  }) => {
13014
13017
  const isEmpty = !value || value === "0";
13015
13018
  const fontSizeClass = useResponsiveFontSize(value || "");
@@ -13050,9 +13053,10 @@ var EarnAmountInputSimpleView = ({
13050
13053
  placeholder: "0",
13051
13054
  "aria-label": ariaLabel,
13052
13055
  value,
13056
+ disabled,
13053
13057
  onChange,
13054
13058
  onWheel: (e) => e.currentTarget.blur(),
13055
- className: inputClasses
13059
+ className: tailwindMerge.twMerge(inputClasses, "disabled:cursor-not-allowed disabled:opacity-50")
13056
13060
  }
13057
13061
  ),
13058
13062
  dollarAmountFormatted && /* @__PURE__ */ jsxRuntime.jsx(
@@ -18937,6 +18941,388 @@ var OfframpFailedSimpleView = () => {
18937
18941
  }
18938
18942
  ) });
18939
18943
  };
18944
+
18945
+ // src/stories/wallet-transfer-flow-view/layoutClasses.ts
18946
+ var walletTransferFrameClasses = [
18947
+ "relative mx-auto mt-[40px] flex w-[620px] max-w-[calc(100vw-32px)] flex-col overflow-hidden",
18948
+ "rounded-[var(--deframe-widget-size-radius-xs)]",
18949
+ "bg-[var(--deframe-widget-color-bg-subtle)]",
18950
+ "px-[var(--deframe-widget-size-padding-x-lg)] py-[var(--deframe-widget-size-padding-y-lg)]",
18951
+ "font-[var(--deframe-widget-font-family)]",
18952
+ "text-[color:var(--deframe-widget-color-text-primary)]"
18953
+ ].join(" ");
18954
+ var walletTransferHeaderClasses = [
18955
+ "flex items-start gap-[var(--deframe-widget-size-gap-sm)]",
18956
+ "px-[var(--deframe-widget-size-padding-x-sm)]"
18957
+ ].join(" ");
18958
+ var walletTransferTitleClasses = [
18959
+ "text-[21px]",
18960
+ "[font-weight:var(--deframe-widget-font-weight-bold)]",
18961
+ "leading-[1.2]",
18962
+ "text-[color:var(--deframe-widget-color-text-primary)]"
18963
+ ].join(" ");
18964
+ var walletTransferSubtitleClasses = [
18965
+ "mt-[var(--deframe-widget-size-gap-xs)]",
18966
+ "text-[14px]",
18967
+ "leading-[1.35]",
18968
+ "text-[color:var(--deframe-widget-color-text-primary)]"
18969
+ ].join(" ");
18970
+ var walletTransferBodyClasses = [
18971
+ "flex flex-col gap-[var(--deframe-widget-size-gap-md)]",
18972
+ "px-[var(--deframe-widget-size-padding-x-sm)]",
18973
+ "py-[var(--deframe-widget-size-padding-y-md)]"
18974
+ ].join(" ");
18975
+ var walletTransferInputCardClasses = [
18976
+ "rounded-[var(--deframe-widget-size-radius-sm)]",
18977
+ "border border-[color:var(--deframe-widget-color-border-secondary)]",
18978
+ "bg-[var(--deframe-widget-color-bg-subtle)]",
18979
+ "px-[var(--deframe-widget-size-padding-x-md)] py-[var(--deframe-widget-size-padding-y-md)]"
18980
+ ].join(" ");
18981
+ var walletTransferTokenSelectorClasses = [
18982
+ "bg-[var(--deframe-widget-color-bg-raised)]",
18983
+ "hover:bg-[color:color-mix(in_srgb,var(--deframe-widget-color-bg-raised)_92%,transparent)]"
18984
+ ].join(" ");
18985
+ var walletTransferFooterClasses = [
18986
+ "px-[var(--deframe-widget-size-padding-x-sm)]",
18987
+ "pt-[var(--deframe-widget-size-padding-y-md)]"
18988
+ ].join(" ");
18989
+ function WalletOnchainDepositView({
18990
+ token,
18991
+ network,
18992
+ depositAddress,
18993
+ warningMessage,
18994
+ isPreparing,
18995
+ isReady,
18996
+ qrCode,
18997
+ onTokenClick,
18998
+ onAddressCopy,
18999
+ onSubmit,
19000
+ labels,
19001
+ className
19002
+ }) {
19003
+ var _a;
19004
+ const selectedToken = token ? { symbol: token.symbol, logoURI: token.logoURI } : null;
19005
+ const hasSelection = Boolean(token && network);
19006
+ const canSubmit = hasSelection && isReady;
19007
+ const submitLabel = canSubmit ? labels.submitReady : labels.submitIdle;
19008
+ const showAddress = canSubmit && depositAddress;
19009
+ const showIdle = !isPreparing && !showAddress;
19010
+ const addressCopyHandler = React6__namespace.useCallback(() => {
19011
+ if (!depositAddress) return;
19012
+ onAddressCopy == null ? void 0 : onAddressCopy(depositAddress);
19013
+ }, [depositAddress, onAddressCopy]);
19014
+ return /* @__PURE__ */ jsxRuntime.jsxs(
19015
+ "div",
19016
+ {
19017
+ "data-test-id": "wallet-onchain-deposit-view",
19018
+ className: tailwindMerge.twMerge(
19019
+ walletTransferFrameClasses,
19020
+ className
19021
+ ),
19022
+ children: [
19023
+ /* @__PURE__ */ jsxRuntime.jsx("header", { className: walletTransferHeaderClasses, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
19024
+ /* @__PURE__ */ jsxRuntime.jsx("h2", { className: walletTransferTitleClasses, children: labels.title }),
19025
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: walletTransferSubtitleClasses, children: labels.subtitle })
19026
+ ] }) }),
19027
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: walletTransferBodyClasses, children: [
19028
+ /* @__PURE__ */ jsxRuntime.jsx(
19029
+ "section",
19030
+ {
19031
+ "data-test-id": "wallet-onchain-deposit-view-asset-card",
19032
+ className: walletTransferInputCardClasses,
19033
+ children: /* @__PURE__ */ jsxRuntime.jsx(
19034
+ EarnTokenSelectorSimpleView,
19035
+ {
19036
+ selectedToken,
19037
+ onTokenClick,
19038
+ onNetworkAndAssetClick: onTokenClick,
19039
+ isLoading: false,
19040
+ selectTokenLabel: labels.tokenPlaceholder,
19041
+ chainLabel: (_a = network == null ? void 0 : network.name) != null ? _a : labels.networkPlaceholder,
19042
+ chainImage: network == null ? void 0 : network.iconUrl,
19043
+ className: tailwindMerge.twMerge(walletTransferTokenSelectorClasses, "w-full")
19044
+ }
19045
+ )
19046
+ }
19047
+ ),
19048
+ /* @__PURE__ */ jsxRuntime.jsx(
19049
+ EarnInlineNotificationSimpleView,
19050
+ {
19051
+ variant: "warning",
19052
+ message: warningMessage
19053
+ }
19054
+ ),
19055
+ /* @__PURE__ */ jsxRuntime.jsxs(
19056
+ "section",
19057
+ {
19058
+ "data-test-id": "wallet-onchain-deposit-view-address-card",
19059
+ className: walletTransferInputCardClasses,
19060
+ children: [
19061
+ isPreparing && /* @__PURE__ */ jsxRuntime.jsx(DepositSkeleton, {}),
19062
+ showAddress && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-[var(--deframe-widget-size-gap-md)]", children: [
19063
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
19064
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[13px] [font-weight:var(--deframe-widget-font-weight-semibold)] text-[color:var(--deframe-widget-color-text-primary)]", children: labels.addressTitle }),
19065
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-[12px] leading-[1.35] text-[color:var(--deframe-widget-color-text-tertiary)]", children: labels.addressSubtitle })
19066
+ ] }),
19067
+ /* @__PURE__ */ jsxRuntime.jsx(AddressDisplay, { address: depositAddress, onCopy: addressCopyHandler }),
19068
+ qrCode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-[var(--deframe-widget-size-radius-sm)] bg-white p-3", children: qrCode }) })
19069
+ ] }),
19070
+ showIdle && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-[180px] flex-col items-center justify-center gap-[var(--deframe-widget-size-gap-xs)] text-center", children: [
19071
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[14px] [font-weight:var(--deframe-widget-font-weight-semibold)] text-[color:var(--deframe-widget-color-text-primary)]", children: labels.idleTitle }),
19072
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "max-w-[280px] text-[13px] leading-[1.4] text-[color:var(--deframe-widget-color-text-secondary)]", children: labels.idleSubtitle })
19073
+ ] })
19074
+ ]
19075
+ }
19076
+ )
19077
+ ] }),
19078
+ /* @__PURE__ */ jsxRuntime.jsx("footer", { className: walletTransferFooterClasses, children: /* @__PURE__ */ jsxRuntime.jsx(
19079
+ PrimaryButton,
19080
+ {
19081
+ type: "button",
19082
+ disabled: !canSubmit,
19083
+ onClick: onSubmit,
19084
+ className: "h-12 rounded-[var(--deframe-widget-size-radius-sm)] text-[15px]",
19085
+ children: submitLabel
19086
+ }
19087
+ ) })
19088
+ ]
19089
+ }
19090
+ );
19091
+ }
19092
+ function DepositSkeleton() {
19093
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-[180px] flex-col items-center justify-center gap-[var(--deframe-widget-size-gap-md)]", children: [
19094
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { width: "70%", height: "1rem", variant: "text", shimmer: true }),
19095
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { width: "100%", height: "2rem", variant: "text", shimmer: true }),
19096
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { width: "8rem", height: "8rem", variant: "rect", className: "rounded-[var(--deframe-widget-size-radius-sm)]", shimmer: true })
19097
+ ] });
19098
+ }
19099
+ function WalletOnchainWithdrawView({
19100
+ token,
19101
+ network,
19102
+ formattedBalance,
19103
+ amount,
19104
+ formattedAmountValue,
19105
+ destinationAddress,
19106
+ destinationNetwork,
19107
+ details,
19108
+ isProcessing,
19109
+ isAmountDisabled,
19110
+ showMaxButton,
19111
+ minAmountWarning,
19112
+ walletError,
19113
+ transferError,
19114
+ finalWarning,
19115
+ submitDisabled,
19116
+ submitLabel,
19117
+ onTokenClick,
19118
+ onAmountChange,
19119
+ onMaxClick,
19120
+ onDestinationAddressChange,
19121
+ onSubmit,
19122
+ labels,
19123
+ className
19124
+ }) {
19125
+ var _a;
19126
+ const [isDetailsOpen, setIsDetailsOpen] = React6__namespace.useState(false);
19127
+ const selectedToken = token ? { symbol: token.symbol, logoURI: token.logoURI } : null;
19128
+ const hasToken = Boolean(token && network);
19129
+ const hasAmountAlert = Boolean(minAmountWarning || walletError);
19130
+ const hasAddressAlert = Boolean(transferError);
19131
+ const tokenSelectorClick = isProcessing ? void 0 : onTokenClick;
19132
+ const destinationNetworkText = destinationNetwork ? `${labels.destinationNetworkHint}: ${destinationNetwork.name}` : labels.destinationNetworkEmpty;
19133
+ React6__namespace.useEffect(() => {
19134
+ setIsDetailsOpen(Boolean(details));
19135
+ }, [details]);
19136
+ const amountCardClasses = tailwindMerge.twMerge(
19137
+ walletTransferInputCardClasses,
19138
+ "transition-[border-color,background] duration-200",
19139
+ hasAmountAlert ? "border-[color:color-mix(in_srgb,var(--deframe-widget-color-state-error)_32%,transparent)] bg-[color:color-mix(in_srgb,var(--deframe-widget-color-state-error)_16%,transparent)]" : ""
19140
+ );
19141
+ const addressCardClasses = tailwindMerge.twMerge(
19142
+ walletTransferInputCardClasses,
19143
+ "transition-[border-color,background] duration-200",
19144
+ hasAddressAlert ? "border-[color:color-mix(in_srgb,var(--deframe-widget-color-state-error)_32%,transparent)] bg-[color:color-mix(in_srgb,var(--deframe-widget-color-state-error)_16%,transparent)]" : ""
19145
+ );
19146
+ const addressInputWrapperClasses = tailwindMerge.twMerge(
19147
+ "flex min-h-[34px] items-center border-0 bg-transparent transition-[color] duration-150",
19148
+ hasAddressAlert ? "text-[color:var(--deframe-widget-color-state-error)]" : "focus-within:text-[color:var(--deframe-widget-color-text-primary)]"
19149
+ );
19150
+ return /* @__PURE__ */ jsxRuntime.jsxs(
19151
+ "div",
19152
+ {
19153
+ "data-test-id": "wallet-onchain-withdraw-view",
19154
+ className: tailwindMerge.twMerge(
19155
+ walletTransferFrameClasses,
19156
+ className
19157
+ ),
19158
+ children: [
19159
+ /* @__PURE__ */ jsxRuntime.jsx("header", { className: walletTransferHeaderClasses, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
19160
+ /* @__PURE__ */ jsxRuntime.jsx("h2", { className: walletTransferTitleClasses, children: labels.title }),
19161
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: walletTransferSubtitleClasses, children: labels.subtitle })
19162
+ ] }) }),
19163
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: walletTransferBodyClasses, children: [
19164
+ /* @__PURE__ */ jsxRuntime.jsxs("section", { "data-test-id": "wallet-onchain-withdraw-view-amount-card", className: amountCardClasses, children: [
19165
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-[var(--deframe-widget-size-gap-sm)]", children: [
19166
+ /* @__PURE__ */ jsxRuntime.jsx(
19167
+ EarnTokenSelectorSimpleView,
19168
+ {
19169
+ selectedToken,
19170
+ onTokenClick,
19171
+ onNetworkAndAssetClick: tokenSelectorClick,
19172
+ isLoading: false,
19173
+ selectTokenLabel: labels.tokenPlaceholder,
19174
+ chainLabel: (_a = network == null ? void 0 : network.name) != null ? _a : labels.sourceNetworkPlaceholder,
19175
+ chainImage: network == null ? void 0 : network.iconUrl,
19176
+ className: walletTransferTokenSelectorClasses
19177
+ }
19178
+ ),
19179
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-10 w-px shrink-0 bg-[var(--deframe-widget-color-border-secondary)]" }),
19180
+ /* @__PURE__ */ jsxRuntime.jsx(
19181
+ EarnAmountInputSimpleView,
19182
+ {
19183
+ value: amount,
19184
+ onChange: (event) => onAmountChange(event.target.value),
19185
+ ariaLabel: "Amount to withdraw",
19186
+ dollarAmountFormatted: formattedAmountValue,
19187
+ disabled: isAmountDisabled || isProcessing
19188
+ }
19189
+ )
19190
+ ] }),
19191
+ hasToken && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-[var(--deframe-widget-size-gap-sm)] flex items-center justify-between gap-[var(--deframe-widget-size-gap-sm)]", children: [
19192
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "min-w-0 truncate text-[13px] text-[color:var(--deframe-widget-color-text-secondary)]", children: [
19193
+ labels.balanceLabel,
19194
+ ": ",
19195
+ formattedBalance
19196
+ ] }),
19197
+ showMaxButton && /* @__PURE__ */ jsxRuntime.jsx(
19198
+ "button",
19199
+ {
19200
+ type: "button",
19201
+ onClick: onMaxClick,
19202
+ disabled: isAmountDisabled || isProcessing,
19203
+ className: "shrink-0 cursor-pointer text-[13px] [font-weight:var(--deframe-widget-font-weight-semibold)] text-[color:var(--deframe-widget-color-brand-primary)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50",
19204
+ children: labels.maxLabel
19205
+ }
19206
+ )
19207
+ ] }),
19208
+ minAmountWarning && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-[var(--deframe-widget-size-gap-sm)]", children: /* @__PURE__ */ jsxRuntime.jsx(EarnInlineNotificationSimpleView, { variant: "warning", message: minAmountWarning }) }),
19209
+ walletError && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-[var(--deframe-widget-size-gap-sm)]", children: /* @__PURE__ */ jsxRuntime.jsx(EarnInlineNotificationSimpleView, { variant: "error", message: walletError }) })
19210
+ ] }),
19211
+ /* @__PURE__ */ jsxRuntime.jsxs("section", { "data-test-id": "wallet-onchain-withdraw-view-address-card", className: addressCardClasses, children: [
19212
+ /* @__PURE__ */ jsxRuntime.jsxs("label", { className: "flex flex-col gap-[var(--deframe-widget-size-gap-sm)]", children: [
19213
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[13px] [font-weight:var(--deframe-widget-font-weight-medium)] text-[color:var(--deframe-widget-color-text-secondary)]", children: labels.destinationAddressLabel }),
19214
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: addressInputWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx(
19215
+ "input",
19216
+ {
19217
+ type: "text",
19218
+ value: destinationAddress,
19219
+ onChange: (event) => onDestinationAddressChange(event.target.value),
19220
+ placeholder: labels.destinationAddressPlaceholder,
19221
+ disabled: isProcessing,
19222
+ "aria-label": labels.destinationAddressLabel,
19223
+ spellCheck: false,
19224
+ autoComplete: "off",
19225
+ className: "w-full bg-transparent text-[14px] leading-[1.35] text-[color:var(--deframe-widget-color-text-primary)] outline-none placeholder:text-[color:var(--deframe-widget-color-text-secondary)] disabled:cursor-not-allowed disabled:opacity-50"
19226
+ }
19227
+ ) })
19228
+ ] }),
19229
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-[var(--deframe-widget-size-gap-sm)] flex items-center justify-between gap-[var(--deframe-widget-size-gap-sm)] border-t border-[color:var(--deframe-widget-color-border-secondary)] pt-[var(--deframe-widget-size-gap-sm)]", children: [
19230
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 text-[12px] text-[color:var(--deframe-widget-color-text-tertiary)]", children: labels.destinationNetworkLabel }),
19231
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "min-w-0 truncate text-right text-[12px] [font-weight:var(--deframe-widget-font-weight-medium)] text-[color:var(--deframe-widget-color-text-secondary)]", children: destinationNetworkText })
19232
+ ] }),
19233
+ transferError && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-[var(--deframe-widget-size-gap-sm)]", children: /* @__PURE__ */ jsxRuntime.jsx(EarnInlineNotificationSimpleView, { variant: "error", message: transferError }) })
19234
+ ] }),
19235
+ /* @__PURE__ */ jsxRuntime.jsx(EarnInlineNotificationSimpleView, { variant: "info", message: labels.infoMessage }),
19236
+ finalWarning && /* @__PURE__ */ jsxRuntime.jsx(EarnInlineNotificationSimpleView, { variant: "warning", message: finalWarning }),
19237
+ details && /* @__PURE__ */ jsxRuntime.jsxs("section", { className: walletTransferInputCardClasses, children: [
19238
+ /* @__PURE__ */ jsxRuntime.jsxs(
19239
+ "button",
19240
+ {
19241
+ type: "button",
19242
+ onClick: () => setIsDetailsOpen((value) => !value),
19243
+ className: "flex w-full items-center justify-between gap-[var(--deframe-widget-size-gap-md)] text-left",
19244
+ children: [
19245
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[13px] [font-weight:var(--deframe-widget-font-weight-semibold)] text-[color:var(--deframe-widget-color-text-primary)]", children: labels.detailsTitle }),
19246
+ /* @__PURE__ */ jsxRuntime.jsx(
19247
+ md.MdOutlineExpandMore,
19248
+ {
19249
+ className: tailwindMerge.twMerge("h-5 w-5 shrink-0 text-[color:var(--deframe-widget-color-text-secondary)] transition-transform", isDetailsOpen && "rotate-180"),
19250
+ "aria-hidden": "true"
19251
+ }
19252
+ )
19253
+ ]
19254
+ }
19255
+ ),
19256
+ isDetailsOpen && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-[var(--deframe-widget-size-gap-md)] flex flex-col gap-[var(--deframe-widget-size-gap-sm)]", children: [
19257
+ /* @__PURE__ */ jsxRuntime.jsx(DetailRow2, { label: labels.detailsAmountLabel, value: details.amount }),
19258
+ /* @__PURE__ */ jsxRuntime.jsx(DetailRow2, { label: labels.detailsFeeLabel, value: details.fee }),
19259
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-t border-[color:var(--deframe-widget-color-border-secondary)] pt-[var(--deframe-widget-size-gap-sm)]", children: /* @__PURE__ */ jsxRuntime.jsx(DetailRow2, { label: labels.detailsReceiveLabel, value: details.receive, strong: true }) })
19260
+ ] })
19261
+ ] })
19262
+ ] }),
19263
+ /* @__PURE__ */ jsxRuntime.jsx("footer", { className: walletTransferFooterClasses, children: /* @__PURE__ */ jsxRuntime.jsx(
19264
+ PrimaryButton,
19265
+ {
19266
+ type: "button",
19267
+ disabled: submitDisabled,
19268
+ onClick: onSubmit,
19269
+ className: "h-12 rounded-[var(--deframe-widget-size-radius-sm)] text-[15px]",
19270
+ children: submitLabel
19271
+ }
19272
+ ) })
19273
+ ]
19274
+ }
19275
+ );
19276
+ }
19277
+ function DetailRow2({ label, value, strong = false }) {
19278
+ const valueClasses = strong ? "text-[14px] [font-weight:var(--deframe-widget-font-weight-semibold)] text-[color:var(--deframe-widget-color-text-primary)]" : "text-[13px] [font-weight:var(--deframe-widget-font-weight-medium)] text-[color:var(--deframe-widget-color-text-primary)]";
19279
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-[var(--deframe-widget-size-gap-md)]", children: [
19280
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[13px] text-[color:var(--deframe-widget-color-text-secondary)]", children: label }),
19281
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: valueClasses, children: value })
19282
+ ] });
19283
+ }
19284
+ function WalletTransferAssetNetworkPicker({
19285
+ isOpen,
19286
+ onClose,
19287
+ networks,
19288
+ selectedNetwork,
19289
+ onNetworkSelect,
19290
+ displayedTokens,
19291
+ findBalance,
19292
+ formatTokenAmount,
19293
+ formatCurrencyValue,
19294
+ onAssetClick,
19295
+ onSearch,
19296
+ autoFocus,
19297
+ hasMore = false,
19298
+ onLoadMore,
19299
+ isFetching = false,
19300
+ labels
19301
+ }) {
19302
+ const handleLoadMore = onLoadMore != null ? onLoadMore : (() => void 0);
19303
+ return /* @__PURE__ */ jsxRuntime.jsx(
19304
+ ChooseNetworkAndAssetViewSimple,
19305
+ {
19306
+ isOpen,
19307
+ onClose,
19308
+ networks,
19309
+ selectedNetwork,
19310
+ onNetworkSelect,
19311
+ displayedTokens,
19312
+ findBalance,
19313
+ formatTokenAmount,
19314
+ formatCurrencyValue,
19315
+ onAssetClick,
19316
+ onSearch,
19317
+ autoFocus,
19318
+ closeOnBackdropClick: true,
19319
+ hasMore,
19320
+ onLoadMore: handleLoadMore,
19321
+ isFetching,
19322
+ labels
19323
+ }
19324
+ );
19325
+ }
18940
19326
  var DashboardCard = ({ children, className }) => {
18941
19327
  return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-test-id": "dashboard-card", className: tailwindMerge.twMerge("bg-[var(--deframe-widget-color-bg-subtle)] rounded", className), children });
18942
19328
  };
@@ -20357,6 +20743,9 @@ exports.WalletConnectPanel = WalletConnectPanel;
20357
20743
  exports.WalletItem = WalletItem;
20358
20744
  exports.WalletList = ConnectWalletList;
20359
20745
  exports.WalletListContainer = WalletListContainer;
20746
+ exports.WalletOnchainDepositView = WalletOnchainDepositView;
20747
+ exports.WalletOnchainWithdrawView = WalletOnchainWithdrawView;
20748
+ exports.WalletTransferAssetNetworkPicker = WalletTransferAssetNetworkPicker;
20360
20749
  exports.WithdrawFailedIcon = WithdrawFailedIcon;
20361
20750
  exports.WithdrawSuccessIcon = WithdrawSuccessIcon;
20362
20751
  exports.isBrlPeggedToken = isBrlPeggedToken;