@funkit/connect 1.0.19 → 1.0.20

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.
Files changed (34) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/components/FunConnectOptions/FunConnectOptions.d.ts +2 -1
  3. package/dist/components/FunConnectOptions/FunFarcasterConnectingStep.d.ts +8 -0
  4. package/dist/components/FunConnectOptions/FunSignInStep.d.ts +2 -1
  5. package/dist/components/FunkitProvider/FunkitConfigContext.d.ts +7 -6
  6. package/dist/components/FunkitProvider/FunkitWeb2Provider.d.ts +27 -3
  7. package/dist/components/Icons/SocialMediaIcons.d.ts +1 -0
  8. package/dist/consts/funkit.d.ts +1 -0
  9. package/dist/consts/quote.d.ts +11 -1
  10. package/dist/farcaster-24TGVAI4.js +6 -0
  11. package/dist/hooks/useFunListeners.d.ts +1 -0
  12. package/dist/index.d.ts +1 -1
  13. package/dist/index.js +1180 -865
  14. package/dist/utils/mobile.d.ts +1 -0
  15. package/dist/wallets/walletConnectors/index.js +33 -33
  16. package/package.json +2 -2
  17. package/dist/wallets/walletConnectors/chunk-2B3SPBRY.js +0 -100
  18. package/dist/wallets/walletConnectors/chunk-2GAW2UBU.js +0 -102
  19. package/dist/wallets/walletConnectors/chunk-7KDOXASH.js +0 -95
  20. package/dist/wallets/walletConnectors/chunk-CRSPGVPF.js +0 -105
  21. package/dist/wallets/walletConnectors/chunk-CUKVUCIP.js +0 -98
  22. package/dist/wallets/walletConnectors/chunk-DV3SI63E.js +0 -96
  23. package/dist/wallets/walletConnectors/chunk-GW6EF4G2.js +0 -92
  24. package/dist/wallets/walletConnectors/chunk-HD5VYJNC.js +0 -98
  25. package/dist/wallets/walletConnectors/chunk-IBWFKX7P.js +0 -94
  26. package/dist/wallets/walletConnectors/chunk-KGTZ6E7L.js +0 -71
  27. package/dist/wallets/walletConnectors/chunk-OKWOB3DN.js +0 -66
  28. package/dist/wallets/walletConnectors/chunk-RCWZ4KBR.js +0 -73
  29. package/dist/wallets/walletConnectors/chunk-RTW6PVQI.js +0 -107
  30. package/dist/wallets/walletConnectors/chunk-T6JVHES7.js +0 -87
  31. package/dist/wallets/walletConnectors/chunk-VSZ7PAHS.js +0 -94
  32. package/dist/wallets/walletConnectors/chunk-XNNLZXHE.js +0 -102
  33. package/dist/wallets/walletConnectors/chunk-XRMAVTK7.js +0 -178
  34. package/dist/wallets/walletConnectors/chunk-Z2HIQYVN.js +0 -96
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @funkit/connect
2
2
 
3
+ ## 1.0.20
4
+
5
+ ### Patch Changes
6
+
7
+ - 093f54a: feat: more friendly quote error handling
8
+ - 00a2cac: feat: show social profile pictures (if any)
9
+ - 00a2cac: feat: sign in with farcaster (siwf)
10
+
3
11
  ## 1.0.19
4
12
 
5
13
  ### Patch Changes
@@ -3,7 +3,8 @@ export declare enum ConnectStep {
3
3
  SIGNIN = 0,
4
4
  PENDING_EMAIL = 1,
5
5
  PENDING_WALLET = 2,
6
- ERROR = 3
6
+ PENDING_FARCASTER = 3,
7
+ ERROR = 4
7
8
  }
