@make-software/csprclick-ui 1.2.1 → 1.3.0

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 (33) hide show
  1. package/dist/cjs/lib/assets/icons/ic-no-provider.png +0 -0
  2. package/dist/cjs/lib/assets/icons/rate.svg +3 -0
  3. package/dist/cjs/lib/assets/logos/logo.svg +4 -0
  4. package/dist/cjs/lib/index.js +5 -5
  5. package/dist/cjs/lib/lib/BuyCspr/BuyCSPRContainer.d.ts +9 -0
  6. package/dist/cjs/lib/lib/BuyCspr/api/onRampApi.d.ts +9 -0
  7. package/dist/cjs/lib/lib/BuyCspr/api/useOnRamApi.d.ts +14 -0
  8. package/dist/cjs/lib/lib/BuyCspr/components/BuyCSPRForm.d.ts +2 -0
  9. package/dist/cjs/lib/lib/BuyCspr/components/ChooseProvider.d.ts +12 -0
  10. package/dist/cjs/lib/lib/BuyCspr/components/NoAvailableProviders.d.ts +11 -0
  11. package/dist/cjs/lib/lib/BuyCspr/components/ProviderRow.d.ts +3 -0
  12. package/dist/cjs/lib/lib/BuyCspr/components/RedirectionBlocked.d.ts +6 -0
  13. package/dist/cjs/lib/lib/BuyCspr/types.d.ts +113 -0
  14. package/dist/cjs/lib/lib/ClickModal.d.ts +1 -0
  15. package/dist/cjs/lib/lib/{ClickTopBar.d.ts → ClickUI.d.ts} +9 -4
  16. package/dist/cjs/lib/lib/InfoPopup/InfoPopup.d.ts +10 -0
  17. package/dist/cjs/lib/lib/OneClickSignIn/OneClickSignIn.d.ts +12 -0
  18. package/dist/cjs/lib/lib/{TopBar/components → SkeletonLoader}/SkeletonLoader.d.ts +1 -1
  19. package/dist/cjs/lib/lib/TopBar/components/BuyCSPRMenuItem.d.ts +1 -1
  20. package/dist/cjs/lib/lib/components/ScrollContainer.d.ts +5 -2
  21. package/dist/cjs/lib/lib/constants/index.d.ts +1 -0
  22. package/dist/cjs/lib/lib/index.d.ts +2 -2
  23. package/dist/cjs/lib/lib/types/theme.d.ts +17 -0
  24. package/dist/index.d.ts +31 -7
  25. package/dist/lib/assets/icons/ic-no-provider.png +0 -0
  26. package/dist/lib/assets/icons/rate.svg +3 -0
  27. package/dist/lib/assets/logos/logo.svg +4 -0
  28. package/dist/lib/index.js +6 -6
  29. package/package.json +4 -4
  30. package/package.json.local +2 -2
  31. package/dist/cjs/lib/lib/ChooseAccount/ChooseAccount.d.ts +0 -12
  32. package/dist/cjs/lib/lib/WarningNoticePopup/WarningNoticePopup.d.ts +0 -10
  33. /package/dist/cjs/lib/lib/{ChooseAccount → OneClickSignIn}/ChooseAccountModal.d.ts +0 -0
