@funkit/connect 6.14.14 → 6.14.17

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/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # @funkit/connect
2
2
 
3
+ ## 6.14.17
4
+
5
+ ### Patch Changes
6
+
7
+ - 56d05e9: feat(connect): enable brokerage flow for Relay AA
8
+ - b6dd1aa: change minimum order text to minimum deposit
9
+
10
+ ## 6.14.16
11
+
12
+ ### Patch Changes
13
+
14
+ - d4d2f7f: feat(connect): treat eUSDe as native for Ethereal
15
+ - 46870ce: feat(connect): remove mesh fees and set brokerage fee to 0
16
+ - e72e65d: feat: switch target asset back to default if user selects non candidate and dropdown is not shown
17
+ - 789ae74: remove funwallet call for web3 users
18
+ - ce9566b: do not fetch qrcode at loading
19
+ - Updated dependencies [e69f7f6]
20
+ - Updated dependencies [20f79ef]
21
+ - @funkit/fun-relay@2.1.5
22
+
23
+ ## 6.14.15
24
+
25
+ ### Patch Changes
26
+
27
+ - 37ec560: feat(connect): added tracking of transaction breakdown view
28
+ - 35e0367: chore(connect): overhauled two factor authentication screen
29
+ - Updated dependencies [6b531a6]
30
+ - Updated dependencies [1b37b9c]
31
+ - @funkit/fun-relay@2.1.4
32
+
3
33
  ## 6.14.14
4
34
 
5
35
  ### Patch Changes
@@ -0,0 +1,24 @@
1
+ declare const _default: {
2
+ readonly addressblacklist: {
3
+ readonly value: readonly ["0x7b97b46D35a28B561d47F50CFB9a2735E506e59d", "0x409ad08cc6CA757f69Fb80250a424B9eFeB99807"];
4
+ };
5
+ readonly array_of_strings: {
6
+ readonly value: readonly [];
7
+ };
8
+ readonly blockedcountries: {
9
+ readonly value: readonly ["AF", "BY", "MM", "CF", "CU", "CD", "IR", "LB", "LY", "NI", "KP", "UA", "SO", "SS", "SY", "VE"];
10
+ };
11
+ readonly boolean: {
12
+ readonly value: false;
13
+ };
14
+ readonly showpoweredtagline: {
15
+ readonly value: false;
16
+ };
17
+ readonly supportedexchangesv2: {
18
+ readonly value: readonly [];
19
+ };
20
+ readonly 'test-supported-tokens': {
21
+ readonly supportedTokens: readonly ["USDC", "USDT"];
22
+ };
23
+ };
24
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ readonly 'test-testing-gate': false;
3
+ };
4
+ export default _default;
@@ -3,7 +3,6 @@ export declare const MODAL_BOTTOM_BAR_IDS: {
3
3
  readonly checkout: "checkout-modal-bottom-bar";
4
4
  readonly withdrawal: "withdrawal-modal-bottom-bar";
5
5
  };
6
- export declare const MODAL_DIVIDER_ID = "fun-modal-divider";
7
6
  type ModalBottomBarIdType = keyof typeof MODAL_BOTTOM_BAR_IDS;
8
7
  export declare function useBottomSectionRef(modalBottomBarIdType?: ModalBottomBarIdType): HTMLElement | null;
9
8
  export declare const CHECKOUT_MODAL_TITLE_COUNTDOWN_ID = "checkout-modal-title-countdown";
@@ -1,6 +1,7 @@
1
- import React from 'react';
1
+ import React, { type ReactNode } from 'react';
2
2
  import type { CheckoutFees } from '~/domains/fees';
3
3
  import type { FunkitCheckoutQuoteResult } from '~/domains/quote';
4
+ import { type FunTooltipProps } from '../FunTooltip/FunTooltip';
4
5
  export declare const NO_DATA_VALUE = "-";