8
9
  export declare function FunConnectOptions({ onClose }: {
9
10
  onClose: () => void;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { ConnectStep } from './FunConnectOptions';
3
+ export declare function FunFarcasterConnectingStep({ farcasterUri, farcasterToken, changeStep, onClose, }: {
4
+ farcasterUri: string;
5
+ farcasterToken: string;
6
+ changeStep: (p: ConnectStep) => void;
7
+ onClose: () => void;
8
+ }): React.JSX.Element;
@@ -5,7 +5,7 @@ import { ConnectStep } from './FunConnectOptions';
5
5
  * Modal content for a user that is not signed-in yet
6
6
  * Shows Web2 and Web3 sign in options
7
7
  */
8
- export declare function FunSignInStep({ onClose, changeStep, setSelectedWallet, connectToWallet, setQrCodeUri, emailInput, setEmailInput, }: {
8
+ export declare function FunSignInStep({ onClose, changeStep, setSelectedWallet, connectToWallet, setQrCodeUri, emailInput, setEmailInput, onFarcasterSuccessInit, }: {
9
9
  onClose: () => void;
10
10
  changeStep: (p: ConnectStep) => void;
11
11
  setSelectedWallet: React.Dispatch<React.SetStateAction<WalletConnector | undefined>>;
@@ -13,4 +13,5 @@ export declare function FunSignInStep({ onClose, changeStep, setSelectedWallet,
13
13
  setQrCodeUri: React.Dispatch<React.SetStateAction<string>>;
14
14
  emailInput: string;
15
15
  setEmailInput: React.Dispatch<React.SetStateAction<string>>;
16
+ onFarcasterSuccessInit: (channelToken: string, connectUri: string) => void;
16
17
  }): React.JSX.Element;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { PaymentMethod } from '../../consts/payment';
3
3
  import { BoxProps } from '../Box/Box';
4
- import { FunkitOauthLoginMethod } from './FunkitWeb2Provider';
4
+ import { FunkitSocialLoginMethod } from './FunkitWeb2Provider';
5
5
  export interface FunkitTextCustomizationsConfig {
6
6
  selectPaymentMethod: string;
7
7
  brokerageOrExchange: string;
@@ -17,11 +17,12 @@ interface FunkitLoginOptionsConfig {
17
17
  web2: boolean;
18
18
  web3: boolean;
19
19
  prioritizeWeb2Logins?: boolean;
20
- /** Enables oAuth logins. Each oauth type requires configuration in your app's privy dashboard. Please ensure to do so before enabling any. **/
21
- web2OauthLogins: {
22
- [FunkitOauthLoginMethod.GOOGLE]?: boolean;
23
- [FunkitOauthLoginMethod.TWITTER]?: boolean;
24
- [FunkitOauthLoginMethod.APPLE]?: boolean;
20
+ /** Enables social logins. Each type requires configuration in your app's privy dashboard. Please ensure to do so before enabling any. **/
21
+ web2SocialLogins: {
22
+ [FunkitSocialLoginMethod.GOOGLE]?: boolean;
23
+ [FunkitSocialLoginMethod.TWITTER]?: boolean;
24
+ [FunkitSocialLoginMethod.APPLE]?: boolean;
25
+ [FunkitSocialLoginMethod.FARCASTER]?: boolean;
25
26
  };
26
27
  }
27
28
  interface FunkitAccountOptionsConfig {
@@ -9,31 +9,55 @@ export declare const ERROR_MESSAGES: {
9
9
  readonly PRIVY_NOT_INITIALIZED: "Privy not initialized";
10
10
  readonly PRIVY_PROVIDER_NOT_INITIALIZED: "Privy wallet provider not initialized";
11
11
  readonly PRIVY_USER_NOT_INITIALIZED: "Privy user not initialized";
12
+ readonly FARCASTER_NOT_INITIALIZED: "Unable to initialize Farcaster login";
12
13
  };
14
+ interface PrivyLoginParams {
15
+ firstLoginCode?: string;
16
+ secondLoginCode?: string;
17
+ alternateCodeMeta?: object | any;
18
+ inputLoginMethod: PrivyLoginMethod;
19
+ }
20
+ interface FunkitWeb2LoginParams extends Omit<PrivyLoginParams, 'inputLoginMethod'> {
21
+ chainId: number;
22
+ inputLoginMethod?: PrivyLoginMethod;
23
+ }
13
24
  interface FunkitWeb2ContextType {
14
25
  isSendingOtpEmail: boolean;
26
+ isGeneratingFcUri: boolean;
15
27
  handleSendOtpEmail: (emailAddress: string) => Promise<{
16
28
  success: boolean;
17
29
  error: string;
18
30
  }>;
19
31
  handleOauthRedirect: (provider: OAuthProviderType) => Promise<void>;
20
- handleFunkitWeb2Login: (chainId: number, firstLoginCode?: string, secondLoginCode?: string, inputLoginMethod?: PrivyLoginMethod) => Promise<boolean>;
32
+ handleFunkitWeb2Login: ({ chainId, firstLoginCode, secondLoginCode, alternateCodeMeta, inputLoginMethod, }: FunkitWeb2LoginParams) => Promise<boolean>;
21
33
  isLoggingIn: boolean;
22
34
  loginErrorMessage: string;
23
35
  clearLoginError: () => void;
24
36
  handleFunkitWeb2Logout: () => Promise<void>;
37
+ handleGenerateFcUri: () => Promise<{
38
+ success: boolean;
39
+ error: string;
40
+ channelToken: string;
41
+ connectUri: string;
42
+ }>;
43
+ getFcConnectionStatus: (channelToken: string) => Promise<{
44
+ isCompleted: boolean;
45
+ fcMeta: any;
46
+ }>;
25
47
  web2AccountInfo: FunkitUserInfo;
26
48
  }
27
49
  export declare enum PrivyLoginMethod {
28
50
  email = "email",
51
+ farcaster = "farcaster",
29
52
  google_oauth = "google_oauth",
30
53
  twitter_oauth = "twitter_oauth",
31
54
  apple_oauth = "apple_oauth"
32
55
  }
33
- export declare enum FunkitOauthLoginMethod {
56
+ export declare enum FunkitSocialLoginMethod {
34
57
  GOOGLE = "google_oauth",
35
58
  TWITTER = "twitter_oauth",
36
- APPLE = "apple_oauth"
59
+ APPLE = "apple_oauth",
60
+ FARCASTER = "farcaster"
37
61
  }
38
62
  interface FunkitWeb2ProviderProps {
39
63
  children: ReactNode;
@@ -2,3 +2,4 @@ import React from 'react';
2
2
  export declare const GoogleIcon: () => React.JSX.Element;
3
3
  export declare const TwitterIcon: () => React.JSX.Element;
4
4
  export declare const AppleIcon: () => React.JSX.Element;
5
+ export declare const FarcasterIcon: () => React.JSX.Element;
@@ -13,6 +13,7 @@ export interface FunkitUserInfo {
13
13
  userId: string | null;
14
14
  accountLabel: string;
15
15
  accountName: string;
16
+ accountPicSrc: string;
16
17
  }
17
18
  export declare const PLACEHOLDER_FUNKIT_USER_INFO: FunkitUserInfo;
18
19
  export declare enum DepositTokenSymbol {
@@ -11,12 +11,22 @@ export declare const PENDING_QUOTE_MESSAGE_GENERATOR: {
11
11
  3: () => string;
12
12
  };
13
13
  export declare enum QuoteCustomErrorType {
14
- INSUFFICIENT_BALANCE = 0
14
+ INSUFFICIENT_BALANCE_PRE_CHECK = 0,
15
+ INSUFFICIENT_TOKEN_BALANCE_PRE_CHECK = 1,
16
+ INSUFFICIENT_BALANCE_POST_CHECK = 2
15
17
  }
16
18
  export declare const QUOTE_CUSTOM_ERROR_STRING_INFO: {
17
19
  0: {
18
20
  check: string;
19
21
  display: string;
20
22
  };
23
+ 1: {
24
+ check: string;
25
+ display: string;
26
+ };
27
+ 2: {
28
+ check: string;
29
+ display: string;
30
+ };
21
31
  };
22
32
  export declare function generateQuoteApiErrorForDisplay(errorMessage?: string): string;
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ // src/components/FunConnectOptions/farcaster.svg
3
+ var farcaster_default = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0yNTcuNzc4IDE1NS41NTZINzQyLjIyMlY4NDQuNDQ1SDY3MS4xMTFWNTI4Ljg4OUg2NzAuNDE0QzY2Mi41NTQgNDQxLjY3NyA1ODkuMjU4IDM3My4zMzMgNTAwIDM3My4zMzNDNDEwLjc0MiAzNzMuMzMzIDMzNy40NDYgNDQxLjY3NyAzMjkuNTg2IDUyOC44ODlIMzI4Ljg4OVY4NDQuNDQ1SDI1Ny43NzhWMTU1LjU1NloiIGZpbGw9IiM4NTVEQ0QiLz4KPHBhdGggZD0iTTEyOC44ODkgMjUzLjMzM0wxNTcuNzc4IDM1MS4xMTFIMTgyLjIyMlY3NDYuNjY3QzE2OS45NDkgNzQ2LjY2NyAxNjAgNzU2LjYxNiAxNjAgNzY4Ljg4OVY3OTUuNTU2SDE1NS41NTZDMTQzLjI4MyA3OTUuNTU2IDEzMy4zMzMgODA1LjUwNSAxMzMuMzMzIDgxNy43NzhWODQ0LjQ0NUgzODIuMjIyVjgxNy43NzhDMzgyLjIyMiA4MDUuNTA1IDM3Mi4yNzMgNzk1LjU1NiAzNjAgNzk1LjU1NkgzNTUuNTU2Vjc2OC44ODlDMzU1LjU1NiA3NTYuNjE2IDM0NS42MDYgNzQ2LjY2NyAzMzMuMzMzIDc0Ni42NjdIMzA2LjY2N1YyNTMuMzMzSDEyOC44ODlaIiBmaWxsPSIjODU1RENEIi8+CjxwYXRoIGQ9Ik02NzUuNTU2IDc0Ni42NjdDNjYzLjI4MyA3NDYuNjY3IDY1My4zMzMgNzU2LjYxNiA2NTMuMzMzIDc2OC44ODlWNzk1LjU1Nkg2NDguODg5QzYzNi42MTYgNzk1LjU1NiA2MjYuNjY3IDgwNS41MDUgNjI2LjY2NyA4MTcuNzc4Vjg0NC40NDVIODc1LjU1NlY4MTcuNzc4Qzg3NS41NTYgODA1LjUwNSA4NjUuNjA2IDc5NS41NTYgODUzLjMzMyA3OTUuNTU2SDg0OC44ODlWNzY4Ljg4OUM4NDguODg5IDc1Ni42MTYgODM4Ljk0IDc0Ni42NjcgODI2LjY2NyA3NDYuNjY3VjM1MS4xMTFIODUxLjExMUw4ODAgMjUzLjMzM0g3MDIuMjIyVjc0Ni42NjdINjc1LjU1NloiIGZpbGw9IiM4NTVEQ0QiLz4KPC9zdmc+Cg==";
4
+ export {
5
+ farcaster_default as default
6
+ };
@@ -8,3 +8,4 @@ export declare function useCheckoutHistoryListener(activate?: boolean, singleDep
8
8
  * Handles the starting and stopping of asset listeners based on the calling component's mount/unmount status
9
9
  */
10
10
  export declare function useWalletAssetsListener(activate?: boolean): void;
11
+ export declare function useSIWFarcasterListener(channelToken: string): void;
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export { useFunkitCheckout } from './components/FunkitProvider/FunkitCheckoutCon
3
3
  export type { FunkitConfig } from './components/FunkitProvider/FunkitConfigContext';
4
4
  export { FunkitProvider } from './components/FunkitProvider/FunkitProvider';
5
5
  export { useActiveTheme } from './components/FunkitProvider/FunkitThemeProvider';
6
- export { FunkitOauthLoginMethod } from './components/FunkitProvider/FunkitWeb2Provider';
6
+ export { FunkitSocialLoginMethod } from './components/FunkitProvider/FunkitWeb2Provider';
7
7
  export { WalletButton } from './components/WalletButton/WalletButton';
8
8
  export { getDefaultWallets } from './wallets/getDefaultWallets';
9
9
  export { __private__ } from './__private__';