@@ -0,0 +1,9 @@
1
+ import { CSPRClickSDK } from '@make-software/csprclick-core-client';
2
+ import { ThemeModeType } from '../types';
3
+ interface BuyCsprContainerProps {
4
+ clickRef: CSPRClickSDK;
5
+ themeMode?: ThemeModeType;
6
+ onModalClose: () => void;
7
+ }
8
+ export declare const BuyCSPRContainer: ({ clickRef, themeMode, onModalClose }: BuyCsprContainerProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,9 @@
1
+ import { ConfirmBuyCSPRResponse, GetOnRampResponse, GetResponseType, ResponseOnRampProps } from '../types';
2
+ export declare const ON_RAMP_API: string;
3
+ type OnRampApi = {
4
+ getBuyCSPRData: () => Promise<GetResponseType<GetOnRampResponse>>;
5
+ getProvidersList: (payload: any) => Promise<GetResponseType<ResponseOnRampProps>>;
6
+ confirmBuyCSPR: (payload: any) => Promise<GetResponseType<ConfirmBuyCSPRResponse>>;
7
+ };
8
+ export declare const onRampApi: OnRampApi;
9
+ export {};
@@ -0,0 +1,14 @@
1
+ import { ConfirmBuyCSPRResponse, GetOnRampResponse, GetResponseType, ResponseOnRampProps } from "../types";
2
+ export declare const useGetBuyCSPRData: () => GetResponseType<GetOnRampResponse>;
3
+ export declare const useGetProvidersList: () => {
4
+ loading?: boolean | undefined;
5
+ error?: import("../types").ErrorResult | null | undefined;
6
+ data?: ResponseOnRampProps | null | undefined;
7
+ update: (payload: any) => void;
8
+ };
9
+ export declare const useConfirmBuyCSPR: () => {
10
+ loading?: boolean | undefined;
11
+ error?: import("../types").ErrorResult | null | undefined;
12
+ data?: ConfirmBuyCSPRResponse | null | undefined;
13
+ update: (payload: any) => void;
14
+ };
@@ -0,0 +1,2 @@
1
+ import { BuyCSPRFormProps } from '../types';
2
+ export declare const BuyCSPRForm: ({ acc, buyCSPRFormData, onNextStep, themeMode, }: BuyCSPRFormProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { ResponseOnRampProps } from '../types';
2
+ interface ChooseProviderProps {
3
+ rampData: ResponseOnRampProps;
4
+ lastInputIsCrypto: boolean;
5
+ countryTitle: string;
6
+ currencyCode: string;
7
+ onSubmit: (data: any) => void;
8
+ onBack: () => void;
9
+ onClose: () => void;
10
+ }
11
+ export declare const ChooseProvider: ({ rampData, lastInputIsCrypto, countryTitle, currencyCode, onSubmit, onBack, onClose, }: ChooseProviderProps) => import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1,11 @@
1
+ import { OnRampError } from '../types';
2
+ interface NoAvailableProvidersProps {
3
+ countryTitle?: string;
4
+ currencyCode?: string;
5
+ message?: string;
6
+ onBack?: () => void;
7
+ onClose: () => void;
8
+ error?: OnRampError;
9
+ }
10
+ export declare const NoAvailableProviders: ({ countryTitle, currencyCode, message, error, onBack, onClose, }: NoAvailableProvidersProps) => import("react/jsx-runtime").JSX.Element;
11
+ export {};
@@ -0,0 +1,3 @@
1
+ import { ProviderRowProps } from '../types';
2
+ export declare const ProviderRow: ({ providerName, csprExchangeRate, cryptoAsset, cryptoAmount, isActive, onClick, logoSVG, logoPNG, margin, fees, }: ProviderRowProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default ProviderRow;
@@ -0,0 +1,6 @@
1
+ export interface RedirectionBlockedProps {
2
+ provider: string;
3
+ location: string;
4
+ onClose: () => void;
5
+ }
6
+ export declare const RedirectionBlocked: ({ provider, location, onClose, }: RedirectionBlockedProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,113 @@
1
+ import { AccountType } from '@make-software/csprclick-core-types';
2
+ import { ThemeModeType } from '../types';
3
+ import React from "react";
4
+ export interface CountryProps {
5
+ value: string;
6
+ label: string;
7
+ icon?: React.ReactElement;
8
+ }
9
+ export interface CurrencyProps {
10
+ value: string;
11
+ label: string;
12
+ rate: number;
13
+ }
14
+ export interface ResponseCountryProps {
15
+ name: string;
16
+ code: string;
17
+ }
18
+ export interface ResponseCurrencyProps {
19
+ id: number;
20
+ code: string;
21
+ type_id: string;
22
+ rate: number;
23
+ }
24
+ export interface BuyCSPRFormDataProps {
25
+ countryList: CountryProps[];
26
+ country: CountryProps;
27
+ currencyList: CurrencyProps[];
28
+ currency: CurrencyProps;
29
+ isLoading: boolean;
30
+ fiatAmount: string;
31
+ csprAmount: string;
32
+ isLastInputCrypto: boolean;
33
+ providersList: any;
34
+ reloadProviders: boolean;
35
+ }
36
+ export interface GetOnRampResponse {
37
+ countries: ResponseCountryProps[];
38
+ defaultCountry: string;
39
+ currencies: ResponseCurrencyProps[];
40
+ defaultCurrency: string;
41
+ defaultAmount: string;
42
+ }
43
+ export interface BuyCSPRFormProps {
44
+ acc: AccountType | null;
45
+ buyCSPRFormData: BuyCSPRFormDataProps;
46
+ onNextStep: (data: RequestOnRampProps, lastInputIsCrypto: boolean) => void;
47
+ themeMode?: ThemeModeType;
48
+ }
49
+ export interface RequestOnRampProps {
50
+ country: string | CountryProps;
51
+ currency: string | CurrencyProps;
52
+ amount: number;
53
+ approxAmount: number;
54
+ paymentCurrency: string;
55
+ }
56
+ export interface ProviderProps {
57
+ cryptoAmount: string;
58
+ cryptoCurrency: string;
59
+ fiatAmount: string;
60
+ fiatCurrency: string;
61
+ csprExchangeRate: string;
62
+ fees: string;
63
+ logoPNG: string;
64
+ logoSVG?: string;
65
+ providerKey: string;
66
+ providerName: string;
67
+ }
68
+ export interface ResponseOnRampProps {
69
+ availableProviders: ProviderProps[];
70
+ currencies: CurrencyProps[];
71
+ fiatAmount: number;
72
+ fiatCurrency: string;
73
+ cryptoAmount: number;
74
+ cryptoCurrency: string;
75
+ isCryptoChanged: boolean;
76
+ }
77
+ export interface OnRampError {
78
+ code?: string;
79
+ message?: string;
80
+ description?: string;
81
+ serverIsDown?: boolean;
82
+ }
83
+ export interface ResponseOnRampErrorProps {
84
+ error: OnRampError | null;
85
+ }
86
+ export interface ConfirmBuyCSPRResponse {
87
+ provider: string;
88
+ location: string;
89
+ }
90
+ export interface ProviderRowProps {
91
+ logoSVG?: string | null;
92
+ logoPNG?: string | null;
93
+ providerName: string;
94
+ fees: string;
95
+ cryptoAmount: string;
96
+ cryptoAsset: string;
97
+ csprExchangeRate: string;
98
+ margin?: string;
99
+ isActive?: boolean;
100
+ onClick?: () => any;
101
+ }
102
+ export interface ErrorResult {
103
+ code: string;
104
+ message: string;
105
+ description?: string;
106
+ }
107
+ export type GetResponseType<Entity> = {
108
+ loading: boolean;
109
+ error: ErrorResult | null;
110
+ data: Entity | null;
111
+ };
112
+ export declare const initCountry: CountryProps;
113
+ export declare const initCurrency: CurrencyProps;
@@ -9,6 +9,7 @@ interface ClickModalProps {
9
9
  clickRef: any;
10
10
  signInOptions: any;
11
11
  themeMode?: ThemeModeType;
12
+ rootAppElement?: string;
12
13
  }
13
14
  export declare function ClickModal(props: ClickModalProps): import("react/jsx-runtime").JSX.Element;
14
15
  export default ClickModal;
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import { CurrencySettings, LanguageSettings, NetworkSettings, ThemeModeType, CustomTopBarMenuSettings } from './types';
3
- interface ClickTopBarProps {
4
- themeMode?: ThemeModeType;
3
+ export interface TopBarSettings {
5
4
  onThemeSwitch?: () => void;
6
5
  accountMenuItems?: React.ReactElement[];
7
6
  languageSettings?: LanguageSettings;
@@ -9,5 +8,11 @@ interface ClickTopBarProps {
9
8
  networkSettings?: NetworkSettings;
10
9
  customTopBarMenuSettings?: CustomTopBarMenuSettings[];
11
10
  }
12
- export declare function ClickTopBar({ themeMode, onThemeSwitch, accountMenuItems, languageSettings, currencySettings, networkSettings, customTopBarMenuSettings, }: ClickTopBarProps): import("react/jsx-runtime").JSX.Element;
13
- export default ClickTopBar;
11
+ interface ClickUIProps {
12
+ themeMode?: ThemeModeType;
13
+ topBarSettings?: TopBarSettings;
14
+ rootAppElement?: string;
15
+ show1ClickModal?: boolean;
16
+ }
17
+ export declare function ClickUI({ themeMode, topBarSettings, rootAppElement, show1ClickModal, }: ClickUIProps): import("react/jsx-runtime").JSX.Element;
18
+ export default ClickUI;
@@ -0,0 +1,10 @@
1
+ import { ThemeModeType } from '@make-software/cspr-ui';
2
+ import React from "react";
3
+ export interface InfoPopupRef {
4
+ hide: () => void;
5
+ }
6
+ interface InfoPopupProps {
7
+ themeMode?: ThemeModeType;
8
+ }
9
+ export declare const InfoPopup: React.ForwardRefExoticComponent<InfoPopupProps & React.RefAttributes<InfoPopupRef>>;
10
+ export default InfoPopup;
@@ -0,0 +1,12 @@
1
+ import { AccountType } from '@make-software/csprclick-core-types';
2
+ import { ThemeModeType } from "../types";
3
+ interface OneClickSignInProps {
4
+ accounts: AccountType[];
5
+ onAccountClick: (acc: AccountType | null) => Promise<void>;
6
+ handleClose: () => void;
7
+ onMoreAccountsClick: () => void;
8
+ themeMode?: ThemeModeType;
9
+ }
10
+ export declare const OneClickSignInInner: (props: OneClickSignInProps) => import("react/jsx-runtime").JSX.Element;
11
+ declare const OneClickSignIn: (props: OneClickSignInProps) => import("react/jsx-runtime").JSX.Element;
12
+ export default OneClickSignIn;
@@ -4,5 +4,5 @@ interface SkeletonComponentProps {
4
4
  width?: string;
5
5
  height?: string;
6
6
  }
7
- export declare const SkeletonLoader: ({ baseColor, animationColor, height, width }: SkeletonComponentProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const SkeletonLoader: ({ baseColor, animationColor, height, width, }: SkeletonComponentProps) => import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -1,4 +1,4 @@
1
- import { BadgeProps } from "./AccountMenuItem";
1
+ import { BadgeProps } from './AccountMenuItem';
2
2
  interface BuyCSPRMenuItemProps {
3
3
  badge?: BadgeProps;
4
4
  }
@@ -2,17 +2,20 @@
2
2
  interface ScrollContainerProps {
3
3
  isModalOverflowing?: boolean;
4
4
  customMaxHeight?: number;
5
+ customMinHeight?: number;
5
6
  children: any;
6
7
  variation?: string;
7
8
  }
8
9
  export declare const ScrollWrapper: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@make-software/cspr-ui").FlexColumnProps & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, ScrollContainerProps & {
9
10
  maxHeight: number;
11
+ minHeight?: number | undefined;
10
12
  isScrolling?: boolean | undefined;
11
13
  onMouseLeave?: (() => void) | undefined;
12
14
  }, never>;
13
15
  export declare enum ScrollVariations {
14
16
  'small' = "small",
15
- 'big' = "big"
17
+ 'big' = "big",
18
+ 'medium' = "medium"
16
19
  }
17
- declare const ScrollContainer: ({ children, isModalOverflowing, variation, customMaxHeight, }: ScrollContainerProps) => import("react/jsx-runtime").JSX.Element;
20
+ declare const ScrollContainer: ({ children, isModalOverflowing, variation, customMaxHeight, customMinHeight, }: ScrollContainerProps) => import("react/jsx-runtime").JSX.Element;
18
21
  export default ScrollContainer;
@@ -5,5 +5,6 @@ export declare const MODAL_ACTIONS: {
5
5
  CHOSE_ACCOUNT: string;
6
6
  LEDGER_PROVIDER_UI: string;
7
7
  METAMASK_PROVIDER_UI: string;
8
+ BUY_CSPR: string;
8
9
  };
9
10
  export type MODAL_ACTIONS = string;
@@ -1,7 +1,7 @@
1
- export * from './ChooseAccount/ChooseAccount';
1
+ export * from './OneClickSignIn/OneClickSignIn';
2
2
  export * from './Click';
3
3
  export * from './ClickModal';
4
- export * from './ClickTopBar';
4
+ export * from './ClickUI';
5
5
  export * from './constants';
6
6
  export * from './SignIn/SignIn';
7
7
  export * from './TopBar/TopBar';
@@ -1,5 +1,22 @@
1
1
  export declare const CsprClickThemes: any;
2
+ export interface getThemesByColorProps {
3
+ csprclickDarkTheme: object;
4
+ csprclickLightTheme: object;
5
+ appDarkTheme: object;
6
+ appLightTheme: object;
7
+ }
8
+ export declare enum mappedColors {
9
+ backgroundTopBarColor = "backgroundTertiary",
10
+ backgroundMenuColor = "backgroundPrimary",
11
+ hoverProductMenu = "backgroundSecondary",
12
+ hoverAccountMenu = "fillSecondary",
13
+ textColor = "contentPrimary"
14
+ }
2
15
  export declare enum ThemeModeType {
3
16
  light = "light",
4
17
  dark = "dark"
5
18
  }
19
+ export declare const getThemesByColor: (theme: getThemesByColorProps) => {
20
+ dark: any;
21
+ light: any;
22
+ };
package/dist/index.d.ts CHANGED
@@ -67,10 +67,27 @@ interface NetworkSettings {
67
67
  }
68
68
 
69
69
  declare const CsprClickThemes: any;
70
+ interface getThemesByColorProps {
71
+ csprclickDarkTheme: object;
72
+ csprclickLightTheme: object;
73
+ appDarkTheme: object;
74
+ appLightTheme: object;
75
+ }
76
+ declare enum mappedColors {
77
+ backgroundTopBarColor = "backgroundTertiary",
78
+ backgroundMenuColor = "backgroundPrimary",
79
+ hoverProductMenu = "backgroundSecondary",
80
+ hoverAccountMenu = "fillSecondary",
81
+ textColor = "contentPrimary"
82
+ }
70
83
  declare enum ThemeModeType {
71
84
  light = "light",
72
85
  dark = "dark"
73
86
  }
87
+ declare const getThemesByColor: (theme: getThemesByColorProps) => {
88
+ dark: any;
89
+ light: any;
90
+ };
74
91
 
75
92
  declare enum WalletKeys {
76
93
  CasperWallet = "casper-wallet",
@@ -92,14 +109,14 @@ type Options = {
92
109
  accounts: AccountType[];
93
110
  };
94
111
 
95
- interface ChooseAccountProps {
112
+ interface OneClickSignInProps {
96
113
  accounts: AccountType[];
97
114
  onAccountClick: (acc: AccountType | null) => Promise<void>;
98
115
  handleClose: () => void;
99
- onChooseAccount: () => void;
116
+ onMoreAccountsClick: () => void;
100
117
  themeMode?: ThemeModeType;
101
118
  }
102
- declare const ChooseAccountInner: (props: ChooseAccountProps) => react_jsx_runtime.JSX.Element;
119
+ declare const OneClickSignInInner: (props: OneClickSignInProps) => react_jsx_runtime.JSX.Element;
103
120
 
104
121
  declare global {
105
122
  interface Window {
@@ -124,11 +141,11 @@ interface ClickModalProps {
124
141
  clickRef: any;
125
142
  signInOptions: any;
126
143
  themeMode?: ThemeModeType;
144
+ rootAppElement?: string;
127
145
  }
128
146
  declare function ClickModal(props: ClickModalProps): react_jsx_runtime.JSX.Element;
129
147
 
130
- interface ClickTopBarProps {
131
- themeMode?: ThemeModeType;
148
+ interface TopBarSettings {
132
149
  onThemeSwitch?: () => void;
133
150
  accountMenuItems?: React.ReactElement[];
134
151
  languageSettings?: LanguageSettings;
@@ -136,7 +153,13 @@ interface ClickTopBarProps {
136
153
  networkSettings?: NetworkSettings;
137
154
  customTopBarMenuSettings?: CustomTopBarMenuSettings[];
138
155
  }
139
- declare function ClickTopBar({ themeMode, onThemeSwitch, accountMenuItems, languageSettings, currencySettings, networkSettings, customTopBarMenuSettings, }: ClickTopBarProps): react_jsx_runtime.JSX.Element;
156
+ interface ClickUIProps {
157
+ themeMode?: ThemeModeType;
158
+ topBarSettings?: TopBarSettings;
159
+ rootAppElement?: string;
160
+ show1ClickModal?: boolean;
161
+ }
162
+ declare function ClickUI({ themeMode, topBarSettings, rootAppElement, show1ClickModal, }: ClickUIProps): react_jsx_runtime.JSX.Element;
140
163
 
141
164
  declare const MODAL_ACTIONS: {
142
165
  NONE: string;
@@ -145,6 +168,7 @@ declare const MODAL_ACTIONS: {
145
168
  CHOSE_ACCOUNT: string;
146
169
  LEDGER_PROVIDER_UI: string;
147
170
  METAMASK_PROVIDER_UI: string;
171
+ BUY_CSPR: string;
148
172
  };
149
173
  type MODAL_ACTIONS = string;
150
174
 
@@ -203,4 +227,4 @@ declare const CopyHashMenuItem: (props: any) => react_jsx_runtime.JSX.Element;
203
227
 
204
228
  declare const ViewAccountOnExplorerMenuItem: (props: any) => react_jsx_runtime.JSX.Element;
205
229
 
206
- export { AccountMenuItem, type AccountMenuItemProps, type BadgeBackgroundColor, type BadgeProps, BannerLink, BuyCSPRMenuItem, CURRENCY, CUSTOM, ChooseAccountInner, ClickModal, ClickProvider, ClickTopBar, CopyHashMenuItem, CsprClickThemes, type Currency, type CurrencySettings, CurrencyType, type CustomTopBarMenuItem, type CustomTopBarMenuSettings, LANGUAGE, Lang, type LanguageSettings, MODAL_ACTIONS, NETWORK, type Network, type NetworkSettings, type Options, type Provider, type ProviderKeys, SignIn, type SignInSceneProps, ThemeModeType, TopBar, ViewAccountOnExplorerMenuItem, WalletKeys, useClickBadge, useClickRef };
230
+ export { AccountMenuItem, type AccountMenuItemProps, type BadgeBackgroundColor, type BadgeProps, BannerLink, BuyCSPRMenuItem, CURRENCY, CUSTOM, ClickModal, ClickProvider, ClickUI, CopyHashMenuItem, CsprClickThemes, type Currency, type CurrencySettings, CurrencyType, type CustomTopBarMenuItem, type CustomTopBarMenuSettings, LANGUAGE, Lang, type LanguageSettings, MODAL_ACTIONS, NETWORK, type Network, type NetworkSettings, OneClickSignInInner, type Options, type Provider, type ProviderKeys, SignIn, type SignInSceneProps, ThemeModeType, TopBar, type TopBarSettings, ViewAccountOnExplorerMenuItem, WalletKeys, getThemesByColor, type getThemesByColorProps, mappedColors, useClickBadge, useClickRef };
@@ -0,0 +1,3 @@
1
+ <svg width="17" height="22" viewBox="0 0 17 22" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path id="Vector" d="M12.0379 22L16.6094 17.1111L13.1808 17.1111L13.1808 8.55556L10.8951 8.55556L10.8951 17.1111L7.46652 17.1111M9.75223 4.88889L5.1808 -4.99559e-07L0.609375 4.88889L4.03795 4.88889L4.03795 13.4444L6.32366 13.4444L6.32366 4.88889L9.75223 4.88889Z" fill="#84858C"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="86" height="88" viewBox="0 0 86 88" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M81.8224 32.5H59.9999C58.6192 32.5 57.4999 31.3807 57.4999 30L57.4999 25.1761C57.4999 18.9556 50.3633 15.4389 45.4306 19.2287L20.2789 38.5526C16.3713 41.5548 16.3713 47.4452 20.2789 50.4474L45.4306 69.7713C50.3633 73.5611 57.4999 70.0444 57.4999 63.8239L57.4999 58C57.4999 56.6193 58.6192 55.5 59.9999 55.5H81.8224C83.4952 55.5 84.4995 57.0016 84.0259 58.3246C78.1465 74.7511 62.4434 86.5 44 86.5C20.5279 86.5 1.5 67.4721 1.5 44C1.5 20.5279 20.5279 1.5 44 1.5C62.4434 1.5 78.1465 13.2489 84.0259 29.6754C84.4995 30.9984 83.4952 32.5 81.8224 32.5Z"
3
+ stroke-width="3"/>
4
+ </svg>