5
6
  interface PaymentFeesSummaryProps {
6
7
  isLoading: boolean;
@@ -9,6 +10,16 @@ interface PaymentFeesSummaryProps {
9
10
  fallbackFees?: CheckoutFees;
10
11
  /** If set, displays a `-` instead of the values, the breakdown is not expandable */
11
12
  valuesNotAvailable?: boolean;
13
+ isWithdrawal: boolean;
14
+ }
15
+ export declare function PaymentFeesSummary({ isLoading, quote, fallbackFees, isWithdrawal, valuesNotAvailable, }: PaymentFeesSummaryProps): React.JSX.Element;
16
+ export interface FeeItem {
17
+ label: string;
18
+ value: string;
19
+ testId?: string;
20
+ valueIcon?: ReactNode;
21
+ tooltipText?: string | ReactNode;
22
+ tooltipPosition?: FunTooltipProps['tooltipPosition'];
23
+ tooltipWidth?: 'default' | 'wide';
12
24
  }
13
- export declare function PaymentFeesSummary({ isLoading, quote, fallbackFees, valuesNotAvailable, }: PaymentFeesSummaryProps): React.JSX.Element;
14
25
  export {};
@@ -0,0 +1,4 @@
1
+ import type { TrackEventData } from '~/hooks/track/useTrack';
2
+ import type { FunkitActiveCheckoutItem } from '~/providers/FunkitCheckoutContext';
3
+ import type { FeeItem } from './PaymentFeesSummary';
4
+ export declare const trackEventFromPaymentFeesSummary: (checkoutItem: FunkitActiveCheckoutItem, feeItems: FeeItem[], isWithdrawal: boolean) => TrackEventData;
@@ -1,10 +1,8 @@
1
1
  import { PaymentMethod } from './paymentMethods';
2
2
  export declare const L1_FEES_ESTIMATE = 5;
3
3
  export declare const L2_FEES_ESTIMATE = 1;
4
- export declare const MESH_L1_FEES_ESTIMATE = 8;
5
- export declare const MESH_L2_FEES_ESTIMATE = 2;
6
- export declare const MESH_CUSTOM_CLIENT_FEE_PERCENT = 0.055;
4
+ export declare const BROKERAGE_FEES_ESTIMATE = 0;
7
5
  /**
8
6
  * Estimating overall fees
9
7
  */
10
- export declare const getFeesUsdEstimate: (targetChainId: string, assetChainId: string, assetUsdAmount: number | null, paymentMethod: PaymentMethod | undefined) => number;
8
+ export declare const getFeesUsdEstimate: (targetChainId: string, assetChainId: string, paymentMethod: PaymentMethod | undefined) => number;
@@ -0,0 +1,3 @@
1
+ export { useDynamicConfig } from './useDynamicConfig';
2
+ export { useExperiment } from './useExperiment';
3
+ export { useFeatureGate } from './useFeatureGate';
@@ -0,0 +1,6 @@
1
+ import fallbackDynamicConfigs from '../../__generated__/default_configs';
2
+ type FallbackDynamicConfigs = typeof fallbackDynamicConfigs;
3
+ type DynamicConfigName = keyof FallbackDynamicConfigs;
4
+ type DynamicConfigValue<Name extends DynamicConfigName> = FallbackDynamicConfigs[Name];
5
+ export declare const useDynamicConfig: <Name extends DynamicConfigName>(name: Name) => DynamicConfigValue<Name>;
6
+ export {};
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Hook for accessing Statsig experiments with type-safe fallback values.
3
+ *
4
+ * Unlike feature gates and dynamic configs, experiments don't have a base configuration
5
+ * with overrides. Instead, they have multiple horizontal variations. Because of this,
6
+ * you must provide a fallback value and can optionally specify the return type.
7
+ *
8
+ * @example
9
+ * // Basic usage (returns string by default)
10
+ * const buttonColor = useExperiment('button-color-test', 'value', 'blue')
11
+ *
12
+ * @example
13
+ * // With explicit type parameter
14
+ * interface ButtonConfig {
15
+ * color: string
16
+ * size: 'small' | 'medium' | 'large'
17
+ * }
18
+ * const config = useExperiment<ButtonConfig>(
19
+ * 'button-experiment',
20
+ * 'config',
21
+ * { color: 'blue', size: 'medium' }
22
+ * )
23
+ *
24
+ * @example
25
+ * // Getting a specific parameter
26
+ * const variant = useExperiment('checkout-flow-test', 'variant', 'control')
27
+ *
28
+ * @param experimentName - The name of the experiment in Statsig
29
+ * @param parameterName - The name of the parameter to get from the experiment
30
+ * @param fallback - The fallback value to use when the experiment/parameter is not available
31
+ * @returns The experiment parameter value with the specified type
32
+ */
33
+ export declare function useExperiment<T = string>(experimentName: string, parameterName: string, fallback: T): T;
@@ -0,0 +1,7 @@
1
+ import { type TypedReturn } from '@statsig/react-bindings';
2
+ import fallbackFeatureGates from '../../__generated__/default_feature_gates';
3
+ type FallbackFeatureGates = typeof fallbackFeatureGates;
4
+ type FeatureGateName = keyof FallbackFeatureGates;
5
+ type FeatureGateValue<Name extends FeatureGateName> = FallbackFeatureGates[Name];
6
+ export declare const useFeatureGate: <Name extends FeatureGateName>(name: Name) => TypedReturn<FeatureGateValue<Name>>;
7
+ export {};
@@ -24,6 +24,7 @@ export declare enum CheckoutModalEvent {
24
24
  NAVIGATE_CONNECT_EXCHANGE = "fc::navigate::connect_exchange",
25
25
  NAVIGATE_MESH_VERIFICATION = "fc::navigate::mesh_verification",
26
26
  FINAL_QUOTE = "fc::quote::final_quote",
27
+ VIEW_TRANSACTION_BREAKDOWN = "fc::quote::view_transaction_breakdown",
27
28
  ACCOUNT_BALANCE_SUCCESS = "fc::success::account_balance",
28
29
  TOKEN_TRANSFER_SUCCESS = "fc::success::token_transfer",
29
30
  BLUVO_WITHDRAWAL_COMPLETED = "fc::success::bluvo_withdrawal_completed"
@@ -2,6 +2,7 @@ export declare enum WithdrawModalEvent {
2
2
  MODAL_OPENED = "fw::modal_opened",
3
3
  MODAL_CLOSED = "fw::modal_closed",
4
4
  FINAL_QUOTE = "fw::quote::final_quote",
5
+ VIEW_TRANSACTION_BREAKDOWN = "fw::quote::view_transaction_breakdown",
5
6
  PENDING_CALLBACK = "fw::pending_callback",
6
7
  SUCCESS = "fw::success"
7
8
  }
@@ -11,10 +11,11 @@ type BluvoCheckoutQuoteParams = {
11
11
  symbol: FunkitActiveCheckoutItem['selectedSourceAssetInfo']['symbol'];
12
12
  amount: string;
13
13
  };
14
- export declare const useBluvoExchangeBalance: ({ exchange, }: {
14
+ export declare const useBluvoExchangeBalance: ({ exchange, refetchOnMount, }: {
15
15
  exchange: BluvoExchangeType | undefined;
16
+ refetchOnMount?: boolean;
16
17
  }) => {
17
- data: import("~/domains/wallet").AssetHoldingsMap<import("~/domains/wallet").BrokerageAssetHoldingsItem>;
18
+ data: import("~/domains/wallet").AssetHoldingsMap<import("~/domains/wallet").BrokerageAssetHoldingsItem> | undefined;
18
19
  totalBalance: number;
19
20
  isLoading: boolean;
20
21
  isError: boolean;
@@ -2,9 +2,9 @@ import { type CheckoutInitTokenTransferAddressParams, type CheckoutInitTokenTran
2
2
  interface UseCheckoutTransferInitResponse {
3
3
  transferInit: CheckoutInitTokenTransferResponse | undefined;
4
4
  recipientAddr: FunAddress;
5
- manualFetch: (params: CheckoutTokenTransferParams) => Promise<CheckoutInitTokenTransferResponse>;
6
5
  }
7
6
  type CheckoutTokenTransferParams = Omit<CheckoutInitTokenTransferAddressParams, 'logger' | 'clientMetadata'>;
7
+ export declare function checkoutTransferFetch(params: CheckoutTokenTransferParams): Promise<CheckoutInitTokenTransferResponse>;
8
8
  /**
9
9
  * creates QR code transfer EOA
10
10
  */
package/dist/index.css CHANGED
@@ -9989,6 +9989,20 @@
9989
9989
  var(--rk-colors-offBackground) 91.45%);
9990
9990
  }
9991
9991
 
9992
+ /* vanilla-extract-css-ns:src/components/FunPayments/FunPaymentMoonpayType.css.ts.vanilla.css?source=Ll8xa21wZXlmMCB7CiAgaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50OwogIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50OwogIGZsZXg6IDEgIWltcG9ydGFudDsKfQouXzFrbXBleWYwIGlmcmFtZSB7CiAgYm9yZGVyOiBub25lOwp9Ci5fMWttcGV5ZjEgewogIGRpc3BsYXk6IGZsZXg7CiAgZmxleDogMTsKfQ== */
9993
+ [data-rk] ._1kmpeyf0 {
9994
+ height: unset !important;
9995
+ width: unset !important;
9996
+ flex: 1 !important;
9997
+ }
9998
+ [data-rk] ._1kmpeyf0 iframe {
9999
+ border: none;
10000
+ }
10001
+ [data-rk] ._1kmpeyf1 {
10002
+ display: flex;
10003
+ flex: 1;
10004
+ }
10005
+
9992
10006
  /* vanilla-extract-css-ns:src/components/CopyAddress/CopyInputDisplayedAddress.css.ts.vanilla.css?source=#H4sIAAAAAAAAE81WXavbOBB9v79iKFxIwDJyUqe97ktp90e0+7LI8jgRkSUjKfcmXe5/L5LtxLLTNN2FUgKx9TEzZ2aOj/Rxj6fasAYt/JPty28onhD+fQCgj+EB4AxTttamIdqIrVAF5PQR6OOHeLXoXiVz+HVBl2C0Yw6/LGiF2yVYziQusmVnpFvGhTsVkPnx6wNAlg/h5msbOluj6dvOUy2kQ1NAKQ9msWqPy7ND+r8S2NDHSwpkPU4i3UyzoFewbM5YXh8+zmtc9zVORplfx+kTuYWURFDvQerL835e0+zu0v0M0i92//UhHcqyDnH1wUmhkHAttSngmZkFIWbfjS1h3AmtPvvBX8KyUmIVPJfaVGhIqZ3TDZFYO2JYJQ525MJPCMK1Usjdp4NzWl2xNWK7+wXjkLrwoApgUkKW08YCP5SCkxK/CTQLmq4ToAnQlG4S8JUYZf02ZE0I3yHfE8G1IhVKdiogzXL7YbbG7I7ourboCt+L2YZubfBBg4dWDwgNSubEM/rZF1G5XQHZpj364Q594pdxJWwbfGyNqIIXyTgS4bCxBXBUDk2cSVGUWGvTSQjXyqFyBbx5E0NgpdXy4AIEp9sCVl0837PzoMf2FEPrh32/hhathtkjsTtW6ZcChLLogIZflubtEfjBGFQuEGfatjORIV3lNumC9+9d6H4QBQ5zsauh6h1pph2d0IU40Qi1JfVB8Q7HhDSrPFAmECenCWQppctpxVnt0NxfcNMV8lwyz/jfV3QuRUta5oO0Wp62Wnmp9J9GkJ3h6f8S76R/btpj4v9g0NW5Mp3tftbbXn/+gObloWsjER3pdrTNFyzstc7oPQYJGBRgDvaiD6GaAffIkBnjk8xoV+xk0JB+S0+BVZpPCzkLDul6pnM/yPquMo+FKy7B5opEjmVwdUUGI/27IZDpysaxIhEbJHLt6RyJ5Hlm8l2862avnY0Lkr7LPZW753Ia9/Ipz0jRFXF8ko9M319srpJ+dhiNmkRnTZqA/nsxoe3TFOF565fFirbH5Q1bFmyvn0bn40aocP7XEo+RcXnDuEVjW+R+GLg9aQKx7iSxgNagRfOMZF1FrnlwPUVQSs333g9TomGBu4o1OFA3nk1AaYXLeHtE9cl0AtROtx8M63KjgzxdFv+j4Ixd1EJK0ugKC6i1eWGmshGtpjj7hdmVpfohBe65kd6+Vt64J9DLLYHehzvQ7zsc4XsT5QwAAA== */
9993
10007
  @keyframes _1kbzei9e {
9994
10008
  0% {
@@ -10135,20 +10149,6 @@
10135
10149
  opacity: var(--animation-opacity, 0);
10136
10150
  }
10137
10151
 
10138
- /* vanilla-extract-css-ns:src/components/FunPayments/FunPaymentMoonpayType.css.ts.vanilla.css?source=Ll8xa21wZXlmMCB7CiAgaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50OwogIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50OwogIGZsZXg6IDEgIWltcG9ydGFudDsKfQouXzFrbXBleWYwIGlmcmFtZSB7CiAgYm9yZGVyOiBub25lOwp9Ci5fMWttcGV5ZjEgewogIGRpc3BsYXk6IGZsZXg7CiAgZmxleDogMTsKfQ== */
10139
- [data-rk] ._1kmpeyf0 {
10140
- height: unset !important;
10141
- width: unset !important;
10142
- flex: 1 !important;
10143
- }
10144
- [data-rk] ._1kmpeyf0 iframe {
10145
- border: none;
10146
- }
10147
- [data-rk] ._1kmpeyf1 {
10148
- display: flex;
10149
- flex: 1;
10150
- }
10151
-
10152
10152
  /* vanilla-extract-css-ns:src/components/FunFeatureList/FunFeatureList.css.ts.vanilla.css?source=Ll8xMDQ1cXI3MSB7CiAgb3V0bGluZS1jb2xvcjogdmFyKC0tcmstY29sb3JzLWFjdGlvbkNvbG9yRGlzYWJsZWQpOwogIHRyYW5zaXRpb246IGFsbCAxNTBtcyBjdWJpYy1iZXppZXIoMC4zLCAwLCAwLjA2LCAxKTsKfQ== */
10153
10153
  [data-rk] ._1045qr71 {
10154
10154
  outline-color: var(--rk-colors-actionColorDisabled);