diff --git a/data/mini_app/wallet/src/api/getGems/generated/api.ts b/data/mini_app/wallet/src/api/getGems/generated/api.ts new file mode 100644 index 0000000000..37f1f29157 --- /dev/null +++ b/data/mini_app/wallet/src/api/getGems/generated/api.ts @@ -0,0 +1,2003 @@ +/* tslint:disable */ + +/* eslint-disable */ + +/** + * GetGems + * GetGems API + * + * The version of the OpenAPI document: 1.0.0 + * Contact: support@getgems.io + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import globalAxios, { + AxiosInstance, + AxiosPromise, + AxiosRequestConfig, +} from 'axios'; + +// @ts-ignore +import { + BASE_PATH, + BaseAPI, + COLLECTION_FORMATS, + RequestArgs, + RequiredError, +} from './base'; +// Some imports not used depending on template conditions +// @ts-ignore +import { + DUMMY_BASE_URL, + assertParamExists, + createRequestFunction, + serializeDataIfNeeded, + setApiKeyToObject, + setBasicAuthToObject, + setBearerAuthToObject, + setOAuthToObject, + setSearchParams, + toPathString, +} from './common'; +import { Configuration } from './configuration'; + +/** + * + * @export + * @enum {string} + */ + +export const ActionDisplayTo = { + All: 'All', + Owner: 'Owner', +} as const; + +export type ActionDisplayTo = + typeof ActionDisplayTo[keyof typeof ActionDisplayTo]; + +/** + * @type ActionElement + * @export + */ +export type ActionElement = + | LinkAction + | PlayGameAction + | SendAction + | ToFragmentAction + | ToTonDnsAction; + +/** + * + * @export + * @interface BaseAction + */ +export interface BaseAction { + /** + * + * @type {ActionDisplayTo} + * @memberof BaseAction + */ + displayTo: ActionDisplayTo; +} +/** + * + * @export + * @interface Collectible + */ +export interface Collectible { + /** + * + * @type {string} + * @memberof Collectible + */ + address: string; + /** + * + * @type {CollectionPreview} + * @memberof Collectible + */ + collectionPreview?: CollectionPreview; + /** + * + * @type {Media} + * @memberof Collectible + */ + content?: Media; + /** + * + * @type {string} + * @memberof Collectible + */ + name?: string; + /** + * + * @type {string} + * @memberof Collectible + */ + url: string; + /** + * + * @type {string} + * @memberof Collectible + */ + index: string; + /** + * + * @type {MetadataSourceType} + * @memberof Collectible + */ + metadataSourceType: MetadataSourceType; + /** + * + * @type {string} + * @memberof Collectible + */ + description?: string; + /** + * + * @type {Array} + * @memberof Collectible + */ + actions?: Array; + /** + * + * @type {CollectibleOwner} + * @memberof Collectible + */ + owner?: CollectibleOwner; + /** + * + * @type {string} + * @memberof Collectible + */ + bagde?: CollectibleBagdeEnum; + /** + * + * @type {Array} + * @memberof Collectible + */ + attributes?: Array; +} + +export const CollectibleBagdeEnum = { + OnSale: 'OnSale', +} as const; + +export type CollectibleBagdeEnum = + typeof CollectibleBagdeEnum[keyof typeof CollectibleBagdeEnum]; + +/** + * + * @export + * @interface CollectibleAttribute + */ +export interface CollectibleAttribute { + /** + * + * @type {string} + * @memberof CollectibleAttribute + */ + traitType: string; + /** + * + * @type {string} + * @memberof CollectibleAttribute + */ + value: string; +} +/** + * + * @export + * @interface CollectibleOwner + */ +export interface CollectibleOwner { + /** + * + * @type {string} + * @memberof CollectibleOwner + */ + address: string; + /** + * + * @type {string} + * @memberof CollectibleOwner + */ + avatar?: string; + /** + * + * @type {string} + * @memberof CollectibleOwner + */ + name?: string; + /** + * + * @type {string} + * @memberof CollectibleOwner + */ + url: string; +} +/** + * + * @export + * @interface CollectiblePreview + */ +export interface CollectiblePreview { + /** + * + * @type {string} + * @memberof CollectiblePreview + */ + address: string; + /** + * + * @type {Media} + * @memberof CollectiblePreview + */ + content?: Media; +} +/** + * + * @export + * @interface CollectiblePreviewWithCursor + */ +export interface CollectiblePreviewWithCursor { + /** + * + * @type {string} + * @memberof CollectiblePreviewWithCursor + */ + cursor?: string; + /** + * + * @type {Array} + * @memberof CollectiblePreviewWithCursor + */ + items: Array; +} +/** + * + * @export + * @interface CollectiblePreviewsByCollectionResponse + */ +export interface CollectiblePreviewsByCollectionResponse { + /** + * + * @type {Array} + * @memberof CollectiblePreviewsByCollectionResponse + */ + collectibles: Array; + /** + * + * @type {number} + * @memberof CollectiblePreviewsByCollectionResponse + */ + collectibleCount: number; + /** + * + * @type {string} + * @memberof CollectiblePreviewsByCollectionResponse + */ + cursor?: string; +} +/** + * + * @export + * @interface CollectiblePreviewsNewestResponse + */ +export interface CollectiblePreviewsNewestResponse { + /** + * + * @type {Array} + * @memberof CollectiblePreviewsNewestResponse + */ + collectibles: Array; +} +/** + * + * @export + * @interface CollectibleResponse + */ +export interface CollectibleResponse { + /** + * + * @type {Collectible} + * @memberof CollectibleResponse + */ + collectible?: Collectible; +} +/** + * + * @export + * @interface CollectiblesGrouped + */ +export interface CollectiblesGrouped { + /** + * + * @type {CollectionPreview} + * @memberof CollectiblesGrouped + */ + collectionPreview: CollectionPreview; + /** + * + * @type {number} + * @memberof CollectiblesGrouped + */ + collectibleCount: number; + /** + * + * @type {CollectiblePreviewWithCursor} + * @memberof CollectiblesGrouped + */ + collectiblePreviews: CollectiblePreviewWithCursor; +} +/** + * + * @export + * @interface CollectiblesGroupedResponse + */ +export interface CollectiblesGroupedResponse { + /** + * + * @type {Array} + * @memberof CollectiblesGroupedResponse + */ + items: Array; + /** + * + * @type {number} + * @memberof CollectiblesGroupedResponse + */ + collectibleCount?: number; + /** + * + * @type {string} + * @memberof CollectiblesGroupedResponse + */ + cursor?: string; +} +/** + * + * @export + * @interface CollectionPreview + */ +export interface CollectionPreview { + /** + * + * @type {string} + * @memberof CollectionPreview + */ + address: string; + /** + * + * @type {string} + * @memberof CollectionPreview + */ + name?: string; + /** + * + * @type {Media} + * @memberof CollectionPreview + */ + content?: Media; + /** + * + * @type {string} + * @memberof CollectionPreview + */ + url?: string; +} +/** + * + * @export + * @interface DefaultErrorObject + */ +export interface DefaultErrorObject { + /** + * + * @type {string} + * @memberof DefaultErrorObject + */ + name: string; + /** + * + * @type {number} + * @memberof DefaultErrorObject + */ + status: number; + /** + * + * @type {Array} + * @memberof DefaultErrorObject + */ + errors: Array; +} +/** + * + * @export + * @interface DefaultErrorObjectErrors + */ +export interface DefaultErrorObjectErrors { + /** + * + * @type {string} + * @memberof DefaultErrorObjectErrors + */ + path?: string; + /** + * + * @type {string} + * @memberof DefaultErrorObjectErrors + */ + message: string; +} +/** + * + * @export + * @interface Image + */ +export interface Image { + /** + * + * @type {string} + * @memberof Image + */ + typename: ImageTypenameEnum; + /** + * + * @type {string} + * @memberof Image + */ + image: string; +} + +export const ImageTypenameEnum = { + Image: 'Image', +} as const; + +export type ImageTypenameEnum = + typeof ImageTypenameEnum[keyof typeof ImageTypenameEnum]; + +/** + * + * @export + * @interface LinkAction + */ +export interface LinkAction { + /** + * + * @type {ActionDisplayTo} + * @memberof LinkAction + */ + displayTo: ActionDisplayTo; + /** + * + * @type {string} + * @memberof LinkAction + */ + typename: LinkActionTypenameEnum; + /** + * + * @type {string} + * @memberof LinkAction + */ + text: string; + /** + * + * @type {string} + * @memberof LinkAction + */ + url: string; +} + +export const LinkActionTypenameEnum = { + LinkAction: 'LinkAction', +} as const; + +export type LinkActionTypenameEnum = + typeof LinkActionTypenameEnum[keyof typeof LinkActionTypenameEnum]; + +/** + * + * @export + * @interface LinkActionAllOf + */ +export interface LinkActionAllOf { + /** + * + * @type {string} + * @memberof LinkActionAllOf + */ + typename: LinkActionAllOfTypenameEnum; + /** + * + * @type {string} + * @memberof LinkActionAllOf + */ + text: string; + /** + * + * @type {string} + * @memberof LinkActionAllOf + */ + url: string; +} + +export const LinkActionAllOfTypenameEnum = { + LinkAction: 'LinkAction', +} as const; + +export type LinkActionAllOfTypenameEnum = + typeof LinkActionAllOfTypenameEnum[keyof typeof LinkActionAllOfTypenameEnum]; + +/** + * + * @export + * @interface Lottie + */ +export interface Lottie { + /** + * + * @type {string} + * @memberof Lottie + */ + typename: LottieTypenameEnum; + /** + * + * @type {string} + * @memberof Lottie + */ + preview: string; + /** + * + * @type {string} + * @memberof Lottie + */ + lottie: string; +} + +export const LottieTypenameEnum = { + Lottie: 'Lottie', +} as const; + +export type LottieTypenameEnum = + typeof LottieTypenameEnum[keyof typeof LottieTypenameEnum]; + +/** + * @type Media + * @export + */ +export type Media = Image | Lottie | Video; + +/** + * + * @export + * @enum {string} + */ + +export const MetadataSourceType = { + Centralized: 'Centralized', + Decentralized: 'Decentralized', + GetGems: 'GetGems', + Ipfs: 'Ipfs', + OnChain: 'OnChain', + TonStorage: 'TonStorage', +} as const; + +export type MetadataSourceType = + typeof MetadataSourceType[keyof typeof MetadataSourceType]; + +/** + * + * @export + * @interface PlayGameAction + */ +export interface PlayGameAction { + /** + * + * @type {ActionDisplayTo} + * @memberof PlayGameAction + */ + displayTo: ActionDisplayTo; + /** + * + * @type {string} + * @memberof PlayGameAction + */ + typename: PlayGameActionTypenameEnum; + /** + * + * @type {string} + * @memberof PlayGameAction + */ + url: string; +} + +export const PlayGameActionTypenameEnum = { + PlayGameAction: 'PlayGameAction', +} as const; + +export type PlayGameActionTypenameEnum = + typeof PlayGameActionTypenameEnum[keyof typeof PlayGameActionTypenameEnum]; + +/** + * + * @export + * @interface PlayGameActionAllOf + */ +export interface PlayGameActionAllOf { + /** + * + * @type {string} + * @memberof PlayGameActionAllOf + */ + typename: PlayGameActionAllOfTypenameEnum; + /** + * + * @type {string} + * @memberof PlayGameActionAllOf + */ + url: string; +} + +export const PlayGameActionAllOfTypenameEnum = { + PlayGameAction: 'PlayGameAction', +} as const; + +export type PlayGameActionAllOfTypenameEnum = + typeof PlayGameActionAllOfTypenameEnum[keyof typeof PlayGameActionAllOfTypenameEnum]; + +/** + * + * @export + * @interface SendAction + */ +export interface SendAction { + /** + * + * @type {ActionDisplayTo} + * @memberof SendAction + */ + displayTo: ActionDisplayTo; + /** + * + * @type {string} + * @memberof SendAction + */ + typename: SendActionTypenameEnum; + /** + * + * @type {string} + * @memberof SendAction + */ + rejectReason?: SendActionRejectReasonEnum; +} + +export const SendActionTypenameEnum = { + SendAction: 'SendAction', +} as const; + +export type SendActionTypenameEnum = + typeof SendActionTypenameEnum[keyof typeof SendActionTypenameEnum]; +export const SendActionRejectReasonEnum = { + OnSale: 'OnSale', +} as const; + +export type SendActionRejectReasonEnum = + typeof SendActionRejectReasonEnum[keyof typeof SendActionRejectReasonEnum]; + +/** + * + * @export + * @interface SendActionAllOf + */ +export interface SendActionAllOf { + /** + * + * @type {string} + * @memberof SendActionAllOf + */ + typename: SendActionAllOfTypenameEnum; + /** + * + * @type {string} + * @memberof SendActionAllOf + */ + rejectReason?: SendActionAllOfRejectReasonEnum; +} + +export const SendActionAllOfTypenameEnum = { + SendAction: 'SendAction', +} as const; + +export type SendActionAllOfTypenameEnum = + typeof SendActionAllOfTypenameEnum[keyof typeof SendActionAllOfTypenameEnum]; +export const SendActionAllOfRejectReasonEnum = { + OnSale: 'OnSale', +} as const; + +export type SendActionAllOfRejectReasonEnum = + typeof SendActionAllOfRejectReasonEnum[keyof typeof SendActionAllOfRejectReasonEnum]; + +/** + * + * @export + * @interface SuggestedAddress + */ +export interface SuggestedAddress { + /** + * + * @type {string} + * @memberof SuggestedAddress + */ + address: string; + /** + * + * @type {string} + * @memberof SuggestedAddress + */ + date: string; +} +/** + * + * @export + * @interface ToFragmentAction + */ +export interface ToFragmentAction { + /** + * + * @type {ActionDisplayTo} + * @memberof ToFragmentAction + */ + displayTo: ActionDisplayTo; + /** + * + * @type {string} + * @memberof ToFragmentAction + */ + typename: ToFragmentActionTypenameEnum; + /** + * + * @type {string} + * @memberof ToFragmentAction + */ + url: string; +} + +export const ToFragmentActionTypenameEnum = { + ToFragmentAction: 'ToFragmentAction', +} as const; + +export type ToFragmentActionTypenameEnum = + typeof ToFragmentActionTypenameEnum[keyof typeof ToFragmentActionTypenameEnum]; + +/** + * + * @export + * @interface ToFragmentActionAllOf + */ +export interface ToFragmentActionAllOf { + /** + * + * @type {string} + * @memberof ToFragmentActionAllOf + */ + typename: ToFragmentActionAllOfTypenameEnum; + /** + * + * @type {string} + * @memberof ToFragmentActionAllOf + */ + url: string; +} + +export const ToFragmentActionAllOfTypenameEnum = { + ToFragmentAction: 'ToFragmentAction', +} as const; + +export type ToFragmentActionAllOfTypenameEnum = + typeof ToFragmentActionAllOfTypenameEnum[keyof typeof ToFragmentActionAllOfTypenameEnum]; + +/** + * + * @export + * @interface ToTonDnsAction + */ +export interface ToTonDnsAction { + /** + * + * @type {ActionDisplayTo} + * @memberof ToTonDnsAction + */ + displayTo: ActionDisplayTo; + /** + * + * @type {string} + * @memberof ToTonDnsAction + */ + typename: ToTonDnsActionTypenameEnum; + /** + * + * @type {string} + * @memberof ToTonDnsAction + */ + url: string; +} + +export const ToTonDnsActionTypenameEnum = { + ToTonDnsAction: 'ToTonDnsAction', +} as const; + +export type ToTonDnsActionTypenameEnum = + typeof ToTonDnsActionTypenameEnum[keyof typeof ToTonDnsActionTypenameEnum]; + +/** + * + * @export + * @interface ToTonDnsActionAllOf + */ +export interface ToTonDnsActionAllOf { + /** + * + * @type {string} + * @memberof ToTonDnsActionAllOf + */ + typename: ToTonDnsActionAllOfTypenameEnum; + /** + * + * @type {string} + * @memberof ToTonDnsActionAllOf + */ + url: string; +} + +export const ToTonDnsActionAllOfTypenameEnum = { + ToTonDnsAction: 'ToTonDnsAction', +} as const; + +export type ToTonDnsActionAllOfTypenameEnum = + typeof ToTonDnsActionAllOfTypenameEnum[keyof typeof ToTonDnsActionAllOfTypenameEnum]; + +/** + * + * @export + * @interface TonTx + */ +export interface TonTx { + /** + * + * @type {string} + * @memberof TonTx + */ + source?: string; + /** + * + * @type {number} + * @memberof TonTx + */ + validUntil: number; + /** + * + * @type {Array} + * @memberof TonTx + */ + messages: Array; +} +/** + * + * @export + * @interface TonTxItem + */ +export interface TonTxItem { + /** + * + * @type {string} + * @memberof TonTxItem + */ + address: string; + /** + * + * @type {string} + * @memberof TonTxItem + */ + amount: string; + /** + * + * @type {string} + * @memberof TonTxItem + */ + payload?: string; + /** + * + * @type {string} + * @memberof TonTxItem + */ + stateInit?: string; +} +/** + * + * @export + * @interface TransferCollectibleResponse + */ +export interface TransferCollectibleResponse { + /** + * + * @type {TonTx} + * @memberof TransferCollectibleResponse + */ + tx: TonTx; + /** + * + * @type {number} + * @memberof TransferCollectibleResponse + */ + balanceBefore: number; + /** + * + * @type {number} + * @memberof TransferCollectibleResponse + */ + balanceAfter: number; + /** + * + * @type {number} + * @memberof TransferCollectibleResponse + */ + fee: number; + /** + * + * @type {Collectible} + * @memberof TransferCollectibleResponse + */ + collectibleAfter: Collectible; +} +/** + * + * @export + * @interface UserPreview + */ +export interface UserPreview { + /** + * + * @type {string} + * @memberof UserPreview + */ + address: string; + /** + * + * @type {string} + * @memberof UserPreview + */ + avatar?: string; + /** + * + * @type {string} + * @memberof UserPreview + */ + name?: string; +} +/** + * + * @export + * @interface ValidateAddressResponse + */ +export interface ValidateAddressResponse { + /** + * + * @type {boolean} + * @memberof ValidateAddressResponse + */ + valid: boolean; + /** + * + * @type {string} + * @memberof ValidateAddressResponse + */ + errorCode?: ValidateAddressResponseErrorCodeEnum; + /** + * + * @type {string} + * @memberof ValidateAddressResponse + */ + resolvedAddress?: string; +} + +export const ValidateAddressResponseErrorCodeEnum = { + InvalidDomain: 'invalid_domain', + InvalidNumberOfCharacters: 'invalid_number_of_characters', + WithdrawToYourselfIsForbidden: 'withdraw_to_yourself_is_forbidden', + AddressForbidden: 'address_forbidden', +} as const; + +export type ValidateAddressResponseErrorCodeEnum = + typeof ValidateAddressResponseErrorCodeEnum[keyof typeof ValidateAddressResponseErrorCodeEnum]; + +/** + * + * @export + * @interface Video + */ +export interface Video { + /** + * + * @type {string} + * @memberof Video + */ + typename: VideoTypenameEnum; + /** + * + * @type {string} + * @memberof Video + */ + preview: string; + /** + * + * @type {string} + * @memberof Video + */ + video: string; +} + +export const VideoTypenameEnum = { + Video: 'Video', +} as const; + +export type VideoTypenameEnum = + typeof VideoTypenameEnum[keyof typeof VideoTypenameEnum]; + +/** + * CollectiblesApi - axios parameter creator + * @export + */ +export const CollectiblesApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Returns collectible by address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectible: async ( + address: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'address' is not null or undefined + assertParamExists('collectible', 'address', address); + const localVarPath = `/collectible/{address}`.replace( + `{${'address'}}`, + encodeURIComponent(String(address)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns user`s collectible previews by collection + * @param {string} userAddress + * @param {string} [collectionAddress] + * @param {number} [count] + * @param {string} [cursor] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectiblePreviewsByCollection: async ( + userAddress: string, + collectionAddress?: string, + count?: number, + cursor?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'userAddress' is not null or undefined + assertParamExists( + 'collectiblePreviewsByCollection', + 'userAddress', + userAddress, + ); + const localVarPath = + `/collectiblePreviewsByCollection/{userAddress}`.replace( + `{${'userAddress'}}`, + encodeURIComponent(String(userAddress)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (collectionAddress !== undefined) { + localVarQueryParameter['collectionAddress'] = collectionAddress; + } + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + if (cursor !== undefined) { + localVarQueryParameter['cursor'] = cursor; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns newest user`s collectible previews (3 by default) + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectiblePreviewsNewest: async ( + userAddress: string, + count?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'userAddress' is not null or undefined + assertParamExists( + 'collectiblePreviewsNewest', + 'userAddress', + userAddress, + ); + const localVarPath = `/collectiblePreviewsNewest/{userAddress}`.replace( + `{${'userAddress'}}`, + encodeURIComponent(String(userAddress)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns user`s collectibles grouped by collection + * @param {string} address + * @param {number} countColTotal + * @param {number} countRowPerCollection + * @param {number} countRowTotal + * @param {string} [cursor] + * @param {Array} [skipCollections] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectiblesGrouped: async ( + address: string, + countColTotal: number, + countRowPerCollection: number, + countRowTotal: number, + cursor?: string, + skipCollections?: Array, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'address' is not null or undefined + assertParamExists('collectiblesGrouped', 'address', address); + // verify required parameter 'countColTotal' is not null or undefined + assertParamExists('collectiblesGrouped', 'countColTotal', countColTotal); + // verify required parameter 'countRowPerCollection' is not null or undefined + assertParamExists( + 'collectiblesGrouped', + 'countRowPerCollection', + countRowPerCollection, + ); + // verify required parameter 'countRowTotal' is not null or undefined + assertParamExists('collectiblesGrouped', 'countRowTotal', countRowTotal); + const localVarPath = `/collectiblesGrouped/{address}`.replace( + `{${'address'}}`, + encodeURIComponent(String(address)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (countColTotal !== undefined) { + localVarQueryParameter['countColTotal'] = countColTotal; + } + + if (countRowPerCollection !== undefined) { + localVarQueryParameter['countRowPerCollection'] = countRowPerCollection; + } + + if (countRowTotal !== undefined) { + localVarQueryParameter['countRowTotal'] = countRowTotal; + } + + if (cursor !== undefined) { + localVarQueryParameter['cursor'] = cursor; + } + + if (skipCollections) { + localVarQueryParameter['skipCollections'] = skipCollections; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns addresses from previews nft transfers + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + suggestNftTransferAddress: async ( + userAddress: string, + count?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'userAddress' is not null or undefined + assertParamExists( + 'suggestNftTransferAddress', + 'userAddress', + userAddress, + ); + const localVarPath = `/suggestNftTransferAddress/{userAddress}`.replace( + `{${'userAddress'}}`, + encodeURIComponent(String(userAddress)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Creates unsigned TX transfering collectible to new owner + * @param {string} collectibleAddress + * @param {string} newOwnerAddress + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + transferCollectible: async ( + collectibleAddress: string, + newOwnerAddress: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'collectibleAddress' is not null or undefined + assertParamExists( + 'transferCollectible', + 'collectibleAddress', + collectibleAddress, + ); + // verify required parameter 'newOwnerAddress' is not null or undefined + assertParamExists( + 'transferCollectible', + 'newOwnerAddress', + newOwnerAddress, + ); + const localVarPath = + `/collectible/transfer/{collectibleAddress}/{newOwnerAddress}` + .replace( + `{${'collectibleAddress'}}`, + encodeURIComponent(String(collectibleAddress)), + ) + .replace( + `{${'newOwnerAddress'}}`, + encodeURIComponent(String(newOwnerAddress)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Validate address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + validateAddress: async ( + address: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'address' is not null or undefined + assertParamExists('validateAddress', 'address', address); + const localVarPath = `/validateAddress/{address}`.replace( + `{${'address'}}`, + encodeURIComponent(String(address)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * CollectiblesApi - functional programming interface + * @export + */ +export const CollectiblesApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = + CollectiblesApiAxiosParamCreator(configuration); + return { + /** + * Returns collectible by address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async collectible( + address: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.collectible( + address, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Returns user`s collectible previews by collection + * @param {string} userAddress + * @param {string} [collectionAddress] + * @param {number} [count] + * @param {string} [cursor] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async collectiblePreviewsByCollection( + userAddress: string, + collectionAddress?: string, + count?: number, + cursor?: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.collectiblePreviewsByCollection( + userAddress, + collectionAddress, + count, + cursor, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Returns newest user`s collectible previews (3 by default) + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async collectiblePreviewsNewest( + userAddress: string, + count?: number, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.collectiblePreviewsNewest( + userAddress, + count, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Returns user`s collectibles grouped by collection + * @param {string} address + * @param {number} countColTotal + * @param {number} countRowPerCollection + * @param {number} countRowTotal + * @param {string} [cursor] + * @param {Array} [skipCollections] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async collectiblesGrouped( + address: string, + countColTotal: number, + countRowPerCollection: number, + countRowTotal: number, + cursor?: string, + skipCollections?: Array, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.collectiblesGrouped( + address, + countColTotal, + countRowPerCollection, + countRowTotal, + cursor, + skipCollections, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Returns addresses from previews nft transfers + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async suggestNftTransferAddress( + userAddress: string, + count?: number, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise> + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.suggestNftTransferAddress( + userAddress, + count, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Creates unsigned TX transfering collectible to new owner + * @param {string} collectibleAddress + * @param {string} newOwnerAddress + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async transferCollectible( + collectibleAddress: string, + newOwnerAddress: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.transferCollectible( + collectibleAddress, + newOwnerAddress, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Validate address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async validateAddress( + address: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.validateAddress( + address, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * CollectiblesApi - factory interface + * @export + */ +export const CollectiblesApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = CollectiblesApiFp(configuration); + return { + /** + * Returns collectible by address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectible( + address: string, + options?: any, + ): AxiosPromise { + return localVarFp + .collectible(address, options) + .then((request) => request(axios, basePath)); + }, + /** + * Returns user`s collectible previews by collection + * @param {string} userAddress + * @param {string} [collectionAddress] + * @param {number} [count] + * @param {string} [cursor] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectiblePreviewsByCollection( + userAddress: string, + collectionAddress?: string, + count?: number, + cursor?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .collectiblePreviewsByCollection( + userAddress, + collectionAddress, + count, + cursor, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Returns newest user`s collectible previews (3 by default) + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectiblePreviewsNewest( + userAddress: string, + count?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .collectiblePreviewsNewest(userAddress, count, options) + .then((request) => request(axios, basePath)); + }, + /** + * Returns user`s collectibles grouped by collection + * @param {string} address + * @param {number} countColTotal + * @param {number} countRowPerCollection + * @param {number} countRowTotal + * @param {string} [cursor] + * @param {Array} [skipCollections] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + collectiblesGrouped( + address: string, + countColTotal: number, + countRowPerCollection: number, + countRowTotal: number, + cursor?: string, + skipCollections?: Array, + options?: any, + ): AxiosPromise { + return localVarFp + .collectiblesGrouped( + address, + countColTotal, + countRowPerCollection, + countRowTotal, + cursor, + skipCollections, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Returns addresses from previews nft transfers + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + suggestNftTransferAddress( + userAddress: string, + count?: number, + options?: any, + ): AxiosPromise> { + return localVarFp + .suggestNftTransferAddress(userAddress, count, options) + .then((request) => request(axios, basePath)); + }, + /** + * Creates unsigned TX transfering collectible to new owner + * @param {string} collectibleAddress + * @param {string} newOwnerAddress + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + transferCollectible( + collectibleAddress: string, + newOwnerAddress: string, + options?: any, + ): AxiosPromise { + return localVarFp + .transferCollectible(collectibleAddress, newOwnerAddress, options) + .then((request) => request(axios, basePath)); + }, + /** + * Validate address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + validateAddress( + address: string, + options?: any, + ): AxiosPromise { + return localVarFp + .validateAddress(address, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * CollectiblesApi - object-oriented interface + * @export + * @class CollectiblesApi + * @extends {BaseAPI} + */ +export class CollectiblesApi extends BaseAPI { + /** + * Returns collectible by address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public collectible(address: string, options?: AxiosRequestConfig) { + return CollectiblesApiFp(this.configuration) + .collectible(address, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns user`s collectible previews by collection + * @param {string} userAddress + * @param {string} [collectionAddress] + * @param {number} [count] + * @param {string} [cursor] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public collectiblePreviewsByCollection( + userAddress: string, + collectionAddress?: string, + count?: number, + cursor?: string, + options?: AxiosRequestConfig, + ) { + return CollectiblesApiFp(this.configuration) + .collectiblePreviewsByCollection( + userAddress, + collectionAddress, + count, + cursor, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns newest user`s collectible previews (3 by default) + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public collectiblePreviewsNewest( + userAddress: string, + count?: number, + options?: AxiosRequestConfig, + ) { + return CollectiblesApiFp(this.configuration) + .collectiblePreviewsNewest(userAddress, count, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns user`s collectibles grouped by collection + * @param {string} address + * @param {number} countColTotal + * @param {number} countRowPerCollection + * @param {number} countRowTotal + * @param {string} [cursor] + * @param {Array} [skipCollections] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public collectiblesGrouped( + address: string, + countColTotal: number, + countRowPerCollection: number, + countRowTotal: number, + cursor?: string, + skipCollections?: Array, + options?: AxiosRequestConfig, + ) { + return CollectiblesApiFp(this.configuration) + .collectiblesGrouped( + address, + countColTotal, + countRowPerCollection, + countRowTotal, + cursor, + skipCollections, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns addresses from previews nft transfers + * @param {string} userAddress + * @param {number} [count] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public suggestNftTransferAddress( + userAddress: string, + count?: number, + options?: AxiosRequestConfig, + ) { + return CollectiblesApiFp(this.configuration) + .suggestNftTransferAddress(userAddress, count, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates unsigned TX transfering collectible to new owner + * @param {string} collectibleAddress + * @param {string} newOwnerAddress + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public transferCollectible( + collectibleAddress: string, + newOwnerAddress: string, + options?: AxiosRequestConfig, + ) { + return CollectiblesApiFp(this.configuration) + .transferCollectible(collectibleAddress, newOwnerAddress, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Validate address + * @param {string} address + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CollectiblesApi + */ + public validateAddress(address: string, options?: AxiosRequestConfig) { + return CollectiblesApiFp(this.configuration) + .validateAddress(address, options) + .then((request) => request(this.axios, this.basePath)); + } +} diff --git a/data/mini_app/wallet/src/api/getGems/generated/base.ts b/data/mini_app/wallet/src/api/getGems/generated/base.ts new file mode 100644 index 0000000000..8491059253 --- /dev/null +++ b/data/mini_app/wallet/src/api/getGems/generated/base.ts @@ -0,0 +1,80 @@ +/* tslint:disable */ + +/* eslint-disable */ + +/** + * GetGems + * GetGems API + * + * The version of the OpenAPI document: 1.0.0 + * Contact: support@getgems.io + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +// Some imports not used depending on template conditions +// @ts-ignore +import globalAxios, { + AxiosInstance, + AxiosPromise, + AxiosRequestConfig, +} from 'axios'; + +import { Configuration } from './configuration'; + +export const BASE_PATH = '/wallet'.replace(/\/+$/, ''); + +/** + * + * @export + */ +export const COLLECTION_FORMATS = { + csv: ',', + ssv: ' ', + tsv: '\t', + pipes: '|', +}; + +/** + * + * @export + * @interface RequestArgs + */ +export interface RequestArgs { + url: string; + options: AxiosRequestConfig; +} + +/** + * + * @export + * @class BaseAPI + */ +export class BaseAPI { + protected configuration: Configuration | undefined; + + constructor( + configuration?: Configuration, + protected basePath: string = BASE_PATH, + protected axios: AxiosInstance = globalAxios, + ) { + if (configuration) { + this.configuration = configuration; + this.basePath = configuration.basePath || this.basePath; + } + } +} + +/** + * + * @export + * @class RequiredError + * @extends {Error} + */ +export class RequiredError extends Error { + name: 'RequiredError' = 'RequiredError'; + constructor(public field: string, msg?: string) { + super(msg); + } +} diff --git a/data/mini_app/wallet/src/api/getGems/generated/common.ts b/data/mini_app/wallet/src/api/getGems/generated/common.ts new file mode 100644 index 0000000000..e51bcb0311 --- /dev/null +++ b/data/mini_app/wallet/src/api/getGems/generated/common.ts @@ -0,0 +1,183 @@ +/* tslint:disable */ + +/* eslint-disable */ + +/** + * GetGems + * GetGems API + * + * The version of the OpenAPI document: 1.0.0 + * Contact: support@getgems.io + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { AxiosInstance, AxiosResponse } from 'axios'; + +import { RequestArgs, RequiredError } from './base'; +import { Configuration } from './configuration'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com'; + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function ( + functionName: string, + paramName: string, + paramValue: unknown, +) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError( + paramName, + `Required parameter ${paramName} was null or undefined when calling ${functionName}.`, + ); + } +}; + +/** + * + * @export + */ +export const setApiKeyToObject = async function ( + object: any, + keyParamName: string, + configuration?: Configuration, +) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = + typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +}; + +/** + * + * @export + */ +export const setBasicAuthToObject = function ( + object: any, + configuration?: Configuration, +) { + if (configuration && (configuration.username || configuration.password)) { + object['auth'] = { + username: configuration.username, + password: configuration.password, + }; + } +}; + +/** + * + * @export + */ +export const setBearerAuthToObject = async function ( + object: any, + configuration?: Configuration, +) { + if (configuration && configuration.accessToken) { + const accessToken = + typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object['Authorization'] = 'Bearer ' + accessToken; + } +}; + +/** + * + * @export + */ +export const setOAuthToObject = async function ( + object: any, + name: string, + scopes: string[], + configuration?: Configuration, +) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = + typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object['Authorization'] = 'Bearer ' + localVarAccessTokenValue; + } +}; + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + if (Array.isArray(object[key])) { + searchParams.delete(key); + for (const item of object[key]) { + searchParams.append(key, item); + } + } else { + searchParams.set(key, object[key]); + } + } + } + url.search = searchParams.toString(); +}; + +/** + * + * @export + */ +export const serializeDataIfNeeded = function ( + value: any, + requestOptions: any, + configuration?: Configuration, +) { + const nonString = typeof value !== 'string'; + const needsSerialization = + nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : value || ''; +}; + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash; +}; + +/** + * + * @export + */ +export const createRequestFunction = function ( + axiosArgs: RequestArgs, + globalAxios: AxiosInstance, + BASE_PATH: string, + configuration?: Configuration, +) { + return >( + axios: AxiosInstance = globalAxios, + basePath: string = BASE_PATH, + ) => { + const axiosRequestArgs = { + ...axiosArgs.options, + url: (configuration?.basePath || basePath) + axiosArgs.url, + }; + return axios.request(axiosRequestArgs); + }; +}; diff --git a/data/mini_app/wallet/src/api/getGems/generated/configuration.ts b/data/mini_app/wallet/src/api/getGems/generated/configuration.ts new file mode 100644 index 0000000000..1fcfa27cc9 --- /dev/null +++ b/data/mini_app/wallet/src/api/getGems/generated/configuration.ts @@ -0,0 +1,123 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * GetGems + * GetGems API + * + * The version of the OpenAPI document: 1.0.0 + * Contact: support@getgems.io + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +export interface ConfigurationParameters { + apiKey?: + | string + | Promise + | ((name: string) => string) + | ((name: string) => Promise); + username?: string; + password?: string; + accessToken?: + | string + | Promise + | ((name?: string, scopes?: string[]) => string) + | ((name?: string, scopes?: string[]) => Promise); + basePath?: string; + baseOptions?: any; + formDataCtor?: new () => any; +} + +export class Configuration { + /** + * parameter for apiKey security + * @param name security name + * @memberof Configuration + */ + apiKey?: + | string + | Promise + | ((name: string) => string) + | ((name: string) => Promise); + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + username?: string; + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + password?: string; + /** + * parameter for oauth2 security + * @param name security name + * @param scopes oauth2 scope + * @memberof Configuration + */ + accessToken?: + | string + | Promise + | ((name?: string, scopes?: string[]) => string) + | ((name?: string, scopes?: string[]) => Promise); + /** + * override base path + * + * @type {string} + * @memberof Configuration + */ + basePath?: string; + /** + * base options for axios calls + * + * @type {any} + * @memberof Configuration + */ + baseOptions?: any; + /** + * The FormData constructor that will be used to create multipart form data + * requests. You can inject this here so that execution environments that + * do not support the FormData class can still run the generated client. + * + * @type {new () => FormData} + */ + formDataCtor?: new () => any; + + constructor(param: ConfigurationParameters = {}) { + this.apiKey = param.apiKey; + this.username = param.username; + this.password = param.password; + this.accessToken = param.accessToken; + this.basePath = param.basePath; + this.baseOptions = param.baseOptions; + this.formDataCtor = param.formDataCtor; + } + + /** + * Check if the given MIME is a JSON MIME. + * JSON MIME examples: + * application/json + * application/json; charset=UTF8 + * APPLICATION/JSON + * application/vnd.company+json + * @param mime - MIME (Multipurpose Internet Mail Extensions) + * @return True if the given MIME is JSON, false otherwise. + */ + public isJsonMime(mime: string): boolean { + const jsonMime: RegExp = new RegExp( + '^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$', + 'i', + ); + return ( + mime !== null && + (jsonMime.test(mime) || + mime.toLowerCase() === 'application/json-patch+json') + ); + } +} diff --git a/data/mini_app/wallet/src/api/getGems/index.ts b/data/mini_app/wallet/src/api/getGems/index.ts new file mode 100644 index 0000000000..70dc2fe225 --- /dev/null +++ b/data/mini_app/wallet/src/api/getGems/index.ts @@ -0,0 +1,28 @@ +import { captureException } from '@sentry/react'; +import axios, { AxiosError } from 'axios'; + +import { CollectiblesApi, Configuration } from 'api/getGems/generated'; + +import { config as appConfig } from 'config'; + +const axiosInstance = axios.create(); +const config = { + basePath: appConfig.getGemsApiHost || 'https://api.getgems.io/wallet', + isJsonMime: new Configuration().isJsonMime, +}; + +const API = { + Collectibles: new CollectiblesApi(config, '', axiosInstance), +}; + +const onResponseError = (error: AxiosError) => { + if (error?.response?.status && error.response.status >= 400) { + captureException( + `GetGems API error. URL: ${error.config.url}. STATUS: ${error.response.status}`, + ); + } +}; + +axiosInstance.interceptors.response.use(undefined, onResponseError); + +export default API; diff --git a/data/mini_app/wallet/src/api/tonapi/generated/api.ts b/data/mini_app/wallet/src/api/tonapi/generated/api.ts new file mode 100644 index 0000000000..0315891dac --- /dev/null +++ b/data/mini_app/wallet/src/api/tonapi/generated/api.ts @@ -0,0 +1,12281 @@ +/* tslint:disable */ + +/* eslint-disable */ + +/** + * REST api to TON blockchain explorer + * Provide access to indexed TON blockchain + * + * The version of the OpenAPI document: 2.0.0 + * Contact: support@tonkeeper.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import globalAxios, { + AxiosInstance, + AxiosPromise, + AxiosRequestConfig, +} from 'axios'; + +// @ts-ignore +import { + BASE_PATH, + BaseAPI, + COLLECTION_FORMATS, + RequestArgs, + RequiredError, +} from './base'; +// Some imports not used depending on template conditions +// @ts-ignore +import { + DUMMY_BASE_URL, + assertParamExists, + createRequestFunction, + serializeDataIfNeeded, + setApiKeyToObject, + setBasicAuthToObject, + setBearerAuthToObject, + setOAuthToObject, + setSearchParams, + toPathString, +} from './common'; +import { Configuration } from './configuration'; + +// mannually added due to openapi-generator issue +type UNKNOWN_BASE_TYPE = any; + +/** + * + * @export + * @enum {string} + */ + +export const AccStatusChange = { + Unchanged: 'acst_unchanged', + Frozen: 'acst_frozen', + Deleted: 'acst_deleted', +} as const; + +export type AccStatusChange = + typeof AccStatusChange[keyof typeof AccStatusChange]; + +/** + * + * @export + * @interface Account + */ +export interface Account { + /** + * + * @type {string} + * @memberof Account + */ + address: string; + /** + * + * @type {number} + * @memberof Account + */ + balance: number; + /** + * unix timestamp + * @type {number} + * @memberof Account + */ + last_activity: number; + /** + * + * @type {string} + * @memberof Account + */ + status: string; + /** + * + * @type {Array} + * @memberof Account + */ + interfaces?: Array; + /** + * + * @type {string} + * @memberof Account + */ + name?: string; + /** + * + * @type {boolean} + * @memberof Account + */ + is_scam?: boolean; + /** + * + * @type {string} + * @memberof Account + */ + icon?: string; + /** + * + * @type {boolean} + * @memberof Account + */ + memo_required?: boolean; + /** + * + * @type {Array} + * @memberof Account + */ + get_methods: Array; +} +/** + * + * @export + * @interface AccountAddress + */ +export interface AccountAddress { + /** + * + * @type {string} + * @memberof AccountAddress + */ + address: string; + /** + * Display name. Data collected from different sources like moderation lists, dns, collections names and over. + * @type {string} + * @memberof AccountAddress + */ + name?: string; + /** + * Is this account was marked as part of scammers activity + * @type {boolean} + * @memberof AccountAddress + */ + is_scam: boolean; + /** + * + * @type {string} + * @memberof AccountAddress + */ + icon?: string; +} +/** + * An event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @export + * @interface AccountEvent + */ +export interface AccountEvent { + /** + * + * @type {string} + * @memberof AccountEvent + */ + event_id: string; + /** + * + * @type {AccountAddress} + * @memberof AccountEvent + */ + account: AccountAddress; + /** + * + * @type {number} + * @memberof AccountEvent + */ + timestamp: number; + /** + * + * @type {Array} + * @memberof AccountEvent + */ + actions: Array; + /** + * scam + * @type {boolean} + * @memberof AccountEvent + */ + is_scam: boolean; + /** + * + * @type {number} + * @memberof AccountEvent + */ + lt: number; + /** + * Event is not finished yet. Transactions still happening + * @type {boolean} + * @memberof AccountEvent + */ + in_progress: boolean; + /** + * TODO + * @type {number} + * @memberof AccountEvent + */ + extra: number; +} +/** + * + * @export + * @interface AccountEvents + */ +export interface AccountEvents { + /** + * + * @type {Array} + * @memberof AccountEvents + */ + events: Array; + /** + * + * @type {number} + * @memberof AccountEvents + */ + next_from: number; +} +/** + * + * @export + * @interface AccountInfoByStateInit + */ +export interface AccountInfoByStateInit { + /** + * + * @type {string} + * @memberof AccountInfoByStateInit + */ + public_key: string; + /** + * + * @type {string} + * @memberof AccountInfoByStateInit + */ + address: string; +} +/** + * + * @export + * @interface AccountStaking + */ +export interface AccountStaking { + /** + * + * @type {Array} + * @memberof AccountStaking + */ + pools: Array; +} +/** + * + * @export + * @interface AccountStakingInfo + */ +export interface AccountStakingInfo { + /** + * + * @type {string} + * @memberof AccountStakingInfo + */ + pool: string; + /** + * + * @type {number} + * @memberof AccountStakingInfo + */ + amount: number; + /** + * + * @type {number} + * @memberof AccountStakingInfo + */ + pending_deposit: number; + /** + * + * @type {number} + * @memberof AccountStakingInfo + */ + pending_withdraw: number; + /** + * + * @type {number} + * @memberof AccountStakingInfo + */ + ready_withdraw: number; +} +/** + * + * @export + * @enum {string} + */ + +export const AccountStatus = { + Nonexist: 'nonexist', + Uninit: 'uninit', + Active: 'active', + Frozen: 'frozen', +} as const; + +export type AccountStatus = typeof AccountStatus[keyof typeof AccountStatus]; + +/** + * + * @export + * @interface AccountStorageInfo + */ +export interface AccountStorageInfo { + /** + * + * @type {number} + * @memberof AccountStorageInfo + */ + used_cells: number; + /** + * + * @type {number} + * @memberof AccountStorageInfo + */ + used_bits: number; + /** + * + * @type {number} + * @memberof AccountStorageInfo + */ + used_public_cells: number; + /** + * + * @type {number} + * @memberof AccountStorageInfo + */ + last_paid: number; + /** + * + * @type {number} + * @memberof AccountStorageInfo + */ + due_payment: number; +} +/** + * + * @export + * @interface Accounts + */ +export interface Accounts { + /** + * + * @type {Array} + * @memberof Accounts + */ + accounts: Array; +} +/** + * + * @export + * @interface Action + */ +export interface Action { + /** + * + * @type {string} + * @memberof Action + */ + type: ActionTypeEnum; + /** + * + * @type {string} + * @memberof Action + */ + status: ActionStatusEnum; + /** + * + * @type {TonTransferAction} + * @memberof Action + */ + TonTransfer?: TonTransferAction; + /** + * + * @type {ContractDeployAction} + * @memberof Action + */ + ContractDeploy?: ContractDeployAction; + /** + * + * @type {JettonTransferAction} + * @memberof Action + */ + JettonTransfer?: JettonTransferAction; + /** + * + * @type {NftItemTransferAction} + * @memberof Action + */ + NftItemTransfer?: NftItemTransferAction; + /** + * + * @type {SubscriptionAction} + * @memberof Action + */ + Subscribe?: SubscriptionAction; + /** + * + * @type {UnSubscriptionAction} + * @memberof Action + */ + UnSubscribe?: UnSubscriptionAction; + /** + * + * @type {AuctionBidAction} + * @memberof Action + */ + AuctionBid?: AuctionBidAction; + /** + * + * @type {NftPurchaseAction} + * @memberof Action + */ + NftPurchase?: NftPurchaseAction; + /** + * + * @type {DepositStakeAction} + * @memberof Action + */ + DepositStake?: DepositStakeAction; + /** + * + * @type {RecoverStakeAction} + * @memberof Action + */ + RecoverStake?: RecoverStakeAction; + /** + * + * @type {STONfiSwapAction} + * @memberof Action + */ + STONfiSwap?: STONfiSwapAction; + /** + * + * @type {SmartContractAction} + * @memberof Action + */ + SmartContractExec?: SmartContractAction; + /** + * + * @type {ActionSimplePreview} + * @memberof Action + */ + simple_preview: ActionSimplePreview; +} + +export const ActionTypeEnum = { + TonTransfer: 'TonTransfer', + JettonTransfer: 'JettonTransfer', + NftItemTransfer: 'NftItemTransfer', + ContractDeploy: 'ContractDeploy', + Subscribe: 'Subscribe', + UnSubscribe: 'UnSubscribe', + AuctionBid: 'AuctionBid', + NftPurchase: 'NftPurchase', + DepositStake: 'DepositStake', + RecoverStake: 'RecoverStake', + StoNfiSwap: 'STONfiSwap', + SmartContractExec: 'SmartContractExec', + Unknown: 'Unknown', +} as const; + +export type ActionTypeEnum = typeof ActionTypeEnum[keyof typeof ActionTypeEnum]; +export const ActionStatusEnum = { + Ok: 'ok', + Failed: 'failed', + Pending: 'pending', +} as const; + +export type ActionStatusEnum = + typeof ActionStatusEnum[keyof typeof ActionStatusEnum]; + +/** + * + * @export + * @interface ActionPhase + */ +export interface ActionPhase { + /** + * + * @type {boolean} + * @memberof ActionPhase + */ + success: boolean; + /** + * + * @type {number} + * @memberof ActionPhase + */ + total_actions: number; + /** + * + * @type {number} + * @memberof ActionPhase + */ + skipped_actions: number; + /** + * + * @type {number} + * @memberof ActionPhase + */ + fwd_fees: number; + /** + * + * @type {number} + * @memberof ActionPhase + */ + total_fees: number; +} +/** + * shortly describes what this action is about. + * @export + * @interface ActionSimplePreview + */ +export interface ActionSimplePreview { + /** + * + * @type {string} + * @memberof ActionSimplePreview + */ + name: string; + /** + * + * @type {string} + * @memberof ActionSimplePreview + */ + description: string; + /** + * a link to an image for this particular action. + * @type {string} + * @memberof ActionSimplePreview + */ + action_image?: string; + /** + * + * @type {string} + * @memberof ActionSimplePreview + */ + value?: string; + /** + * a link to an image that depicts this action\'s asset. + * @type {string} + * @memberof ActionSimplePreview + */ + value_image?: string; + /** + * + * @type {Array} + * @memberof ActionSimplePreview + */ + accounts: Array; +} +/** + * + * @export + * @interface ApyHistory + */ +export interface ApyHistory { + /** + * + * @type {number} + * @memberof ApyHistory + */ + apy: number; + /** + * + * @type {number} + * @memberof ApyHistory + */ + time: number; +} +/** + * + * @export + * @interface Auction + */ +export interface Auction { + /** + * + * @type {string} + * @memberof Auction + */ + domain: string; + /** + * + * @type {string} + * @memberof Auction + */ + owner: string; + /** + * + * @type {number} + * @memberof Auction + */ + price: number; + /** + * + * @type {number} + * @memberof Auction + */ + bids: number; + /** + * + * @type {number} + * @memberof Auction + */ + date: number; +} +/** + * + * @export + * @interface AuctionBidAction + */ +export interface AuctionBidAction { + /** + * + * @type {string} + * @memberof AuctionBidAction + */ + auction_type: AuctionBidActionAuctionTypeEnum; + /** + * + * @type {Price} + * @memberof AuctionBidAction + */ + amount: Price; + /** + * + * @type {NftItem} + * @memberof AuctionBidAction + */ + nft?: NftItem; + /** + * + * @type {AccountAddress} + * @memberof AuctionBidAction + */ + beneficiary: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof AuctionBidAction + */ + bidder: AccountAddress; +} + +export const AuctionBidActionAuctionTypeEnum = { + DnsTon: 'DNS.ton', + DnsTg: 'DNS.tg', + NumberTg: 'NUMBER.tg', + Getgems: 'getgems', +} as const; + +export type AuctionBidActionAuctionTypeEnum = + typeof AuctionBidActionAuctionTypeEnum[keyof typeof AuctionBidActionAuctionTypeEnum]; + +/** + * + * @export + * @interface Auctions + */ +export interface Auctions { + /** + * + * @type {Array} + * @memberof Auctions + */ + data: Array; + /** + * + * @type {number} + * @memberof Auctions + */ + total: number; +} +/** + * + * @export + * @interface Block + */ +export interface Block { + /** + * + * @type {number} + * @memberof Block + */ + workchain_id: number; + /** + * + * @type {string} + * @memberof Block + */ + shard: string; + /** + * + * @type {number} + * @memberof Block + */ + seqno: number; + /** + * + * @type {string} + * @memberof Block + */ + root_hash: string; + /** + * + * @type {string} + * @memberof Block + */ + file_hash: string; + /** + * + * @type {number} + * @memberof Block + */ + global_id: number; + /** + * + * @type {number} + * @memberof Block + */ + version: number; + /** + * + * @type {boolean} + * @memberof Block + */ + after_merge: boolean; + /** + * + * @type {boolean} + * @memberof Block + */ + before_split: boolean; + /** + * + * @type {boolean} + * @memberof Block + */ + after_split: boolean; + /** + * + * @type {boolean} + * @memberof Block + */ + want_split: boolean; + /** + * + * @type {boolean} + * @memberof Block + */ + want_merge: boolean; + /** + * + * @type {boolean} + * @memberof Block + */ + key_block: boolean; + /** + * + * @type {number} + * @memberof Block + */ + gen_utime: number; + /** + * + * @type {number} + * @memberof Block + */ + start_lt: number; + /** + * + * @type {number} + * @memberof Block + */ + end_lt: number; + /** + * + * @type {number} + * @memberof Block + */ + vert_seqno: number; + /** + * + * @type {number} + * @memberof Block + */ + gen_catchain_seqno: number; + /** + * + * @type {number} + * @memberof Block + */ + min_ref_mc_seqno: number; + /** + * + * @type {number} + * @memberof Block + */ + prev_key_block_seqno: number; + /** + * + * @type {number} + * @memberof Block + */ + gen_software_version?: number; + /** + * + * @type {number} + * @memberof Block + */ + gen_software_capabilities?: number; + /** + * + * @type {string} + * @memberof Block + */ + master_ref?: string; + /** + * + * @type {Array} + * @memberof Block + */ + prev_refs: Array; + /** + * + * @type {number} + * @memberof Block + */ + in_msg_descr_length: number; + /** + * + * @type {number} + * @memberof Block + */ + out_msg_descr_length: number; + /** + * + * @type {string} + * @memberof Block + */ + rand_seed: string; + /** + * + * @type {string} + * @memberof Block + */ + created_by: string; +} +/** + * + * @export + * @interface BlockRaw + */ +export interface BlockRaw { + /** + * + * @type {number} + * @memberof BlockRaw + */ + workchain: number; + /** + * + * @type {number} + * @memberof BlockRaw + */ + shard: number; + /** + * + * @type {number} + * @memberof BlockRaw + */ + seqno: number; + /** + * + * @type {string} + * @memberof BlockRaw + */ + root_hash: string; + /** + * + * @type {string} + * @memberof BlockRaw + */ + file_hash: string; +} +/** + * + * @export + * @enum {string} + */ + +export const BouncePhaseType = { + TrPhaseBounceNegfunds: 'TrPhaseBounceNegfunds', + TrPhaseBounceNofunds: 'TrPhaseBounceNofunds', + TrPhaseBounceOk: 'TrPhaseBounceOk', +} as const; + +export type BouncePhaseType = + typeof BouncePhaseType[keyof typeof BouncePhaseType]; + +/** + * + * @export + * @interface ComputePhase + */ +export interface ComputePhase { + /** + * + * @type {boolean} + * @memberof ComputePhase + */ + skipped: boolean; + /** + * + * @type {ComputeSkipReason} + * @memberof ComputePhase + */ + skip_reason?: ComputeSkipReason; + /** + * + * @type {boolean} + * @memberof ComputePhase + */ + success?: boolean; + /** + * + * @type {number} + * @memberof ComputePhase + */ + gas_fees?: number; + /** + * + * @type {number} + * @memberof ComputePhase + */ + gas_used?: number; + /** + * + * @type {number} + * @memberof ComputePhase + */ + vm_steps?: number; + /** + * + * @type {number} + * @memberof ComputePhase + */ + exit_code?: number; +} +/** + * + * @export + * @enum {string} + */ + +export const ComputeSkipReason = { + NoState: 'cskip_no_state', + BadState: 'cskip_bad_state', + NoGas: 'cskip_no_gas', +} as const; + +export type ComputeSkipReason = + typeof ComputeSkipReason[keyof typeof ComputeSkipReason]; + +/** + * + * @export + * @interface Config + */ +export interface Config { + /** + * config address + * @type {string} + * @memberof Config + */ + '0': string; + /** + * elector address + * @type {string} + * @memberof Config + */ + '1': string; + /** + * minter address + * @type {string} + * @memberof Config + */ + '2': string; + /** + * dns root address + * @type {string} + * @memberof Config + */ + '4': string; + /** + * + * @type {ValidatorsSet} + * @memberof Config + */ + '32'?: ValidatorsSet; + /** + * + * @type {ValidatorsSet} + * @memberof Config + */ + '33'?: ValidatorsSet; + /** + * + * @type {ValidatorsSet} + * @memberof Config + */ + '34'?: ValidatorsSet; + /** + * + * @type {ValidatorsSet} + * @memberof Config + */ + '35'?: ValidatorsSet; + /** + * + * @type {ValidatorsSet} + * @memberof Config + */ + '36'?: ValidatorsSet; + /** + * + * @type {ValidatorsSet} + * @memberof Config + */ + '37'?: ValidatorsSet; + /** + * config boc in base64 format + * @type {string} + * @memberof Config + */ + raw: string; +} +/** + * + * @export + * @interface ContractDeployAction + */ +export interface ContractDeployAction { + /** + * + * @type {string} + * @memberof ContractDeployAction + */ + address: string; + /** + * + * @type {Array} + * @memberof ContractDeployAction + */ + interfaces: Array; +} +/** + * + * @export + * @interface CreditPhase + */ +export interface CreditPhase { + /** + * + * @type {number} + * @memberof CreditPhase + */ + fees_collected: number; + /** + * + * @type {number} + * @memberof CreditPhase + */ + credit: number; +} +/** + * + * @export + * @interface DepositStakeAction + */ +export interface DepositStakeAction { + /** + * + * @type {number} + * @memberof DepositStakeAction + */ + amount: number; + /** + * + * @type {AccountAddress} + * @memberof DepositStakeAction + */ + staker: AccountAddress; +} +/** + * + * @export + * @interface DnsExpiring + */ +export interface DnsExpiring { + /** + * + * @type {Array} + * @memberof DnsExpiring + */ + items: Array; +} +/** + * + * @export + * @interface DnsExpiringItems + */ +export interface DnsExpiringItems { + /** + * + * @type {number} + * @memberof DnsExpiringItems + */ + expiring_at: number; + /** + * + * @type {string} + * @memberof DnsExpiringItems + */ + name: string; + /** + * + * @type {NftItem} + * @memberof DnsExpiringItems + */ + dns_item?: NftItem; +} +/** + * + * @export + * @interface DnsRecord + */ +export interface DnsRecord { + /** + * + * @type {WalletDNS} + * @memberof DnsRecord + */ + wallet?: WalletDNS; + /** + * + * @type {string} + * @memberof DnsRecord + */ + next_resolver?: string; + /** + * + * @type {Array} + * @memberof DnsRecord + */ + sites: Array; + /** + * tonstorage bag id + * @type {string} + * @memberof DnsRecord + */ + storage?: string; +} +/** + * + * @export + * @interface DomainBid + */ +export interface DomainBid { + /** + * + * @type {boolean} + * @memberof DomainBid + */ + success: boolean; + /** + * + * @type {number} + * @memberof DomainBid + */ + value: number; + /** + * + * @type {number} + * @memberof DomainBid + */ + txTime: number; + /** + * + * @type {string} + * @memberof DomainBid + */ + txHash: string; + /** + * + * @type {AccountAddress} + * @memberof DomainBid + */ + bidder: AccountAddress; +} +/** + * + * @export + * @interface DomainBids + */ +export interface DomainBids { + /** + * + * @type {Array} + * @memberof DomainBids + */ + data: Array; +} +/** + * + * @export + * @interface DomainInfo + */ +export interface DomainInfo { + /** + * + * @type {string} + * @memberof DomainInfo + */ + name: string; + /** + * date of expiring. optional. not all domain in ton has expiration date + * @type {number} + * @memberof DomainInfo + */ + expiring_at?: number; + /** + * + * @type {NftItem} + * @memberof DomainInfo + */ + item?: NftItem; +} +/** + * + * @export + * @interface DomainNames + */ +export interface DomainNames { + /** + * + * @type {Array} + * @memberof DomainNames + */ + domains: Array; +} +/** + * + * @export + * @interface Event + */ +export interface Event { + /** + * + * @type {string} + * @memberof Event + */ + event_id: string; + /** + * + * @type {number} + * @memberof Event + */ + timestamp: number; + /** + * + * @type {Array} + * @memberof Event + */ + actions: Array; + /** + * + * @type {Array} + * @memberof Event + */ + value_flow: Array; + /** + * scam + * @type {boolean} + * @memberof Event + */ + is_scam: boolean; + /** + * + * @type {number} + * @memberof Event + */ + lt: number; + /** + * Event is not finished yet. Transactions still happening + * @type {boolean} + * @memberof Event + */ + in_progress: boolean; +} +/** + * + * @export + * @interface FoundAccounts + */ +export interface FoundAccounts { + /** + * + * @type {Array} + * @memberof FoundAccounts + */ + addresses: Array; +} +/** + * + * @export + * @interface FoundAccountsAddresses + */ +export interface FoundAccountsAddresses { + /** + * + * @type {string} + * @memberof FoundAccountsAddresses + */ + address: string; + /** + * + * @type {string} + * @memberof FoundAccountsAddresses + */ + name: string; +} +/** + * + * @export + * @interface ImagePreview + */ +export interface ImagePreview { + /** + * + * @type {string} + * @memberof ImagePreview + */ + resolution: string; + /** + * + * @type {string} + * @memberof ImagePreview + */ + url: string; +} +/** + * + * @export + * @interface InitStateRaw + */ +export interface InitStateRaw { + /** + * + * @type {number} + * @memberof InitStateRaw + */ + workchain: number; + /** + * + * @type {string} + * @memberof InitStateRaw + */ + root_hash: string; + /** + * + * @type {string} + * @memberof InitStateRaw + */ + file_hash: string; +} +/** + * + * @export + * @interface InlineResponse200 + */ +export interface InlineResponse200 { + /** + * + * @type {string} + * @memberof InlineResponse200 + */ + public_key: string; +} +/** + * + * @export + * @interface InlineResponse2001 + */ +export interface InlineResponse2001 { + /** + * + * @type {PoolImplementation} + * @memberof InlineResponse2001 + */ + implementation: PoolImplementation; + /** + * + * @type {PoolInfo} + * @memberof InlineResponse2001 + */ + pool: PoolInfo; +} +/** + * + * @export + * @interface InlineResponse20010 + */ +export interface InlineResponse20010 { + /** + * + * @type {number} + * @memberof InlineResponse20010 + */ + mode: number; + /** + * + * @type {number} + * @memberof InlineResponse20010 + */ + version: number; + /** + * + * @type {number} + * @memberof InlineResponse20010 + */ + capabilities: number; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20010 + */ + last: BlockRaw; + /** + * + * @type {number} + * @memberof InlineResponse20010 + */ + last_utime: number; + /** + * + * @type {number} + * @memberof InlineResponse20010 + */ + now: number; + /** + * + * @type {string} + * @memberof InlineResponse20010 + */ + state_root_hash: string; + /** + * + * @type {InitStateRaw} + * @memberof InlineResponse20010 + */ + init: InitStateRaw; +} +/** + * + * @export + * @interface InlineResponse20011 + */ +export interface InlineResponse20011 { + /** + * + * @type {number} + * @memberof InlineResponse20011 + */ + time: number; +} +/** + * + * @export + * @interface InlineResponse20012 + */ +export interface InlineResponse20012 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20012 + */ + id: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20012 + */ + data: string; +} +/** + * + * @export + * @interface InlineResponse20013 + */ +export interface InlineResponse20013 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20013 + */ + id: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20013 + */ + root_hash: string; + /** + * + * @type {string} + * @memberof InlineResponse20013 + */ + file_hash: string; + /** + * + * @type {string} + * @memberof InlineResponse20013 + */ + data: string; +} +/** + * + * @export + * @interface InlineResponse20014 + */ +export interface InlineResponse20014 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20014 + */ + id: BlockRaw; + /** + * + * @type {number} + * @memberof InlineResponse20014 + */ + mode: number; + /** + * + * @type {string} + * @memberof InlineResponse20014 + */ + header_proof: string; +} +/** + * + * @export + * @interface InlineResponse20015 + */ +export interface InlineResponse20015 { + /** + * + * @type {number} + * @memberof InlineResponse20015 + */ + code: number; +} +/** + * + * @export + * @interface InlineResponse20016 + */ +export interface InlineResponse20016 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20016 + */ + id: BlockRaw; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20016 + */ + shardblk: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20016 + */ + shard_proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20016 + */ + proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20016 + */ + state: string; +} +/** + * + * @export + * @interface InlineResponse20017 + */ +export interface InlineResponse20017 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20017 + */ + id: BlockRaw; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20017 + */ + shardblk: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20017 + */ + shard_proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20017 + */ + shard_descr: string; +} +/** + * + * @export + * @interface InlineResponse20018 + */ +export interface InlineResponse20018 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20018 + */ + id: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20018 + */ + proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20018 + */ + data: string; +} +/** + * + * @export + * @interface InlineResponse20019 + */ +export interface InlineResponse20019 { + /** + * + * @type {Array} + * @memberof InlineResponse20019 + */ + ids: Array; + /** + * + * @type {string} + * @memberof InlineResponse20019 + */ + transactions: string; +} +/** + * + * @export + * @interface InlineResponse2002 + */ +export interface InlineResponse2002 { + /** + * + * @type {Array} + * @memberof InlineResponse2002 + */ + apy: Array; +} +/** + * + * @export + * @interface InlineResponse20020 + */ +export interface InlineResponse20020 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20020 + */ + id: BlockRaw; + /** + * + * @type {number} + * @memberof InlineResponse20020 + */ + req_count: number; + /** + * + * @type {boolean} + * @memberof InlineResponse20020 + */ + incomplete: boolean; + /** + * + * @type {Array} + * @memberof InlineResponse20020 + */ + ids: Array; + /** + * + * @type {string} + * @memberof InlineResponse20020 + */ + proof: string; +} +/** + * + * @export + * @interface InlineResponse20020Ids + */ +export interface InlineResponse20020Ids { + /** + * + * @type {number} + * @memberof InlineResponse20020Ids + */ + mode: number; + /** + * + * @type {string} + * @memberof InlineResponse20020Ids + */ + account?: string; + /** + * + * @type {number} + * @memberof InlineResponse20020Ids + */ + lt?: number; + /** + * + * @type {string} + * @memberof InlineResponse20020Ids + */ + hash?: string; +} +/** + * + * @export + * @interface InlineResponse20021 + */ +export interface InlineResponse20021 { + /** + * + * @type {boolean} + * @memberof InlineResponse20021 + */ + complete: boolean; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20021 + */ + from: BlockRaw; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20021 + */ + to: BlockRaw; + /** + * + * @type {Array} + * @memberof InlineResponse20021 + */ + steps: Array; +} +/** + * + * @export + * @interface InlineResponse20021LiteServerBlockLinkBack + */ +export interface InlineResponse20021LiteServerBlockLinkBack { + /** + * + * @type {boolean} + * @memberof InlineResponse20021LiteServerBlockLinkBack + */ + to_key_block: boolean; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20021LiteServerBlockLinkBack + */ + from: BlockRaw; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20021LiteServerBlockLinkBack + */ + to: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkBack + */ + dest_proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkBack + */ + proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkBack + */ + state_proof: string; +} +/** + * + * @export + * @interface InlineResponse20021LiteServerBlockLinkForward + */ +export interface InlineResponse20021LiteServerBlockLinkForward { + /** + * + * @type {boolean} + * @memberof InlineResponse20021LiteServerBlockLinkForward + */ + to_key_block: boolean; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20021LiteServerBlockLinkForward + */ + from: BlockRaw; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20021LiteServerBlockLinkForward + */ + to: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkForward + */ + dest_proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkForward + */ + config_proof: string; + /** + * + * @type {InlineResponse20021LiteServerBlockLinkForwardSignatures} + * @memberof InlineResponse20021LiteServerBlockLinkForward + */ + signatures: InlineResponse20021LiteServerBlockLinkForwardSignatures; +} +/** + * + * @export + * @interface InlineResponse20021LiteServerBlockLinkForwardSignatures + */ +export interface InlineResponse20021LiteServerBlockLinkForwardSignatures { + /** + * + * @type {number} + * @memberof InlineResponse20021LiteServerBlockLinkForwardSignatures + */ + validator_set_hash: number; + /** + * + * @type {number} + * @memberof InlineResponse20021LiteServerBlockLinkForwardSignatures + */ + catchain_seqno: number; + /** + * + * @type {Array} + * @memberof InlineResponse20021LiteServerBlockLinkForwardSignatures + */ + signatures: Array; +} +/** + * + * @export + * @interface InlineResponse20021LiteServerBlockLinkForwardSignaturesSignatures + */ +export interface InlineResponse20021LiteServerBlockLinkForwardSignaturesSignatures { + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkForwardSignaturesSignatures + */ + node_id_short: string; + /** + * + * @type {string} + * @memberof InlineResponse20021LiteServerBlockLinkForwardSignaturesSignatures + */ + signature: string; +} +/** + * + * @export + * @interface InlineResponse20021Steps + */ +export interface InlineResponse20021Steps { + /** + * + * @type {InlineResponse20021LiteServerBlockLinkBack} + * @memberof InlineResponse20021Steps + */ + lite_server_block_link_back: InlineResponse20021LiteServerBlockLinkBack; + /** + * + * @type {InlineResponse20021LiteServerBlockLinkForward} + * @memberof InlineResponse20021Steps + */ + lite_server_block_link_forward: InlineResponse20021LiteServerBlockLinkForward; +} +/** + * + * @export + * @interface InlineResponse20022 + */ +export interface InlineResponse20022 { + /** + * + * @type {number} + * @memberof InlineResponse20022 + */ + mode: number; + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20022 + */ + id: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20022 + */ + state_proof: string; + /** + * + * @type {string} + * @memberof InlineResponse20022 + */ + config_proof: string; +} +/** + * + * @export + * @interface InlineResponse20023 + */ +export interface InlineResponse20023 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20023 + */ + masterchain_id: BlockRaw; + /** + * + * @type {Array} + * @memberof InlineResponse20023 + */ + links: Array; +} +/** + * + * @export + * @interface InlineResponse20023Links + */ +export interface InlineResponse20023Links { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse20023Links + */ + id: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse20023Links + */ + proof: string; +} +/** + * + * @export + * @interface InlineResponse2003 + */ +export interface InlineResponse2003 { + /** + * + * @type {Array} + * @memberof InlineResponse2003 + */ + pools: Array; + /** + * + * @type {{ [key: string]: PoolImplementation; }} + * @memberof InlineResponse2003 + */ + implementations: { [key: string]: PoolImplementation }; +} +/** + * + * @export + * @interface InlineResponse2004 + */ +export interface InlineResponse2004 { + /** + * + * @type {Array} + * @memberof InlineResponse2004 + */ + providers: Array; +} +/** + * + * @export + * @interface InlineResponse2005 + */ +export interface InlineResponse2005 { + /** + * + * @type {{ [key: string]: object; }} + * @memberof InlineResponse2005 + */ + rates: { [key: string]: object }; +} +/** + * + * @export + * @interface InlineResponse2006 + */ +export interface InlineResponse2006 { + /** + * + * @type {string} + * @memberof InlineResponse2006 + */ + payload: string; +} +/** + * + * @export + * @interface InlineResponse2007 + */ +export interface InlineResponse2007 { + /** + * + * @type {string} + * @memberof InlineResponse2007 + */ + dump: string; +} +/** + * + * @export + * @interface InlineResponse2008 + */ +export interface InlineResponse2008 { + /** + * + * @type {string} + * @memberof InlineResponse2008 + */ + token: string; +} +/** + * + * @export + * @interface InlineResponse2009 + */ +export interface InlineResponse2009 { + /** + * + * @type {BlockRaw} + * @memberof InlineResponse2009 + */ + last: BlockRaw; + /** + * + * @type {string} + * @memberof InlineResponse2009 + */ + state_root_hash: string; + /** + * + * @type {InitStateRaw} + * @memberof InlineResponse2009 + */ + init: InitStateRaw; +} +/** + * + * @export + * @interface InlineResponse400 + */ +export interface InlineResponse400 { + /** + * + * @type {string} + * @memberof InlineResponse400 + */ + error: string; +} +/** + * + * @export + * @interface JettonBalance + */ +export interface JettonBalance { + /** + * + * @type {string} + * @memberof JettonBalance + */ + balance: string; + /** + * + * @type {AccountAddress} + * @memberof JettonBalance + */ + wallet_address: AccountAddress; + /** + * + * @type {JettonPreview} + * @memberof JettonBalance + */ + jetton: JettonPreview; +} +/** + * + * @export + * @interface JettonInfo + */ +export interface JettonInfo { + /** + * + * @type {boolean} + * @memberof JettonInfo + */ + mintable: boolean; + /** + * + * @type {string} + * @memberof JettonInfo + */ + total_supply: string; + /** + * + * @type {JettonMetadata} + * @memberof JettonInfo + */ + metadata: JettonMetadata; + /** + * + * @type {JettonVerificationType} + * @memberof JettonInfo + */ + verification: JettonVerificationType; +} +/** + * + * @export + * @interface JettonMetadata + */ +export interface JettonMetadata { + /** + * + * @type {string} + * @memberof JettonMetadata + */ + address: string; + /** + * + * @type {string} + * @memberof JettonMetadata + */ + name: string; + /** + * + * @type {string} + * @memberof JettonMetadata + */ + symbol: string; + /** + * + * @type {string} + * @memberof JettonMetadata + */ + decimals: string; + /** + * + * @type {string} + * @memberof JettonMetadata + */ + image?: string; + /** + * + * @type {string} + * @memberof JettonMetadata + */ + description?: string; + /** + * + * @type {Array} + * @memberof JettonMetadata + */ + social?: Array; + /** + * + * @type {Array} + * @memberof JettonMetadata + */ + websites?: Array; + /** + * + * @type {Array} + * @memberof JettonMetadata + */ + catalogs?: Array; +} +/** + * + * @export + * @interface JettonPreview + */ +export interface JettonPreview { + /** + * + * @type {string} + * @memberof JettonPreview + */ + address: string; + /** + * + * @type {string} + * @memberof JettonPreview + */ + name: string; + /** + * + * @type {string} + * @memberof JettonPreview + */ + symbol: string; + /** + * + * @type {number} + * @memberof JettonPreview + */ + decimals: number; + /** + * + * @type {string} + * @memberof JettonPreview + */ + image: string; + /** + * + * @type {JettonVerificationType} + * @memberof JettonPreview + */ + verification: JettonVerificationType; +} +/** + * + * @export + * @interface JettonQuantity + */ +export interface JettonQuantity { + /** + * + * @type {string} + * @memberof JettonQuantity + */ + quantity: string; + /** + * + * @type {AccountAddress} + * @memberof JettonQuantity + */ + wallet_address: AccountAddress; + /** + * + * @type {JettonPreview} + * @memberof JettonQuantity + */ + jetton: JettonPreview; +} +/** + * + * @export + * @interface JettonTransferAction + */ +export interface JettonTransferAction { + /** + * + * @type {AccountAddress} + * @memberof JettonTransferAction + */ + sender?: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof JettonTransferAction + */ + recipient?: AccountAddress; + /** + * + * @type {string} + * @memberof JettonTransferAction + */ + senders_wallet: string; + /** + * + * @type {string} + * @memberof JettonTransferAction + */ + recipients_wallet: string; + /** + * amount in quanta of tokens + * @type {string} + * @memberof JettonTransferAction + */ + amount: string; + /** + * + * @type {string} + * @memberof JettonTransferAction + */ + comment?: string; + /** + * + * @type {Refund} + * @memberof JettonTransferAction + */ + refund?: Refund; + /** + * + * @type {JettonPreview} + * @memberof JettonTransferAction + */ + jetton: JettonPreview; +} +/** + * + * @export + * @enum {string} + */ + +export const JettonVerificationType = { + Whitelist: 'whitelist', + Blacklist: 'blacklist', + None: 'none', +} as const; + +export type JettonVerificationType = + typeof JettonVerificationType[keyof typeof JettonVerificationType]; + +/** + * + * @export + * @interface Jettons + */ +export interface Jettons { + /** + * + * @type {Array} + * @memberof Jettons + */ + jettons: Array; +} +/** + * + * @export + * @interface JettonsBalances + */ +export interface JettonsBalances { + /** + * + * @type {Array} + * @memberof JettonsBalances + */ + balances: Array; +} +/** + * + * @export + * @interface Message + */ +export interface Message { + /** + * + * @type {number} + * @memberof Message + */ + created_lt: number; + /** + * + * @type {boolean} + * @memberof Message + */ + ihr_disabled: boolean; + /** + * + * @type {boolean} + * @memberof Message + */ + bounce: boolean; + /** + * + * @type {boolean} + * @memberof Message + */ + bounced: boolean; + /** + * + * @type {number} + * @memberof Message + */ + value: number; + /** + * + * @type {number} + * @memberof Message + */ + fwd_fee: number; + /** + * + * @type {number} + * @memberof Message + */ + ihr_fee: number; + /** + * + * @type {AccountAddress} + * @memberof Message + */ + destination?: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof Message + */ + source?: AccountAddress; + /** + * + * @type {number} + * @memberof Message + */ + import_fee: number; + /** + * + * @type {number} + * @memberof Message + */ + created_at: number; + /** + * + * @type {string} + * @memberof Message + */ + op_code?: string; + /** + * + * @type {StateInit} + * @memberof Message + */ + init?: StateInit; + /** + * hex-encoded BoC with raw message body + * @type {string} + * @memberof Message + */ + raw_body?: string; + /** + * + * @type {string} + * @memberof Message + */ + decoded_op_name?: string; + /** + * + * @type {any} + * @memberof Message + */ + decoded_body: any; +} +/** + * + * @export + * @interface MessageConsequences + */ +export interface MessageConsequences { + /** + * + * @type {Trace} + * @memberof MessageConsequences + */ + trace: Trace; + /** + * + * @type {Risk} + * @memberof MessageConsequences + */ + risk: Risk; + /** + * + * @type {AccountEvent} + * @memberof MessageConsequences + */ + event: AccountEvent; +} +/** + * + * @export + * @interface MethodExecutionResult + */ +export interface MethodExecutionResult { + /** + * + * @type {boolean} + * @memberof MethodExecutionResult + */ + success: boolean; + /** + * tvm exit code + * @type {number} + * @memberof MethodExecutionResult + */ + exit_code: number; + /** + * + * @type {Array} + * @memberof MethodExecutionResult + */ + stack: Array; + /** + * + * @type {any} + * @memberof MethodExecutionResult + */ + decoded?: any; +} +/** + * + * @export + * @interface ModelError + */ +export interface ModelError { + /** + * + * @type {string} + * @memberof ModelError + */ + error: string; +} +/** + * + * @export + * @interface NftCollection + */ +export interface NftCollection { + /** + * + * @type {string} + * @memberof NftCollection + */ + address: string; + /** + * + * @type {number} + * @memberof NftCollection + */ + next_item_index: number; + /** + * + * @type {AccountAddress} + * @memberof NftCollection + */ + owner?: AccountAddress; + /** + * + * @type {string} + * @memberof NftCollection + */ + raw_collection_content: string; + /** + * + * @type {{ [key: string]: object; }} + * @memberof NftCollection + */ + metadata?: { [key: string]: object }; +} +/** + * + * @export + * @interface NftCollections + */ +export interface NftCollections { + /** + * + * @type {Array} + * @memberof NftCollections + */ + nft_collections: Array; +} +/** + * + * @export + * @interface NftItem + */ +export interface NftItem { + /** + * + * @type {string} + * @memberof NftItem + */ + address: string; + /** + * + * @type {number} + * @memberof NftItem + */ + index: number; + /** + * + * @type {AccountAddress} + * @memberof NftItem + */ + owner?: AccountAddress; + /** + * + * @type {NftItemCollection} + * @memberof NftItem + */ + collection?: NftItemCollection; + /** + * + * @type {boolean} + * @memberof NftItem + */ + verified: boolean; + /** + * + * @type {{ [key: string]: object; }} + * @memberof NftItem + */ + metadata: { [key: string]: object }; + /** + * + * @type {Sale} + * @memberof NftItem + */ + sale?: Sale; + /** + * + * @type {Array} + * @memberof NftItem + */ + previews?: Array; + /** + * + * @type {string} + * @memberof NftItem + */ + dns?: string; + /** + * + * @type {Array} + * @memberof NftItem + */ + approved_by: Array; +} + +export const NftItemApprovedByEnum = { + Getgems: 'getgems', + Tonkeeper: 'tonkeeper', +} as const; + +export type NftItemApprovedByEnum = + typeof NftItemApprovedByEnum[keyof typeof NftItemApprovedByEnum]; + +/** + * + * @export + * @interface NftItemCollection + */ +export interface NftItemCollection { + /** + * + * @type {string} + * @memberof NftItemCollection + */ + address: string; + /** + * + * @type {string} + * @memberof NftItemCollection + */ + name: string; +} +/** + * + * @export + * @interface NftItemTransferAction + */ +export interface NftItemTransferAction { + /** + * + * @type {AccountAddress} + * @memberof NftItemTransferAction + */ + sender?: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof NftItemTransferAction + */ + recipient?: AccountAddress; + /** + * + * @type {string} + * @memberof NftItemTransferAction + */ + nft: string; + /** + * + * @type {string} + * @memberof NftItemTransferAction + */ + comment?: string; + /** + * raw hex encoded payload + * @type {string} + * @memberof NftItemTransferAction + */ + payload?: string; + /** + * + * @type {Refund} + * @memberof NftItemTransferAction + */ + refund?: Refund; +} +/** + * + * @export + * @interface NftItems + */ +export interface NftItems { + /** + * + * @type {Array} + * @memberof NftItems + */ + nft_items: Array; +} +/** + * + * @export + * @interface NftPurchaseAction + */ +export interface NftPurchaseAction { + /** + * + * @type {string} + * @memberof NftPurchaseAction + */ + auction_type: NftPurchaseActionAuctionTypeEnum; + /** + * + * @type {Price} + * @memberof NftPurchaseAction + */ + amount: Price; + /** + * + * @type {NftItem} + * @memberof NftPurchaseAction + */ + nft: NftItem; + /** + * + * @type {AccountAddress} + * @memberof NftPurchaseAction + */ + seller: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof NftPurchaseAction + */ + buyer: AccountAddress; +} + +export const NftPurchaseActionAuctionTypeEnum = { + DnsTg: 'DNS.tg', + Getgems: 'getgems', + Basic: 'basic', +} as const; + +export type NftPurchaseActionAuctionTypeEnum = + typeof NftPurchaseActionAuctionTypeEnum[keyof typeof NftPurchaseActionAuctionTypeEnum]; + +/** + * + * @export + * @interface PoolImplementation + */ +export interface PoolImplementation { + /** + * + * @type {string} + * @memberof PoolImplementation + */ + name: string; + /** + * + * @type {string} + * @memberof PoolImplementation + */ + description: string; + /** + * + * @type {string} + * @memberof PoolImplementation + */ + url: string; +} +/** + * + * @export + * @interface PoolInfo + */ +export interface PoolInfo { + /** + * + * @type {string} + * @memberof PoolInfo + */ + address: string; + /** + * + * @type {string} + * @memberof PoolInfo + */ + name: string; + /** + * + * @type {number} + * @memberof PoolInfo + */ + total_amount: number; + /** + * + * @type {string} + * @memberof PoolInfo + */ + implementation: PoolInfoImplementationEnum; + /** + * APY in percent + * @type {number} + * @memberof PoolInfo + */ + apy: number; + /** + * + * @type {number} + * @memberof PoolInfo + */ + min_stake: number; + /** + * current nomination cycle beginning timestamp + * @type {number} + * @memberof PoolInfo + */ + cycle_start: number; + /** + * current nomination cycle ending timestamp + * @type {number} + * @memberof PoolInfo + */ + cycle_end: number; + /** + * this pool has verified source code or managed by trusted company + * @type {boolean} + * @memberof PoolInfo + */ + verified: boolean; + /** + * current number of nominators + * @type {number} + * @memberof PoolInfo + */ + current_nominators: number; + /** + * maximum number of nominators + * @type {number} + * @memberof PoolInfo + */ + max_nominators: number; + /** + * for liquid staking master account of jetton + * @type {string} + * @memberof PoolInfo + */ + liquid_jetton_master?: string; +} + +export const PoolInfoImplementationEnum = { + Whales: 'whales', + Tf: 'tf', + LiquidTf: 'liquidTF', +} as const; + +export type PoolInfoImplementationEnum = + typeof PoolInfoImplementationEnum[keyof typeof PoolInfoImplementationEnum]; + +/** + * + * @export + * @interface Price + */ +export interface Price { + /** + * + * @type {string} + * @memberof Price + */ + value: string; + /** + * + * @type {string} + * @memberof Price + */ + token_name: string; +} +/** + * + * @export + * @interface RawAccount + */ +export interface RawAccount { + /** + * + * @type {string} + * @memberof RawAccount + */ + address: string; + /** + * + * @type {number} + * @memberof RawAccount + */ + balance: number; + /** + * + * @type {{ [key: string]: string; }} + * @memberof RawAccount + */ + extra_balance?: { [key: string]: string }; + /** + * + * @type {string} + * @memberof RawAccount + */ + code?: string; + /** + * + * @type {string} + * @memberof RawAccount + */ + data?: string; + /** + * + * @type {number} + * @memberof RawAccount + */ + last_transaction_lt: number; + /** + * + * @type {string} + * @memberof RawAccount + */ + status: string; + /** + * + * @type {AccountStorageInfo} + * @memberof RawAccount + */ + storage: AccountStorageInfo; +} +/** + * + * @export + * @interface RecoverStakeAction + */ +export interface RecoverStakeAction { + /** + * + * @type {number} + * @memberof RecoverStakeAction + */ + amount: number; + /** + * + * @type {AccountAddress} + * @memberof RecoverStakeAction + */ + staker: AccountAddress; +} +/** + * + * @export + * @interface Refund + */ +export interface Refund { + /** + * + * @type {string} + * @memberof Refund + */ + type: RefundTypeEnum; + /** + * + * @type {string} + * @memberof Refund + */ + origin: string; +} + +export const RefundTypeEnum = { + DnsTon: 'DNS.ton', + DnsTg: 'DNS.tg', + GetGems: 'GetGems', +} as const; + +export type RefundTypeEnum = typeof RefundTypeEnum[keyof typeof RefundTypeEnum]; + +/** + * Risk specifies assets that could be lost if a message would be sent to a malicious smart contract. It makes sense to understand the risk BEFORE sending a message to the blockchain. + * @export + * @interface Risk + */ +export interface Risk { + /** + * transfer all the remaining balance of the wallet. + * @type {boolean} + * @memberof Risk + */ + transfer_all_remaining_balance: boolean; + /** + * + * @type {number} + * @memberof Risk + */ + ton: number; + /** + * + * @type {Array} + * @memberof Risk + */ + jettons: Array; + /** + * + * @type {Array} + * @memberof Risk + */ + nfts: Array; +} +/** + * + * @export + * @interface STONfiSwapAction + */ +export interface STONfiSwapAction { + /** + * + * @type {string} + * @memberof STONfiSwapAction + */ + amount_in: string; + /** + * + * @type {string} + * @memberof STONfiSwapAction + */ + amount_out: string; + /** + * + * @type {AccountAddress} + * @memberof STONfiSwapAction + */ + user_wallet: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof STONfiSwapAction + */ + stonfi_router: AccountAddress; + /** + * + * @type {string} + * @memberof STONfiSwapAction + */ + jetton_wallet_in: string; + /** + * + * @type {JettonPreview} + * @memberof STONfiSwapAction + */ + jetton_master_in: JettonPreview; + /** + * + * @type {string} + * @memberof STONfiSwapAction + */ + jetton_wallet_out: string; + /** + * + * @type {JettonPreview} + * @memberof STONfiSwapAction + */ + jetton_master_out: JettonPreview; +} +/** + * + * @export + * @interface Sale + */ +export interface Sale { + /** + * + * @type {string} + * @memberof Sale + */ + address: string; + /** + * + * @type {AccountAddress} + * @memberof Sale + */ + market: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof Sale + */ + owner?: AccountAddress; + /** + * + * @type {Price} + * @memberof Sale + */ + price: Price; +} +/** + * + * @export + * @interface Seqno + */ +export interface Seqno { + /** + * + * @type {number} + * @memberof Seqno + */ + seqno: number; +} +/** + * + * @export + * @interface SmartContractAction + */ +export interface SmartContractAction { + /** + * + * @type {AccountAddress} + * @memberof SmartContractAction + */ + executor: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof SmartContractAction + */ + contract: AccountAddress; + /** + * amount in nanotons + * @type {number} + * @memberof SmartContractAction + */ + ton_attached: number; + /** + * + * @type {string} + * @memberof SmartContractAction + */ + operation: string; + /** + * + * @type {string} + * @memberof SmartContractAction + */ + payload?: string; + /** + * + * @type {Refund} + * @memberof SmartContractAction + */ + refund?: Refund; +} +/** + * + * @export + * @interface StateInit + */ +export interface StateInit { + /** + * + * @type {string} + * @memberof StateInit + */ + boc: string; +} +/** + * + * @export + * @interface StoragePhase + */ +export interface StoragePhase { + /** + * + * @type {number} + * @memberof StoragePhase + */ + fees_collected: number; + /** + * + * @type {number} + * @memberof StoragePhase + */ + fees_due?: number; + /** + * + * @type {AccStatusChange} + * @memberof StoragePhase + */ + status_change: AccStatusChange; +} +/** + * + * @export + * @interface StorageProvider + */ +export interface StorageProvider { + /** + * + * @type {string} + * @memberof StorageProvider + */ + address: string; + /** + * + * @type {boolean} + * @memberof StorageProvider + */ + accept_new_contracts: boolean; + /** + * + * @type {number} + * @memberof StorageProvider + */ + rate_per_mb_day: number; + /** + * + * @type {number} + * @memberof StorageProvider + */ + max_span: number; + /** + * + * @type {number} + * @memberof StorageProvider + */ + minimal_file_size: number; + /** + * + * @type {number} + * @memberof StorageProvider + */ + maximal_file_size: number; +} +/** + * + * @export + * @interface Subscription + */ +export interface Subscription { + /** + * + * @type {string} + * @memberof Subscription + */ + address: string; + /** + * + * @type {string} + * @memberof Subscription + */ + wallet_address: string; + /** + * + * @type {string} + * @memberof Subscription + */ + beneficiary_address: string; + /** + * + * @type {number} + * @memberof Subscription + */ + amount: number; + /** + * + * @type {number} + * @memberof Subscription + */ + period: number; + /** + * + * @type {number} + * @memberof Subscription + */ + start_time: number; + /** + * + * @type {number} + * @memberof Subscription + */ + timeout: number; + /** + * + * @type {number} + * @memberof Subscription + */ + last_payment_time: number; + /** + * + * @type {number} + * @memberof Subscription + */ + last_request_time: number; + /** + * + * @type {number} + * @memberof Subscription + */ + subscription_id: number; + /** + * + * @type {number} + * @memberof Subscription + */ + failed_attempts: number; +} +/** + * + * @export + * @interface SubscriptionAction + */ +export interface SubscriptionAction { + /** + * + * @type {AccountAddress} + * @memberof SubscriptionAction + */ + subscriber: AccountAddress; + /** + * + * @type {string} + * @memberof SubscriptionAction + */ + subscription: string; + /** + * + * @type {AccountAddress} + * @memberof SubscriptionAction + */ + beneficiary: AccountAddress; + /** + * + * @type {number} + * @memberof SubscriptionAction + */ + amount: number; + /** + * + * @type {boolean} + * @memberof SubscriptionAction + */ + initial: boolean; +} +/** + * + * @export + * @interface Subscriptions + */ +export interface Subscriptions { + /** + * + * @type {Array} + * @memberof Subscriptions + */ + subscriptions: Array; +} +/** + * + * @export + * @interface TonTransferAction + */ +export interface TonTransferAction { + /** + * + * @type {AccountAddress} + * @memberof TonTransferAction + */ + sender: AccountAddress; + /** + * + * @type {AccountAddress} + * @memberof TonTransferAction + */ + recipient: AccountAddress; + /** + * amount in nanotons + * @type {number} + * @memberof TonTransferAction + */ + amount: number; + /** + * + * @type {string} + * @memberof TonTransferAction + */ + comment?: string; + /** + * + * @type {Refund} + * @memberof TonTransferAction + */ + refund?: Refund; +} +/** + * + * @export + * @interface Trace + */ +export interface Trace { + /** + * + * @type {Transaction} + * @memberof Trace + */ + transaction: Transaction; + /** + * + * @type {Array} + * @memberof Trace + */ + interfaces: Array; + /** + * + * @type {Array} + * @memberof Trace + */ + children?: Array; +} +/** + * + * @export + * @interface TraceId + */ +export interface TraceId { + /** + * + * @type {string} + * @memberof TraceId + */ + id: string; + /** + * + * @type {number} + * @memberof TraceId + */ + utime: number; +} +/** + * + * @export + * @interface TraceIds + */ +export interface TraceIds { + /** + * + * @type {Array} + * @memberof TraceIds + */ + traces: Array; +} +/** + * + * @export + * @interface Transaction + */ +export interface Transaction { + /** + * + * @type {string} + * @memberof Transaction + */ + hash: string; + /** + * + * @type {number} + * @memberof Transaction + */ + lt: number; + /** + * + * @type {AccountAddress} + * @memberof Transaction + */ + account: AccountAddress; + /** + * + * @type {boolean} + * @memberof Transaction + */ + success: boolean; + /** + * + * @type {number} + * @memberof Transaction + */ + utime: number; + /** + * + * @type {AccountStatus} + * @memberof Transaction + */ + orig_status: AccountStatus; + /** + * + * @type {AccountStatus} + * @memberof Transaction + */ + end_status: AccountStatus; + /** + * + * @type {number} + * @memberof Transaction + */ + total_fees: number; + /** + * + * @type {TransactionType} + * @memberof Transaction + */ + transaction_type: TransactionType; + /** + * + * @type {string} + * @memberof Transaction + */ + state_update_old: string; + /** + * + * @type {string} + * @memberof Transaction + */ + state_update_new: string; + /** + * + * @type {Message} + * @memberof Transaction + */ + in_msg?: Message; + /** + * + * @type {Array} + * @memberof Transaction + */ + out_msgs: Array; + /** + * + * @type {string} + * @memberof Transaction + */ + block: string; + /** + * + * @type {string} + * @memberof Transaction + */ + prev_trans_hash?: string; + /** + * + * @type {number} + * @memberof Transaction + */ + prev_trans_lt?: number; + /** + * + * @type {ComputePhase} + * @memberof Transaction + */ + compute_phase?: ComputePhase; + /** + * + * @type {StoragePhase} + * @memberof Transaction + */ + storage_phase?: StoragePhase; + /** + * + * @type {CreditPhase} + * @memberof Transaction + */ + credit_phase?: CreditPhase; + /** + * + * @type {ActionPhase} + * @memberof Transaction + */ + action_phase?: ActionPhase; + /** + * + * @type {BouncePhaseType} + * @memberof Transaction + */ + bounce_phase?: BouncePhaseType; + /** + * + * @type {boolean} + * @memberof Transaction + */ + aborted: boolean; + /** + * + * @type {boolean} + * @memberof Transaction + */ + destroyed: boolean; +} +/** + * + * @export + * @enum {string} + */ + +export const TransactionType = { + TransOrd: 'TransOrd', + TransTickTock: 'TransTickTock', + TransSplitPrepare: 'TransSplitPrepare', + TransSplitInstall: 'TransSplitInstall', + TransMergePrepare: 'TransMergePrepare', + TransMergeInstall: 'TransMergeInstall', + TransStorage: 'TransStorage', +} as const; + +export type TransactionType = + typeof TransactionType[keyof typeof TransactionType]; + +/** + * + * @export + * @interface Transactions + */ +export interface Transactions { + /** + * + * @type {Array} + * @memberof Transactions + */ + transactions: Array; +} +/** + * + * @export + * @interface TvmStackRecord + */ +export interface TvmStackRecord { + /** + * + * @type {string} + * @memberof TvmStackRecord + */ + type: TvmStackRecordTypeEnum; + /** + * + * @type {string} + * @memberof TvmStackRecord + */ + cell?: string; + /** + * + * @type {string} + * @memberof TvmStackRecord + */ + slice?: string; + /** + * + * @type {string} + * @memberof TvmStackRecord + */ + num?: string; + /** + * + * @type {Array} + * @memberof TvmStackRecord + */ + tuple?: Array; +} + +export const TvmStackRecordTypeEnum = { + Cell: 'cell', + Num: 'num', + Nan: 'nan', + Null: 'null', + Tuple: 'tuple', +} as const; + +export type TvmStackRecordTypeEnum = + typeof TvmStackRecordTypeEnum[keyof typeof TvmStackRecordTypeEnum]; + +/** + * + * @export + * @interface UnSubscriptionAction + */ +export interface UnSubscriptionAction { + /** + * + * @type {AccountAddress} + * @memberof UnSubscriptionAction + */ + subscriber: AccountAddress; + /** + * + * @type {string} + * @memberof UnSubscriptionAction + */ + subscription: string; + /** + * + * @type {AccountAddress} + * @memberof UnSubscriptionAction + */ + beneficiary: AccountAddress; +} +/** + * + * @export + * @interface Validator + */ +export interface Validator { + /** + * + * @type {string} + * @memberof Validator + */ + address: string; +} +/** + * + * @export + * @interface Validators + */ +export interface Validators { + /** + * + * @type {Array} + * @memberof Validators + */ + validators: Array; +} +/** + * + * @export + * @interface ValidatorsSet + */ +export interface ValidatorsSet { + /** + * + * @type {number} + * @memberof ValidatorsSet + */ + utime_since: number; + /** + * + * @type {number} + * @memberof ValidatorsSet + */ + utime_until: number; + /** + * + * @type {number} + * @memberof ValidatorsSet + */ + total: number; + /** + * + * @type {number} + * @memberof ValidatorsSet + */ + main: number; + /** + * + * @type {number} + * @memberof ValidatorsSet + */ + total_weight?: number; + /** + * + * @type {Array} + * @memberof ValidatorsSet + */ + list: Array; +} +/** + * + * @export + * @interface ValidatorsSetList + */ +export interface ValidatorsSetList { + /** + * + * @type {string} + * @memberof ValidatorsSetList + */ + public_key: string; +} +/** + * + * @export + * @interface ValueFlow + */ +export interface ValueFlow { + /** + * + * @type {AccountAddress} + * @memberof ValueFlow + */ + account: AccountAddress; + /** + * + * @type {number} + * @memberof ValueFlow + */ + ton: number; + /** + * + * @type {number} + * @memberof ValueFlow + */ + fees: number; + /** + * + * @type {Array} + * @memberof ValueFlow + */ + jettons?: Array; +} +/** + * + * @export + * @interface ValueFlowJettons + */ +export interface ValueFlowJettons { + /** + * + * @type {AccountAddress} + * @memberof ValueFlowJettons + */ + account: AccountAddress; + /** + * + * @type {number} + * @memberof ValueFlowJettons + */ + quantity: number; +} +/** + * + * @export + * @interface WalletDNS + */ +export interface WalletDNS { + /** + * + * @type {string} + * @memberof WalletDNS + */ + address: string; + /** + * + * @type {boolean} + * @memberof WalletDNS + */ + is_wallet: boolean; + /** + * + * @type {boolean} + * @memberof WalletDNS + */ + has_method_pubkey: boolean; + /** + * + * @type {boolean} + * @memberof WalletDNS + */ + has_method_seqno: boolean; + /** + * + * @type {Array} + * @memberof WalletDNS + */ + names: Array; +} + +/** + * AccountsApi - axios parameter creator + * @export + */ +export const AccountsApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get domains for wallet account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + dnsBackResolve: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('dnsBackResolve', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/dns/backresolve`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get human-friendly information about an account without low-level details. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccount: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getAccount', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get human-friendly information about several accounts without low-level details. + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccounts: async ( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/accounts/_bulk`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get expiring .ton dns + * @param {string} accountId account ID + * @param {number} [period] number of days before expiration + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getDnsExpiring: async ( + accountId: string, + period?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getDnsExpiring', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/dns/expiring`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (period !== undefined) { + localVarQueryParameter['period'] = period; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get events for an account. Each event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {boolean} [subjectOnly] filter actions where requested account is not real subject (for example sender or reciver jettons) + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getEventsByAccount: async ( + accountId: string, + limit: number, + acceptLanguage?: string, + subjectOnly?: boolean, + beforeLt?: number, + startDate?: number, + endDate?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getEventsByAccount', 'accountId', accountId); + // verify required parameter 'limit' is not null or undefined + assertParamExists('getEventsByAccount', 'limit', limit); + const localVarPath = `/v2/accounts/{account_id}/events`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (subjectOnly !== undefined) { + localVarQueryParameter['subject_only'] = subjectOnly; + } + + if (beforeLt !== undefined) { + localVarQueryParameter['before_lt'] = beforeLt; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (startDate !== undefined) { + localVarQueryParameter['start_date'] = startDate; + } + + if (endDate !== undefined) { + localVarQueryParameter['end_date'] = endDate; + } + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get all Jettons balances by owner address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonsBalances: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getJettonsBalances', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/jettons`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the transfer jettons history for account_id + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonsHistory: async ( + accountId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getJettonsHistory', 'accountId', accountId); + // verify required parameter 'limit' is not null or undefined + assertParamExists('getJettonsHistory', 'limit', limit); + const localVarPath = `/v2/accounts/{account_id}/jettons/history`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (beforeLt !== undefined) { + localVarQueryParameter['before_lt'] = beforeLt; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (startDate !== undefined) { + localVarQueryParameter['start_date'] = startDate; + } + + if (endDate !== undefined) { + localVarQueryParameter['end_date'] = endDate; + } + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the transfer jetton history for account_id and jetton_id + * @param {string} accountId account ID + * @param {string} jettonId jetton ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonsHistoryByID: async ( + accountId: string, + jettonId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getJettonsHistoryByID', 'accountId', accountId); + // verify required parameter 'jettonId' is not null or undefined + assertParamExists('getJettonsHistoryByID', 'jettonId', jettonId); + // verify required parameter 'limit' is not null or undefined + assertParamExists('getJettonsHistoryByID', 'limit', limit); + const localVarPath = + `/v2/accounts/{account_id}/jettons/{jetton_id}/history` + .replace(`{${'account_id'}}`, encodeURIComponent(String(accountId))) + .replace(`{${'jetton_id'}}`, encodeURIComponent(String(jettonId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (beforeLt !== undefined) { + localVarQueryParameter['before_lt'] = beforeLt; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (startDate !== undefined) { + localVarQueryParameter['start_date'] = startDate; + } + + if (endDate !== undefined) { + localVarQueryParameter['end_date'] = endDate; + } + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get all NFT items by owner address + * @param {string} accountId account ID + * @param {string} [collection] nft collection + * @param {number} [limit] + * @param {number} [offset] + * @param {boolean} [indirectOwnership] Selling nft items in ton implemented usually via transfer items to special selling account. This option enables including items which owned not directly. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftItemsByOwner: async ( + accountId: string, + collection?: string, + limit?: number, + offset?: number, + indirectOwnership?: boolean, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getNftItemsByOwner', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/nfts`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (collection !== undefined) { + localVarQueryParameter['collection'] = collection; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (indirectOwnership !== undefined) { + localVarQueryParameter['indirect_ownership'] = indirectOwnership; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get public key by account id + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPublicKeyByAccountID: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getPublicKeyByAccountID', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/publickey`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search for accounts by name. You can find the account by the first characters of the domain. + * @param {string} name + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSearchAccounts: async ( + name: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'name' is not null or undefined + assertParamExists('getSearchAccounts', 'name', name); + const localVarPath = `/v2/accounts/search`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get all subscriptions by wallet address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSubscriptionsByAccount: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getSubscriptionsByAccount', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/subscriptions`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get traces for account + * @param {string} accountId account ID + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTracesByAccount: async ( + accountId: string, + limit?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getTracesByAccount', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/traces`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Update internal cache for a particular account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + reindexAccount: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('reindexAccount', 'accountId', accountId); + const localVarPath = `/v2/accounts/{account_id}/reindex`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * AccountsApi - functional programming interface + * @export + */ +export const AccountsApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = AccountsApiAxiosParamCreator(configuration); + return { + /** + * Get domains for wallet account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async dnsBackResolve( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.dnsBackResolve( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get human-friendly information about an account without low-level details. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAccount( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAccount( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get human-friendly information about several accounts without low-level details. + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAccounts( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAccounts( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get expiring .ton dns + * @param {string} accountId account ID + * @param {number} [period] number of days before expiration + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getDnsExpiring( + accountId: string, + period?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getDnsExpiring( + accountId, + period, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get events for an account. Each event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {boolean} [subjectOnly] filter actions where requested account is not real subject (for example sender or reciver jettons) + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getEventsByAccount( + accountId: string, + limit: number, + acceptLanguage?: string, + subjectOnly?: boolean, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getEventsByAccount( + accountId, + limit, + acceptLanguage, + subjectOnly, + beforeLt, + startDate, + endDate, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get all Jettons balances by owner address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJettonsBalances( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getJettonsBalances(accountId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get the transfer jettons history for account_id + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJettonsHistory( + accountId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getJettonsHistory( + accountId, + limit, + acceptLanguage, + beforeLt, + startDate, + endDate, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get the transfer jetton history for account_id and jetton_id + * @param {string} accountId account ID + * @param {string} jettonId jetton ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJettonsHistoryByID( + accountId: string, + jettonId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getJettonsHistoryByID( + accountId, + jettonId, + limit, + acceptLanguage, + beforeLt, + startDate, + endDate, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get all NFT items by owner address + * @param {string} accountId account ID + * @param {string} [collection] nft collection + * @param {number} [limit] + * @param {number} [offset] + * @param {boolean} [indirectOwnership] Selling nft items in ton implemented usually via transfer items to special selling account. This option enables including items which owned not directly. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNftItemsByOwner( + accountId: string, + collection?: string, + limit?: number, + offset?: number, + indirectOwnership?: boolean, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getNftItemsByOwner( + accountId, + collection, + limit, + offset, + indirectOwnership, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get public key by account id + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getPublicKeyByAccountID( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getPublicKeyByAccountID( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Search for accounts by name. You can find the account by the first characters of the domain. + * @param {string} name + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getSearchAccounts( + name: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getSearchAccounts(name, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get all subscriptions by wallet address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getSubscriptionsByAccount( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getSubscriptionsByAccount( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get traces for account + * @param {string} accountId account ID + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTracesByAccount( + accountId: string, + limit?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getTracesByAccount( + accountId, + limit, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Update internal cache for a particular account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async reindexAccount( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.reindexAccount( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * AccountsApi - factory interface + * @export + */ +export const AccountsApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = AccountsApiFp(configuration); + return { + /** + * Get domains for wallet account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + dnsBackResolve( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .dnsBackResolve(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get human-friendly information about an account without low-level details. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccount(accountId: string, options?: any): AxiosPromise { + return localVarFp + .getAccount(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get human-friendly information about several accounts without low-level details. + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccounts( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .getAccounts(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get expiring .ton dns + * @param {string} accountId account ID + * @param {number} [period] number of days before expiration + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getDnsExpiring( + accountId: string, + period?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getDnsExpiring(accountId, period, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get events for an account. Each event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {boolean} [subjectOnly] filter actions where requested account is not real subject (for example sender or reciver jettons) + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getEventsByAccount( + accountId: string, + limit: number, + acceptLanguage?: string, + subjectOnly?: boolean, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getEventsByAccount( + accountId, + limit, + acceptLanguage, + subjectOnly, + beforeLt, + startDate, + endDate, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Get all Jettons balances by owner address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonsBalances( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getJettonsBalances(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get the transfer jettons history for account_id + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonsHistory( + accountId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getJettonsHistory( + accountId, + limit, + acceptLanguage, + beforeLt, + startDate, + endDate, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Get the transfer jetton history for account_id and jetton_id + * @param {string} accountId account ID + * @param {string} jettonId jetton ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonsHistoryByID( + accountId: string, + jettonId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getJettonsHistoryByID( + accountId, + jettonId, + limit, + acceptLanguage, + beforeLt, + startDate, + endDate, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Get all NFT items by owner address + * @param {string} accountId account ID + * @param {string} [collection] nft collection + * @param {number} [limit] + * @param {number} [offset] + * @param {boolean} [indirectOwnership] Selling nft items in ton implemented usually via transfer items to special selling account. This option enables including items which owned not directly. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftItemsByOwner( + accountId: string, + collection?: string, + limit?: number, + offset?: number, + indirectOwnership?: boolean, + options?: any, + ): AxiosPromise { + return localVarFp + .getNftItemsByOwner( + accountId, + collection, + limit, + offset, + indirectOwnership, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Get public key by account id + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPublicKeyByAccountID( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getPublicKeyByAccountID(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Search for accounts by name. You can find the account by the first characters of the domain. + * @param {string} name + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSearchAccounts( + name: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getSearchAccounts(name, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get all subscriptions by wallet address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSubscriptionsByAccount( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getSubscriptionsByAccount(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get traces for account + * @param {string} accountId account ID + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTracesByAccount( + accountId: string, + limit?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getTracesByAccount(accountId, limit, options) + .then((request) => request(axios, basePath)); + }, + /** + * Update internal cache for a particular account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + reindexAccount(accountId: string, options?: any): AxiosPromise { + return localVarFp + .reindexAccount(accountId, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * AccountsApi - object-oriented interface + * @export + * @class AccountsApi + * @extends {BaseAPI} + */ +export class AccountsApi extends BaseAPI { + /** + * Get domains for wallet account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public dnsBackResolve(accountId: string, options?: AxiosRequestConfig) { + return AccountsApiFp(this.configuration) + .dnsBackResolve(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get human-friendly information about an account without low-level details. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getAccount(accountId: string, options?: AxiosRequestConfig) { + return AccountsApiFp(this.configuration) + .getAccount(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get human-friendly information about several accounts without low-level details. + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getAccounts( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getAccounts(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get expiring .ton dns + * @param {string} accountId account ID + * @param {number} [period] number of days before expiration + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getDnsExpiring( + accountId: string, + period?: number, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getDnsExpiring(accountId, period, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get events for an account. Each event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {boolean} [subjectOnly] filter actions where requested account is not real subject (for example sender or reciver jettons) + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getEventsByAccount( + accountId: string, + limit: number, + acceptLanguage?: string, + subjectOnly?: boolean, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getEventsByAccount( + accountId, + limit, + acceptLanguage, + subjectOnly, + beforeLt, + startDate, + endDate, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get all Jettons balances by owner address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getJettonsBalances(accountId: string, options?: AxiosRequestConfig) { + return AccountsApiFp(this.configuration) + .getJettonsBalances(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get the transfer jettons history for account_id + * @param {string} accountId account ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getJettonsHistory( + accountId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getJettonsHistory( + accountId, + limit, + acceptLanguage, + beforeLt, + startDate, + endDate, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get the transfer jetton history for account_id and jetton_id + * @param {string} accountId account ID + * @param {string} jettonId jetton ID + * @param {number} limit + * @param {string} [acceptLanguage] + * @param {number} [beforeLt] omit this parameter to get last events + * @param {number} [startDate] + * @param {number} [endDate] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getJettonsHistoryByID( + accountId: string, + jettonId: string, + limit: number, + acceptLanguage?: string, + beforeLt?: number, + startDate?: number, + endDate?: number, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getJettonsHistoryByID( + accountId, + jettonId, + limit, + acceptLanguage, + beforeLt, + startDate, + endDate, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get all NFT items by owner address + * @param {string} accountId account ID + * @param {string} [collection] nft collection + * @param {number} [limit] + * @param {number} [offset] + * @param {boolean} [indirectOwnership] Selling nft items in ton implemented usually via transfer items to special selling account. This option enables including items which owned not directly. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getNftItemsByOwner( + accountId: string, + collection?: string, + limit?: number, + offset?: number, + indirectOwnership?: boolean, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getNftItemsByOwner( + accountId, + collection, + limit, + offset, + indirectOwnership, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get public key by account id + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getPublicKeyByAccountID( + accountId: string, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getPublicKeyByAccountID(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Search for accounts by name. You can find the account by the first characters of the domain. + * @param {string} name + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getSearchAccounts(name: string, options?: AxiosRequestConfig) { + return AccountsApiFp(this.configuration) + .getSearchAccounts(name, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get all subscriptions by wallet address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getSubscriptionsByAccount( + accountId: string, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getSubscriptionsByAccount(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get traces for account + * @param {string} accountId account ID + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public getTracesByAccount( + accountId: string, + limit?: number, + options?: AxiosRequestConfig, + ) { + return AccountsApiFp(this.configuration) + .getTracesByAccount(accountId, limit, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Update internal cache for a particular account + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AccountsApi + */ + public reindexAccount(accountId: string, options?: AxiosRequestConfig) { + return AccountsApiFp(this.configuration) + .reindexAccount(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * BlockchainApi - axios parameter creator + * @export + */ +export const BlockchainApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Execute get method for account + * @param {string} accountId account ID + * @param {string} methodName contract get method name + * @param {Array} [args] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + execGetMethod: async ( + accountId: string, + methodName: string, + args?: Array, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('execGetMethod', 'accountId', accountId); + // verify required parameter 'methodName' is not null or undefined + assertParamExists('execGetMethod', 'methodName', methodName); + const localVarPath = + `/v2/blockchain/accounts/{account_id}/methods/{method_name}` + .replace(`{${'account_id'}}`, encodeURIComponent(String(accountId))) + .replace( + `{${'method_name'}}`, + encodeURIComponent(String(methodName)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (args) { + localVarQueryParameter['args'] = args; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get account transactions + * @param {string} accountId account ID + * @param {number} [afterLt] omit this parameter to get last transactions + * @param {number} [beforeLt] omit this parameter to get last transactions + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountTransactions: async ( + accountId: string, + afterLt?: number, + beforeLt?: number, + limit?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getAccountTransactions', 'accountId', accountId); + const localVarPath = + `/v2/blockchain/accounts/{account_id}/transactions`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (afterLt !== undefined) { + localVarQueryParameter['after_lt'] = afterLt; + } + + if (beforeLt !== undefined) { + localVarQueryParameter['before_lt'] = beforeLt; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get block data + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlock: async ( + blockId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getBlock', 'blockId', blockId); + const localVarPath = `/v2/blockchain/blocks/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get transactions from block + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockTransactions: async ( + blockId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getBlockTransactions', 'blockId', blockId); + const localVarPath = + `/v2/blockchain/blocks/{block_id}/transactions`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get blockchain config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getConfig: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/blockchain/config`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get last known masterchain block + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getMasterchainHead: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/blockchain/masterchain-head`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get low-level information about an account taken directly from the blockchain. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRawAccount: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getRawAccount', 'accountId', accountId); + const localVarPath = `/v2/blockchain/accounts/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get transaction data + * @param {string} transactionId transaction ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTransaction: async ( + transactionId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'transactionId' is not null or undefined + assertParamExists('getTransaction', 'transactionId', transactionId); + const localVarPath = + `/v2/blockchain/transactions/{transaction_id}`.replace( + `{${'transaction_id'}}`, + encodeURIComponent(String(transactionId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get transaction data by message hash + * @param {string} msgId message ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTransactionByMessageHash: async ( + msgId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'msgId' is not null or undefined + assertParamExists('getTransactionByMessageHash', 'msgId', msgId); + const localVarPath = + `/v2/blockchain/messages/{msg_id}/transaction`.replace( + `{${'msg_id'}}`, + encodeURIComponent(String(msgId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get validators + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getValidators: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/blockchain/validators`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Send message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + sendMessage: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists('sendMessage', 'uNKNOWNBASETYPE', uNKNOWNBASETYPE); + const localVarPath = `/v2/blockchain/message`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * BlockchainApi - functional programming interface + * @export + */ +export const BlockchainApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = + BlockchainApiAxiosParamCreator(configuration); + return { + /** + * Execute get method for account + * @param {string} accountId account ID + * @param {string} methodName contract get method name + * @param {Array} [args] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async execGetMethod( + accountId: string, + methodName: string, + args?: Array, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.execGetMethod( + accountId, + methodName, + args, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get account transactions + * @param {string} accountId account ID + * @param {number} [afterLt] omit this parameter to get last transactions + * @param {number} [beforeLt] omit this parameter to get last transactions + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAccountTransactions( + accountId: string, + afterLt?: number, + beforeLt?: number, + limit?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getAccountTransactions( + accountId, + afterLt, + beforeLt, + limit, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get block data + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getBlock( + blockId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getBlock( + blockId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get transactions from block + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getBlockTransactions( + blockId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getBlockTransactions(blockId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get blockchain config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getConfig( + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getConfig( + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get last known masterchain block + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getMasterchainHead( + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getMasterchainHead(options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get low-level information about an account taken directly from the blockchain. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getRawAccount( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getRawAccount( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get transaction data + * @param {string} transactionId transaction ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTransaction( + transactionId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getTransaction( + transactionId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get transaction data by message hash + * @param {string} msgId message ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTransactionByMessageHash( + msgId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getTransactionByMessageHash( + msgId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get validators + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getValidators( + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getValidators( + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Send message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async sendMessage( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.sendMessage( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * BlockchainApi - factory interface + * @export + */ +export const BlockchainApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = BlockchainApiFp(configuration); + return { + /** + * Execute get method for account + * @param {string} accountId account ID + * @param {string} methodName contract get method name + * @param {Array} [args] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + execGetMethod( + accountId: string, + methodName: string, + args?: Array, + options?: any, + ): AxiosPromise { + return localVarFp + .execGetMethod(accountId, methodName, args, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get account transactions + * @param {string} accountId account ID + * @param {number} [afterLt] omit this parameter to get last transactions + * @param {number} [beforeLt] omit this parameter to get last transactions + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountTransactions( + accountId: string, + afterLt?: number, + beforeLt?: number, + limit?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getAccountTransactions(accountId, afterLt, beforeLt, limit, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get block data + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlock(blockId: string, options?: any): AxiosPromise { + return localVarFp + .getBlock(blockId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get transactions from block + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockTransactions( + blockId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getBlockTransactions(blockId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get blockchain config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getConfig(options?: any): AxiosPromise { + return localVarFp + .getConfig(options) + .then((request) => request(axios, basePath)); + }, + /** + * Get last known masterchain block + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getMasterchainHead(options?: any): AxiosPromise { + return localVarFp + .getMasterchainHead(options) + .then((request) => request(axios, basePath)); + }, + /** + * Get low-level information about an account taken directly from the blockchain. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRawAccount(accountId: string, options?: any): AxiosPromise { + return localVarFp + .getRawAccount(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get transaction data + * @param {string} transactionId transaction ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTransaction( + transactionId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getTransaction(transactionId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get transaction data by message hash + * @param {string} msgId message ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTransactionByMessageHash( + msgId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getTransactionByMessageHash(msgId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get validators + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getValidators(options?: any): AxiosPromise { + return localVarFp + .getValidators(options) + .then((request) => request(axios, basePath)); + }, + /** + * Send message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + sendMessage( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .sendMessage(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * BlockchainApi - object-oriented interface + * @export + * @class BlockchainApi + * @extends {BaseAPI} + */ +export class BlockchainApi extends BaseAPI { + /** + * Execute get method for account + * @param {string} accountId account ID + * @param {string} methodName contract get method name + * @param {Array} [args] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public execGetMethod( + accountId: string, + methodName: string, + args?: Array, + options?: AxiosRequestConfig, + ) { + return BlockchainApiFp(this.configuration) + .execGetMethod(accountId, methodName, args, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get account transactions + * @param {string} accountId account ID + * @param {number} [afterLt] omit this parameter to get last transactions + * @param {number} [beforeLt] omit this parameter to get last transactions + * @param {number} [limit] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getAccountTransactions( + accountId: string, + afterLt?: number, + beforeLt?: number, + limit?: number, + options?: AxiosRequestConfig, + ) { + return BlockchainApiFp(this.configuration) + .getAccountTransactions(accountId, afterLt, beforeLt, limit, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get block data + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getBlock(blockId: string, options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getBlock(blockId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get transactions from block + * @param {string} blockId block ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getBlockTransactions(blockId: string, options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getBlockTransactions(blockId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get blockchain config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getConfig(options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getConfig(options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get last known masterchain block + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getMasterchainHead(options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getMasterchainHead(options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get low-level information about an account taken directly from the blockchain. + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getRawAccount(accountId: string, options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getRawAccount(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get transaction data + * @param {string} transactionId transaction ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getTransaction(transactionId: string, options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getTransaction(transactionId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get transaction data by message hash + * @param {string} msgId message ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getTransactionByMessageHash( + msgId: string, + options?: AxiosRequestConfig, + ) { + return BlockchainApiFp(this.configuration) + .getTransactionByMessageHash(msgId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get validators + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public getValidators(options?: AxiosRequestConfig) { + return BlockchainApiFp(this.configuration) + .getValidators(options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Send message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof BlockchainApi + */ + public sendMessage( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return BlockchainApiFp(this.configuration) + .sendMessage(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * ConnectApi - axios parameter creator + * @export + */ +export const ConnectApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get account info by state init + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountInfoByStateInit: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists( + 'getAccountInfoByStateInit', + 'uNKNOWNBASETYPE', + uNKNOWNBASETYPE, + ); + const localVarPath = `/v2/tonconnect/stateinit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a payload for further token receipt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTonConnectPayload: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/tonconnect/payload`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * ConnectApi - functional programming interface + * @export + */ +export const ConnectApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = ConnectApiAxiosParamCreator(configuration); + return { + /** + * Get account info by state init + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAccountInfoByStateInit( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getAccountInfoByStateInit( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get a payload for further token receipt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTonConnectPayload( + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getTonConnectPayload(options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * ConnectApi - factory interface + * @export + */ +export const ConnectApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = ConnectApiFp(configuration); + return { + /** + * Get account info by state init + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountInfoByStateInit( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .getAccountInfoByStateInit(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get a payload for further token receipt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTonConnectPayload(options?: any): AxiosPromise { + return localVarFp + .getTonConnectPayload(options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * ConnectApi - object-oriented interface + * @export + * @class ConnectApi + * @extends {BaseAPI} + */ +export class ConnectApi extends BaseAPI { + /** + * Get account info by state init + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ConnectApi + */ + public getAccountInfoByStateInit( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return ConnectApiFp(this.configuration) + .getAccountInfoByStateInit(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a payload for further token receipt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ConnectApi + */ + public getTonConnectPayload(options?: AxiosRequestConfig) { + return ConnectApiFp(this.configuration) + .getTonConnectPayload(options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * DNSApi - axios parameter creator + * @export + */ +export const DNSApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * get full information about domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + dnsInfo: async ( + domainName: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'domainName' is not null or undefined + assertParamExists('dnsInfo', 'domainName', domainName); + const localVarPath = `/v2/dns/{domain_name}`.replace( + `{${'domain_name'}}`, + encodeURIComponent(String(domainName)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * DNS resolve for domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + dnsResolve: async ( + domainName: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'domainName' is not null or undefined + assertParamExists('dnsResolve', 'domainName', domainName); + const localVarPath = `/v2/dns/{domain_name}/resolve`.replace( + `{${'domain_name'}}`, + encodeURIComponent(String(domainName)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get all auctions + * @param {string} [tld] domain filter for current auctions \"ton\" or \"t.me\" + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAllAuctions: async ( + tld?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/dns/auctions`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (tld !== undefined) { + localVarQueryParameter['tld'] = tld; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get domain bids + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getDomainBids: async ( + domainName: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'domainName' is not null or undefined + assertParamExists('getDomainBids', 'domainName', domainName); + const localVarPath = `/v2/dns/{domain_name}/bids`.replace( + `{${'domain_name'}}`, + encodeURIComponent(String(domainName)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * DNSApi - functional programming interface + * @export + */ +export const DNSApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = DNSApiAxiosParamCreator(configuration); + return { + /** + * get full information about domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async dnsInfo( + domainName: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.dnsInfo( + domainName, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * DNS resolve for domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async dnsResolve( + domainName: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.dnsResolve( + domainName, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get all auctions + * @param {string} [tld] domain filter for current auctions \"ton\" or \"t.me\" + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAllAuctions( + tld?: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAllAuctions( + tld, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get domain bids + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getDomainBids( + domainName: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getDomainBids( + domainName, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * DNSApi - factory interface + * @export + */ +export const DNSApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = DNSApiFp(configuration); + return { + /** + * get full information about domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + dnsInfo(domainName: string, options?: any): AxiosPromise { + return localVarFp + .dnsInfo(domainName, options) + .then((request) => request(axios, basePath)); + }, + /** + * DNS resolve for domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + dnsResolve(domainName: string, options?: any): AxiosPromise { + return localVarFp + .dnsResolve(domainName, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get all auctions + * @param {string} [tld] domain filter for current auctions \"ton\" or \"t.me\" + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAllAuctions(tld?: string, options?: any): AxiosPromise { + return localVarFp + .getAllAuctions(tld, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get domain bids + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getDomainBids(domainName: string, options?: any): AxiosPromise { + return localVarFp + .getDomainBids(domainName, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * DNSApi - object-oriented interface + * @export + * @class DNSApi + * @extends {BaseAPI} + */ +export class DNSApi extends BaseAPI { + /** + * get full information about domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DNSApi + */ + public dnsInfo(domainName: string, options?: AxiosRequestConfig) { + return DNSApiFp(this.configuration) + .dnsInfo(domainName, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * DNS resolve for domain name + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DNSApi + */ + public dnsResolve(domainName: string, options?: AxiosRequestConfig) { + return DNSApiFp(this.configuration) + .dnsResolve(domainName, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get all auctions + * @param {string} [tld] domain filter for current auctions \"ton\" or \"t.me\" + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DNSApi + */ + public getAllAuctions(tld?: string, options?: AxiosRequestConfig) { + return DNSApiFp(this.configuration) + .getAllAuctions(tld, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get domain bids + * @param {string} domainName domain name with .ton or .t.me + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DNSApi + */ + public getDomainBids(domainName: string, options?: AxiosRequestConfig) { + return DNSApiFp(this.configuration) + .getDomainBids(domainName, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * EmulationApi - axios parameter creator + * @export + */ +export const EmulationApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Emulate sending message to blockchain + * @param {string} accountId account ID + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateMessageToAccountEvent: async ( + accountId: string, + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('emulateMessageToAccountEvent', 'accountId', accountId); + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists( + 'emulateMessageToAccountEvent', + 'uNKNOWNBASETYPE', + uNKNOWNBASETYPE, + ); + const localVarPath = `/v2/accounts/{account_id}/events/emulate`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateMessageToEvent: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists( + 'emulateMessageToEvent', + 'uNKNOWNBASETYPE', + uNKNOWNBASETYPE, + ); + const localVarPath = `/v2/events/emulate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateMessageToTrace: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists( + 'emulateMessageToTrace', + 'uNKNOWNBASETYPE', + uNKNOWNBASETYPE, + ); + const localVarPath = `/v2/traces/emulate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateWalletMessage: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists( + 'emulateWalletMessage', + 'uNKNOWNBASETYPE', + uNKNOWNBASETYPE, + ); + const localVarPath = `/v2/wallet/emulate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * EmulationApi - functional programming interface + * @export + */ +export const EmulationApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = + EmulationApiAxiosParamCreator(configuration); + return { + /** + * Emulate sending message to blockchain + * @param {string} accountId account ID + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async emulateMessageToAccountEvent( + accountId: string, + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.emulateMessageToAccountEvent( + accountId, + uNKNOWNBASETYPE, + acceptLanguage, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async emulateMessageToEvent( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.emulateMessageToEvent( + uNKNOWNBASETYPE, + acceptLanguage, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async emulateMessageToTrace( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.emulateMessageToTrace( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async emulateWalletMessage( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.emulateWalletMessage( + uNKNOWNBASETYPE, + acceptLanguage, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * EmulationApi - factory interface + * @export + */ +export const EmulationApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = EmulationApiFp(configuration); + return { + /** + * Emulate sending message to blockchain + * @param {string} accountId account ID + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateMessageToAccountEvent( + accountId: string, + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .emulateMessageToAccountEvent( + accountId, + uNKNOWNBASETYPE, + acceptLanguage, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateMessageToEvent( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .emulateMessageToEvent(uNKNOWNBASETYPE, acceptLanguage, options) + .then((request) => request(axios, basePath)); + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateMessageToTrace( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .emulateMessageToTrace(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + emulateWalletMessage( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .emulateWalletMessage(uNKNOWNBASETYPE, acceptLanguage, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * EmulationApi - object-oriented interface + * @export + * @class EmulationApi + * @extends {BaseAPI} + */ +export class EmulationApi extends BaseAPI { + /** + * Emulate sending message to blockchain + * @param {string} accountId account ID + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EmulationApi + */ + public emulateMessageToAccountEvent( + accountId: string, + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ) { + return EmulationApiFp(this.configuration) + .emulateMessageToAccountEvent( + accountId, + uNKNOWNBASETYPE, + acceptLanguage, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EmulationApi + */ + public emulateMessageToEvent( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ) { + return EmulationApiFp(this.configuration) + .emulateMessageToEvent(uNKNOWNBASETYPE, acceptLanguage, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EmulationApi + */ + public emulateMessageToTrace( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return EmulationApiFp(this.configuration) + .emulateMessageToTrace(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Emulate sending message to blockchain + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE bag-of-cells serialized to base64 + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EmulationApi + */ + public emulateWalletMessage( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ) { + return EmulationApiFp(this.configuration) + .emulateWalletMessage(uNKNOWNBASETYPE, acceptLanguage, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * EventsApi - axios parameter creator + * @export + */ +export const EventsApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get an event either by event ID or a hash of any transaction in a trace. An event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} eventId event ID or transaction hash in hex (without 0x) or base64url format + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getEvent: async ( + eventId: string, + acceptLanguage?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'eventId' is not null or undefined + assertParamExists('getEvent', 'eventId', eventId); + const localVarPath = `/v2/events/{event_id}`.replace( + `{${'event_id'}}`, + encodeURIComponent(String(eventId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * EventsApi - functional programming interface + * @export + */ +export const EventsApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = EventsApiAxiosParamCreator(configuration); + return { + /** + * Get an event either by event ID or a hash of any transaction in a trace. An event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} eventId event ID or transaction hash in hex (without 0x) or base64url format + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getEvent( + eventId: string, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getEvent( + eventId, + acceptLanguage, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * EventsApi - factory interface + * @export + */ +export const EventsApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = EventsApiFp(configuration); + return { + /** + * Get an event either by event ID or a hash of any transaction in a trace. An event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} eventId event ID or transaction hash in hex (without 0x) or base64url format + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getEvent( + eventId: string, + acceptLanguage?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getEvent(eventId, acceptLanguage, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * EventsApi - object-oriented interface + * @export + * @class EventsApi + * @extends {BaseAPI} + */ +export class EventsApi extends BaseAPI { + /** + * Get an event either by event ID or a hash of any transaction in a trace. An event is built on top of a trace which is a series of transactions caused by one inbound message. TonAPI looks for known patterns inside the trace and splits the trace into actions, where a single action represents a meaningful high-level operation like a Jetton Transfer or an NFT Purchase. Actions are expected to be shown to users. It is advised not to build any logic on top of actions because actions can be changed at any time. + * @param {string} eventId event ID or transaction hash in hex (without 0x) or base64url format + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EventsApi + */ + public getEvent( + eventId: string, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ) { + return EventsApiFp(this.configuration) + .getEvent(eventId, acceptLanguage, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * JettonsApi - axios parameter creator + * @export + */ +export const JettonsApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get jetton metadata by jetton master address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonInfo: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getJettonInfo', 'accountId', accountId); + const localVarPath = `/v2/jettons/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a list of all indexed jetton masters in the blockchain. + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettons: async ( + limit?: number, + offset?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/jettons`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * JettonsApi - functional programming interface + * @export + */ +export const JettonsApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = JettonsApiAxiosParamCreator(configuration); + return { + /** + * Get jetton metadata by jetton master address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJettonInfo( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJettonInfo( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get a list of all indexed jetton masters in the blockchain. + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJettons( + limit?: number, + offset?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJettons( + limit, + offset, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * JettonsApi - factory interface + * @export + */ +export const JettonsApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = JettonsApiFp(configuration); + return { + /** + * Get jetton metadata by jetton master address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettonInfo(accountId: string, options?: any): AxiosPromise { + return localVarFp + .getJettonInfo(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get a list of all indexed jetton masters in the blockchain. + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJettons( + limit?: number, + offset?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getJettons(limit, offset, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * JettonsApi - object-oriented interface + * @export + * @class JettonsApi + * @extends {BaseAPI} + */ +export class JettonsApi extends BaseAPI { + /** + * Get jetton metadata by jetton master address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof JettonsApi + */ + public getJettonInfo(accountId: string, options?: AxiosRequestConfig) { + return JettonsApiFp(this.configuration) + .getJettonInfo(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a list of all indexed jetton masters in the blockchain. + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof JettonsApi + */ + public getJettons( + limit?: number, + offset?: number, + options?: AxiosRequestConfig, + ) { + return JettonsApiFp(this.configuration) + .getJettons(limit, offset, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * LiteServerApi - axios parameter creator + * @export + */ +export const LiteServerApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get account state + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountStateLiteServer: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getAccountStateLiteServer', 'accountId', accountId); + const localVarPath = + `/v2/liteserver/get_account_state/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get all shards info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAllShardsInfoLiteServer: async ( + blockId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getAllShardsInfoLiteServer', 'blockId', blockId); + const localVarPath = + `/v2/liteserver/get_all_shards_info/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get block header + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockHeaderLiteServer: async ( + blockId: string, + mode: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getBlockHeaderLiteServer', 'blockId', blockId); + // verify required parameter 'mode' is not null or undefined + assertParamExists('getBlockHeaderLiteServer', 'mode', mode); + const localVarPath = `/v2/liteserver/get_block_header/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (mode !== undefined) { + localVarQueryParameter['mode'] = mode; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get block + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockLiteServer: async ( + blockId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getBlockLiteServer', 'blockId', blockId); + const localVarPath = `/v2/liteserver/get_block/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get block proof + * @param {string} knownBlock known block: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {string} [targetBlock] target block: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockProofLiteServer: async ( + knownBlock: string, + mode: number, + targetBlock?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'knownBlock' is not null or undefined + assertParamExists('getBlockProofLiteServer', 'knownBlock', knownBlock); + // verify required parameter 'mode' is not null or undefined + assertParamExists('getBlockProofLiteServer', 'mode', mode); + const localVarPath = `/v2/liteserver/get_block_proof`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (knownBlock !== undefined) { + localVarQueryParameter['known_block'] = knownBlock; + } + + if (targetBlock !== undefined) { + localVarQueryParameter['target_block'] = targetBlock; + } + + if (mode !== undefined) { + localVarQueryParameter['mode'] = mode; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get config all + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getConfigAllLiteServer: async ( + blockId: string, + mode: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getConfigAllLiteServer', 'blockId', blockId); + // verify required parameter 'mode' is not null or undefined + assertParamExists('getConfigAllLiteServer', 'mode', mode); + const localVarPath = `/v2/liteserver/get_config_all/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (mode !== undefined) { + localVarQueryParameter['mode'] = mode; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get list block transactions + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {number} count count + * @param {string} [accountId] account ID + * @param {number} [lt] lt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getListBlockTransactionsLiteServer: async ( + blockId: string, + mode: number, + count: number, + accountId?: string, + lt?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists( + 'getListBlockTransactionsLiteServer', + 'blockId', + blockId, + ); + // verify required parameter 'mode' is not null or undefined + assertParamExists('getListBlockTransactionsLiteServer', 'mode', mode); + // verify required parameter 'count' is not null or undefined + assertParamExists('getListBlockTransactionsLiteServer', 'count', count); + const localVarPath = + `/v2/liteserver/list_block_transactions/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (mode !== undefined) { + localVarQueryParameter['mode'] = mode; + } + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + if (accountId !== undefined) { + localVarQueryParameter['account_id'] = accountId; + } + + if (lt !== undefined) { + localVarQueryParameter['lt'] = lt; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get masterchain info ext + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getMasterchainInfoExtLiteServer: async ( + mode: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'mode' is not null or undefined + assertParamExists('getMasterchainInfoExtLiteServer', 'mode', mode); + const localVarPath = `/v2/liteserver/get_masterchain_info_ext`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (mode !== undefined) { + localVarQueryParameter['mode'] = mode; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get masterchain info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getMasterchainInfoLiteServer: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/liteserver/get_masterchain_info`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get shard block proof + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShardBlockProofLiteServer: async ( + blockId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getShardBlockProofLiteServer', 'blockId', blockId); + const localVarPath = + `/v2/liteserver/get_shard_block_proof/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get shard info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} workchain workchain + * @param {number} shard shard + * @param {boolean} exact exact + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShardInfoLiteServer: async ( + blockId: string, + workchain: number, + shard: number, + exact: boolean, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getShardInfoLiteServer', 'blockId', blockId); + // verify required parameter 'workchain' is not null or undefined + assertParamExists('getShardInfoLiteServer', 'workchain', workchain); + // verify required parameter 'shard' is not null or undefined + assertParamExists('getShardInfoLiteServer', 'shard', shard); + // verify required parameter 'exact' is not null or undefined + assertParamExists('getShardInfoLiteServer', 'exact', exact); + const localVarPath = `/v2/liteserver/get_shard_info/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (workchain !== undefined) { + localVarQueryParameter['workchain'] = workchain; + } + + if (shard !== undefined) { + localVarQueryParameter['shard'] = shard; + } + + if (exact !== undefined) { + localVarQueryParameter['exact'] = exact; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get block state + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getStateLiteServer: async ( + blockId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'blockId' is not null or undefined + assertParamExists('getStateLiteServer', 'blockId', blockId); + const localVarPath = `/v2/liteserver/get_state/{block_id}`.replace( + `{${'block_id'}}`, + encodeURIComponent(String(blockId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTimeLiteServer: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/liteserver/get_time`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get transactions + * @param {string} accountId account ID + * @param {number} count count + * @param {number} lt lt + * @param {string} hash hash + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTransactionsLiteServer: async ( + accountId: string, + count: number, + lt: number, + hash: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getTransactionsLiteServer', 'accountId', accountId); + // verify required parameter 'count' is not null or undefined + assertParamExists('getTransactionsLiteServer', 'count', count); + // verify required parameter 'lt' is not null or undefined + assertParamExists('getTransactionsLiteServer', 'lt', lt); + // verify required parameter 'hash' is not null or undefined + assertParamExists('getTransactionsLiteServer', 'hash', hash); + const localVarPath = + `/v2/liteserver/get_transactions/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + if (lt !== undefined) { + localVarQueryParameter['lt'] = lt; + } + + if (hash !== undefined) { + localVarQueryParameter['hash'] = hash; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Send message + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + sendMessageLiteServer: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists( + 'sendMessageLiteServer', + 'uNKNOWNBASETYPE', + uNKNOWNBASETYPE, + ); + const localVarPath = `/v2/liteserver/send_message`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * LiteServerApi - functional programming interface + * @export + */ +export const LiteServerApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = + LiteServerApiAxiosParamCreator(configuration); + return { + /** + * Get account state + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAccountStateLiteServer( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getAccountStateLiteServer( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get all shards info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAllShardsInfoLiteServer( + blockId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getAllShardsInfoLiteServer( + blockId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get block header + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getBlockHeaderLiteServer( + blockId: string, + mode: number, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getBlockHeaderLiteServer( + blockId, + mode, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get block + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getBlockLiteServer( + blockId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getBlockLiteServer(blockId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get block proof + * @param {string} knownBlock known block: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {string} [targetBlock] target block: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getBlockProofLiteServer( + knownBlock: string, + mode: number, + targetBlock?: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getBlockProofLiteServer( + knownBlock, + mode, + targetBlock, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get config all + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getConfigAllLiteServer( + blockId: string, + mode: number, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getConfigAllLiteServer( + blockId, + mode, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get list block transactions + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {number} count count + * @param {string} [accountId] account ID + * @param {number} [lt] lt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getListBlockTransactionsLiteServer( + blockId: string, + mode: number, + count: number, + accountId?: string, + lt?: number, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getListBlockTransactionsLiteServer( + blockId, + mode, + count, + accountId, + lt, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get masterchain info ext + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getMasterchainInfoExtLiteServer( + mode: number, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getMasterchainInfoExtLiteServer( + mode, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get masterchain info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getMasterchainInfoLiteServer( + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getMasterchainInfoLiteServer(options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get shard block proof + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getShardBlockProofLiteServer( + blockId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getShardBlockProofLiteServer( + blockId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get shard info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} workchain workchain + * @param {number} shard shard + * @param {boolean} exact exact + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getShardInfoLiteServer( + blockId: string, + workchain: number, + shard: number, + exact: boolean, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getShardInfoLiteServer( + blockId, + workchain, + shard, + exact, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get block state + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getStateLiteServer( + blockId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getStateLiteServer(blockId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTimeLiteServer( + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getTimeLiteServer(options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get transactions + * @param {string} accountId account ID + * @param {number} count count + * @param {number} lt lt + * @param {string} hash hash + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTransactionsLiteServer( + accountId: string, + count: number, + lt: number, + hash: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getTransactionsLiteServer( + accountId, + count, + lt, + hash, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Send message + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async sendMessageLiteServer( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.sendMessageLiteServer( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * LiteServerApi - factory interface + * @export + */ +export const LiteServerApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = LiteServerApiFp(configuration); + return { + /** + * Get account state + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountStateLiteServer( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getAccountStateLiteServer(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get all shards info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAllShardsInfoLiteServer( + blockId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getAllShardsInfoLiteServer(blockId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get block header + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockHeaderLiteServer( + blockId: string, + mode: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getBlockHeaderLiteServer(blockId, mode, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get block + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockLiteServer( + blockId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getBlockLiteServer(blockId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get block proof + * @param {string} knownBlock known block: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {string} [targetBlock] target block: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBlockProofLiteServer( + knownBlock: string, + mode: number, + targetBlock?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getBlockProofLiteServer(knownBlock, mode, targetBlock, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get config all + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getConfigAllLiteServer( + blockId: string, + mode: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getConfigAllLiteServer(blockId, mode, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get list block transactions + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {number} count count + * @param {string} [accountId] account ID + * @param {number} [lt] lt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getListBlockTransactionsLiteServer( + blockId: string, + mode: number, + count: number, + accountId?: string, + lt?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getListBlockTransactionsLiteServer( + blockId, + mode, + count, + accountId, + lt, + options, + ) + .then((request) => request(axios, basePath)); + }, + /** + * Get masterchain info ext + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getMasterchainInfoExtLiteServer( + mode: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getMasterchainInfoExtLiteServer(mode, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get masterchain info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getMasterchainInfoLiteServer( + options?: any, + ): AxiosPromise { + return localVarFp + .getMasterchainInfoLiteServer(options) + .then((request) => request(axios, basePath)); + }, + /** + * Get shard block proof + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShardBlockProofLiteServer( + blockId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getShardBlockProofLiteServer(blockId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get shard info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} workchain workchain + * @param {number} shard shard + * @param {boolean} exact exact + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShardInfoLiteServer( + blockId: string, + workchain: number, + shard: number, + exact: boolean, + options?: any, + ): AxiosPromise { + return localVarFp + .getShardInfoLiteServer(blockId, workchain, shard, exact, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get block state + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getStateLiteServer( + blockId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getStateLiteServer(blockId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTimeLiteServer(options?: any): AxiosPromise { + return localVarFp + .getTimeLiteServer(options) + .then((request) => request(axios, basePath)); + }, + /** + * Get transactions + * @param {string} accountId account ID + * @param {number} count count + * @param {number} lt lt + * @param {string} hash hash + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTransactionsLiteServer( + accountId: string, + count: number, + lt: number, + hash: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getTransactionsLiteServer(accountId, count, lt, hash, options) + .then((request) => request(axios, basePath)); + }, + /** + * Send message + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + sendMessageLiteServer( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .sendMessageLiteServer(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * LiteServerApi - object-oriented interface + * @export + * @class LiteServerApi + * @extends {BaseAPI} + */ +export class LiteServerApi extends BaseAPI { + /** + * Get account state + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getAccountStateLiteServer( + accountId: string, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getAccountStateLiteServer(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get all shards info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getAllShardsInfoLiteServer( + blockId: string, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getAllShardsInfoLiteServer(blockId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get block header + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getBlockHeaderLiteServer( + blockId: string, + mode: number, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getBlockHeaderLiteServer(blockId, mode, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get block + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getBlockLiteServer(blockId: string, options?: AxiosRequestConfig) { + return LiteServerApiFp(this.configuration) + .getBlockLiteServer(blockId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get block proof + * @param {string} knownBlock known block: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {string} [targetBlock] target block: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getBlockProofLiteServer( + knownBlock: string, + mode: number, + targetBlock?: string, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getBlockProofLiteServer(knownBlock, mode, targetBlock, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get config all + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getConfigAllLiteServer( + blockId: string, + mode: number, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getConfigAllLiteServer(blockId, mode, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get list block transactions + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} mode mode + * @param {number} count count + * @param {string} [accountId] account ID + * @param {number} [lt] lt + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getListBlockTransactionsLiteServer( + blockId: string, + mode: number, + count: number, + accountId?: string, + lt?: number, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getListBlockTransactionsLiteServer( + blockId, + mode, + count, + accountId, + lt, + options, + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get masterchain info ext + * @param {number} mode mode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getMasterchainInfoExtLiteServer( + mode: number, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getMasterchainInfoExtLiteServer(mode, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get masterchain info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getMasterchainInfoLiteServer(options?: AxiosRequestConfig) { + return LiteServerApiFp(this.configuration) + .getMasterchainInfoLiteServer(options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get shard block proof + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getShardBlockProofLiteServer( + blockId: string, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getShardBlockProofLiteServer(blockId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get shard info + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {number} workchain workchain + * @param {number} shard shard + * @param {boolean} exact exact + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getShardInfoLiteServer( + blockId: string, + workchain: number, + shard: number, + exact: boolean, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getShardInfoLiteServer(blockId, workchain, shard, exact, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get block state + * @param {string} blockId block ID: (workchain,shard,seqno,root_hash,file_hash) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getStateLiteServer(blockId: string, options?: AxiosRequestConfig) { + return LiteServerApiFp(this.configuration) + .getStateLiteServer(blockId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getTimeLiteServer(options?: AxiosRequestConfig) { + return LiteServerApiFp(this.configuration) + .getTimeLiteServer(options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get transactions + * @param {string} accountId account ID + * @param {number} count count + * @param {number} lt lt + * @param {string} hash hash + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public getTransactionsLiteServer( + accountId: string, + count: number, + lt: number, + hash: string, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .getTransactionsLiteServer(accountId, count, lt, hash, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Send message + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof LiteServerApi + */ + public sendMessageLiteServer( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return LiteServerApiFp(this.configuration) + .sendMessageLiteServer(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * NFTApi - axios parameter creator + * @export + */ +export const NFTApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get NFT items from collection by collection address + * @param {string} accountId account ID + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getItemsFromCollection: async ( + accountId: string, + limit?: number, + offset?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getItemsFromCollection', 'accountId', accountId); + const localVarPath = `/v2/nfts/collections/{account_id}/items`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get NFT collection by collection address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftCollection: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getNftCollection', 'accountId', accountId); + const localVarPath = `/v2/nfts/collections/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get NFT collections + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftCollections: async ( + limit?: number, + offset?: number, + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/nfts/collections`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get NFT item by its address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftItemByAddress: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getNftItemByAddress', 'accountId', accountId); + const localVarPath = `/v2/nfts/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get NFT items by their addresses + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftItemsByAddresses: async ( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/nfts/_bulk`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * NFTApi - functional programming interface + * @export + */ +export const NFTApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = NFTApiAxiosParamCreator(configuration); + return { + /** + * Get NFT items from collection by collection address + * @param {string} accountId account ID + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getItemsFromCollection( + accountId: string, + limit?: number, + offset?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getItemsFromCollection( + accountId, + limit, + offset, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get NFT collection by collection address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNftCollection( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getNftCollection(accountId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get NFT collections + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNftCollections( + limit?: number, + offset?: number, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getNftCollections( + limit, + offset, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get NFT item by its address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNftItemByAddress( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getNftItemByAddress(accountId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get NFT items by their addresses + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNftItemsByAddresses( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getNftItemsByAddresses( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * NFTApi - factory interface + * @export + */ +export const NFTApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = NFTApiFp(configuration); + return { + /** + * Get NFT items from collection by collection address + * @param {string} accountId account ID + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getItemsFromCollection( + accountId: string, + limit?: number, + offset?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getItemsFromCollection(accountId, limit, offset, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get NFT collection by collection address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftCollection( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getNftCollection(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get NFT collections + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftCollections( + limit?: number, + offset?: number, + options?: any, + ): AxiosPromise { + return localVarFp + .getNftCollections(limit, offset, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get NFT item by its address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftItemByAddress( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getNftItemByAddress(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get NFT items by their addresses + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNftItemsByAddresses( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .getNftItemsByAddresses(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * NFTApi - object-oriented interface + * @export + * @class NFTApi + * @extends {BaseAPI} + */ +export class NFTApi extends BaseAPI { + /** + * Get NFT items from collection by collection address + * @param {string} accountId account ID + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NFTApi + */ + public getItemsFromCollection( + accountId: string, + limit?: number, + offset?: number, + options?: AxiosRequestConfig, + ) { + return NFTApiFp(this.configuration) + .getItemsFromCollection(accountId, limit, offset, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get NFT collection by collection address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NFTApi + */ + public getNftCollection(accountId: string, options?: AxiosRequestConfig) { + return NFTApiFp(this.configuration) + .getNftCollection(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get NFT collections + * @param {number} [limit] + * @param {number} [offset] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NFTApi + */ + public getNftCollections( + limit?: number, + offset?: number, + options?: AxiosRequestConfig, + ) { + return NFTApiFp(this.configuration) + .getNftCollections(limit, offset, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get NFT item by its address + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NFTApi + */ + public getNftItemByAddress(accountId: string, options?: AxiosRequestConfig) { + return NFTApiFp(this.configuration) + .getNftItemByAddress(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get NFT items by their addresses + * @param {UNKNOWN_BASE_TYPE} [uNKNOWNBASETYPE] a list of account ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NFTApi + */ + public getNftItemsByAddresses( + uNKNOWNBASETYPE?: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return NFTApiFp(this.configuration) + .getNftItemsByAddresses(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * RatesApi - axios parameter creator + * @export + */ +export const RatesApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get the token price to the currency + * @param {string} tokens accept ton and jetton master addresses, separated by commas + * @param {string} currencies accept ton and all possible fiat currencies, separated by commas + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRates: async ( + tokens: string, + currencies: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'tokens' is not null or undefined + assertParamExists('getRates', 'tokens', tokens); + // verify required parameter 'currencies' is not null or undefined + assertParamExists('getRates', 'currencies', currencies); + const localVarPath = `/v2/rates`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (tokens !== undefined) { + localVarQueryParameter['tokens'] = tokens; + } + + if (currencies !== undefined) { + localVarQueryParameter['currencies'] = currencies; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * RatesApi - functional programming interface + * @export + */ +export const RatesApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = RatesApiAxiosParamCreator(configuration); + return { + /** + * Get the token price to the currency + * @param {string} tokens accept ton and jetton master addresses, separated by commas + * @param {string} currencies accept ton and all possible fiat currencies, separated by commas + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getRates( + tokens: string, + currencies: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getRates( + tokens, + currencies, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * RatesApi - factory interface + * @export + */ +export const RatesApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = RatesApiFp(configuration); + return { + /** + * Get the token price to the currency + * @param {string} tokens accept ton and jetton master addresses, separated by commas + * @param {string} currencies accept ton and all possible fiat currencies, separated by commas + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRates( + tokens: string, + currencies: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getRates(tokens, currencies, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * RatesApi - object-oriented interface + * @export + * @class RatesApi + * @extends {BaseAPI} + */ +export class RatesApi extends BaseAPI { + /** + * Get the token price to the currency + * @param {string} tokens accept ton and jetton master addresses, separated by commas + * @param {string} currencies accept ton and all possible fiat currencies, separated by commas + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof RatesApi + */ + public getRates( + tokens: string, + currencies: string, + options?: AxiosRequestConfig, + ) { + return RatesApiFp(this.configuration) + .getRates(tokens, currencies, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * StakingApi - axios parameter creator + * @export + */ +export const StakingApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * All pools where account participates + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + poolsByNominators: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('poolsByNominators', 'accountId', accountId); + const localVarPath = `/v2/staking/nominator/{account_id}/pools`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Pool info + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + stakingPoolHistory: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('stakingPoolHistory', 'accountId', accountId); + const localVarPath = `/v2/staking/pool/{account_id}/history`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Pool info + * @param {string} accountId account ID + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + stakingPoolInfo: async ( + accountId: string, + acceptLanguage?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('stakingPoolInfo', 'accountId', accountId); + const localVarPath = `/v2/staking/pool/{account_id}`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * All pools available in network + * @param {string} [availableFor] account ID + * @param {boolean} [includeUnverified] return also pools not from white list - just compatible by interfaces (maybe dangerous!) + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + stakingPools: async ( + availableFor?: string, + includeUnverified?: boolean, + acceptLanguage?: string, + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/staking/pools`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (availableFor !== undefined) { + localVarQueryParameter['available_for'] = availableFor; + } + + if (includeUnverified !== undefined) { + localVarQueryParameter['include_unverified'] = includeUnverified; + } + + if (acceptLanguage !== undefined && acceptLanguage !== null) { + localVarHeaderParameter['Accept-Language'] = String(acceptLanguage); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * StakingApi - functional programming interface + * @export + */ +export const StakingApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = StakingApiAxiosParamCreator(configuration); + return { + /** + * All pools where account participates + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async poolsByNominators( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.poolsByNominators(accountId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Pool info + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async stakingPoolHistory( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.stakingPoolHistory(accountId, options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Pool info + * @param {string} accountId account ID + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async stakingPoolInfo( + accountId: string, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.stakingPoolInfo( + accountId, + acceptLanguage, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * All pools available in network + * @param {string} [availableFor] account ID + * @param {boolean} [includeUnverified] return also pools not from white list - just compatible by interfaces (maybe dangerous!) + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async stakingPools( + availableFor?: string, + includeUnverified?: boolean, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.stakingPools( + availableFor, + includeUnverified, + acceptLanguage, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * StakingApi - factory interface + * @export + */ +export const StakingApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = StakingApiFp(configuration); + return { + /** + * All pools where account participates + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + poolsByNominators( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .poolsByNominators(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Pool info + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + stakingPoolHistory( + accountId: string, + options?: any, + ): AxiosPromise { + return localVarFp + .stakingPoolHistory(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Pool info + * @param {string} accountId account ID + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + stakingPoolInfo( + accountId: string, + acceptLanguage?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .stakingPoolInfo(accountId, acceptLanguage, options) + .then((request) => request(axios, basePath)); + }, + /** + * All pools available in network + * @param {string} [availableFor] account ID + * @param {boolean} [includeUnverified] return also pools not from white list - just compatible by interfaces (maybe dangerous!) + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + stakingPools( + availableFor?: string, + includeUnverified?: boolean, + acceptLanguage?: string, + options?: any, + ): AxiosPromise { + return localVarFp + .stakingPools(availableFor, includeUnverified, acceptLanguage, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * StakingApi - object-oriented interface + * @export + * @class StakingApi + * @extends {BaseAPI} + */ +export class StakingApi extends BaseAPI { + /** + * All pools where account participates + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof StakingApi + */ + public poolsByNominators(accountId: string, options?: AxiosRequestConfig) { + return StakingApiFp(this.configuration) + .poolsByNominators(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Pool info + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof StakingApi + */ + public stakingPoolHistory(accountId: string, options?: AxiosRequestConfig) { + return StakingApiFp(this.configuration) + .stakingPoolHistory(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Pool info + * @param {string} accountId account ID + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof StakingApi + */ + public stakingPoolInfo( + accountId: string, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ) { + return StakingApiFp(this.configuration) + .stakingPoolInfo(accountId, acceptLanguage, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * All pools available in network + * @param {string} [availableFor] account ID + * @param {boolean} [includeUnverified] return also pools not from white list - just compatible by interfaces (maybe dangerous!) + * @param {string} [acceptLanguage] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof StakingApi + */ + public stakingPools( + availableFor?: string, + includeUnverified?: boolean, + acceptLanguage?: string, + options?: AxiosRequestConfig, + ) { + return StakingApiFp(this.configuration) + .stakingPools(availableFor, includeUnverified, acceptLanguage, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * StorageApi - axios parameter creator + * @export + */ +export const StorageApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get TON storage providers deployed to the blockchain. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getStorageProviders: async ( + options: AxiosRequestConfig = {}, + ): Promise => { + const localVarPath = `/v2/storage/providers`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * StorageApi - functional programming interface + * @export + */ +export const StorageApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = StorageApiAxiosParamCreator(configuration); + return { + /** + * Get TON storage providers deployed to the blockchain. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getStorageProviders( + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getStorageProviders(options); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * StorageApi - factory interface + * @export + */ +export const StorageApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = StorageApiFp(configuration); + return { + /** + * Get TON storage providers deployed to the blockchain. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getStorageProviders(options?: any): AxiosPromise { + return localVarFp + .getStorageProviders(options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * StorageApi - object-oriented interface + * @export + * @class StorageApi + * @extends {BaseAPI} + */ +export class StorageApi extends BaseAPI { + /** + * Get TON storage providers deployed to the blockchain. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof StorageApi + */ + public getStorageProviders(options?: AxiosRequestConfig) { + return StorageApiFp(this.configuration) + .getStorageProviders(options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * TracesApi - axios parameter creator + * @export + */ +export const TracesApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get the trace by trace ID or hash of any transaction in trace + * @param {string} traceId trace ID or transaction hash in hex (without 0x) or base64url format + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTrace: async ( + traceId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'traceId' is not null or undefined + assertParamExists('getTrace', 'traceId', traceId); + const localVarPath = `/v2/traces/{trace_id}`.replace( + `{${'trace_id'}}`, + encodeURIComponent(String(traceId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * TracesApi - functional programming interface + * @export + */ +export const TracesApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = TracesApiAxiosParamCreator(configuration); + return { + /** + * Get the trace by trace ID or hash of any transaction in trace + * @param {string} traceId trace ID or transaction hash in hex (without 0x) or base64url format + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTrace( + traceId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getTrace( + traceId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * TracesApi - factory interface + * @export + */ +export const TracesApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = TracesApiFp(configuration); + return { + /** + * Get the trace by trace ID or hash of any transaction in trace + * @param {string} traceId trace ID or transaction hash in hex (without 0x) or base64url format + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTrace(traceId: string, options?: any): AxiosPromise { + return localVarFp + .getTrace(traceId, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * TracesApi - object-oriented interface + * @export + * @class TracesApi + * @extends {BaseAPI} + */ +export class TracesApi extends BaseAPI { + /** + * Get the trace by trace ID or hash of any transaction in trace + * @param {string} traceId trace ID or transaction hash in hex (without 0x) or base64url format + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof TracesApi + */ + public getTrace(traceId: string, options?: AxiosRequestConfig) { + return TracesApiFp(this.configuration) + .getTrace(traceId, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * WalletApi - axios parameter creator + * @export + */ +export const WalletApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get backup info + * @param {string} xTonConnectAuth + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWalletBackup: async ( + xTonConnectAuth: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'xTonConnectAuth' is not null or undefined + assertParamExists('getWalletBackup', 'xTonConnectAuth', xTonConnectAuth); + const localVarPath = `/v2/wallet/backup`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (xTonConnectAuth !== undefined && xTonConnectAuth !== null) { + localVarHeaderParameter['X-TonConnect-Auth'] = String(xTonConnectAuth); + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Set backup info + * @param {string} xTonConnectAuth + * @param {any} body Information for saving backup + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + setWalletBackup: async ( + xTonConnectAuth: string, + body: any, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'xTonConnectAuth' is not null or undefined + assertParamExists('setWalletBackup', 'xTonConnectAuth', xTonConnectAuth); + // verify required parameter 'body' is not null or undefined + assertParamExists('setWalletBackup', 'body', body); + const localVarPath = `/v2/wallet/backup`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (xTonConnectAuth !== undefined && xTonConnectAuth !== null) { + localVarHeaderParameter['X-TonConnect-Auth'] = String(xTonConnectAuth); + } + + localVarHeaderParameter['Content-Type'] = 'application/octet-stream'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + body, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Account verification and token issuance + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected from TON Connect + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + tonConnectProof: async ( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'uNKNOWNBASETYPE' is not null or undefined + assertParamExists('tonConnectProof', 'uNKNOWNBASETYPE', uNKNOWNBASETYPE); + const localVarPath = `/v2/wallet/auth/proof`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + uNKNOWNBASETYPE, + localVarRequestOptions, + configuration, + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * WalletApi - functional programming interface + * @export + */ +export const WalletApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = WalletApiAxiosParamCreator(configuration); + return { + /** + * Get backup info + * @param {string} xTonConnectAuth + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getWalletBackup( + xTonConnectAuth: string, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWalletBackup( + xTonConnectAuth, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Set backup info + * @param {string} xTonConnectAuth + * @param {any} body Information for saving backup + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async setWalletBackup( + xTonConnectAuth: string, + body: any, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.setWalletBackup( + xTonConnectAuth, + body, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Account verification and token issuance + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected from TON Connect + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async tonConnectProof( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string, + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.tonConnectProof( + uNKNOWNBASETYPE, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * WalletApi - factory interface + * @export + */ +export const WalletApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = WalletApiFp(configuration); + return { + /** + * Get backup info + * @param {string} xTonConnectAuth + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWalletBackup( + xTonConnectAuth: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getWalletBackup(xTonConnectAuth, options) + .then((request) => request(axios, basePath)); + }, + /** + * Set backup info + * @param {string} xTonConnectAuth + * @param {any} body Information for saving backup + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + setWalletBackup( + xTonConnectAuth: string, + body: any, + options?: any, + ): AxiosPromise { + return localVarFp + .setWalletBackup(xTonConnectAuth, body, options) + .then((request) => request(axios, basePath)); + }, + /** + * Account verification and token issuance + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected from TON Connect + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + tonConnectProof( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: any, + ): AxiosPromise { + return localVarFp + .tonConnectProof(uNKNOWNBASETYPE, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * WalletApi - object-oriented interface + * @export + * @class WalletApi + * @extends {BaseAPI} + */ +export class WalletApi extends BaseAPI { + /** + * Get backup info + * @param {string} xTonConnectAuth + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WalletApi + */ + public getWalletBackup( + xTonConnectAuth: string, + options?: AxiosRequestConfig, + ) { + return WalletApiFp(this.configuration) + .getWalletBackup(xTonConnectAuth, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Set backup info + * @param {string} xTonConnectAuth + * @param {any} body Information for saving backup + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WalletApi + */ + public setWalletBackup( + xTonConnectAuth: string, + body: any, + options?: AxiosRequestConfig, + ) { + return WalletApiFp(this.configuration) + .setWalletBackup(xTonConnectAuth, body, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Account verification and token issuance + * @param {UNKNOWN_BASE_TYPE} uNKNOWNBASETYPE Data that is expected from TON Connect + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WalletApi + */ + public tonConnectProof( + uNKNOWNBASETYPE: UNKNOWN_BASE_TYPE, + options?: AxiosRequestConfig, + ) { + return WalletApiFp(this.configuration) + .tonConnectProof(uNKNOWNBASETYPE, options) + .then((request) => request(this.axios, this.basePath)); + } +} + +/** + * WalletsApi - axios parameter creator + * @export + */ +export const WalletsApiAxiosParamCreator = function ( + configuration?: Configuration, +) { + return { + /** + * Get account seqno + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountSeqno: async ( + accountId: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'accountId' is not null or undefined + assertParamExists('getAccountSeqno', 'accountId', accountId); + const localVarPath = `/v2/wallet/{account_id}/seqno`.replace( + `{${'account_id'}}`, + encodeURIComponent(String(accountId)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get wallets by public key + * @param {string} publicKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWalletsByPublicKey: async ( + publicKey: string, + options: AxiosRequestConfig = {}, + ): Promise => { + // verify required parameter 'publicKey' is not null or undefined + assertParamExists('getWalletsByPublicKey', 'publicKey', publicKey); + const localVarPath = `/v2/pubkeys/{public_key}/wallets`.replace( + `{${'public_key'}}`, + encodeURIComponent(String(publicKey)), + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + }; +}; + +/** + * WalletsApi - functional programming interface + * @export + */ +export const WalletsApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = WalletsApiAxiosParamCreator(configuration); + return { + /** + * Get account seqno + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAccountSeqno( + accountId: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAccountSeqno( + accountId, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + /** + * Get wallets by public key + * @param {string} publicKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getWalletsByPublicKey( + publicKey: string, + options?: AxiosRequestConfig, + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.getWalletsByPublicKey( + publicKey, + options, + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration, + ); + }, + }; +}; + +/** + * WalletsApi - factory interface + * @export + */ +export const WalletsApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance, +) { + const localVarFp = WalletsApiFp(configuration); + return { + /** + * Get account seqno + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAccountSeqno(accountId: string, options?: any): AxiosPromise { + return localVarFp + .getAccountSeqno(accountId, options) + .then((request) => request(axios, basePath)); + }, + /** + * Get wallets by public key + * @param {string} publicKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWalletsByPublicKey( + publicKey: string, + options?: any, + ): AxiosPromise { + return localVarFp + .getWalletsByPublicKey(publicKey, options) + .then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * WalletsApi - object-oriented interface + * @export + * @class WalletsApi + * @extends {BaseAPI} + */ +export class WalletsApi extends BaseAPI { + /** + * Get account seqno + * @param {string} accountId account ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WalletsApi + */ + public getAccountSeqno(accountId: string, options?: AxiosRequestConfig) { + return WalletsApiFp(this.configuration) + .getAccountSeqno(accountId, options) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Get wallets by public key + * @param {string} publicKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WalletsApi + */ + public getWalletsByPublicKey( + publicKey: string, + options?: AxiosRequestConfig, + ) { + return WalletsApiFp(this.configuration) + .getWalletsByPublicKey(publicKey, options) + .then((request) => request(this.axios, this.basePath)); + } +} diff --git a/data/mini_app/wallet/src/api/tonapi/generated/base.ts b/data/mini_app/wallet/src/api/tonapi/generated/base.ts new file mode 100644 index 0000000000..e504fb0652 --- /dev/null +++ b/data/mini_app/wallet/src/api/tonapi/generated/base.ts @@ -0,0 +1,80 @@ +/* tslint:disable */ + +/* eslint-disable */ + +/** + * REST api to TON blockchain explorer + * Provide access to indexed TON blockchain + * + * The version of the OpenAPI document: 2.0.0 + * Contact: support@tonkeeper.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +// Some imports not used depending on template conditions +// @ts-ignore +import globalAxios, { + AxiosInstance, + AxiosPromise, + AxiosRequestConfig, +} from 'axios'; + +import { Configuration } from './configuration'; + +export const BASE_PATH = 'https://tonapi.io'.replace(/\/+$/, ''); + +/** + * + * @export + */ +export const COLLECTION_FORMATS = { + csv: ',', + ssv: ' ', + tsv: '\t', + pipes: '|', +}; + +/** + * + * @export + * @interface RequestArgs + */ +export interface RequestArgs { + url: string; + options: AxiosRequestConfig; +} + +/** + * + * @export + * @class BaseAPI + */ +export class BaseAPI { + protected configuration: Configuration | undefined; + + constructor( + configuration?: Configuration, + protected basePath: string = BASE_PATH, + protected axios: AxiosInstance = globalAxios, + ) { + if (configuration) { + this.configuration = configuration; + this.basePath = configuration.basePath || this.basePath; + } + } +} + +/** + * + * @export + * @class RequiredError + * @extends {Error} + */ +export class RequiredError extends Error { + name: 'RequiredError' = 'RequiredError'; + constructor(public field: string, msg?: string) { + super(msg); + } +} diff --git a/data/mini_app/wallet/src/api/tonapi/generated/common.ts b/data/mini_app/wallet/src/api/tonapi/generated/common.ts new file mode 100644 index 0000000000..a5317f3b4d --- /dev/null +++ b/data/mini_app/wallet/src/api/tonapi/generated/common.ts @@ -0,0 +1,183 @@ +/* tslint:disable */ + +/* eslint-disable */ + +/** + * REST api to TON blockchain explorer + * Provide access to indexed TON blockchain + * + * The version of the OpenAPI document: 2.0.0 + * Contact: support@tonkeeper.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { AxiosInstance, AxiosResponse } from 'axios'; + +import { RequestArgs, RequiredError } from './base'; +import { Configuration } from './configuration'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com'; + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function ( + functionName: string, + paramName: string, + paramValue: unknown, +) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError( + paramName, + `Required parameter ${paramName} was null or undefined when calling ${functionName}.`, + ); + } +}; + +/** + * + * @export + */ +export const setApiKeyToObject = async function ( + object: any, + keyParamName: string, + configuration?: Configuration, +) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = + typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +}; + +/** + * + * @export + */ +export const setBasicAuthToObject = function ( + object: any, + configuration?: Configuration, +) { + if (configuration && (configuration.username || configuration.password)) { + object['auth'] = { + username: configuration.username, + password: configuration.password, + }; + } +}; + +/** + * + * @export + */ +export const setBearerAuthToObject = async function ( + object: any, + configuration?: Configuration, +) { + if (configuration && configuration.accessToken) { + const accessToken = + typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object['Authorization'] = 'Bearer ' + accessToken; + } +}; + +/** + * + * @export + */ +export const setOAuthToObject = async function ( + object: any, + name: string, + scopes: string[], + configuration?: Configuration, +) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = + typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object['Authorization'] = 'Bearer ' + localVarAccessTokenValue; + } +}; + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + if (Array.isArray(object[key])) { + searchParams.delete(key); + for (const item of object[key]) { + searchParams.append(key, item); + } + } else { + searchParams.set(key, object[key]); + } + } + } + url.search = searchParams.toString(); +}; + +/** + * + * @export + */ +export const serializeDataIfNeeded = function ( + value: any, + requestOptions: any, + configuration?: Configuration, +) { + const nonString = typeof value !== 'string'; + const needsSerialization = + nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : value || ''; +}; + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash; +}; + +/** + * + * @export + */ +export const createRequestFunction = function ( + axiosArgs: RequestArgs, + globalAxios: AxiosInstance, + BASE_PATH: string, + configuration?: Configuration, +) { + return >( + axios: AxiosInstance = globalAxios, + basePath: string = BASE_PATH, + ) => { + const axiosRequestArgs = { + ...axiosArgs.options, + url: (configuration?.basePath || basePath) + axiosArgs.url, + }; + return axios.request(axiosRequestArgs); + }; +}; diff --git a/data/mini_app/wallet/src/api/tonapi/generated/configuration.ts b/data/mini_app/wallet/src/api/tonapi/generated/configuration.ts new file mode 100644 index 0000000000..4db8d33ea2 --- /dev/null +++ b/data/mini_app/wallet/src/api/tonapi/generated/configuration.ts @@ -0,0 +1,123 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * REST api to TON blockchain explorer + * Provide access to indexed TON blockchain + * + * The version of the OpenAPI document: 2.0.0 + * Contact: support@tonkeeper.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +export interface ConfigurationParameters { + apiKey?: + | string + | Promise + | ((name: string) => string) + | ((name: string) => Promise); + username?: string; + password?: string; + accessToken?: + | string + | Promise + | ((name?: string, scopes?: string[]) => string) + | ((name?: string, scopes?: string[]) => Promise); + basePath?: string; + baseOptions?: any; + formDataCtor?: new () => any; +} + +export class Configuration { + /** + * parameter for apiKey security + * @param name security name + * @memberof Configuration + */ + apiKey?: + | string + | Promise + | ((name: string) => string) + | ((name: string) => Promise); + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + username?: string; + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + password?: string; + /** + * parameter for oauth2 security + * @param name security name + * @param scopes oauth2 scope + * @memberof Configuration + */ + accessToken?: + | string + | Promise + | ((name?: string, scopes?: string[]) => string) + | ((name?: string, scopes?: string[]) => Promise); + /** + * override base path + * + * @type {string} + * @memberof Configuration + */ + basePath?: string; + /** + * base options for axios calls + * + * @type {any} + * @memberof Configuration + */ + baseOptions?: any; + /** + * The FormData constructor that will be used to create multipart form data + * requests. You can inject this here so that execution environments that + * do not support the FormData class can still run the generated client. + * + * @type {new () => FormData} + */ + formDataCtor?: new () => any; + + constructor(param: ConfigurationParameters = {}) { + this.apiKey = param.apiKey; + this.username = param.username; + this.password = param.password; + this.accessToken = param.accessToken; + this.basePath = param.basePath; + this.baseOptions = param.baseOptions; + this.formDataCtor = param.formDataCtor; + } + + /** + * Check if the given MIME is a JSON MIME. + * JSON MIME examples: + * application/json + * application/json; charset=UTF8 + * APPLICATION/JSON + * application/vnd.company+json + * @param mime - MIME (Multipurpose Internet Mail Extensions) + * @return True if the given MIME is JSON, false otherwise. + */ + public isJsonMime(mime: string): boolean { + const jsonMime: RegExp = new RegExp( + '^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$', + 'i', + ); + return ( + mime !== null && + (jsonMime.test(mime) || + mime.toLowerCase() === 'application/json-patch+json') + ); + } +} diff --git a/data/mini_app/wallet/src/api/tonapi/index.ts b/data/mini_app/wallet/src/api/tonapi/index.ts new file mode 100644 index 0000000000..b3071715ed --- /dev/null +++ b/data/mini_app/wallet/src/api/tonapi/index.ts @@ -0,0 +1,61 @@ +import { captureException } from '@sentry/react'; +import axios, { AxiosRequestConfig } from 'axios'; + +import { + AccountsApi, + BlockchainApi, + Configuration, + ConnectApi, + DNSApi, + EmulationApi, + EventsApi, + JettonsApi, + NFTApi, + RatesApi, + StakingApi, + StorageApi, + TracesApi, + WalletApi, +} from './generated'; + +const axiosInstance = axios.create(); +const config = { + basePath: 'https://tonapi.io', + isJsonMime: new Configuration().isJsonMime, +}; + +const API = { + Accounts: new AccountsApi(config, '', axiosInstance), + Blockchain: new BlockchainApi(config, '', axiosInstance), + Connect: new ConnectApi(config, '', axiosInstance), + DNS: new DNSApi(config, '', axiosInstance), + Events: new EventsApi(config, '', axiosInstance), + Emulation: new EmulationApi(config, '', axiosInstance), + Jettons: new JettonsApi(config, '', axiosInstance), + NFT: new NFTApi(config, '', axiosInstance), + Rates: new RatesApi(config, '', axiosInstance), + Staking: new StakingApi(config, '', axiosInstance), + Storage: new StorageApi(config, '', axiosInstance), + Traces: new TracesApi(config, '', axiosInstance), + Wallet: new WalletApi(config, '', axiosInstance), +}; + +axiosInstance.interceptors.request.use( + (config: AxiosRequestConfig): AxiosRequestConfig => { + return { + ...config, + headers: { + ...config.headers, + Authorization: + 'Bearer AFKHERANWTOVP2QAAAAFE43CBWITJAM6VFIR2EEREIYXPD6REN4UF7Q3ZLRI347TFZFFZLI', + }, + }; + }, +); +axiosInstance.interceptors.response.use(undefined, (error) => { + captureException( + `TonApi API error. URL: ${error.config.url}. STATUS: ${error.response.status}`, + ); +}); + +export default API; diff --git a/data/mini_app/wallet/src/api/wpay/generated/api.ts b/data/mini_app/wallet/src/api/wpay/generated/api.ts new file mode 100644 index 0000000000..3446723586 --- /dev/null +++ b/data/mini_app/wallet/src/api/wpay/generated/api.ts @@ -0,0 +1,573 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Wallet-Pay + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: DEVELOPMENT + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from './configuration'; +import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; +// Some imports not used depending on template conditions +// @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore +import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; + +/** + * + * @export + * @interface InitiatePaymentRestRequest + */ +export interface InitiatePaymentRestRequest { + /** + * The string representation of Java long value. + * @type {string} + * @memberof InitiatePaymentRestRequest + */ + 'orderId': string; + /** + * + * @type {string} + * @memberof InitiatePaymentRestRequest + */ + 'telegramBotUsername'?: string; +} +/** + * + * @export + * @interface MoneyAmountDto + */ +export interface MoneyAmountDto { + /** + * + * @type {string} + * @memberof MoneyAmountDto + */ + 'currencyCode': string; + /** + * + * @type {string} + * @memberof MoneyAmountDto + */ + 'amount': string; +} +/** + * Response payload, present if status is SUCCESS + * @export + * @interface OrderPaymentDto + */ +export interface OrderPaymentDto { + /** + * The string representation of Java long value. + * @type {string} + * @memberof OrderPaymentDto + */ + 'id': string; + /** + * + * @type {string} + * @memberof OrderPaymentDto + */ + 'status': OrderPaymentDtoStatusEnum; + /** + * + * @type {string} + * @memberof OrderPaymentDto + */ + 'number': string; + /** + * + * @type {MoneyAmountDto} + * @memberof OrderPaymentDto + */ + 'amount': MoneyAmountDto; + /** + * + * @type {string} + * @memberof OrderPaymentDto + */ + 'storeName': string; + /** + * The string representation of Java long value. + * @type {string} + * @memberof OrderPaymentDto + */ + 'storeId': string; + /** + * + * @type {string} + * @memberof OrderPaymentDto + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof OrderPaymentDto + */ + 'expirationDateTime': string; + /** + * + * @type {string} + * @memberof OrderPaymentDto + */ + 'returnUrl'?: string; + /** + * + * @type {PaymentDto} + * @memberof OrderPaymentDto + */ + 'currentPayment'?: PaymentDto; +} + +export const OrderPaymentDtoStatusEnum = { + Active: 'ACTIVE', + Expired: 'EXPIRED', + Paid: 'PAID', + Cancelled: 'CANCELLED' +} as const; + +export type OrderPaymentDtoStatusEnum = typeof OrderPaymentDtoStatusEnum[keyof typeof OrderPaymentDtoStatusEnum]; + +/** + * + * @export + * @interface PaymentDto + */ +export interface PaymentDto { + /** + * The string representation of Java long value. + * @type {string} + * @memberof PaymentDto + */ + 'id': string; + /** + * + * @type {string} + * @memberof PaymentDto + */ + 'status': PaymentDtoStatusEnum; + /** + * + * @type {string} + * @memberof PaymentDto + */ + 'createdDateTime': string; + /** + * + * @type {string} + * @memberof PaymentDto + */ + 'paymentDueDateTime': string; + /** + * + * @type {Array} + * @memberof PaymentDto + */ + 'paymentOptions': Array; +} + +export const PaymentDtoStatusEnum = { + Created: 'CREATED', + Expired: 'EXPIRED', + Paying: 'PAYING', + Failed: 'FAILED', + Paid: 'PAID', + ReadyForPayout: 'READY_FOR_PAYOUT' +} as const; + +export type PaymentDtoStatusEnum = typeof PaymentDtoStatusEnum[keyof typeof PaymentDtoStatusEnum]; + +/** + * + * @export + * @interface PaymentOptionDto + */ +export interface PaymentOptionDto { + /** + * + * @type {MoneyAmountDto} + * @memberof PaymentOptionDto + */ + 'amount': MoneyAmountDto; + /** + * + * @type {string} + * @memberof PaymentOptionDto + */ + 'exchangeRate': string; +} +/** + * + * @export + * @interface ProceedPaymentRestRequest + */ +export interface ProceedPaymentRestRequest { + /** + * The string representation of Java long value. + * @type {string} + * @memberof ProceedPaymentRestRequest + */ + 'orderId': string; + /** + * + * @type {string} + * @memberof ProceedPaymentRestRequest + */ + 'telegramBotUsername'?: string; + /** + * The string representation of Java long value. + * @type {string} + * @memberof ProceedPaymentRestRequest + */ + 'paymentId': string; + /** + * + * @type {string} + * @memberof ProceedPaymentRestRequest + */ + 'currencyCode': string; +} +/** + * + * @export + * @interface RestDataResponseGetPaymentStatusPaymentDto + */ +export interface RestDataResponseGetPaymentStatusPaymentDto { + /** + * Operation result status, always present + * @type {string} + * @memberof RestDataResponseGetPaymentStatusPaymentDto + */ + 'status': RestDataResponseGetPaymentStatusPaymentDtoStatusEnum; + /** + * Verbose reason of non-success result + * @type {string} + * @memberof RestDataResponseGetPaymentStatusPaymentDto + */ + 'message'?: string; + /** + * + * @type {PaymentDto} + * @memberof RestDataResponseGetPaymentStatusPaymentDto + */ + 'data'?: PaymentDto; +} + +export const RestDataResponseGetPaymentStatusPaymentDtoStatusEnum = { + Success: 'SUCCESS', + AccessDenied: 'ACCESS_DENIED' +} as const; + +export type RestDataResponseGetPaymentStatusPaymentDtoStatusEnum = typeof RestDataResponseGetPaymentStatusPaymentDtoStatusEnum[keyof typeof RestDataResponseGetPaymentStatusPaymentDtoStatusEnum]; + +/** + * + * @export + * @interface RestDataResponseInitiatePaymentStatusOrderPaymentDto + */ +export interface RestDataResponseInitiatePaymentStatusOrderPaymentDto { + /** + * Operation result status, always present + * @type {string} + * @memberof RestDataResponseInitiatePaymentStatusOrderPaymentDto + */ + 'status': RestDataResponseInitiatePaymentStatusOrderPaymentDtoStatusEnum; + /** + * Verbose reason of non-success result + * @type {string} + * @memberof RestDataResponseInitiatePaymentStatusOrderPaymentDto + */ + 'message'?: string; + /** + * + * @type {OrderPaymentDto} + * @memberof RestDataResponseInitiatePaymentStatusOrderPaymentDto + */ + 'data'?: OrderPaymentDto; +} + +export const RestDataResponseInitiatePaymentStatusOrderPaymentDtoStatusEnum = { + Success: 'SUCCESS', + NotActiveOrder: 'NOT_ACTIVE_ORDER', + AccessDenied: 'ACCESS_DENIED', + PayerIsNotOrderCustomer: 'PAYER_IS_NOT_ORDER_CUSTOMER', + TelegramBotUsernameMismatch: 'TELEGRAM_BOT_USERNAME_MISMATCH' +} as const; + +export type RestDataResponseInitiatePaymentStatusOrderPaymentDtoStatusEnum = typeof RestDataResponseInitiatePaymentStatusOrderPaymentDtoStatusEnum[keyof typeof RestDataResponseInitiatePaymentStatusOrderPaymentDtoStatusEnum]; + +/** + * + * @export + * @interface RestResponseProceedPaymentStatus + */ +export interface RestResponseProceedPaymentStatus { + /** + * Operation result status, always present + * @type {string} + * @memberof RestResponseProceedPaymentStatus + */ + 'status': RestResponseProceedPaymentStatusStatusEnum; + /** + * Verbose reason of non-success result + * @type {string} + * @memberof RestResponseProceedPaymentStatus + */ + 'message'?: string; +} + +export const RestResponseProceedPaymentStatusStatusEnum = { + Success: 'SUCCESS', + Unknown: 'UNKNOWN', + Expired: 'EXPIRED', + Failed: 'FAILED', + AccessDenied: 'ACCESS_DENIED', + PayerIsNotOrderCustomer: 'PAYER_IS_NOT_ORDER_CUSTOMER', + TelegramBotUsernameMismatch: 'TELEGRAM_BOT_USERNAME_MISMATCH' +} as const; + +export type RestResponseProceedPaymentStatusStatusEnum = typeof RestResponseProceedPaymentStatusStatusEnum[keyof typeof RestResponseProceedPaymentStatusStatusEnum]; + + +/** + * PaymentApi - axios parameter creator + * @export + */ +export const PaymentApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * + * @param {string} paymentId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPayment: async (paymentId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'paymentId' is not null or undefined + assertParamExists('getPayment', 'paymentId', paymentId) + const localVarPath = `/wpay/public-api/v1/payment/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (paymentId !== undefined) { + localVarQueryParameter['payment-id'] = paymentId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * + * @param {InitiatePaymentRestRequest} initiatePaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + initiatePayment: async (initiatePaymentRestRequest: InitiatePaymentRestRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'initiatePaymentRestRequest' is not null or undefined + assertParamExists('initiatePayment', 'initiatePaymentRestRequest', initiatePaymentRestRequest) + const localVarPath = `/wpay/public-api/v1/payment/initiate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(initiatePaymentRestRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * + * @param {ProceedPaymentRestRequest} proceedPaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + proceedPayment: async (proceedPaymentRestRequest: ProceedPaymentRestRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'proceedPaymentRestRequest' is not null or undefined + assertParamExists('proceedPayment', 'proceedPaymentRestRequest', proceedPaymentRestRequest) + const localVarPath = `/wpay/public-api/v1/payment/pay`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(proceedPaymentRestRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * PaymentApi - functional programming interface + * @export + */ +export const PaymentApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PaymentApiAxiosParamCreator(configuration) + return { + /** + * + * @param {string} paymentId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getPayment(paymentId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPayment(paymentId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * + * @param {InitiatePaymentRestRequest} initiatePaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async initiatePayment(initiatePaymentRestRequest: InitiatePaymentRestRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.initiatePayment(initiatePaymentRestRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * + * @param {ProceedPaymentRestRequest} proceedPaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async proceedPayment(proceedPaymentRestRequest: ProceedPaymentRestRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.proceedPayment(proceedPaymentRestRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * PaymentApi - factory interface + * @export + */ +export const PaymentApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PaymentApiFp(configuration) + return { + /** + * + * @param {string} paymentId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPayment(paymentId: string, options?: any): AxiosPromise { + return localVarFp.getPayment(paymentId, options).then((request) => request(axios, basePath)); + }, + /** + * + * @param {InitiatePaymentRestRequest} initiatePaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + initiatePayment(initiatePaymentRestRequest: InitiatePaymentRestRequest, options?: any): AxiosPromise { + return localVarFp.initiatePayment(initiatePaymentRestRequest, options).then((request) => request(axios, basePath)); + }, + /** + * + * @param {ProceedPaymentRestRequest} proceedPaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + proceedPayment(proceedPaymentRestRequest: ProceedPaymentRestRequest, options?: any): AxiosPromise { + return localVarFp.proceedPayment(proceedPaymentRestRequest, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * PaymentApi - object-oriented interface + * @export + * @class PaymentApi + * @extends {BaseAPI} + */ +export class PaymentApi extends BaseAPI { + /** + * + * @param {string} paymentId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PaymentApi + */ + public getPayment(paymentId: string, options?: AxiosRequestConfig) { + return PaymentApiFp(this.configuration).getPayment(paymentId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * + * @param {InitiatePaymentRestRequest} initiatePaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PaymentApi + */ + public initiatePayment(initiatePaymentRestRequest: InitiatePaymentRestRequest, options?: AxiosRequestConfig) { + return PaymentApiFp(this.configuration).initiatePayment(initiatePaymentRestRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * + * @param {ProceedPaymentRestRequest} proceedPaymentRestRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PaymentApi + */ + public proceedPayment(proceedPaymentRestRequest: ProceedPaymentRestRequest, options?: AxiosRequestConfig) { + return PaymentApiFp(this.configuration).proceedPayment(proceedPaymentRestRequest, options).then((request) => request(this.axios, this.basePath)); + } +} + + diff --git a/data/mini_app/wallet/src/api/wpay/generated/base.ts b/data/mini_app/wallet/src/api/wpay/generated/base.ts new file mode 100644 index 0000000000..9183b3b0cc --- /dev/null +++ b/data/mini_app/wallet/src/api/wpay/generated/base.ts @@ -0,0 +1,71 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Wallet-Pay + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: DEVELOPMENT + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +// Some imports not used depending on template conditions +// @ts-ignore +import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; + +export const BASE_PATH = "http://localhost:17005".replace(/\/+$/, ""); + +/** + * + * @export + */ +export const COLLECTION_FORMATS = { + csv: ",", + ssv: " ", + tsv: "\t", + pipes: "|", +}; + +/** + * + * @export + * @interface RequestArgs + */ +export interface RequestArgs { + url: string; + options: AxiosRequestConfig; +} + +/** + * + * @export + * @class BaseAPI + */ +export class BaseAPI { + protected configuration: Configuration | undefined; + + constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) { + if (configuration) { + this.configuration = configuration; + this.basePath = configuration.basePath || this.basePath; + } + } +}; + +/** + * + * @export + * @class RequiredError + * @extends {Error} + */ +export class RequiredError extends Error { + name: "RequiredError" = "RequiredError"; + constructor(public field: string, msg?: string) { + super(msg); + } +} diff --git a/data/mini_app/wallet/src/api/wpay/generated/common.ts b/data/mini_app/wallet/src/api/wpay/generated/common.ts new file mode 100644 index 0000000000..7a9e007a7a --- /dev/null +++ b/data/mini_app/wallet/src/api/wpay/generated/common.ts @@ -0,0 +1,148 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Wallet-Pay + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: DEVELOPMENT + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance, AxiosResponse } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +function setFlattenedQueryParams(urlSearchParams: URLSearchParams, parameter: any, key: string = ""): void { + if (typeof parameter === "object") { + if (Array.isArray(parameter)) { + (parameter as any[]).forEach(item => setFlattenedQueryParams(urlSearchParams, item, key)); + } + else { + Object.keys(parameter).forEach(currentKey => + setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`) + ); + } + } + else { + if (urlSearchParams.has(key)) { + urlSearchParams.append(key, parameter); + } + else { + urlSearchParams.set(key, parameter); + } + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + setFlattenedQueryParams(searchParams, objects); + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return >(axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/data/mini_app/wallet/src/api/wpay/index.ts b/data/mini_app/wallet/src/api/wpay/index.ts new file mode 100644 index 0000000000..f7f9260e6c --- /dev/null +++ b/data/mini_app/wallet/src/api/wpay/index.ts @@ -0,0 +1,37 @@ +import { captureException } from '@sentry/react'; +import axios from 'axios'; + +import { interceptors } from 'api/interceptors'; + +import { config as appConfig } from 'config'; + +import { PaymentApi } from './generated'; + +const axiosInstance = axios.create(); + +const config = { + basePath: `https://${appConfig.apiHost}`, + isJsonMime: () => false, +}; + +const API = { + Payment: new PaymentApi(config, '', axiosInstance), +}; + +const { onRequest, onResponseError } = interceptors({ + customErrorHandler: (error) => { + if (error?.response?.status && error.response.status >= 400) { + captureException( + `WPay API error. URL: ${error.config.url}. STATUS: ${error.response.status}`, + ); + } + return Promise.reject(error); + }, +}); + +axiosInstance.interceptors.request.use(onRequest); +axiosInstance.interceptors.response.use(undefined, (error) => + onResponseError(error, axiosInstance), +); + +export default API; diff --git a/data/mini_app/wallet/src/components/AvatarSkeleton/AvatarSkeleton.module.scss7673 b/data/mini_app/wallet/src/components/AvatarSkeleton/AvatarSkeleton.module.scss7673 new file mode 100644 index 0000000000..f9d16b6a0f --- /dev/null +++ b/data/mini_app/wallet/src/components/AvatarSkeleton/AvatarSkeleton.module.scss7673 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"Uqr5"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/AvatarSkeleton/AvatarSkeleton.tsx b/data/mini_app/wallet/src/components/AvatarSkeleton/AvatarSkeleton.tsx new file mode 100644 index 0000000000..08c0d5d737 --- /dev/null +++ b/data/mini_app/wallet/src/components/AvatarSkeleton/AvatarSkeleton.tsx @@ -0,0 +1,24 @@ +import classNames from 'classnames'; +import { FC } from 'react'; + +import styles from './AvatarSkeleton.module.scss'; + +export interface AvatarProps { + size?: number; + + className?: string; +} + +const AvatarSkeleton: FC = ({ size = 40, className }) => { + return ( +
+ ); +}; + +export { AvatarSkeleton }; diff --git a/data/mini_app/wallet/src/components/Checkmark/CheckmarkLottie.tsx b/data/mini_app/wallet/src/components/Checkmark/CheckmarkLottie.tsx new file mode 100644 index 0000000000..f0ff124dbc --- /dev/null +++ b/data/mini_app/wallet/src/components/Checkmark/CheckmarkLottie.tsx @@ -0,0 +1,67 @@ +import classNames from 'classnames'; +import Lottie, { LottieRefCurrentProps } from 'lottie-react'; +import { FC, useEffect, useRef } from 'react'; + +import { useTheme } from 'hooks/utils/useTheme'; + +import { useDidUpdate } from '../../hooks/utils/useDidUpdate'; +import styles from './Checkmark.module.scss'; +import CheckmarkFallback from './CheckmarkFallback'; +import CheckboxAndroidAnimationData from './checkbox_android.json'; +import CheckboxIosAnimationData from './checkbox_ios.json'; +import RadioAndroidAnimationData from './radio_android.json'; +import RadioIosAnimationData from './radio_ios.json'; + +const CheckmarkLottie: FC<{ + checked?: boolean; + mode?: 'radio' | 'checkbox'; +}> = ({ checked, mode = 'radio' }) => { + const { theme, themeClassName } = useTheme(styles); + const ref = useRef(null); + + useDidUpdate(() => { + if (checked) { + ref.current?.goToAndPlay(3, true); + } else { + ref.current?.stop(); + } + }, [checked]); + + useEffect(() => { + if (checked) { + ref.current?.goToAndStop(29, true); + } + }, []); + + let data; + + if (theme === 'material') { + data = + mode === 'radio' + ? RadioAndroidAnimationData + : CheckboxAndroidAnimationData; + } else { + data = mode === 'radio' ? RadioIosAnimationData : CheckboxIosAnimationData; + } + + if (!checked) { + return ; + } + + return ( + + ); +}; + +export default CheckmarkLottie; diff --git a/data/mini_app/wallet/src/components/CroppingText/CroppingText.module.scss1697 b/data/mini_app/wallet/src/components/CroppingText/CroppingText.module.scss1697 new file mode 100644 index 0000000000..0db4eba859 --- /dev/null +++ b/data/mini_app/wallet/src/components/CroppingText/CroppingText.module.scss1697 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"anCB","text":"LTVr"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CroppingText/CroppingText.tsx b/data/mini_app/wallet/src/components/CroppingText/CroppingText.tsx new file mode 100644 index 0000000000..e2330fc797 --- /dev/null +++ b/data/mini_app/wallet/src/components/CroppingText/CroppingText.tsx @@ -0,0 +1,19 @@ +import classNames from 'classnames'; +import { ComponentProps, forwardRef } from 'react'; + +import styles from './CroppingText.module.scss'; + +type Props = { + value: string; + languageCode: string; +} & ComponentProps<'div'>; + +export const CroppingText = forwardRef( + ({ value, children, className, ...props }, ref) => { + return ( +
+
{value}
{children} +
+ ); + }, +); diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/FlagIcon.tsx b/data/mini_app/wallet/src/components/CurrencyFlagIcon/FlagIcon.tsx new file mode 100644 index 0000000000..d1ed617b2e --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/FlagIcon.tsx @@ -0,0 +1,111 @@ +import { forwardRef } from 'react'; + +import { FiatCurrency } from 'api/wallet/generated'; + +import { ReactComponent as AedLogo } from './icons/AED.svg'; +import { ReactComponent as AmdLogo } from './icons/AMD.svg'; +import { ReactComponent as ArsLogo } from './icons/ARS.svg'; +import { ReactComponent as AudLogo } from './icons/AUD.svg'; +import { ReactComponent as AznLogo } from './icons/AZN.svg'; +import { ReactComponent as BgnLogo } from './icons/BGN.svg'; +import { ReactComponent as BrlLogo } from './icons/BRL.svg'; +import { ReactComponent as BynLogo } from './icons/BYN.svg'; +import { ReactComponent as CadLogo } from './icons/CAD.svg'; +import { ReactComponent as ChfLogo } from './icons/CHF.svg'; +import { ReactComponent as ClpLogo } from './icons/CLP.svg'; +import { ReactComponent as CopLogo } from './icons/COP.svg'; +import { ReactComponent as EgpLogo } from './icons/EGP.svg'; +import { ReactComponent as EurLogo } from './icons/EUR.svg'; +import { ReactComponent as GbpLogo } from './icons/GBP.svg'; +import { ReactComponent as GelLogo } from './icons/GEL.svg'; +import { ReactComponent as GtqLogo } from './icons/GTQ.svg'; +import { ReactComponent as HkdLogo } from './icons/HKD.svg'; +import { ReactComponent as IdrLogo } from './icons/IDR.svg'; +import { ReactComponent as IlsLogo } from './icons/ILS.svg'; +import { ReactComponent as InrLogo } from './icons/INR.svg'; +import { ReactComponent as JpyLogo } from './icons/JPY.svg'; +import { ReactComponent as KrwLogo } from './icons/KRW.svg'; +import { ReactComponent as KztLogo } from './icons/KZT.svg'; +import { ReactComponent as MdlLogo } from './icons/MDL.svg'; +import { ReactComponent as MxnLogo } from './icons/MXN.svg'; +import { ReactComponent as MyrLogo } from './icons/MYR.svg'; +import { ReactComponent as NokLogo } from './icons/NOK.svg'; +import { ReactComponent as NzdLogo } from './icons/NZD.svg'; +import { ReactComponent as PlnLogo } from './icons/PLN.svg'; +import { ReactComponent as RonLogo } from './icons/RON.svg'; +import { ReactComponent as RsdLogo } from './icons/RSD.svg'; +import { ReactComponent as RubLogo } from './icons/RUB.svg'; +import { ReactComponent as SarLogo } from './icons/SAR.svg'; +import { ReactComponent as SekLogo } from './icons/SEK.svg'; +import { ReactComponent as SgdLogo } from './icons/SGD.svg'; +import { ReactComponent as TryLogo } from './icons/TRY.svg'; +import { ReactComponent as TwdLogo } from './icons/TWD.svg'; +import { ReactComponent as UahLogo } from './icons/UAH.svg'; +import { ReactComponent as UsdLogo } from './icons/USD.svg'; +import { ReactComponent as DefaultLogo } from './icons/default.svg'; + +const CURRENCY_TO_FLAG: Record< + FiatCurrency, + React.FC> +> = { + USD: UsdLogo, + EUR: EurLogo, + GBP: GbpLogo, + RUB: RubLogo, + UAH: UahLogo, + TRY: TryLogo, + AED: AedLogo, + KZT: KztLogo, + BYN: BynLogo, + ILS: IlsLogo, + GEL: GelLogo, + HKD: HkdLogo, + TWD: TwdLogo, + KRW: KrwLogo, + INR: InrLogo, + CAD: CadLogo, + AMD: AmdLogo, + AUD: AudLogo, + PLN: PlnLogo, + COP: CopLogo, + BRL: BrlLogo, + CHF: ChfLogo, + MXN: MxnLogo, + ARS: ArsLogo, + SGD: SgdLogo, + SAR: SarLogo, + JPY: JpyLogo, + RON: RonLogo, + SEK: SekLogo, + AZN: AznLogo, + RSD: RsdLogo, + IDR: IdrLogo, + NOK: NokLogo, + MYR: MyrLogo, + BGN: BgnLogo, + EGP: EgpLogo, + GTQ: GtqLogo, + CLP: ClpLogo, + NZD: NzdLogo, + MDL: MdlLogo, + BDT: DefaultLogo, + KGS: DefaultLogo, + THB: DefaultLogo, + UZS: DefaultLogo, + VND: DefaultLogo, +} as const; + +const FlagIcon = forwardRef< + SVGSVGElement, + { + currency: FiatCurrency; + } +>(({ currency, ...props }, ref) => { + const Component = CURRENCY_TO_FLAG[currency]; + + if (!Component) return null; + + return ; +}); + +export default FlagIcon; diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AED.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AED.svg new file mode 100644 index 0000000000..c75244e09b --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AED.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgAed = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M49.23 0H13.847v13.846h41.539V6.154A6.154 6.154 0 0 0 49.23 0Z", + fill: "#068241" +}), /*#__PURE__*/React.createElement("path", { + d: "M13.846 13.846h41.539v12.308H13.846V13.846Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M13.846 40h35.385a6.154 6.154 0 0 0 6.154-6.154v-7.692H13.846V40Z", + fill: "#141414" +}), /*#__PURE__*/React.createElement("path", { + d: "M6.154 0A6.154 6.154 0 0 0 0 6.154v27.692A6.154 6.154 0 0 0 6.154 40h7.692V0H6.154Z", + fill: "#EC2028" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgAed); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AMD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AMD.svg new file mode 100644 index 0000000000..fa26feab00 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AMD.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgAmd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v6.154h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#D90012" +}), /*#__PURE__*/React.createElement("path", { + d: "M-1.538 40h43.077a6.154 6.154 0 0 0 6.153-6.154v-6.154H-7.692v6.154A6.154 6.154 0 0 0-1.538 40Z", + fill: "#F2A800" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 12.308h55.384v15.384H-7.692V12.308Z", + fill: "#0033A0" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgAmd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/ARS.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/ARS.svg new file mode 100644 index 0000000000..e5f783008f --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/ARS.svg @@ -0,0 +1,55 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgArs = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M47.692 33.846A6.154 6.154 0 0 1 41.538 40H-1.538a6.154 6.154 0 0 1-6.154-6.154V6.154A6.154 6.154 0 0 1-1.538 0h43.077a6.154 6.154 0 0 1 6.153 6.154v27.692Z", + fill: "#75AADB" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 12.308h55.384v15.384H-7.692V12.308Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "m20 12.308.75 3.92 2.195-3.334-.808 3.908 3.302-2.242-2.242 3.303 3.91-.806-3.335 2.192 3.92.751-3.92.75 3.334 2.195-3.91-.808 2.242 3.301-3.301-2.241.808 3.91-2.194-3.335-.751 3.92-.75-3.92-2.193 3.334.806-3.91-3.303 2.242 2.242-3.301-3.908.808 3.334-2.194-3.92-.751 3.92-.75-3.334-2.193 3.908.806-2.242-3.303 3.303 2.242-.806-3.908 2.192 3.334.751-3.92Z", + fill: "#FCBF49" +}), /*#__PURE__*/React.createElement("path", { + d: "m20 14.354.372 1.946.179.93.521-.79 1.09-1.655-.402 1.94-.192.929.784-.532 1.64-1.113-1.112 1.64-.532.785.927-.193 1.942-.4-1.655 1.09-.793.518.931.179 1.946.372-1.946.372-.93.179.79.521 1.655 1.09-1.941-.402-.93-.192.533.784 1.112 1.639-1.638-1.113-.785-.532.193.93.401 1.94-1.09-1.655-.52-.792-.178.931L20 25.646l-.372-1.946-.179-.93-.521.791-1.09 1.656.4-1.942.193-.927-.785.532-1.64 1.112 1.113-1.64.532-.784-.93.192-1.94.401 1.656-1.089.79-.521-.93-.179L14.354 20l1.946-.372.93-.179-.791-.521-1.656-1.09 1.94.4.928.193-.532-.785-1.114-1.64 1.64 1.114.784.532-.192-.927-.4-1.94 1.09 1.655.52.792.18-.93.373-1.948Zm0-2.046-.75 3.92-2.193-3.334.806 3.91-3.303-2.242 2.242 3.303-3.908-.807 3.334 2.193-3.92.749 3.92.75-3.334 2.195 3.908-.808-2.242 3.301 3.303-2.241-.806 3.91 2.192-3.335.751 3.92.75-3.92 2.195 3.334-.808-3.91 3.302 2.242-2.242-3.301 3.91.808-3.335-2.194 3.92-.751-3.92-.75 3.334-2.193-3.91.806 2.242-3.303-3.301 2.242.808-3.91-2.194 3.334L20 12.308Z", + fill: "#843511" +}), /*#__PURE__*/React.createElement("path", { + d: "M20 23.077a3.077 3.077 0 1 0 0-6.154 3.077 3.077 0 0 0 0 6.154Z", + fill: "#FCBF49" +}), /*#__PURE__*/React.createElement("path", { + d: "M20 23.27A3.272 3.272 0 0 1 16.73 20 3.272 3.272 0 0 1 20 16.73 3.272 3.272 0 0 1 23.27 20 3.272 3.272 0 0 1 20 23.27Zm0-6.155A2.888 2.888 0 0 0 17.115 20 2.888 2.888 0 0 0 20 22.885 2.888 2.888 0 0 0 22.885 20 2.888 2.888 0 0 0 20 17.115Z", + fill: "#843511" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.694 19.652c0 .239-.402.431-.897.431-.497 0-.899-.192-.899-.43 0-.24.402-.431.899-.431.495 0 .897.192.897.43Zm2.39-.037c0-.247-.41-.449-.915-.449-.504 0-.914.2-.914.45 0 .249.41.449.914.449.506 0 .914-.202.914-.45Z", + fill: "#C16540" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.174 21.345c0-.194.378-.353.843-.353.466 0 .843.157.843.353 0 .193-.378.352-.843.352-.466 0-.843-.159-.843-.352Z", + fill: "#ED8662" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgArs); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AUD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AUD.svg new file mode 100644 index 0000000000..9aba0537b7 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AUD.svg @@ -0,0 +1,49 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgAud = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.23 0H-1.845c-.316 0-.626.023-.93.07l-.006 2.698-4.2-.006A6.13 6.13 0 0 0-8 6.154v27.692A6.154 6.154 0 0 0-1.846 40H41.23a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 41.23 0Z", + fill: "#00247D" +}), /*#__PURE__*/React.createElement("path", { + d: "m5.846 32.343-1.88 1.737.186-2.554-2.53-.386 2.112-1.446-1.276-2.22 2.448.75.94-2.383.942 2.384 2.447-.751-1.277 2.22 2.114 1.446-2.53.386.186 2.554-1.882-1.737ZM35 7.018l-1.23 1.136.122-1.67-1.657-.253 1.383-.946-.833-1.453 1.6.491L35 2.765l.617 1.558 1.602-.49-.836 1.452 1.382.946-1.656.252.122 1.67L35 7.019Zm-6.154 9.231-1.23 1.137.122-1.67-1.657-.253 1.384-.948-.834-1.452 1.6.49.615-1.558.617 1.559 1.602-.49-.836 1.451 1.382.948-1.656.252.122 1.671-1.23-1.137Zm13.846-3.077-1.229 1.137.122-1.67-1.657-.253 1.383-.947-.834-1.453 1.6.49.615-1.558.617 1.559 1.602-.49-.836 1.451 1.382.948-1.656.253.122 1.67-1.23-1.137ZM35 34.711l-1.23 1.137.122-1.671-1.657-.252 1.383-.948-.833-1.452 1.6.49.615-1.558.617 1.558 1.602-.49-.836 1.452 1.382.948-1.656.252.122 1.67L35 34.712Zm4.692-17.788.453.917 1.01.146-.73.712.172 1.008-.905-.475-.904.475.172-1.008-.73-.712 1.01-.146.452-.917Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.23 20V0H-1.845c-.492 0-.93.07-.93.07l-.006 2.698-4.2-.006s-.064.09-.195.315A6.136 6.136 0 0 0-8 6.154V20h29.23Z", + fill: "#00247D" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.23 0h-3.585L10.46 5.03V0H2.77v3.952L-2.775.07c-.945.145-1.831.5-2.573 1.023l7.234 5.062h-2.67L-6.513 2.14c-.17.198-.325.403-.47.622l4.848 3.392H-8v7.692h5.977L-8 18.102V20h5.126l5.643-3.95V20h7.692v-5.03L17.643 20h3.588v-3.122L16.9 13.846h4.33V6.154h-4.329l4.33-3.032V0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M8.923 0H4.308v7.692H-8v4.616H4.308V20h4.615v-7.692h12.308V7.692H8.923V0Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.23 0h-2.247l-8.522 5.968v.186h2.418L21.23.304V0ZM-5.347 1.092c-.432.3-.821.651-1.164 1.048l5.727 4.014h2.67l-7.233-5.062Zm7.251 12.754L-6.87 20h2.657l6.983-4.89v-1.264h-.866Zm19.328 5.85v-1.878l-5.673-3.972h-2.681l8.354 5.85Z", + fill: "#CF1B2B" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-8)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgAud); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AZN.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AZN.svg new file mode 100644 index 0000000000..633fb3261c --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/AZN.svg @@ -0,0 +1,46 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgAzn = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M-7.692 12.308h55.384v15.384H-7.692V12.308Z", + fill: "#E00034" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v6.154h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#0098C3" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.76 25.128a5.127 5.127 0 1 1 3.808-8.562 6.154 6.154 0 1 0 .002 6.868 5.115 5.115 0 0 1-3.81 1.694Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "m28.718 19.997-1.84-.652.837-1.764-1.763.839-.655-1.839-.652 1.84-.005-.002-1.76-.834.84 1.763-1.84.655 1.84.652-.837 1.764 1.756-.836.007-.003.655 1.839.653-1.84 1.764.836-.84-1.763 1.84-.655Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M-1.538 40h43.076a6.154 6.154 0 0 0 6.154-6.154v-6.154H-7.692v6.154A6.154 6.154 0 0 0-1.538 40Z", + fill: "#00AE65" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgAzn); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BGN.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BGN.svg new file mode 100644 index 0000000000..36bfb2baf8 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BGN.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgBgn = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v7.692h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 33.846A6.154 6.154 0 0 0-1.538 40h43.077a6.154 6.154 0 0 0 6.153-6.154v-7.692H-7.692v7.692Z", + fill: "#D62612" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 13.846h55.384v12.308H-7.692V13.846Z", + fill: "#00966E" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgBgn); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BRL.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BRL.svg new file mode 100644 index 0000000000..e82de689a3 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BRL.svg @@ -0,0 +1,52 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgBrl = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M47.692 33.846A6.154 6.154 0 0 1 41.538 40H-1.538a6.154 6.154 0 0 1-6.154-6.154V6.154A6.154 6.154 0 0 1-1.538 0h43.077a6.154 6.154 0 0 1 6.153 6.154v27.692Z", + fill: "#009B3A" +}), /*#__PURE__*/React.createElement("path", { + d: "M42.658 20 20 37.114-2.658 20 20 2.885 42.658 20Z", + fill: "#FEDF01" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.963 29.819c5.487 0 9.935-4.449 9.935-9.936s-4.448-9.935-9.935-9.935-9.935 4.448-9.935 9.935 4.448 9.936 9.935 9.936Z", + fill: "#002776" +}), /*#__PURE__*/React.createElement("path", { + d: "M11.195 15.21a9.855 9.855 0 0 0-1.034 3.113c6.147-.446 14.488 2.91 18.068 7.07a9.954 9.954 0 0 0 1.359-3.084c-4.419-4.32-12.18-7.123-18.393-7.098Z", + fill: "#CBE9D4" +}), /*#__PURE__*/React.createElement("path", { + d: "M10.77 20.358h1.538v1.539h-1.539v-1.538Zm1.538 3.077h1.538v1.539h-1.538v-1.539Z", + fill: "#88C9F9" +}), /*#__PURE__*/React.createElement("path", { + d: "M15.385 20.358h1.538v1.539h-1.538v-1.538Zm3.077 1.539H20v1.538h-1.538v-1.538Zm6.153 3.077h1.539v1.538h-1.539v-1.538ZM20 26.512h1.538v1.539H20v-1.539Zm4.615-9.23h1.539v1.538h-1.539v-1.538Z", + fill: "#55ACEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.538 23.435h1.539v1.539h-1.539v-1.539Z", + fill: "#3B88C3" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgBrl); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BYN.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BYN.svg new file mode 100644 index 0000000000..7fc3ab043f --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/BYN.svg @@ -0,0 +1,46 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgByn = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M9.23 40h40a6.154 6.154 0 0 0 6.155-6.154v-6.154H9.23V40Z", + fill: "#4AA657" +}), /*#__PURE__*/React.createElement("path", { + d: "M49.23 0h-40v27.692h46.155V6.154A6.154 6.154 0 0 0 49.23 0Z", + fill: "#C8313E" +}), /*#__PURE__*/React.createElement("path", { + d: "M6.154 0A6.154 6.154 0 0 0 0 6.154v27.692A6.154 6.154 0 0 0 6.154 40H9.23V0H6.154Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "m1.178 37.212.962-1.706.986 1.755-.834 1.34c.263.214.54.405.837.573l1.219-2.21-2.185-3.502-1.718 2.655a6.14 6.14 0 0 0 1.201 1.892l-.468-.797Zm8.024-.14-2.304-3.418-2.31 3.34L6.566 40h.996l1.64-2.928Zm-2.236-1.567.986 1.755-.986 1.586-.961-1.634.961-1.707Zm2.265-14.993v-1.375l-.482.67.482.705ZM4.346 3.117 2.971.91A6.132 6.132 0 0 0 .378 4.095l1.977 2.636 1.991-3.614Zm-3.168.25L2.14 1.66l.986 1.755L2.14 5l-.962-1.634ZM7.103 6.97l2.099-3.746L7.029 0h-.263L4.59 3.148 7.103 6.97Zm.848-3.557L6.966 5l-.961-1.634.961-1.706.985 1.754Z", + fill: "#C8313E" +}), /*#__PURE__*/React.createElement("path", { + d: "m7.62 15.385 1.346-2.236.265.117v-.958L7.068 8.942 4.47 12.548 2.163 8.846 0 12.19v1l1.322 2.196.936-1.371-.672-.937.505-.674 1.466 1.899-2.163 3.556L0 15.94v2.39l.09-.12 1.465 1.9L0 22.67v1.81l1.394-1.92 2.163 3.557-1.215 1.575-.251.325-.243-.325-.262-.349.674-.937-.937-1.37L0 27.231v.885l2.212 3.374 2.154-3.799.082-.144.089.144 2.483 4.014 2.21-3.918v-.602l-.192.086-1.346-2.237-.938 1.371.674.937-.262.35-.243.324-.25-.325-1.216-1.573L7.62 22.56l1.61 2.218V23.02l-1.78-2.926 1.467-1.898.314.418v-3.072l-1.683 2.319-2.163-3.559 1.466-1.898.504.672-.673.937.938 1.37Zm-1.028 3.124v2.966l-2.146 3.39-2.021-3.403v-2.936l2.021-3.405 2.146 3.388Z", + fill: "#C8313E" +}), /*#__PURE__*/React.createElement("path", { + d: "m3.125 18.19.92 1.678-.92 1.678.673.37.685-1.248.685 1.247.674-.369-.92-1.678.92-1.679-.674-.369-.685 1.248-.685-1.248-.673.37ZM.04 32.596l.962 1.634.986-1.586-.986-1.756-.962 1.708Zm2.332 0 .962 1.634.984-1.586-.984-1.756-.962 1.708Zm2.283 0 .962 1.634.986-1.586-.986-1.756-.962 1.708Zm2.45 0 .961 1.634.985-1.586-.985-1.756-.961 1.708ZM.04 7.885l.962 1.635.986-1.588-.986-1.754L.04 7.885Zm2.332 0 .962 1.635.984-1.588-.984-1.754-.962 1.707Zm2.283 0 .962 1.635.986-1.588-.986-1.754-.962 1.707Zm2.45 0 .961 1.635.985-1.588-.985-1.754-.961 1.707Z", + fill: "#C8313E" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgByn); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CAD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CAD.svg new file mode 100644 index 0000000000..279c5c3e12 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CAD.svg @@ -0,0 +1,32 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgCad = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("path", { + d: "M-2.167 0A6.334 6.334 0 0 0-8.5 6.333v28.5a6.334 6.334 0 0 0 6.333 6.334h9.5V0h-9.5Zm44.334 0h-9.5v41.167h9.5a6.334 6.334 0 0 0 6.333-6.334v-28.5A6.334 6.334 0 0 0 42.167 0Z", + fill: "#D52B1E" +}), /*#__PURE__*/React.createElement("path", { + d: "M7.333 0h25.334v41.167H7.333V0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M20.974 27.096c1.897.22 3.597.418 5.492.634l-.483-1.586a.727.727 0 0 1 .252-.754l5.509-4.487-1.14-.537c-.502-.178-.365-.462-.182-1.143l.84-3.065-3.2.676c-.312.047-.519-.15-.567-.34l-.413-1.443-2.53 2.84c-.36.457-1.088.457-.861-.595l1.081-5.753-1.452.752c-.407.228-.814.266-1.04-.141l-2.003-3.746-2.003 3.746c-.228.407-.635.369-1.042.14l-1.45-.752 1.081 5.754c.228 1.052-.502 1.052-.86.596l-2.531-2.84-.412 1.443c-.047.19-.256.388-.568.34l-3.2-.675.84 3.065c.18.68.319.964-.183 1.143l-1.14.537 5.508 4.487c.219.17.33.475.25.754l-.482 1.586 5.494-.635c.168 0 .279.094.277.287l-.339 5.864h1.514l-.337-5.864c.003-.195.112-.288.28-.288Z", + fill: "#D52B1E" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgCad); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CHF.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CHF.svg new file mode 100644 index 0000000000..0c14a04708 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CHF.svg @@ -0,0 +1,36 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgChf = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M40 33.846A6.154 6.154 0 0 1 33.846 40H6.154A6.154 6.154 0 0 1 0 33.846V6.154A6.154 6.154 0 0 1 6.154 0h27.692A6.154 6.154 0 0 1 40 6.154v27.692Z", + fill: "#D32D27" +}), /*#__PURE__*/React.createElement("path", { + d: "M30.77 17.02h-7.693V9.328h-6.154v7.692H9.231v6.057h7.692v7.79h6.154v-7.79h7.692V17.02Z", + fill: "#fff" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + d: "M0 0h40v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgChf); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CLP.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CLP.svg new file mode 100644 index 0000000000..1caba71f61 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/CLP.svg @@ -0,0 +1,42 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgClp = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M20 0H6.154A6.154 6.154 0 0 0 0 6.154V20h20V0Zm-7.174 14.295-2.895-2.103-2.896 2.103 1.107-3.403-2.896-2.104h3.579L9.93 5.385l1.106 3.403h3.578l-2.895 2.104 1.106 3.403Z", + fill: "#1F429B" +}), /*#__PURE__*/React.createElement("path", { + d: "M49.23 0H20v20h35.385V6.154A6.154 6.154 0 0 0 49.23 0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M0 20v13.846A6.154 6.154 0 0 0 6.154 40H49.23a6.154 6.154 0 0 0 6.154-6.154V20H0Z", + fill: "#D42D27" +}), /*#__PURE__*/React.createElement("path", { + d: "M11.037 8.788 9.93 5.385 8.825 8.788H5.246l2.896 2.104-1.107 3.404 2.896-2.103 2.895 2.103-1.106-3.403 2.895-2.105h-3.578Z", + fill: "#fff" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgClp); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/COP.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/COP.svg new file mode 100644 index 0000000000..fd7f420961 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/COP.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgCop = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154V20h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#FBD116" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 20h55.384v10.77H-7.692V20Z", + fill: "#22408C" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 33.846A6.154 6.154 0 0 0-1.538 40h43.077a6.154 6.154 0 0 0 6.153-6.154V30.77H-7.692v3.077Z", + fill: "#CE2028" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgCop); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/EGP.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/EGP.svg new file mode 100644 index 0000000000..8c8b08a325 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/EGP.svg @@ -0,0 +1,61 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgEgp = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M47.692 33.846A6.154 6.154 0 0 1 41.538 40H-1.538a6.154 6.154 0 0 1-6.154-6.154V6.154A6.154 6.154 0 0 1-1.538 0h43.077a6.154 6.154 0 0 1 6.153 6.154v27.692Z", + fill: "#141414" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 12.308h55.384v15.384H-7.692V12.308Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v6.154h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#CE1225" +}), /*#__PURE__*/React.createElement("path", { + d: "M15 25.48s.025.385.36.577c0 0-.095.29.265.457.36.168 1.658.432 3.918.432 2.26 0 3.534-.24 3.87-.409.338-.168.36-.552.36-.552s.36-.193.338-.433c-.025-.24-.505-.504-.505-.504s-.12-.313-.457-.433-1.418.53-3.486.433c-2.068-.096-3.244-.41-3.63-.385-.384.025-.552.41-.552.41s-.433.192-.481.407Z", + fill: "#BF9300" +}), /*#__PURE__*/React.createElement("path", { + d: "M15.265 25.457c-.02.143.289.457.289.457s0 .36.312.457c.313.097 1.586.337 3.654.312 2.068-.024 3.534-.145 3.701-.29.168-.144.313-.456.313-.456s.337-.24.312-.432c-.024-.193-.505-.313-.505-.313s-.135-.289-.295-.409c-.16-.12-1.194.48-3.406.48-2.165 0-3.414-.53-3.63-.505-.216.025-.36.433-.36.433s-.36.098-.385.266Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M24.398 16.13s-.047-1.13-1.081-.987c-1.034.145-1.106.65-2.212.77l-.228.02c-.166-.438-.302-1.072-.302-1.56 0-.72.217-1.033-.529-1.393-.744-.36-.89-.025-.89-.025s-.576-.289-.84-.072c-.265.217-.12.77 0 .602.12-.168.6.312.6.312.164.798-.3 1.663-.616 2.144-.11-.01-.197-.015-.32-.029-1.106-.12-1.178-.624-2.212-.769-1.034-.145-1.082.986-1.082.986l-.41 8.726.842-.649.005-.103 1.75-1.555.293-.293-.724 2.119s-1.107-.072-.794.817c0 0 .167-.505.457-.41.289.096 1.129.313 1.129.313l.29.457.36-.337 1.128-.048s.36.096.337.41a.686.686 0 0 0 .057-.436l.34-.023a.684.684 0 0 0 .053.46c-.025-.312.336-.41.336-.41l1.13.048.361.337.29-.457s.84-.216 1.127-.312c.288-.095.457.41.457.41.312-.89-.794-.818-.794-.818l-.69-2.02.193.194 1.751 1.556.005.103.841.649-.408-8.728Zm-4.78 5.289c-1.733-1.071-1.877-3.774-1.877-3.774s1.073-.056 1.851-.602c.702.623 1.899.552 1.899.552s-.082 2.714-1.872 3.824Zm3.963-5.625-1.466 1.394-.246.098c-.252.01-1.48.012-2.254-.675-.961.674-2.283.721-2.283.721l-.204-.081-1.623-1.457-.427.175c.019-.174.114-.564.644-.487.867.124 1.226.601 2.14.697l.258.026-.09.117c.14 0 .35-.042.504-.076l.174.017-.079.274c.123-.037.302-.143.448-.237l.4.038.09.127.305-.153.205-.02c.177.103.43.196.43.196l.047-.24c.217.144.577.144.577.144-.042-.034-.083-.12-.126-.194l.221-.023c.914-.095 1.27-.572 2.14-.697.53-.075.625.314.643.488l-.428-.172Z", + fill: "#BF9300" +}), /*#__PURE__*/React.createElement("path", { + d: "m19.038 21.37-.866 3.293-1.441-.288 1.49-4.23.817 1.226Zm1.076 0 .864 3.293 1.444-.288-1.491-4.23-.817 1.226Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M18.102 17.91s.12 1.393.744 2.475v-2.788s-.41.24-.744.312Zm3.004.047s-.12 1.394-.745 2.475v-2.787c-.001 0 .408.24.745.312Z", + fill: "#BF9300" +}), /*#__PURE__*/React.createElement("path", { + d: "M18.39 13.197s.167-.168.648.168c.313.218.59.384.59.384s.197-.208.486-.16c.29.048.127.45.175 1.29.048.841.385 1.201.385 1.201l-.41-.24.025.265-.457-.217-.217.312-.216-.337-.351.214-.106-.286-.41.217s.602-.745.65-1.563c.013-.245-.048-.794-.048-.794s-.383-.479-.745-.454Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.226 25.625c-.275.164-.168.264 0 .337.168.072 1.177.193 3.222.24 2.09.047 3.389-.193 3.557-.29.167-.095.192-.264-.096-.312-.289-.048-1.73.192-3.486.192-2.163.002-3.077-.24-3.197-.167Z", + fill: "#BF9300" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgEgp); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/EUR.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/EUR.svg new file mode 100644 index 0000000000..2ac3c6edd3 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/EUR.svg @@ -0,0 +1,34 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgEur = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v27.692A6.154 6.154 0 0 0-1.538 40h43.077a6.154 6.154 0 0 0 6.153-6.154V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#039" +}), /*#__PURE__*/React.createElement("path", { + d: "m20.83 7.238 1.306-.949h-1.614l-.5-1.535-.499 1.535H17.91l1.306.95-.5 1.535 1.306-.95 1.306.95-.498-1.536Zm0 26.667 1.306-.95h-1.614l-.5-1.535-.499 1.535H17.91l1.306.95-.5 1.535 1.306-.95 1.306.95-.498-1.535ZM7.496 20.57l1.306-.95H7.188l-.499-1.535-.5 1.536H4.576l1.306.949-.499 1.535 1.306-.949 1.307.95-.499-1.536ZM9.2 13.978l1.306-.949H8.891l-.498-1.535-.499 1.535H6.28l1.306.95-.499 1.535 1.307-.95 1.306.95-.499-1.535Zm0 13.26 1.306-.949H8.891l-.498-1.535-.499 1.535H6.28l1.306.95-.499 1.535 1.307-.95 1.306.95-.499-1.536Zm4.963-18.213 1.306-.95h-1.615l-.498-1.535-.499 1.535h-1.615l1.306.95-.498 1.535 1.306-.95 1.306.95-.499-1.535Zm0 23.18 1.306-.95h-1.615l-.498-1.535-.499 1.535h-1.615l1.306.95-.498 1.535 1.306-.948 1.306.948-.499-1.535Zm18.34-11.634-1.306-.95h1.616l.498-1.535.5 1.536h1.614l-1.306.949.498 1.535-1.306-.949-1.306.95.498-1.536ZM30.8 13.978l-1.306-.949h1.616l.498-1.535.498 1.535h1.616l-1.306.95.498 1.535-1.306-.95-1.306.95.498-1.535Zm0 13.26-1.306-.949h1.616l.498-1.535.498 1.535h1.616l-1.306.95.498 1.535-1.306-.95-1.306.95.498-1.536ZM25.837 9.025l-1.306-.95h1.615l.499-1.535.498 1.535h1.616l-1.306.95.498 1.535-1.306-.95-1.306.95.498-1.535Zm0 23.18-1.306-.95h1.615l.499-1.535.498 1.535h1.616l-1.306.95.498 1.535-1.306-.948-1.306.948.498-1.535Z", + fill: "#FC0" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgEur); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GBP.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GBP.svg new file mode 100644 index 0000000000..0885d4b9d3 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GBP.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgGbp = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.5 6.245v6.063h8.658L-7.5 6.245ZM-.325 40H12.5v-8.98L-.325 40Zm28.21-8.979V40h12.823l-12.823-8.979ZM-7.5 27.692v6.063l8.662-6.063H-7.5ZM40.71 0H27.886v8.98L40.71 0Zm7.175 33.757v-6.065h-8.663l8.663 6.065Zm0-21.45V6.246l-8.66 6.063h8.66ZM12.5 0H-.325L12.5 8.98V0Z", + fill: "#00247D" +}), /*#__PURE__*/React.createElement("path", { + d: "m31.177 27.692 14.941 10.463a6.119 6.119 0 0 0 1.524-2.69l-11.1-7.773h-5.365Zm-18.677 0H9.206l-14.94 10.462a6.14 6.14 0 0 0 2.982 1.67L12.5 29.143v-1.452Zm15.385-15.384h3.293l14.94-10.462a6.135 6.135 0 0 0-2.98-1.67l-15.253 10.68v1.452Zm-18.679 0L-5.734 1.846a6.145 6.145 0 0 0-1.524 2.69l11.1 7.772h5.364Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.885 24.615H24.808V40h3.077v-8.979L40.708 40h1.023c1.718 0 3.27-.71 4.387-1.845L31.177 27.692h5.364l11.1 7.773a6.054 6.054 0 0 0 .244-1.619v-.09l-8.663-6.064h8.663v-3.077Zm-55.385 0v3.077h8.662L-7.5 33.755v.091c0 1.679.675 3.197 1.766 4.308l14.94-10.462H12.5v1.451L-2.752 39.821c.452.108.92.179 1.406.179h1.021L12.5 31.02V40h3.077V24.615H-7.5ZM47.885 6.154a6.128 6.128 0 0 0-1.767-4.308l-14.94 10.462h-3.293v-1.451L43.138.177A6.156 6.156 0 0 0 41.731 0h-1.02L27.885 8.98V0h-3.077v15.385h23.077v-3.077h-8.66l8.66-6.063v-.091ZM12.5 0v8.98L-.325 0h-1.021c-1.72 0-3.27.71-4.388 1.846l14.94 10.462H3.842l-11.1-7.771A6.105 6.105 0 0 0-7.5 6.154v.09l8.658 6.064H-7.5v3.077h23.077V0H12.5Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M24.808 15.385V0h-9.231v15.385H-7.5v9.23h23.077V40h9.23V24.615h23.078v-9.23H24.808Z", + fill: "#CF1B2B" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgGbp); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GEL.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GEL.svg new file mode 100644 index 0000000000..ab2c969945 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GEL.svg @@ -0,0 +1,58 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgGel = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.53 0H23.839v16.154h23.847v-10A6.154 6.154 0 0 0 41.53 0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M23.838 0h-7.692v16.154H-7.7v7.692h23.846V40h7.692V23.846h23.847v-7.692H23.838V0Z", + fill: "#E8112D" +}), /*#__PURE__*/React.createElement("path", { + d: "M36.785 7.054c.047-.959.16-1.914.34-2.862-.905.113-1.82.113-2.724 0 .18.946.293 1.903.34 2.862a20.892 20.892 0 0 1-2.861-.34c.112.904.112 1.82 0 2.723.946-.18 1.903-.292 2.862-.34-.048.958-.16 1.914-.34 2.862.904-.113 1.82-.113 2.723 0a20.865 20.865 0 0 1-.34-2.862c.958.048 1.913.16 2.861.34a11.047 11.047 0 0 1 0-2.723 20.42 20.42 0 0 1-2.861.34Z", + fill: "#E8112D" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.146 0H-1.546A6.154 6.154 0 0 0-7.7 6.154v10h23.846V0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M5.246 7.054c.048-.959.16-1.914.34-2.862-.904.113-1.82.113-2.723 0 .18.946.292 1.903.34 2.862a20.89 20.89 0 0 1-2.861-.34c.112.904.112 1.82 0 2.723.946-.18 1.903-.292 2.861-.34-.048.958-.16 1.914-.34 2.862.905-.113 1.82-.113 2.723 0a20.864 20.864 0 0 1-.34-2.862c.959.048 1.914.16 2.862.34a11.046 11.046 0 0 1 0-2.723c-.948.181-1.903.294-2.862.34Z", + fill: "#E8112D" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.685 33.846v-10H23.838V40h17.693a6.154 6.154 0 0 0 6.154-6.154Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M36.785 32.946c.047.959.16 1.914.34 2.862a11.047 11.047 0 0 0-2.724 0c.18-.947.293-1.903.34-2.862-.958.048-1.913.16-2.861.34.112-.904.112-1.82 0-2.723.946.18 1.903.292 2.862.34a20.893 20.893 0 0 0-.34-2.861c.904.112 1.82.112 2.723 0-.18.946-.293 1.903-.34 2.861.958-.048 1.913-.16 2.861-.34-.112.905-.112 1.82 0 2.723a20.404 20.404 0 0 0-2.861-.34Z", + fill: "#E8112D" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.146 23.846H-7.7v10A6.154 6.154 0 0 0-1.546 40h17.692V23.846Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M5.246 32.946c.048.959.16 1.914.34 2.862a11.047 11.047 0 0 0-2.723 0c.18-.947.292-1.903.34-2.862-.958.048-1.914.16-2.861.34.112-.904.112-1.82 0-2.723.946.18 1.903.292 2.861.34a20.891 20.891 0 0 0-.34-2.861c.905.112 1.82.112 2.723 0-.18.946-.292 1.903-.34 2.861.959-.048 1.914-.16 2.862-.34-.113.905-.113 1.82 0 2.723a20.405 20.405 0 0 0-2.862-.34Z", + fill: "#E8112D" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.7)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgGel); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GTQ.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GTQ.svg new file mode 100644 index 0000000000..e96b0808ac --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/GTQ.svg @@ -0,0 +1,82 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgGtq = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H29.231v40h12.307a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 41.538 0ZM-1.538 0a6.154 6.154 0 0 0-6.154 6.154v27.692A6.154 6.154 0 0 0-1.538 40h12.307V0H-1.538Z", + fill: "#4997D0" +}), /*#__PURE__*/React.createElement("path", { + d: "M10.77 0h18.46v40H10.77V0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M27.166 21.132c.174-.372.15-.609-.052-.398-.177.184-.436.25-.757.477l.026-.091c.282-.532.89-.275 1.25-1.125.064-.157.386-.324-.053-.298-.314.018-.71.204-.995.605.218-.594.744-.291.96-1.722.038-.263.069-.8-.105-.36-.07.175-.24.35-.419.56a1.526 1.526 0 0 0-.023-.748c.111-.17.211-.346.239-.549.048-.35-.035-.658-.168-.29-.046.132-.134.218-.226.307-.034-.123-.066-.166-.162 0-.1.172-.153.392-.184.637l-.003.015c-.023-.129-.054-.257-.083-.383.07-.48.81-.466.554-2.017-.06-.375-.088-.484-.22-.018-.123.432-.505.467-.524 1.332l-.032-.1c-.084-.83.483-1.523.054-2.234-.228-.378-.35-.412-.324-.104.029.358-.187.738-.147 1.26l-.015-.034c-.09-.642.14-.835-.12-1.252-.136-.213-.337-.493-.285-.142.011.07.017.154.025.24-.083-.363-.397-.586-.794-.714-.375-.121-.261.057-.123.202.197.21.146.469.39.787-.264-.127-.493-.14-.645-.33-.3-.371-.145.103-.073.316.146.419.391.644.674.787-.027.03-.015.138.065.363.098.277.22.483.35.649a.798.798 0 0 1-.253-.228c-.316-.466-.439-.518-.379.037.054.482.259.739.506.908a.712.712 0 0 0 .137.374c.176.254.36.36.531.424.085.197.13.38.175.57-.01-.008-.018-.022-.03-.03-.473-.334-.354-.141-.316.15.177 1.37.827.9.694 1.784-.018.082-.037.16-.058.239.023-.51-.213-.797-.407-1.022-.267-.31-.36-.22-.227.352.03.134.061.3.087.476l-.006-.019c-.267-.54-.346-.384-.321.027.03.395-.303.552-.088 1.31.065.222.097.648-.118.974l-.037.05c.474-.876-.099-1.137-.046-1.402.063-.3-.016-.353-.184.018-.192.428-.152.73-.093.985-.036.02-.062.03-.108.062a3.152 3.152 0 0 0-.378.298c.013-.083.037-.163.044-.246.039-.392-.07-.585-.237-.16-.21.521-.589.51-.829 1.294-.19.632-.33.76-.623.884l-.043.019c.444-.345.69-.808.755-1.347.07-.596-.078-.51-.28-.15-.192.346-.558.295-.79 1.05-.073.234-.244.593-.693.756.608-.432.874-1.146.803-1.574-.032-.212-.132-.343-.227.008-.114.43-.43.326-.685 1.143-.13.415-.245.5-.79.746l.08-.015c-.318.129-.595.263-.825.4a5.684 5.684 0 0 0-.796-.384l.045.008c-.539-.244-.652-.328-.782-.738-.249-.808-.564-.703-.677-1.128-.092-.35-.19-.22-.224-.01-.071.42.192 1.124.786 1.552-.439-.163-.606-.514-.679-.743-.227-.747-.589-.696-.78-1.037-.198-.357-.346-.442-.275.147.063.531.305.99.743 1.33l-.092-.039c-.254-.12-.386-.266-.565-.852-.234-.776-.61-.763-.818-1.277-.17-.419-.273-.23-.233.157.008.083.03.163.045.244a2.934 2.934 0 0 0-.374-.295c-.046-.03-.072-.041-.107-.061a1.405 1.405 0 0 0-.094-.976c-.167-.363-.244-.312-.184-.018.054.266-.515.523-.036 1.396l-.036-.046c-.224-.324-.189-.752-.128-.977.214-.747-.113-.903-.086-1.293.028-.408-.052-.56-.315-.026l-.008.021c.027-.175.057-.34.088-.472.13-.567.035-.654-.225-.348-.192.223-.426.508-.403 1.01a5.611 5.611 0 0 1-.058-.24c-.13-.87.51-.409.688-1.762.037-.288.155-.479-.314-.148-.013.008-.02.022-.031.03.044-.189.09-.37.177-.565.17-.065.35-.17.524-.42a.695.695 0 0 0 .134-.371c.243-.168.445-.423.497-.899.062-.546-.06-.495-.37-.035a.797.797 0 0 1-.251.225 2.23 2.23 0 0 0 .346-.64c.077-.222.09-.33.061-.36.282-.143.525-.365.667-.779.072-.212.224-.678-.071-.314-.152.19-.377.202-.639.328.243-.314.193-.57.386-.78.136-.145.251-.32-.12-.2-.395.126-.704.348-.787.706.008-.085.014-.168.024-.237.053-.348-.149-.069-.278.139-.258.412-.034.604-.118 1.235l-.018.039c.04-.517-.173-.893-.146-1.248.025-.303-.094-.27-.318.104-.423.7.134 1.385.055 2.202l-.03.097c-.024-.848-.4-.882-.519-1.31-.132-.46-.157-.352-.218.02-.253 1.531.48 1.518.547 1.993-.029.126-.058.252-.081.38l-.005-.021c-.01-.084-.034-.153-.052-.227l-.006-.017c-.034-.134-.065-.272-.125-.378-.094-.165-.125-.122-.158 0-.091-.088-.177-.172-.223-.305-.13-.364-.214-.058-.167.288.028.2.127.374.236.543-.06.194-.08.45-.022.742-.177-.208-.343-.382-.412-.556-.174-.434-.143.096-.105.357.213 1.419.734 1.114.95 1.705-.284-.399-.673-.583-.985-.602-.434-.026-.117.142-.052.296.355.841.955.587 1.233 1.112l.027.09c-.319-.226-.571-.29-.746-.473-.2-.208-.224.027-.051.395-.188.022-.388.037-.514-.004-.157-.053-.157.183.278.366.199.083.513.212.814.36.223.167.446.281.639.457-.599-.431-1.05-.223-1.385-.419-.417-.241-.19.137-.075.252 1.175 1.177 1.36.288 2.01.913a1.142 1.142 0 0 0-.334-.097c-.521-.06-.707-.137-.435.192.325.394.59.585.825.69a2.132 2.132 0 0 0-.44.033c-.336.071-.22.133.006.2.277.083.452.277.76.403h-.003c-.505.157-.59.216-.208.405.654.328 1.11.337 1.474.277a1.593 1.593 0 0 0-.47.232c-.276.205-.2.282.036.243.448-.072.726.062 1.095.062-.224.165-.412.35-.749.45-.226.068-.3.194.07.228 1.41.12 1.769-.763 2.443-.753.344.106.667.232.974.436-.093.071-.191.144-.245.21.017.158.38.08.417.167.046-.049.095-.084.143-.127.047.043.095.078.143.127.035-.087.337-.06.354-.217-.042-.052-.123-.106-.188-.16.314-.21.642-.338.994-.447.681-.01 1.044.884 2.47.763.373-.034.3-.162.073-.231-.341-.1-.532-.29-.76-.455.374.001.657-.134 1.11-.062.24.037.315-.04.033-.248a1.604 1.604 0 0 0-.474-.235c.368.06.831.052 1.492-.28.388-.19.3-.25-.207-.41h-.003c.31-.127.488-.322.766-.407.23-.07.346-.13.006-.202a2.066 2.066 0 0 0-.445-.035c.237-.106.508-.3.839-.698.27-.334.084-.254-.442-.194a1.11 1.11 0 0 0-.344.1c.663-.639.846.267 2.04-.926.114-.113.343-.499-.079-.253-.34.199-.8-.017-1.413.436.198-.186.432-.302.662-.477.304-.15.619-.279.82-.363.442-.186.442-.422.28-.37-.124.048-.324.033-.515.011Zm-10.677 3.62.162.102a5.035 5.035 0 0 0-.593-.22.947.947 0 0 1 .447.135l-.016-.017Zm1.892.499-.081-.025.057.01.024.015Zm-3.258-2.217c.014.021.017.034.032.058.133.207.154.419.282.67a5.84 5.84 0 0 1-.178-.165.609.609 0 0 1-.136-.563Zm-.254-6.912c-.172.229-.457.264-.721.483.152-.265.35-.513.6-.579.097-.026.19-.06.283-.097a2.46 2.46 0 0 0-.162.193Zm-.261 6.984.024.028-.018-.01-.006-.018Zm1.747 2.095c.265-.053.485-.123.7-.11l.091.046a2.665 2.665 0 0 0-.79.064Zm8.745-9.195a1.994 1.994 0 0 0-.166-.195c.092.038.188.07.286.098.252.068.454.319.606.585-.266-.22-.552-.257-.726-.488Zm-1.199 8.606a5.103 5.103 0 0 0-.596.22l.15-.095-.007.01a.994.994 0 0 1 .453-.135Zm.908-1.558.034-.06c.038.192.03.37-.135.567-.06.059-.122.116-.185.17.13-.254.152-.468.286-.677Zm-3.237 2.168.065-.011-.094.029c.01-.005.02-.01.03-.018Zm1.228-.102.095-.048c.225-.01.453.065.733.119a2.789 2.789 0 0 0-.828-.071Zm2.538-2.021.023-.028-.004.015c-.008.003-.012.01-.018.013Z", + fill: "#437E24" +}), /*#__PURE__*/React.createElement("path", { + d: "M17.838 20.65s-1.173 1.055-1.318 1.198c-.143.143-.288.767-.288.767l.383.239 1.704-1.75-.48-.455Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "m16.21 22.592.36.286s-.313.311-.36.623c-.049.313-.889 1.27-1.056 1.51-.168.241-.385.19-.48 0-.094-.191-.31-.336-.334-.479-.026-.143.528-.647.79-.934.262-.289.55-.407.695-.573.144-.171.384-.433.384-.433Zm1.702-1.68-.727.814.194.194.7-.792-.167-.216Z", + fill: "#6C301E" +}), /*#__PURE__*/React.createElement("path", { + d: "m14.554 13.817 2.326 2.42.575-.288-.18-.26-.395.092-2.326-1.964Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "m17.455 23.883.288.482.262-.242s.212.385 0 .455c-.214.074-.373 0-.373 0l-.729.596s-.288-.174-.528 0c0 0 .05-.352.194-.352.143 0 .668-.696.668-.696s-.278-.078-.222-.241c.057-.167.44-.002.44-.002Z", + fill: "#FAB81B" +}), /*#__PURE__*/React.createElement("path", { + d: "M17.455 24.077s4.267-4.243 6.042-4.403c0 0-1.343.817-2.182 1.488-.84.672-3.57 3.204-3.57 3.204l-.29-.29Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "M22.297 20.65s1.175 1.055 1.315 1.198c.145.143.29.767.29.767l-.382.239-1.703-1.75.48-.455Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "m23.926 22.592-.36.286s.313.311.36.623c.048.313.89 1.27 1.056 1.51.167.241.384.19.48 0 .095-.191.309-.336.333-.479.028-.143-.529-.647-.79-.934-.262-.289-.55-.407-.694-.573-.145-.171-.385-.433-.385-.433Zm-1.704-1.68.727.814-.192.194-.7-.792.165-.216Z", + fill: "#6C301E" +}), /*#__PURE__*/React.createElement("path", { + d: "m21.208 17.33-.271.765 2.315-2.313-.355-.065-1.69 1.612Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "m25.578 13.817-2.326 2.42-.573-.288.573-.168 2.326-1.964Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "m22.678 23.883-.284.482-.262-.242s-.213.385 0 .455c.211.074.373 0 .373 0l.727.596s.29-.174.527 0c0 0-.048-.352-.193-.352-.144 0-.668-.696-.668-.696s.277-.078.22-.241c-.055-.167-.44-.002-.44-.002Z", + fill: "#FAB81B" +}), /*#__PURE__*/React.createElement("path", { + d: "M22.678 24.077s-4.266-4.243-6.04-4.403c0 0 1.345.817 2.182 1.488.84.672 3.572 3.204 3.572 3.204l.287-.29Z", + fill: "#B1B6BA" +}), /*#__PURE__*/React.createElement("path", { + d: "M17.488 15.637c.697-.04 2.707.024 3.452 0 .741-.023.574.36.621.577.048.215-.404.455-.404.455s.477.288 1.102 1.966c.621 1.679.476 2.443-.36 2.494-.838.048-2.996.192-3.718.192-.718 0-.838-.263-.838-.647 0-.383.576-.96 1.15-.633 0 0 0-.255-.334-1.213-.336-.959-1.056-1.99-1.127-2.445-.073-.458.096-.724.456-.746Z", + fill: "#F9F0AA" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.597 13.983c-.288-.264.112-.552.404-.528.29.025.434.191.124.528 0 0 .84.455 1.509 1.079.67.623 2.05 2.304 2.181 4.123.168 2.349-1.126 3.57-1.607 4.409-.479.84-1.556 2.95-1.556 2.95s-.024-1.08 1.391-3.046c0 0-1.101 1.967-2.805 2.327 0 0 2.131-1.502 2.73-2.702.598-1.197 1.472-2.998 1.33-4.245-.144-1.247-.369-2.306-2.023-3.123 0 0-1.047-.058-1.509-.43-.744-.599-.17-1.342-.17-1.342Z", + fill: "#437E24" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.155 16.67c0 .071.311.46.27.46h-3.663c-.04 0-.247-.253-.247-.325l-.28-.328c.219.084.485 0 .525 0h3.662c.043 0-.267.118-.267.192Zm-2.66 4.242c0 .073-.154.31-.112.31h3.663c.039 0 .377-.254.377-.327l.148-.326c-.219.085-.485 0-.525 0h-3.663c-.04 0 .112.27.112.343Z", + fill: "#E2CF81" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgGtq); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/HKD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/HKD.svg new file mode 100644 index 0000000000..996534f3b0 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/HKD.svg @@ -0,0 +1,38 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgHkd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("path", { + d: "M47.385 33.846A6.154 6.154 0 0 1 41.23 40H-1.846A6.154 6.154 0 0 1-8 33.846V6.154A6.154 6.154 0 0 1-1.846 0H41.23a6.154 6.154 0 0 1 6.154 6.154v27.692Z", + fill: "#DE2910" +}), /*#__PURE__*/React.createElement("path", { + d: "M22.51 6.463c-.93-.483-1.984-.74-3.131-.477-1.394.32-3.094 1.766-3.557 3.446-.219.793-.402 1.493-.391 2.14.008.447.006 1.191.06 1.927.037.521.297 1.647.71 2.641l.025-.01c.227.756.974 1.928 1.707 2.89.84 1.103 1.497 1.6 1.629 1.599a.87.87 0 0 1-.25-.211c-.48-.602-.96-1.699-1.058-2.442-.19-1.45.055-2.5.457-3.76.1-.315.308-.406.445-.324.01.006.017.02.027.029.085.078.137.221.062.483-.193.674-.663 2.37-.413 3.572.231 1.11.56 1.77.95 2.239-.156-.311-.331-.911-.343-1.53-.006-.344-.036-.686.137-.995.289-.518.71-.797 1.198-1.06.337-.181.654-.43.945-.615 1.323-.843 1.767-2.511 1.73-3.185l-.032-.503c.028-.183-.055-.686-.275-1.19-.165-.38-.425-.752-.634-1.036-.106-.146-.166-.314-.225-.417-.226-.392-.226-.837-.223-1.119.002-.332.045-.37.14-.529.076-.126.157-.297.413-.434.187-.098.61-.069.86.059.212.106.252.097.361.157.099.054.355.189.34.135-.06-.203-.805-1.034-1.665-1.48Zm-5.751 15.18c-1.448-.198-2.397-.712-3.508-1.432-.275-.179-.31-.402-.2-.512l.01-.005c.09-.08.255-.102.51.052.601.363 2.112 1.263 3.339 1.34.998.062 1.672-.047 2.2-.247a4.063 4.063 0 0 1-1.37-.105c-.334-.088-.67-.153-.923-.4-.42-.417-.575-.899-.698-1.44-.085-.374-.237-.745-.339-1.075-.454-1.502-1.94-2.38-2.6-2.527l-.492-.103c-.17-.077-.677-.129-1.222-.057-.409.056-.836.208-1.167.333-.171.064-.346.075-.462.104-.44.112-.868-.008-1.137-.086-.32-.092-.346-.145-.472-.28-.102-.106-.245-.228-.308-.512-.044-.206.099-.606.288-.813.16-.172.161-.215.248-.306.078-.081.278-.29.221-.289-.21 0-1.21.492-1.87 1.2-.716.766-1.248 1.71-1.304 2.886-.066 1.43.868 3.457 2.36 4.357.702.422 1.328.79 1.956.953.432.112 1.147.315 1.87.463.513.103 1.667.16 2.734.03v-.029c.79-.014 2.119-.418 3.24-.861 1.417-.564 2.11-1.133 2.005-1.185l-.018.015c-.014.016-.04.02-.068.025-.06.044-.1.092-.192.132-.704.302-1.89.477-2.631.374Zm3.87 1.802c-.093-1.33-.35-2.09-.47-2.214.009.04.027.058.034.104.093.764-.073 1.95-.38 2.634-.599 1.334-1.359 2.099-2.362 2.965-.166.141-.33.183-.443.152a.188.188 0 0 1-.145-.144c-.023-.111.037-.271.231-.448.517-.476 1.808-1.67 2.226-2.828.323-.897.414-1.552.385-2.1a3.974 3.974 0 0 1-.528 1.342c-.183.29-.346.592-.66.757-.524.275-1.03.277-1.583.227-.38-.03-.782.003-1.128-.003-1.569-.021-2.855 1.13-3.193 1.714l-.248.438c-.125.137-.328.605-.422 1.147-.072.407-.057.861-.038 1.213.01.182-.034.353-.04.473-.028.452-.27.825-.428 1.058-.184.276-.241.285-.407.365-.131.063-.293.163-.584.138-.209-.02-.547-.276-.686-.52-.117-.204-.157-.218-.217-.329-.054-.098-.192-.354-.209-.298-.063.2.103 1.303.577 2.144.514.917 1.254 1.708 2.359 2.117 1.34.496 3.555.22 4.864-.932.617-.542 1.155-1.03 1.502-1.575.238-.377.647-.997 1.007-1.642.254-.455.654-1.541.856-2.597l-.026-.008c.223-.755.241-2.144.157-3.35Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M29.996 27.797c-.279-.774-.533-1.45-.917-1.974-.263-.36-.691-.968-1.16-1.54-.331-.403-1.193-1.172-2.103-1.748l-.014.022c-.623-.485-1.91-1.01-3.062-1.374-1.204-.378-2.017-.438-2.235-.388a.843.843 0 0 1 .335.033c.739.217 1.76.844 2.266 1.397.986 1.081 1.382 2.083 1.777 3.347.1.319-.021.514-.184.519-.005 0-.005.007-.01.007-.007 0-.009-.009-.013-.012-.116-.01-.245-.098-.336-.363-.229-.663-.812-2.322-1.706-3.168-.823-.777-1.472-1.13-2.06-1.293-.11-.03-.166-.077-.225-.122-.007.006-.015.005-.023.014l.22.13c.306.165.797.553 1.163 1.051.202.28.424.542.462.894.063.588-.12 1.059-.365 1.559-.169.343-.286.727-.417 1.047-.595 1.451.003 3.07.424 3.599l.316.392c.083.166.444.528.913.812.352.217.781.368 1.118.483.171.057.314.159.423.21.411.189.668.554.828.786.19.272.177.33.19.514.012.144.044.33-.085.59-.096.188-.459.41-.734.451-.234.033-.262.065-.386.08-.111.014-.402.05-.354.086.161.133 1.249.382 2.206.25 1.041-.142 2.05-.542 2.834-1.417.95-1.073 1.503-3.236.914-4.874Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M33.87 15.49c-.764-1.209-2.688-2.336-4.428-2.22-.816.055-1.54.113-2.146.336-.42.154-1.123.397-1.8.69-.48.209-1.456.827-2.259 1.542l.017.02c-.64.465-1.502 1.557-2.166 2.565-.7 1.06-.97 1.802-.977 2.02.021-.088.041-.177.112-.29.41-.653 1.29-1.465 1.96-1.802 1.308-.654 2.379-.766 3.702-.803.334-.01.487.158.45.315a.215.215 0 0 1-.038.07c-.063.088-.178.165-.417.178-.698.04-2.454.152-3.509.783-.972.583-1.49 1.112-1.805 1.632a.564.564 0 0 1-.18.186c.003.008 0 .014.006.023l.188-.177c.242-.247.751-.612 1.33-.827.323-.12.636-.26.987-.2.583.1.986.407 1.396.781.284.257.621.476.89.688 1.234.97 2.956.841 3.58.585l.465-.199c.18-.032.626-.28 1.032-.652.303-.28.568-.648.768-.94.103-.151.24-.259.32-.35.295-.342.715-.489.981-.58.314-.106.365-.078.547-.04.143.03.33.048.544.245.156.143.268.554.228.831-.032.234-.006.27-.028.392-.018.111-.06.399-.014.365.171-.12.711-1.097.848-2.054.148-1.038.043-2.117-.585-3.112Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "m19.685 11.72-.563.85-.965-.227-.026-.006.632.798-.514.847-.013.024.955-.355.666.772-.044-1.02.913-.385.027-.01-.984-.273-.084-1.015Zm-7.045 6.246-.003-.028-.526.873-1.003-.193.666.773-.477.867-.014.025.94-.395.677.721.02.022-.086-1.016.897-.421.026-.012-.992-.233-.125-.983Zm15.92-.295-.989-.251-.108-1.014-.543.862-.97-.205-.027-.006.651.785-.497.858-.012.025.946-.379.663.737.02.02-.065-1.017.905-.403.026-.012ZM16.5 26.26l-.003-.026-.523.874-.973-.18-.027-.006.669.768-.471.872-.014.025.937-.402.682.719.02.021-.093-1.014.896-.429.024-.012-.994-.225-.13-.984Zm8.887-.78-.001-.027-.574.844-.962-.24-.027-.006.623.806-.525.842-.014.023.959-.345.635.759.019.023-.028-1.018.917-.374.028-.01-.979-.286-.07-.99Z", + fill: "#DE2910" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgHkd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/IDR.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/IDR.svg new file mode 100644 index 0000000000..647855c2e7 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/IDR.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgIdr = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154V20h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#DC1F26" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.692 33.846A6.154 6.154 0 0 1 41.538 40H-1.538a6.154 6.154 0 0 1-6.154-6.154V20h55.384v13.846Z", + fill: "#EEE" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgIdr); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/ILS.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/ILS.svg new file mode 100644 index 0000000000..7bdc951426 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/ILS.svg @@ -0,0 +1,46 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgIls = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "m23.794 21.538-.719 1.245h1.437l-.718-1.245Zm-4.102 4.028.719-1.244h-1.437l.718 1.244Z", + fill: "#EDECEC" +}), /*#__PURE__*/React.createElement("path", { + d: "M-8 30.77h55.385V9.23H-8v21.54Zm.452-26.924h54.482A6.155 6.155 0 0 0 41.23 0H-1.846a6.152 6.152 0 0 0-5.702 3.846Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M24.512 17.217h-1.437l.719 1.245.718-1.245Zm-8.203 0h-1.437l.719 1.245.718-1.245Zm4.99 5.566L22.905 20l-1.608-2.783h-3.212L16.478 20l1.608 2.783h3.212Zm-5.708-1.245-.719 1.245h1.437l-.718-1.245Zm4.101-7.104-.718 1.245h1.437l-.719-1.245Z", + fill: "#EDECEC" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.548 3.846A6.126 6.126 0 0 0-8 6.154V9.23h55.385V6.154c0-.817-.163-1.594-.453-2.308h-54.48Z", + fill: "#0038B8" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.548 36.154h54.482A6.155 6.155 0 0 1 41.23 40H-1.846a6.152 6.152 0 0 1-5.702-3.846Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.548 36.154A6.127 6.127 0 0 1-8 33.846V30.77h55.385v3.077c0 .817-.163 1.594-.453 2.308h-54.48Zm24.745-11.832 2.495 4.321 2.496-4.321h4.989L24.683 20l2.495-4.322H22.19l-2.497-4.321-2.495 4.322h-4.99L14.702 20l-2.495 4.322h4.99Zm2.495 1.244-.718-1.244h1.437l-.719 1.244Zm4.82-8.349-.718 1.245-.719-1.244 1.437-.001Zm-.718 4.322.718 1.243h-1.437l.719-1.244Zm-4.102-7.105.719 1.245h-1.437l.718-1.245Zm-1.606 2.783H21.3L22.906 20 21.3 22.783h-3.214L16.48 20l1.607-2.783Zm-1.777 0-.718 1.245-.719-1.244 1.437-.001Zm-.718 4.322.718 1.243h-1.437l.719-1.244Z", + fill: "#0038B8" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgIls); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/INR.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/INR.svg new file mode 100644 index 0000000000..163d8d51c5 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/INR.svg @@ -0,0 +1,44 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgInr = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("path", { + d: "M-7.7 33.846A6.154 6.154 0 0 0-1.546 40H41.53a6.154 6.154 0 0 0 6.154-6.154v-7.692H-7.7v7.692Z", + fill: "#138808" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.685 13.846V6.154A6.154 6.154 0 0 0 41.53 0H-1.546A6.154 6.154 0 0 0-7.7 6.154v7.692h55.385Z", + fill: "#F93" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.7 13.334h55.385v13.334H-7.7V13.334Z", + fill: "#F7F7F7" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.992 26.154a6.154 6.154 0 1 0 0-12.308 6.154 6.154 0 0 0 0 12.308Z", + fill: "navy" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.992 25.192a5.192 5.192 0 1 0 0-10.384 5.192 5.192 0 0 0 0 10.384Z", + fill: "#F7F7F7" +}), /*#__PURE__*/React.createElement("path", { + d: "m20.146 18.077-.154 1-.154-1 .154-3 .154 3Zm-1.428-2.832.628 2.937.408.926-.11-1.005-.926-2.858Zm-1.187.492 1.366 2.674.634.789-.366-.943-1.634-2.52Zm-1.02.781 2.012 2.231.817.599-.599-.817-2.23-2.013Zm-.782 1.02 2.52 1.634.943.366-.789-.633-2.674-1.367Zm-.492 1.188 2.858.925 1.005.11-.926-.407-2.937-.628ZM15.069 20l3 .154 1-.154-1-.154-3 .154Zm.168 1.274 2.937-.628.926-.408-1.005.111-2.858.925Zm.492 1.188 2.674-1.367.79-.633-.944.366-2.52 1.634Zm.782 1.02 2.23-2.013.599-.817-.817.599-2.012 2.23Zm1.02.781 1.634-2.52.366-.943-.634.79-1.366 2.673Zm1.187.492.925-2.858.11-1.005-.407.926-.628 2.937Zm1.274.168.154-3-.154-1-.154 1 .154 3Zm1.274-.168-.628-2.937-.407-.926.11 1.005.925 2.858Zm1.188-.492-1.366-2.674-.634-.789.366.943 1.634 2.52Zm1.02-.782-2.012-2.23-.817-.599.598.817 2.23 2.012Zm.781-1.02-2.52-1.633-.943-.366.79.633 2.673 1.367Zm.493-1.187-2.859-.925-1.004-.11.926.407 2.937.628ZM24.915 20l-3-.154-1 .154 1 .154 3-.154Zm-.167-1.274-2.937.628-.926.408 1.004-.111 2.859-.925Zm-.493-1.188-2.674 1.367-.789.633.943-.366 2.52-1.634Zm-.781-1.02-2.23 2.013-.6.817.818-.599 2.012-2.23Zm-1.02-.781-1.634 2.52-.366.943.634-.79 1.366-2.673Zm-1.188-.492-.924 2.858-.111 1.005.407-.927.628-2.936Z", + fill: "#6666B3" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.315 15.168a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM18.008 15.518a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM16.835 16.194a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM15.878 17.15a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .616ZM15.203 18.323a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM14.852 19.63a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .616ZM14.852 20.985a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM15.203 22.292a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM15.878 23.465a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM16.835 24.422a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM18.008 25.097a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM19.315 25.448a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM20.67 25.448a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM21.977 25.097a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM23.15 24.422a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM24.106 23.465a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM24.781 22.292a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM25.132 20.985a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM25.132 19.63a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .616ZM24.781 18.323a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM24.106 17.15a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .616ZM23.15 16.194a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM21.977 15.518a.308.308 0 1 0 0-.615.308.308 0 0 0 0 .615ZM20.67 15.168a.308.308 0 1 0 0-.616.308.308 0 0 0 0 .616ZM19.992 21.385a1.385 1.385 0 1 0 0-2.77 1.385 1.385 0 0 0 0 2.77Z", + fill: "navy" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgInr); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/JPY.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/JPY.svg new file mode 100644 index 0000000000..3ea3e9be09 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/JPY.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgJpy = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M47.692 33.846A6.154 6.154 0 0 1 41.538 40H-1.538a6.154 6.154 0 0 1-6.154-6.154V6.154A6.154 6.154 0 0 1-1.538 0h43.076a6.154 6.154 0 0 1 6.154 6.154v27.692Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M20 30.77c5.948 0 10.77-4.822 10.77-10.77 0-5.948-4.822-10.77-10.77-10.77-5.948 0-10.77 4.822-10.77 10.77 0 5.948 4.822 10.77 10.77 10.77Z", + fill: "#ED1B2F" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgJpy); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/KRW.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/KRW.svg new file mode 100644 index 0000000000..12360c8beb --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/KRW.svg @@ -0,0 +1,35 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgKrw = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("path", { + d: "M47.685 33.846A6.154 6.154 0 0 1 41.53 40H-1.546A6.154 6.154 0 0 1-7.7 33.846V6.154A6.154 6.154 0 0 1-1.546 0H41.53a6.154 6.154 0 0 1 6.154 6.154v27.692Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M25.286 12.438c-4.175-2.923-9.93-1.907-12.855 2.268a4.617 4.617 0 0 0 1.134 6.43A4.619 4.619 0 0 0 19.992 20a4.616 4.616 0 0 1 7.562 5.295c2.924-4.175 1.91-9.93-2.268-12.857Z", + fill: "#C60C30" +}), /*#__PURE__*/React.createElement("path", { + d: "M26.42 18.868A4.616 4.616 0 0 0 19.992 20a4.617 4.617 0 0 1-7.562-5.295c-2.924 4.178-1.909 9.932 2.267 12.855a9.228 9.228 0 0 0 12.855-2.268 4.61 4.61 0 0 0-1.132-6.424Z", + fill: "#003478" +}), /*#__PURE__*/React.createElement("path", { + d: "m29.737 31.65 2.966-3.536 1.179.99-2.967 3.535-1.178-.99Zm3.954-4.713 2.966-3.534 1.178.99-2.966 3.533-1.178-.99Zm-1.597 6.694 2.966-3.534 1.178.99-2.966 3.533-1.178-.99Zm3.957-4.717 2.969-3.534 1.178.99-2.969 3.533-1.178-.99Zm-1.602 6.695 2.97-3.534 1.176.99-2.967 3.534-1.179-.99Zm3.956-4.715 2.964-3.539 1.18.99-2.964 3.538-1.18-.99Zm.006-21.788 1.178-.99 2.97 3.538-1.18.99-2.968-3.538ZM34.454 4.39l1.178-.989L38.6 6.937l-1.18.988-2.965-3.536Zm-2.359 1.982 1.179-.99 6.923 8.25-1.178.989-6.924-8.25Zm-2.357 1.975 1.18-.99 2.965 3.536-1.178.988-2.966-3.534Zm3.954 4.716 1.179-.99 2.969 3.534-1.177.99-2.97-3.534ZM2.146 24.39l1.179-.99 6.921 8.251-1.18.99-6.92-8.251Zm-2.354 1.978 1.177-.988 2.968 3.536-1.18.99-2.965-3.538Zm3.95 4.717 1.178-.99 2.97 3.535-1.18.989-2.968-3.534Zm-6.31-2.74 1.179-.99 6.923 8.25-1.18.99-6.922-8.25Zm-.001-16.695L4.35 3.4l1.18.988-6.923 8.251-1.177-.99Zm2.357 1.98L6.71 5.38l1.178.99-6.923 8.248-1.178-.987Zm2.358 1.977L9.07 7.357l1.179.99-6.923 8.25-1.179-.99Z", + fill: "#292F33" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgKrw); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/KZT.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/KZT.svg new file mode 100644 index 0000000000..16be52e6e5 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/KZT.svg @@ -0,0 +1,43 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgKzt = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M46.385 33.846A6.154 6.154 0 0 1 40.23 40H-2.846A6.154 6.154 0 0 1-9 33.846V6.154A6.154 6.154 0 0 1-2.846 0H40.23a6.154 6.154 0 0 1 6.154 6.154v27.692Z", + fill: "#00AFCA" +}), /*#__PURE__*/React.createElement("path", { + d: "M20.285 22.12a4.408 4.408 0 1 0 0-8.815 4.408 4.408 0 0 0 0 8.815Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "M20.288 12.972c.261-.003.357-.167.357-.363 0-.261-.357-2.301-.357-2.301s-.364 2.04-.364 2.301c0 .196.099.363.364.363Zm0 9.505c-.265.002-.364.166-.364.361 0 .264.364 2.276.364 2.276s.357-2.014.357-2.276c.001-.193-.096-.361-.357-.361Zm-1.233-.186c-.253-.065-.387.069-.438.258-.068.253-.25 2.317-.25 2.317s.877-1.878.945-2.13c.052-.19-.001-.378-.257-.445Zm2.462-9.182c.255.068.394-.067.445-.255.067-.254.236-2.292.236-2.292s-.864 1.85-.933 2.106c-.051.187-.002.374.252.441Zm-3.605 8.705c-.229-.128-.394-.034-.49.137-.131.226-.842 2.172-.842 2.172s1.334-1.586 1.465-1.812c.098-.171.096-.365-.133-.497Zm4.753-8.232c.229.132.398.036.495-.133.132-.227.823-2.15.823-2.15s-1.317 1.564-1.45 1.79c-.095.17-.095.362.131.493Zm-5.734 7.48c-.188-.184-.371-.136-.51.003-.184.186-1.375 1.881-1.375 1.881s1.7-1.188 1.885-1.37c.138-.14.187-.33 0-.514Zm6.721-6.724c.188.187.374.139.512 0 .187-.184 1.353-1.866 1.353-1.866s-1.675 1.173-1.86 1.359c-.139.138-.19.323-.005.508Zm-7.472 5.74c-.134-.224-.323-.224-.494-.127-.228.13-1.815 1.46-1.815 1.46s1.949-.705 2.175-.836c.17-.098.266-.267.134-.497Zm8.23-4.752c.134.23.328.23.496.134.228-.132 1.79-1.452 1.79-1.452s-1.922.697-2.15.827c-.17.099-.264.263-.135.491Zm-8.702 3.61c-.071-.253-.256-.302-.445-.253-.252.068-2.13.942-2.13.942s2.064-.177 2.316-.245c.19-.052.326-.19.259-.445Zm9.178-2.462c.07.255.256.308.445.257.253-.068 2.104-.939 2.104-.939s-2.037.176-2.292.243c-.188.05-.325.187-.257.439Zm-9.34 1.235c-.003-.261-.168-.357-.363-.357-.261 0-2.301.357-2.301.357s2.04.363 2.301.363c.195 0 .363-.098.363-.363Zm9.505 0c.001.265.166.363.361.363.263 0 2.276-.363 2.276-.363s-2.014-.357-2.276-.357c-.195-.001-.361.096-.361.357Zm-9.343-1.226c.064-.254-.07-.388-.259-.438-.252-.068-2.317-.251-2.317-.251s1.879.878 2.131.946c.19.05.377-.002.445-.257Zm9.18 2.46c-.068.255.067.394.255.445.254.067 2.292.237 2.292.237s-1.85-.866-2.106-.934c-.188-.05-.374-.002-.441.252ZM16.18 15.34c.128-.228.034-.394-.137-.49-.226-.131-2.172-.842-2.172-.842s1.586 1.334 1.813 1.464c.17.099.364.096.496-.132Zm8.233 4.752c-.133.23-.037.399.132.496.226.132 2.15.823 2.15.823s-1.564-1.316-1.79-1.448c-.17-.097-.361-.097-.492.13Zm-7.48-5.733c.183-.188.135-.371-.003-.51-.187-.184-1.882-1.375-1.882-1.375s1.188 1.7 1.37 1.884c.14.139.329.188.515 0Zm6.723 6.721c-.186.188-.139.375 0 .512.184.187 1.866 1.353 1.866 1.353s-1.172-1.676-1.358-1.862c-.139-.138-.323-.19-.508-.003Zm-5.739-7.474c.224-.134.225-.323.128-.494-.13-.226-1.46-1.815-1.46-1.815s.705 1.95.836 2.175c.096.171.267.267.496.134Zm4.753 8.232c-.228.133-.231.325-.134.494.132.228 1.452 1.79 1.452 1.79s-.697-1.924-.828-2.151c-.098-.168-.264-.265-.49-.133Zm-3.611-8.704c.252-.07.302-.255.252-.445-.068-.252-.941-2.13-.941-2.13s.177 2.064.244 2.316c.051.19.19.327.445.259Zm2.462 9.18c-.256.07-.308.255-.257.445.067.253.938 2.104.938 2.104s-.175-2.038-.243-2.29c-.05-.19-.186-.327-.439-.26Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "m24.61 28.685-.058.024-.063.01-.047.009-.088-.019-.039-.015-.035-.017-.042-.026-.069-.05-.063-.05-.035-.025-.045-.018-.03-.008h-.045l-.174.361-.036.051-.033.042-.036.026-.03.026-.045.017h-.042l-.038-.017-.054-.026-.015-.026-.019-.026-.018-.034-.019-.04-.024-.128-.051.042-.048.06-.095.144-.057.076-.06.058-.032.035-.042.027-.041.018-.051.015h-.025l-.044.01-.042-.01-.032-.015-.099-.118-.11-.119-.076.119-.088.1-.041.041-.039.042-.041.034-.079.043-.041.009h-.042l-.035-.01-.034-.018-.025-.026-.032-.04a3.833 3.833 0 0 0-.07-.186l-.008-.043-.016-.032-.018-.017h-.019l-.227.372-.033.032-.06.026-.132.033h-.078l-.06-.017-.019-.01-.024-.026-.007-.015v-.034l.031-.372-.024.01-.067.031c-.06.063-.12.128-.177.194l-.075.094-.094.078-.088.067-.049.027-.101.016-.042-.01-.018-.006-.017-.018-.01-.026v-.026l.01-.108.026-.17-.017-.1-.035-.06-.051.076-.083.11c-.07.075-.14.149-.212.22-.04.027-.08.056-.119.085l-.092.033-.019-.01h-.026l-.018-.015-.006-.01-.019-.025-.006-.026v-.033l-.01-.043.01-.32c-.154.105-.31.206-.466.303l-.059.026-.066.034c-.063.016-.125.031-.186.05h-.062l-.056-.008-.053-.019.026-.067.051-.119.032-.049.037-.05.033-.052.086-.084.094-.066.107-.07.111-.05.128-.042.126-.032.288-.05.143-.02c.424-.024.85-.027 1.275-.024l.466-.026.145-.017.268-.05.129-.036.12-.05.11-.05a3.95 3.95 0 0 1 .18-.136l.082-.095-.088-.168.07-.009.066-.015.07-.034.056-.043.025-.016.027-.026.019-.034.018-.024.006-.034v-.059l-.018-.033.145-.027.153-.016.162-.01h.168c.235.01.469.023.703.042.354.043.709.077 1.064.11l.319.018v.116l-.006.053-.019.049-.015.05-.019.042-.024.034c-.03.034-.062.068-.094.1l-.076.05-.081.033-.082.019-.093.017-.18-.017-.094-.026-.082-.044-.088-.041-.066-.06-.066-.066v.144c-.012.094-.028.186-.041.28l-.033.088-.018.035-.025.025-.018.026-.022.016Zm-6.798-.796.193.085c.038-.032.078-.063.118-.093l.075-.04.068-.043.254-.101.218-.102.111-.041.188-.1.075-.053c.191-.124.383-.247.576-.369l.167-.118.128-.102c.126-.114.25-.229.372-.346l.051-.034.059-.034c.07-.035.14-.069.212-.101l.143-.05c.286-.078.577-.14.87-.186.298-.035.596-.075.895-.109l.396-.067a6.48 6.48 0 0 1 .297-.076l.102-.128.163-.176.11-.11.124-.103.145-.109.167-.11.256-.151c.183-.093.364-.185.546-.28.323-.151.641-.311.958-.474l.151-.102.041-.128.06-.124.076-.128.195-.261c.09-.096.176-.191.262-.29.104-.101.212-.2.321-.295l.163-.134.082-.06.088-.058c.061-.036.123-.07.186-.102l.094-.043.09-.032.199-.053.098-.006.094-.009.099.01.093.015-.006.101-.024.1-.076.213-.063.109-.075.11-.092.117-.111.119.087-.01.076-.016.06-.019.057-.024.11-.034.16-.017.008.06v.058l-.009.059-.015.05-.025.051-.035.051-.033.04-.041.043a11.91 11.91 0 0 1-.356.33l.1.009c.074.023.148.046.224.066l.081.018-.098.077a7.734 7.734 0 0 1-.237.152l-.271.153-.136.084-.135.094-.126.102.057.008.078.033.034.01.033.017.027.007.025-.008-.168.094c-.105.05-.21.1-.312.153l-.13.077-.024.026-.015.026-.019.024.006.034.019.027.032.024.03.028-.012.032-.018.028-.032.024-.031.027-.082.04-.098.043-.192.067-.12.06.167.168-.06.058-.057.044-.05.026-.06.024-.117.017h-.166l.018.077.025.076.035.17c-.105.082-.212.16-.322.236l-.195.126-.217.126-.129.06-.126.059a7.122 7.122 0 0 1-.433.152l-.327.07-.18.025c.195.006.39.01.586.008l.48-.05.21-.042.187-.051c.123-.042.243-.088.363-.136l.234-.107.23-.128.218-.137.23-.134-.138-.067-.133-.042-.063-.03a2.39 2.39 0 0 0-.144-.065l-.079-.043.066-.05.082-.033.088-.033c.101-.024.204-.047.306-.069.132-.014.265-.03.397-.05l.168-.016.129-.033.034-.018.024-.026-.006-.01-.018-.016-.025-.01-.032-.015-.094-.018-.12-.017-.117-.01-.117-.016-.105-.027-.063-.026.826-.184.145-.043c.063-.023.125-.05.186-.076l.082-.052.035-.032-.01-.008-.014-.019-.079-.017-.108-.009h-.129c-.088-.006-.174-.012-.261-.015l-.108-.019-.07-.017.12-.049a12.8 12.8 0 0 1 .542-.154c.103-.035.208-.07.313-.101l.16-.068.075-.041.07-.042.024-.026.026-.034.025-.024.009-.027-.01-.026-.024-.018-.026-.006h-.234l-.11.006h-.152l-.044-.006-.03-.019-.036-.017c.307-.203.618-.404.93-.601l.243-.17c.067-.053.13-.11.193-.167l.075-.085.07-.084.05-.093.042-.092.024-.103v-.11h-.057l-.06.01-.132.05a8.488 8.488 0 0 1-.357.211l-.066.043-.078.033-.076.026-.07.017-.065.01h-.079l-.066-.027.205-.152c.164-.14.327-.282.489-.424.178-.17.352-.344.523-.524l.243-.27c.072-.096.146-.189.222-.28.06-.087.12-.175.177-.262l.018-.033.006-.026-.006-.035-.01-.025-.008-.028-.025-.017-.026-.026-.025-.009-.032-.015-.037-.01h-.066l-.033.01-.044.006-.025.028-.035.026a27.48 27.48 0 0 0-.51.524l-.205.194c-.134.117-.27.233-.407.348-.064.043-.129.086-.195.126l-.186.094.057-.05c.061-.06.121-.118.18-.178.217-.249.424-.508.624-.769l.391-.55.105-.184.104-.17.085-.153.066-.145.042-.116.009-.042v-.068l-.01-.026-.03-.05-.019-.018-.027-.007-.048-.028-.063-.017h-.115l-.033.01-.024.007-.036.019-.024.024-.07.06c-.075.09-.149.185-.22.28-.169.265-.347.523-.532.777l-.214.254-.107.11-.117.102.15-.281.237-.497.154-.363.066-.187.117-.381c.03-.123.056-.246.079-.37.01-.116.02-.232.027-.348l-.012-.085-.006-.075-.01-.079-.024-.098-.018-.028-.042-.042-.057-.024-.063-.019h-.057l-.054.01-.015.009-.025.006-.009.018c-.152.48-.268.97-.4 1.454-.05.136-.098.271-.15.406l-.127.245-.078.11.05-.244c.025-.141.047-.281.067-.423l.035-.348.01-.144a5.274 5.274 0 0 0-.02-.22l-.015-.085-.024-.068-.036-.05-.018-.017-.05-.017-.025-.01h-.028l-.025.01-.069.017-.066.034c-.052.261-.116.521-.186.778-.1.325-.22.643-.354.954-.09.19-.188.38-.29.566l-.186.322-.201.303c-.135.189-.275.375-.42.557-.142.16-.286.317-.432.473-.153.15-.308.297-.466.442-.164.135-.328.266-.496.395-.204.148-.414.29-.628.423l-.372.219-.592.272-.61.219-.504.154-.523.116-.262.043-.535.068-.27.017-.027.01-.026.007-.05.028-.058.04c-.066.057-.13.117-.195.177l-.136.137-.49.547-.187.186-.218.168-.086.059-.085.052-.184.084c-.287.117-.577.224-.865.339l-.075.041-.068.036-.05.032-.093.094-.026.042-.019.041-.006.06v.043", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "m20.91 28.27.14.018.07.026.015.008v.009h-.015l-.018.007-.136.027h-.108l-.353-.027-.897-.017c-.237.004-.474.01-.711.017-.21.016-.417.033-.626.051l-.162.026-.143.033c-.034.012-.066.024-.1.034l-.043.018-.034.026.016-.086.037-.086-.119.034-.101.05-.04.027-.036.033-.026.04-.006.043-.025-.058-.018-.052a1.237 1.237 0 0 0-.019-.11c.01-.044.019-.089.025-.133l.028-.043.015-.034.035-.04.068-.068.092-.06.105-.058a.774.774 0 0 0 .175.075.496.496 0 0 0 .18-.017c.094.083.337.066.371-.085a.369.369 0 0 0 0-.169l.102-.008.118-.018.262-.068.137-.026.126-.032.118-.017.1-.01-.041.036-.22.168-.083.058.107.028.094.017-.2.228-.052.067.066.026.068.019.077.017h.152l.15-.034.06-.035.07.035.068.026c.043.012.087.025.132.034.104.01.21.023.315.032h.637m-.77-2.572-.076.152-.086.196a4.01 4.01 0 0 0-.125.243l-.043.043-.1-.085-.11-.077-.119-.06-.125-.049-.272-.07-.134-.024c-.146-.017-.292-.03-.44-.041a9.27 9.27 0 0 1-.583-.028l-.27-.032-.153-.026-.143-.033-.15-.052-.129-.066-.093-.062-.194-.143c-.283-.266-.563-.535-.854-.795l-.168-.117-.077-.034-.08-.025-.143-.032a7.108 7.108 0 0 0-.252-.085c-.079-.038-.159-.073-.239-.109a4.87 4.87 0 0 1-.404-.28l-.085-.078-.167-.168-.162-.177c-.266-.324-.517-.66-.777-.99a14.84 14.84 0 0 0-.38-.388l-.11-.1-.11-.093-.243-.177-.025.008-.027.026-.026.034c-.016.039-.028.079-.04.119l-.01.033-.061-.027-.05-.026-.063-.027-.05-.017h-.11l-.06.017-.058.027c.046.058.09.117.134.177l.075.118.137.261.05.128.018.068.018.05.008.06v.048h-.455l.066.102c.05.07.104.137.158.203l.28.28.094.075.086.06a5.45 5.45 0 0 1-.22.019l-.221.024.075.07c.066.046.13.093.195.143l.11.075.11.068.11.06.101.034.094.024.075.017.025.01.019.018.006.008v.032l-.025.07-.006.048-.01.034v.025l.01.043.006.034.019.015.024.019.033.017.043.009.086.034.041.015.034.026.008.01v.016l-.008.01-.068.049-.033.034-.034.041v.035l-.008.034.017.091.295.102.068.015.068.028.05.026.044.026-.28.22.075.068.094.05.118.059c.085.03.17.058.256.086l.126.025.11.026h.1l-.093.068-.119.075-.126.07-.094.067.085.058c.257.133.52.256.788.365.467.19.946.357 1.427.506.108.026.214.054.32.085l.136.026-.273-.026c-.169-.022-.337-.048-.506-.077l-.237-.051-.466-.134-.218-.077c-.585-.227-1.156-.489-1.742-.71l.043-.025.119-.043.075-.017c.103-.03.203-.065.305-.102-.202-.03-.402-.066-.602-.107a7.146 7.146 0 0 0-.312-.094l-.06-.026-.05-.026-.042-.028-.028-.025v-.007l.01-.01.025-.009.025-.017.068-.026.295-.086.17-.059a24.06 24.06 0 0 0-.736-.126l-.119-.027-.094-.033-.033-.018-.033-.026-.027-.016-.017-.027.026-.017.075-.017a6.28 6.28 0 0 0 .237-.042l.135-.017a5.55 5.55 0 0 0 .228-.069l.036-.025.033-.027-.133-.051-.087-.015-.084-.019-.388-.05-.101-.025-.094-.019-.186-.066-.087-.043-.069-.05-.068-.06-.05-.075.018-.009.032-.01h.044l.067.01.322.017.188.018h.235l.066-.009.052-.017.034-.018a13.997 13.997 0 0 1-.474-.203 9.796 9.796 0 0 0-.313-.152l-.32-.168-.153-.094a12.19 12.19 0 0 1-.278-.203l-.119-.102-.052-.058-.052-.05-.033-.052-.035-.06-.034-.049-.018-.058-.014-.11h.057l.067.008.068.028.068.024.134.085.152.085.068.043.075.04.075.034.068.026.075.018.068.008h.077l.066-.026-.2-.154c-.166-.137-.329-.279-.49-.42-.268-.255-.525-.52-.771-.797l-.108-.143-.11-.135c-.06-.087-.12-.174-.18-.264l-.015-.033v-.059l.008-.026.008-.025.026-.017.025-.026.027-.018.033-.01.033-.006h.068l.042.007.037.009.032.026c.183.181.363.365.54.55.195.188.398.37.61.542l.193.125.1.052.094.033-.066-.042-.177-.177c-.217-.25-.423-.508-.626-.77-.09-.122-.177-.245-.263-.371a11.297 11.297 0 0 0-.237-.364 8.315 8.315 0 0 1-.187-.321 7.472 7.472 0 0 0-.107-.262l-.011-.041v-.07l.01-.024.033-.05.018-.02.027-.015.109-.035h.118l.034.008.025.009.034.018.094.085.22.28c.172.265.353.523.541.777l.2.254.11.109.12.101a20.153 20.153 0 0 1-.388-.775c-.053-.12-.104-.241-.153-.363l-.067-.186a6.797 6.797 0 0 0-.119-.382l-.041-.186-.031-.189-.019-.177-.007-.168.007-.084.011-.077.008-.077.017-.075.017-.028.009-.025.025-.027.016-.016.059-.026.06-.015h.058l.051.009.025.006.018.01.01.018.009.024c.144.473.263.953.387 1.431.05.134.1.266.154.397l.059.126.067.119.076.118-.05-.246a9.144 9.144 0 0 0-.067-.42c-.017-.163-.03-.328-.042-.49l.017-.22.017-.087.026-.066.034-.051.017-.018.025-.017.024-.008h.077l.07.025.066.033.118.533c.043.161.09.323.143.481.086.242.18.482.28.719l.119.244.169.323.184.32.205.305.219.303.204.254c.142.16.285.318.43.474.153.149.309.295.467.438l.245.205c.224.175.455.341.693.498.187.111.376.219.567.322l.581.28c.296.117.594.225.896.32.295.078.595.146.896.203.405.065.82.103 1.237.12Z", + fill: "#FFCC4D" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgKzt); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MDL.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MDL.svg new file mode 100644 index 0000000000..6795a4e3d2 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MDL.svg @@ -0,0 +1,64 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgMdl = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H29.231v40h12.307a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#DD2E44" +}), /*#__PURE__*/React.createElement("path", { + d: "M-1.538 0a6.154 6.154 0 0 0-6.154 6.154v27.692A6.154 6.154 0 0 0-1.538 40h12.307V0H-1.538Z", + fill: "#265FB5" +}), /*#__PURE__*/React.createElement("path", { + d: "M10.77 0h18.46v40H10.77V0Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.923 15.385h6.154V20h-6.154v-4.615Z", + fill: "#DD2E44" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.923 20v3.077L20 24.615l3.077-1.538V20h-6.154Z", + fill: "#269" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.923 9.23v1.54h1.539v3.076h3.076V9.231h-4.615Zm4.616 15.385L20 25.577l-1.538-.962-1.539 4.616L20 30.769l3.077-1.538-1.539-4.616Zm-6.154-12.307-1.539-1.539-1.538 1.539v15.384l3.077-3.077V13.846h1.538l-1.538-1.538Zm10.769-1.539-1.539 1.539-1.538 1.538h1.538v10.77l3.077 3.076V12.308l-1.538-1.539Z", + fill: "#A0724A" +}), /*#__PURE__*/React.createElement("path", { + d: "M17.283 19.375h.817V20h-.817v-.625Zm4.615 0h.817V20h-.817v-.625Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.365 27.297c-.163.095-.405-.015-.539-.245l-3.434-5.947c-.132-.231-.107-.494.057-.59l.21-.12c.163-.095.404.016.536.245l3.434 5.95c.134.228.108.491-.055.587l-.21.12Z", + fill: "#77B255" +}), /*#__PURE__*/React.createElement("path", { + d: "M27.41 20.605c.165.093.193.354.06.58l-3.37 5.843c-.132.226-.37.332-.535.238l-.208-.12c-.163-.095-.19-.354-.06-.581l3.372-5.844c.131-.224.37-.333.534-.236l.208.12Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "m16.923 24.615-1.538 1.539v1.538l1.538-1.538v-1.539Zm6.154 0v1.539l1.538 1.538v-1.538l-1.538-1.539Z", + fill: "#DD2E44" +}), /*#__PURE__*/React.createElement("path", { + d: "m20 18.462-1.538-1.539v4.55L20 23.078l1.538-1.603v-4.55L20 18.461Z", + fill: "#FFCC4D" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgMdl); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MXN.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MXN.svg new file mode 100644 index 0000000000..d50b8ed590 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MXN.svg @@ -0,0 +1,61 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgMxn = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M-1.538 0a6.154 6.154 0 0 0-6.154 6.154v27.692A6.154 6.154 0 0 0-1.538 40H9.23V0H-1.54Z", + fill: "#006847" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H30.77v40h10.77a6.154 6.154 0 0 0 6.153-6.154V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#CE1126" +}), /*#__PURE__*/React.createElement("path", { + d: "M9.23 0h21.54v40H9.23V0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M27.692 20a7.692 7.692 0 1 1-15.385 0H10.77a9.231 9.231 0 0 0 18.462 0h-1.539Z", + fill: "#A6D388" +}), /*#__PURE__*/React.createElement("path", { + d: "M13.143 23.49a.767.767 0 0 0-.72-.416.77.77 0 0 0-.652 1.117c.138.272.29.538.455.794l.006.01.013.019.004.01.002.004.006.007.005.01v.003l.004.007.002.003.004.008.002.003.005.006.002.005.004.005.001.004.005.008.001.002.003.004.005.01.002.002.004.008.002.003.01.015v.002l.008.01c.08.12.162.235.248.35a.766.766 0 0 0 1.072.155.767.767 0 0 0 .159-1.075 9.169 9.169 0 0 1-.662-1.092Zm-.764-2.433a8.104 8.104 0 0 1-.071-1.282.77.77 0 0 0-.746-.79l-.056.001a.768.768 0 0 0-.735.746c-.003.16-.005.319-.002.479v.138l.002.008v.043l.001.005-.001.003v.004l.001.003v.045l.002.005v.017l.001.029.002.014v.017c.014.246.038.49.07.733a.77.77 0 0 0 .865.654.774.774 0 0 0 .667-.872Zm8.144 6.615-.01.002-.19.012a7.836 7.836 0 0 1-1.092-.032.77.77 0 0 0-.154 1.53l.192.017.006.002.004-.002.004.002h.003l.01.002h.009l.004.001.011-.001.005.001h.007l.01.002.007.001h.02l.01.002h.02c.233.015.469.023.706.018h.06l.01-.001.01.001h.023l.007-.001h.03l.009-.002.01.002v-.002l.01.002h.001l.008-.002h.012l.01-.001h.009l.001.001.01-.001h.01l.008-.002h.03l.008-.002h.007l.006-.001.006.002h.008l.006-.002h.008c.064-.002.13-.008.195-.01a.76.76 0 0 0 .697-.81.758.758 0 0 0-.79-.728Zm-3.752-.689a7.801 7.801 0 0 1-1.114-.632.762.762 0 0 0-.466-.134.769.769 0 0 0-.405 1.402l.002.001.009.005.01.009.008.006.01.008c.409.278.843.523 1.295.732a.766.766 0 0 0 1.02-.374.766.766 0 0 0-.37-1.023Zm7.738-.612a.765.765 0 0 0-.381.123c-.359.227-.74.43-1.13.595a.766.766 0 0 0-.41 1.008.774.774 0 0 0 1.004.41l.207-.092h.003l.009-.006.003-.001.006-.003h.006l.006-.004.003-.003.01-.001.003-.003.004-.003.008-.003.005-.002.007-.003.003-.002.008-.003.003-.001c.005-.003.005-.005.008-.005l.003-.001.01-.005h.002l.01-.005.009-.004.003-.002.008-.004.003-.002.009-.004.001-.002.011-.002.01-.006.004-.001.006-.005h.003l.01-.006.012-.003.009-.006.012-.006.002-.002.021-.01.011-.004.022-.012.012-.005.01-.004.022-.012.01-.005.035-.019.01-.003.022-.012.01-.006h.002c.002-.002.005-.003.011-.003a.02.02 0 0 1 .01-.008l.012-.006.009-.005v-.001l.021-.01.013-.006.001-.001.008-.005.012-.006.01-.005h.003l.009-.006.01-.006.002-.001.01-.005.009-.005.003-.001.006-.005.005-.001.007-.005.003-.002.008-.004.003-.002.01-.003c-.002-.001 0-.001 0-.001l.01-.005.003-.001.006-.005.003-.002.01-.004.003-.002c0-.003.003-.003.006-.004l.005-.002.006-.003.004-.003.006-.003.005-.003.005-.003.004-.005.008-.001.006-.002.003-.003.006-.003.006-.005.003-.001.007-.003.006-.005.005-.003c.002.002.004 0 .007-.002l.003-.003.006-.003.005-.003.005-.003.006-.003.006-.005.003-.001c.003-.002.01-.002.012-.005-.003-.001-.003 0 0 0l.007-.004.01-.008.003-.002.011-.004.018-.01.013-.009a.145.145 0 0 1 .03-.017c.098-.058.2-.118.294-.18a.77.77 0 0 0 .234-1.061.853.853 0 0 0-.703-.346Zm3.956-7.105-.037.002a.769.769 0 0 0-.737.766c0 .426-.039.857-.111 1.275a.77.77 0 1 0 1.519.259v-.008l.001-.003.002-.003-.002-.003.002-.003v-.003l.001-.004v-.004l.002-.003v-.014c.003-.002.003-.005.003-.006v-.01c.032-.198.06-.398.08-.6l-.002-.003.002-.004.001-.008v-.017l.003-.004-.001-.006v-.003l.001-.005v-.006l.003-.002-.003-.005v-.006c.003-.001.003-.003.003-.004v-.03l.003-.004c.02-.25.033-.506.033-.763a.77.77 0 0 0-.766-.768Zm-.682 4.148a.77.77 0 0 0-1.046.301 7.46 7.46 0 0 1-.712 1.065.77.77 0 0 0 1.204.957c.179-.225.35-.46.508-.7.003-.01.01-.022.017-.03l.001-.002.007-.01.006-.012c.003-.003.006-.006.006-.01l.001.002.007-.009v-.001a.017.017 0 0 0 .004-.011l.003-.002.006-.009c.003-.002.003-.006.005-.01h.002l.006-.01.001-.003.003-.008.005-.003.003-.008h.003l.003-.009.002-.003.006-.006.001-.003c.002-.003.002-.006.005-.008l.002-.004.006-.005c0-.002 0-.003.003-.005v-.006l.004-.003.005-.008.002-.003.004-.009.003-.003.003-.006.003-.005c0-.001 0-.003.003-.004 0-.002 0-.003.003-.005l.005-.008.002-.004.003-.005.003-.004c.003-.002.003-.003.003-.005.003-.002.003-.003.003-.006l.003-.005.005-.006.004-.006v-.005l.003-.004.005-.007.005-.004v-.005l.006-.007v-.005c.003-.002.004-.003.004-.006l.004-.003.003-.005.004-.008.003-.004v-.003l.006-.008c0-.002 0-.003.004-.005l.001-.004.005-.006.003-.006.003-.005c.001-.002 0-.005.003-.006 0-.002 0-.003.003-.003l.003-.008.003-.003.003-.01h.003l.003-.007.003-.003.003-.008.003-.003.004-.01c.003 0 0-.002 0-.002l.006-.008.001-.003.006-.008v-.001l.005-.01.003-.003.003-.009.008-.009.005-.01.006-.012.003-.001.038-.072a.767.767 0 0 0-.306-1.034Z", + fill: "#5C913B" +}), /*#__PURE__*/React.createElement("path", { + d: "M20 26.154c2.549 0 4.615-.689 4.615-1.539S22.55 23.077 20 23.077c-2.549 0-4.615.689-4.615 1.538 0 .85 2.066 1.539 4.615 1.539Z", + fill: "#55ACEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M20.77 26.154c1.274 0 2.307-.689 2.307-1.539s-1.033-1.538-2.308-1.538c-1.274 0-2.307.689-2.307 1.538 0 .85 1.033 1.539 2.307 1.539Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.718 25.037a.769.769 0 0 1-.677-1.137c.247-.452.505-.863.773-1.223-.214.01-.436.014-.662.014-.424 0-.812-.346-.812-.771 0-.425.3-.77.726-.77l.126.002c.456 0 .923-.027 1.342-.066a.755.755 0 0 1 .63.24 3.716 3.716 0 0 1 .497-.295.753.753 0 0 1 .325-.145l.055-.01c.29-.095.493-.107.574-.107a.766.766 0 0 1 .734.996c-.126.409-.407.501-.901.6a1.847 1.847 0 0 0-.367.197.78.78 0 0 1-.921-.053c.21.273.22.663-.003.945-.262.334-.518.73-.763 1.181a.765.765 0 0 1-.675.402Zm-2.184-2.445a.751.751 0 0 1-.102-.006 10.728 10.728 0 0 1-1.624-.34.77.77 0 0 1-.519-.957l.01-.03-.019.035a.768.768 0 0 1-1.048.295 6.347 6.347 0 0 1-1.395-1.047.77.77 0 0 1 1.088-1.088c.303.303.658.57 1.058.792.33.185.47.576.352.919a.77.77 0 0 1 .908-.394c.425.126.89.223 1.385.289a.77.77 0 0 1 .663.863.76.76 0 0 1-.757.67Zm-3.772-3.598c-.656 0-1.504-.254-2.017-.86-.788-.93-1.251-2.122-1.18-3.036.018-.244-.22-.441-.454-.503-.134-.035-.37-.056-.48.182a.385.385 0 0 1-.699-.323c.24-.522.779-.754 1.373-.603.55.143 1.078.638 1.026 1.307-.056.711.348 1.707 1 2.477.343.406.94.571 1.346.586.33.017.498-.058.534-.09-.086-.205-1.226-.805-1.712-1.06-.414-.217-.538-.516-.568-.726-.103-.7.615-1.41 1.31-2.093.245-.241.478-.469.604-.637.143-.189.12-.315.092-.393-.106-.288-.566-.573-1.12-.696-.512-.114-.858-.361-1.028-.737-.223-.494-.104-1.14.36-1.977a.384.384 0 1 1 .672.374c-.438.788-.395 1.145-.33 1.288.064.141.229.241.492.3.65.145 1.434.53 1.674 1.18.137.37.068.77-.197 1.123-.16.214-.412.462-.679.725-.396.39-1.136 1.118-1.089 1.432.01.064.094.121.165.157 1.155.606 1.923 1.044 2.08 1.581.055.19.032.38-.065.553-.149.26-.46.42-.9.46-.066.006-.138.009-.21.009Z", + fill: "#5C913B" +}), /*#__PURE__*/React.createElement("path", { + d: "M22.308 21.538c.425 0 .769-.688.769-1.538 0-.85-.345-1.538-.77-1.538-.424 0-.768.688-.768 1.538 0 .85.344 1.538.769 1.538ZM18.91 18.75c0 .444-.53.802-1.185.802-.654 0-1.187-.358-1.187-.801 0-.443.531-.802 1.187-.802.653 0 1.186.359 1.186.802Zm-1.825-7.118c.076.327-.35.708-.953.851-.603.143-1.154-.006-1.232-.332-.077-.328.35-.71.95-.852.605-.142 1.158.006 1.235.333Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "M26.974 19.93c.138.108.374-1.12.338-1.504 0-.026-.044-.84.128-1.421.106-.197.112-1.666-.05-2.053.128-.01.284-.052.302-.209-.597.22-.737-1.257-1.31-2.106-.557-.85-1.248-1.346-1.97-1.863.054-.145.14-.28.25-.415-.885.443-2.264-1.162-4.3-1.042-.457.045-.674.072-.791.352-.38.031-.766.117-.766.617 0 .12.109.339.352.34.332.097.603.022.83.486l.06.48s-.298-.38-.46-.44l.1-.204c-.155-.09-.427-.017-.427-.017s-.592-.277-1.068-.203l-.092-.385c-.083.237-.27.225-.295.448-.053-.16-.122-.359-.171-.519-.168.228-.119.474-.179.711-.064.056-.197.057-.23-.095-.017-.188-.04-.205-.04-.428-.12.21-.265.314-.313.675l-.127-.4c.004.473-.402.754-.787 1.088-.109.2.017.202.027.305l.203.101.364-.026c.06.075.011.082.17.13.424.118.953-.392 1.369.41-.191.16-.383.534-.322.605.077 0-.154.107.157.009-.323.314-.541.728-.541.752-.037.09.129-.012.095.15l.077-.01c-.737.797-.025 1.654-.103 2.114.123.198.138-.005.292-.024.13.566.502.909.73 1.356l-.48.005c.01.212.203.414.355.6l-.322.101c-.229.117-.38.242-.541.422-.107.258.512.32.81.366l-.01.313c.466.044 1.004-.094 1.004-.12l.117-.091.263.144c.088 0 .225-.35.162-.62.17.202.33.526.498.73l.159-.022c.144.23.343.457.488.686l.161.062c.094-.033.174-.043.225-.228l.074.13.255-.176.178-.035.134.218c.079-.03.155-.2.16-.381.08.158.102.146.16.187l.119-.25.638.598.483.027c.172.117.645.191.725.002.387.166.844-.021.821-.206.357.142.907.046.907.023.066-.008.235-.174.075-.299-1.18-.821-2.93-2.181-3.605-2.509 0-.243-.183-1.118-.38-1.358l.16-.268c.46.43.626.388.871.455.261.208.352.524.614.811l.234.043c-.162-.41-.363-.809-.853-1.343.253.127.671.463.951.708.185.31.239.555.408.943.123.079.25.366.232.128-.03-.448-.345-1.157-.345-1.208.502.397.496 1.015.648 1.392.128.191.192.447.248.386l-.148-1.163-.086-.426c.37.214.503 1.03.677 2.008 0 .155.063.326.054.426.08.099.17.37.17.21 0 0 0-1.591-.11-1.956-.028-.195.046-.512.046-.512.135.66.28 1.375.417 2.034v.484l.203.205c.038-.4.085-.797.125-1.194l-.153-1.423v-.406c-.003-.143.131-.117.216.046.02.35.02.621.034.97.06.396.101.687.13 1.193.017.41.036 1.39.122 1.374Z", + fill: "#C1694F" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgMxn); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MYR.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MYR.svg new file mode 100644 index 0000000000..132c882263 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/MYR.svg @@ -0,0 +1,45 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgMyr = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M55.385 33.846A6.154 6.154 0 0 1 49.23 40H6.154A6.154 6.154 0 0 1 0 33.846V6.154A6.154 6.154 0 0 1 6.154 0H49.23a6.154 6.154 0 0 1 6.154 6.154v27.692Z", + fill: "#DD2E44" +}), /*#__PURE__*/React.createElement("path", { + d: "M.854 36.923h53.678c.528-.91.853-1.95.853-3.077H0c0 1.126.325 2.168.854 3.077ZM0 27.693h55.385v3.076H0v-3.077Zm0-6.155h55.385v3.077H0V21.54Zm0-6.153h55.385v3.077H0v-3.077ZM0 9.23h55.385v3.077H0V9.23Zm.854-6.154A6.085 6.085 0 0 0 0 6.154h55.385c0-1.126-.325-2.17-.854-3.077H.854Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M27.692 0H6.154A6.154 6.154 0 0 0 0 6.154v15.384h27.692V0Z", + fill: "#010066" +}), /*#__PURE__*/React.createElement("path", { + d: "M14.668 18.82A8.051 8.051 0 1 1 17.77 3.342a9.166 9.166 0 0 0-5.463-1.804 9.231 9.231 0 0 0 0 18.462 9.167 9.167 0 0 0 5.463-1.803c-.956.4-2.003.623-3.103.623Z", + fill: "#FFCC4D" +}), /*#__PURE__*/React.createElement("path", { + d: "m19.88 5.89.514 2.493 1.543-2.023-.619 2.468 2.27-1.153-1.63 1.956 2.545-.054-2.315 1.055 2.315 1.056-2.544-.054 1.629 1.955-2.27-1.152.619 2.47-1.543-2.025-.514 2.493-.514-2.493-1.543 2.024.619-2.47-2.27 1.153 1.628-1.955-2.543.054 2.315-1.056-2.315-1.055 2.543.054-1.628-1.956 2.27 1.153-.619-2.468 1.543 2.023.514-2.492Z", + fill: "#FFCC4D" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgMyr); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/NOK.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/NOK.svg new file mode 100644 index 0000000000..e8fe5672ed --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/NOK.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgNok = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M10.692 0h-9.23a6.154 6.154 0 0 0-6.154 6.154v9.23h15.384V0Zm33.846 0H19.923v15.385h30.77V6.154A6.154 6.154 0 0 0 44.537 0ZM10.692 40h-9.23a6.154 6.154 0 0 1-6.154-6.154v-9.23h15.384V40Zm33.846 0H19.923V24.615h30.77v9.231A6.154 6.154 0 0 1 44.537 40Z", + fill: "#EF2B2D" +}), /*#__PURE__*/React.createElement("path", { + d: "M17.615 0h-4.529l-.038 17.692h-17.74v4.616h17.73L13 40h4.615V22.308h33.077v-4.616H17.615V0Z", + fill: "#002868" +}), /*#__PURE__*/React.createElement("path", { + d: "M17.615 40h2.308V24.615h30.77v-2.307H17.614V40Zm2.308-40h-2.308v17.692h33.077v-2.307H19.923V0ZM13 0h-2.308v15.385H-4.692v2.307H13V0ZM-4.692 22.308v2.307h15.384V40H13V22.308H-4.692Z", + fill: "#EEE" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-4.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgNok); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/NZD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/NZD.svg new file mode 100644 index 0000000000..9bd963044a --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/NZD.svg @@ -0,0 +1,70 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgNzd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.23 0H-1.845c-.316 0-.626.023-.93.07l-.006 2.698-4.2-.006A6.13 6.13 0 0 0-8 6.154v27.692A6.154 6.154 0 0 0-1.846 40H41.23a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 41.23 0Z", + fill: "#00247D" +}), /*#__PURE__*/React.createElement("path", { + d: "M36.914 6.923H34.97l-.299-.892-.364-1.086-.365 1.086-.298.892H31.7l.824.682.726.6-.306.903-.411 1.203 1.01-.776.764-.589.764.59 1.01.775-.411-1.203-.306-.903.726-.6.823-.682Z", + fill: "#EEEDED" +}), /*#__PURE__*/React.createElement("path", { + d: "m34.308 6.154-.386 1.154h-1.153l.931.77-.392 1.153 1-.77 1 .77-.393-1.153.931-.77h-1.152l-.386-1.154Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M36.914 31.923H34.97l-.299-.892-.364-1.086-.365 1.086-.298.892H31.7l.824.682.726.6-.306.903-.411 1.203 1.01-.776.764-.589.764.59 1.01.775-.411-1.203-.306-.903.726-.6.823-.682Z", + fill: "#EEEDED" +}), /*#__PURE__*/React.createElement("path", { + d: "m34.308 31.154-.386 1.154h-1.153l.931.77-.392 1.153 1-.77 1 .77-.393-1.153.931-.77h-1.152l-.386-1.154Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M43.068 13.077h-1.943l-.299-.892-.364-1.087-.365 1.087-.299.892h-1.943l.824.681.726.6-.306.903-.411 1.204 1.009-.776.764-.589.765.59 1.01.775-.411-1.204-.306-.902.726-.6.823-.682Z", + fill: "#EEEDED" +}), /*#__PURE__*/React.createElement("path", { + d: "m40.462 12.308-.387 1.153h-1.152l.93.771-.392 1.153 1-.77 1 .77-.392-1.153.931-.77h-1.152l-.386-1.154Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M30.76 16.154h-1.943l-.299-.893-.364-1.086-.365 1.086-.298.893h-1.943l.823.681.726.6-.306.903-.411 1.203 1.01-.775.764-.59.765.59 1.009.776-.411-1.204-.306-.903.726-.6.823-.681Z", + fill: "#EEEDED" +}), /*#__PURE__*/React.createElement("path", { + d: "m28.154 15.385-.386 1.153h-1.153l.931.771-.392 1.152 1-.769 1 .77-.392-1.153.93-.77H28.54l-.386-1.154Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.23 20V0H-1.845c-.492 0-.93.07-.93.07l-.006 2.698-4.2-.006s-.064.09-.195.315A6.136 6.136 0 0 0-8 6.154V20h29.23Z", + fill: "#00247D" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.23 0h-3.585L10.46 5.03V0H2.77v3.952L-2.775.07c-.945.145-1.831.5-2.573 1.023l7.234 5.062h-2.67L-6.513 2.14c-.17.198-.325.403-.47.622l4.848 3.392H-8v7.692h5.977L-8 18.102V20h5.126l5.643-3.95V20h7.692v-5.03L17.643 20h3.588v-3.122L16.9 13.846h4.33V6.154h-4.329l4.33-3.032V0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M8.923 0H4.308v7.692H-8v4.616H4.308V20h4.615v-7.692h12.308V7.692H8.923V0Z", + fill: "#CF1B2B" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.23 0h-2.247l-8.522 5.968v.186h2.418L21.23.304V0ZM-5.347 1.092c-.432.3-.821.651-1.164 1.048l5.727 4.014h2.67l-7.233-5.062Zm7.251 12.754L-6.87 20h2.657l6.983-4.89v-1.264h-.866Zm19.328 5.85v-1.878l-5.673-3.972h-2.681l8.354 5.85Z", + fill: "#CF1B2B" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-8)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgNzd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/PLN.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/PLN.svg new file mode 100644 index 0000000000..edae72dc09 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/PLN.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgPln = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154V20h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 33.846A6.154 6.154 0 0 0-1.538 40h43.077a6.154 6.154 0 0 0 6.153-6.154V20H-7.692v13.846Z", + fill: "#DC143C" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgPln); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RON.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RON.svg new file mode 100644 index 0000000000..7248d2c4f6 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RON.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgRon = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M-1.538 0a6.154 6.154 0 0 0-6.154 6.154v27.692A6.154 6.154 0 0 0-1.538 40h12.307V0H-1.538Z", + fill: "#002B7F" +}), /*#__PURE__*/React.createElement("path", { + d: "M10.77 0h18.46v40H10.77V0Z", + fill: "#FCD116" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H29.231v40h12.307a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#CE1126" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgRon); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RSD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RSD.svg new file mode 100644 index 0000000000..d0b49b63a6 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RSD.svg @@ -0,0 +1,73 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgRsd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M-3.692 12.308h55.384v15.384H-3.692V12.308Z", + fill: "#0C4076" +}), /*#__PURE__*/React.createElement("path", { + d: "M-3.692 33.846A6.154 6.154 0 0 0 2.462 40h43.076a6.154 6.154 0 0 0 6.154-6.154v-6.154H-3.692v6.154Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M51.692 6.154A6.154 6.154 0 0 0 45.538 0H2.462a6.154 6.154 0 0 0-6.154 6.154v6.154h55.384V6.154ZM7.077 12.308v14.615a8.462 8.462 0 0 0 16.923 0V12.308H7.077Z", + fill: "#C6363C" +}), /*#__PURE__*/React.createElement("path", { + d: "M15.539 3.172c-6.059 0-7.957 2.573-7.453 3.534.505.962 2.019 3.437 2.019 3.437s-.48.192 0 1.154c.48.961 2.355.312 5.432.312 3.077 0 4.952.65 5.432-.312.48-.962 0-1.154 0-1.154s1.514-2.475 2.02-3.437c.506-.961-1.392-3.534-7.45-3.534Zm-5.29 4.568c-.435.135 0 1.466-.154.89-.126-.475-.615-.673-.615-.408 0 .264-.192 0-.145-.48.048-.482-.095-.77-.384-1.179-.288-.41-.288-.77.074-1.01.36-.24 1.153-.433 1.153-.433s.313 1.37.48 1.683c.168.312.48.517.48.517s-.144.228 0 .348c.145.12.313.409.313.409s-.528-.432-.623-.337c-.096.095.12.217.095.385-.024.169-.29-.505-.674-.385Zm4.905.025c-.12.12-.217-.097-.457-.265-.24-.168-.385-.07-.337.122.048.192-.29.167-.29.456 0 .29-.312.168-.312.168s.385-1.01-.264-.986c-.368.014-.24.77 0 1.034-.106-.162-.41-.168-.662-.36-.252-.192.036-.506-.157-.434-.192.072-.312.385-.504.457-.192.072-.096-.219 0-.457.095-.24-.111-.36-.111-.36s.015-.168.16-.265c.145-.095.192-.264 0-.457-.192-.192-.888-1.273-.672-1.635.217-.36.937-.77 2.957-.721.36 1.658-.193 2.475-.193 2.475s.41.265.53.41c-.29.12-.073.24.12.408.192.17.312.29.192.41Zm3.75-.265c.096.24.193.53 0 .457-.192-.072-.312-.385-.504-.457-.192-.072.095.242-.157.434s-.554.198-.662.36c.24-.265.368-1.02 0-1.034-.649-.025-.264.986-.264.986s-.312.12-.312-.168c0-.287-.337-.264-.29-.456.048-.193-.095-.29-.337-.122-.24.168-.337.385-.457.265s0-.24.193-.41c.194-.167.41-.287.121-.407.12-.145.53-.41.53-.41s-.553-.816-.193-2.475c2.019-.048 2.74.36 2.957.722.217.36-.48 1.443-.674 1.633-.194.191-.144.36 0 .457.145.096.16.265.16.265s-.207.12-.11.36Zm3.22-.937c-.289.41-.432.697-.384 1.179.048.48-.145.744-.145.48 0-.265-.489-.065-.615.409-.154.575.282-.754-.154-.891-.384-.12-.89 1.034-.77.914s.29-.817.193-.914c-.095-.097-.624.337-.624.337s.167-.29.312-.41c.144-.12 0-.347 0-.347s.312-.205.48-.517c.168-.312.48-1.683.48-1.683s.794.192 1.154.432c.36.24.363.602.074 1.011Z", + fill: "#EDB92E" +}), /*#__PURE__*/React.createElement("path", { + d: "M15.706 3.45a.278.278 0 0 1-.277.276.278.278 0 0 1-.277-.277V1.022c0-.153.125-.277.277-.277.153 0 .277.124.277.277v2.427Z", + fill: "#FFAC33" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.26 1.67c0 .14-.112.253-.252.253h-1.202a.251.251 0 0 1-.252-.252c0-.14.112-.253.252-.253h1.202c.14 0 .252.113.252.253Z", + fill: "#EDB92E" +}), /*#__PURE__*/React.createElement("path", { + d: "M16.332 3.172a.926.926 0 1 1-1.852 0 .926.926 0 0 1 1.852 0Zm-5.249 8.022c0 .226-.26.41-.581.41-.322 0-.582-.184-.582-.41 0-.225.26-.408.582-.408.321 0 .581.182.581.408Z", + fill: "#0C4076" +}), /*#__PURE__*/React.createElement("path", { + d: "M13.423 11.054c0 .226-.26.41-.582.41-.321 0-.581-.184-.581-.41 0-.225.26-.408.582-.408.32 0 .581.183.581.408Zm5.192 0c0 .226-.26.41-.581.41-.322 0-.582-.184-.582-.41 0-.225.26-.408.582-.408.32 0 .581.183.581.408Z", + fill: "#C6363C" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.018 11.194c0 .226-.26.41-.581.41-.322 0-.582-.184-.582-.41 0-.225.26-.408.582-.408.322 0 .581.182.581.408Zm-5.006-.17c0 .227-.26.41-.581.41-.322 0-.582-.183-.582-.41 0-.225.26-.407.582-.407.321 0 .581.181.581.408Z", + fill: "#0C4076" +}), /*#__PURE__*/React.createElement("path", { + d: "M12.132 27.018c-.526 1.194-.581 1.782-1.204 1.74-.625-.041-1.065-.147-1.065.105 0 .25.992.146.992.146s-.937.4-.752.86c.183.462.992-.586.992-.586s.165.042.477-.21c.313-.251 1.139-1.467 1.139-1.467l-.579-.588Zm6.788 0c.526 1.194.581 1.782 1.205 1.74.624-.041 1.064-.147 1.064.105 0 .25-.99.146-.99.146s.936.4.752.86c-.183.462-.993-.586-.993-.586s-.164.042-.476-.21c-.313-.251-1.139-1.467-1.139-1.467l.577-.588Z", + fill: "#EDB92E" +}), /*#__PURE__*/React.createElement("path", { + d: "M22.637 16.443c-.27-1.858-2.02-1.282-2.763 0-.743 1.282-1.385 2.05-2.072 1.154-.688-.897-1.142-1.859-.148-3.077l.994-1.218c-.142-.737-.737-.577-1.59-.225-.852.352-1.39.192-1.306.577.086.384.397.417.397.417s-.537.523-.678 2.327c-.142-1.804-.679-2.327-.679-2.327s.313-.033.397-.417c.085-.385-.454-.225-1.306-.577-.852-.352-1.448-.512-1.59.225l.995 1.218c.993 1.218.54 2.18-.148 3.077-.686.897-1.33.224-2.072-1.059-.743-1.281-2.494-1.858-2.763 0-.271 1.859.043 5.096.043 5.096s-.171 1.763.17 3.27c.34 1.505.54 2.851 0 4.005.596-.16.965-.929.965-.929s-.198.93.17.834c.37-.096.455-.802.738-1.059.284-.255.512-.832.512-.832s.597-.225 0 .77c.483.032.795-.29.795-.29l.17.899.284-.48.142.864.51-.834.336.385s.063-1.634.517-1.314c.454.32.482 1.379.17 2.019-.312.64 0 .898 0 .898s-.453.674-.685 1.058c-.233.385.12.833.12.833s-.88 1.314-.636 1.827c.237.493 1.703.807 2.776.83l.009.004.06-.001.06.001.009-.004c1.072-.023 2.538-.337 2.775-.83.246-.512-.635-1.827-.635-1.827s.35-.448.12-.833a33.433 33.433 0 0 0-.688-1.058s.313-.259 0-.898c-.31-.64-.283-1.699.171-2.019.454-.32.515 1.314.515 1.314l.336-.385.51.834.142-.864.285.48.169-.899s.312.32.795.29c-.596-.995 0-.77 0-.77s.228.577.511.834c.283.257.37.961.739 1.058.369.096.17-.834.17-.834s.37.77.965.93c-.539-1.154-.34-2.502 0-4.006.341-1.507.17-3.27.17-3.27s.318-3.334.047-5.192Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M14.601 14.326c-.676-.65-2.366-1.49-2.926-1.37-.56.12-1.009.506-.592 1.107.417.602.592.577.592.577s.666-.601.956-.265c.289.337.047.457-.48.505-.53.048-1.066-.312-1.066-.312s.173.624.907.697c.494.48 1.117.12 1.431.12.314 0 1.778-.48 1.178-1.059Zm1.74 0c.677-.65 2.367-1.49 2.927-1.37.56.12 1.009.504.592 1.106-.417.601-.592.577-.592.577s-.666-.602-.956-.265c-.289.337-.047.457.48.505.53.047 1.066-.313 1.066-.313s-.173.625-.907.697c-.494.482-1.117.122-1.431.122-.314 0-1.78-.48-1.178-1.059Zm-4.696 16.75c.21-.487.063-.556-.107-.725a1.219 1.219 0 0 1-.255-.403s-.085.234-.255.403c-.171.168-.319.237-.108.724-.512-.303-.597.253-.362.59.067-.303.47-.234.47.135 0 .37-.334.202-.294.352.041.153.346.471.547.471.202 0 .508-.318.548-.47.042-.153-.292.016-.292-.353 0-.37.401-.438.47-.135.236-.337.151-.893-.362-.59Zm8.366 0c.21-.487.063-.556-.108-.725-.17-.168-.255-.403-.255-.403s-.085.234-.256.403c-.17.168-.318.237-.107.724-.513-.303-.597.253-.362.59.066-.303.47-.234.47.135 0 .37-.335.202-.293.352.04.153.346.471.548.471.201 0 .507-.318.547-.47.042-.153-.292.016-.292-.353 0-.37.402-.438.47-.135.235-.337.152-.893-.362-.59Z", + fill: "#EDB92E" +}), /*#__PURE__*/React.createElement("path", { + d: "M12.068 18.27v5.936a3.438 3.438 0 0 0 6.874 0V18.27h-6.874Z", + fill: "#C6363C" +}), /*#__PURE__*/React.createElement("path", { + d: "M18.942 21.803h-2.696V18.27h-1.48v3.534H12.07v1.482h2.697v4.275c.239.052.485.085.74.085s.502-.033.742-.085v-4.275h2.697v-1.482h-.003Z", + fill: "#EEE" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-3.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgRsd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RUB.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RUB.svg new file mode 100644 index 0000000000..0389d39831 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/RUB.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgRub = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.692 33.846A6.154 6.154 0 0 1 41.538 40H-1.538a6.154 6.154 0 0 1-6.154-6.154v-6.154h55.384v6.154Z", + fill: "#CE2028" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.692 12.308h55.384v15.384H-7.692V12.308Z", + fill: "#22408C" +}), /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v6.154h55.384V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#EEE" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgRub); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SAR.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SAR.svg new file mode 100644 index 0000000000..347a4467d4 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SAR.svg @@ -0,0 +1,58 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgSar = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.538 0H-1.538a6.154 6.154 0 0 0-6.154 6.154v27.692A6.154 6.154 0 0 0-1.538 40h43.076a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 41.538 0Z", + fill: "#006C35" +}), /*#__PURE__*/React.createElement("path", { + d: "M6.03 13.923c.972.092.435-1.645.787-1.96.066-.155.19-.157.198.04v1.474c-.009.48.307.62.551.72.256-.02.425-.01.525.237l.12 2.55s.59.17.618-1.435c.03-.941-.187-1.729-.06-1.912.005-.18.234-.19.394-.103.254.178.368.4.762.312.601-.165.961-.457.97-.918-.035-.439-.084-.877-.274-1.316.027-.08-.115-.286-.089-.366.108.17.273.155.31 0-.102-.337-.26-.66-.519-.8-.212-.188-.523-.15-.637.242-.052.449.163.984.49 1.42.069.17.167.454.124.709-.174.098-.35.058-.494-.095 0 0-.478-.359-.478-.439.127-.812.029-.904-.042-1.13-.05-.31-.197-.41-.317-.622-.12-.126-.281-.126-.358 0-.213.366-.114 1.154.04 1.506.109.323.278.528.198.528-.066.183-.201.14-.3-.071-.141-.437-.169-1.088-.169-1.382-.043-.363-.09-1.14-.328-1.337-.146-.198-.363-.103-.438.08a6.47 6.47 0 0 0 .023 1.056c.163.583.215 1.097.295 1.695.022.802-.463.348-.441-.05.112-.514.083-1.327-.017-1.533-.079-.204-.172-.257-.363-.223-.151-.012-.542.415-.653 1.123 0 0-.093.365-.133.69-.054.366-.294.624-.463-.051-.147-.491-.236-1.702-.48-1.419-.071.946-.156 2.61.647 2.78Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M7.492 14.614c-.8.015-1.97 1.05-2.003 1.624.843-.406 1.673-.796 2.531-1.215-.138-.208-.008-.394-.528-.41Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M11.903 17.717c.37-1.235-.06-2.146.142-2.142.426.46 1.023.062 1.153-.098.057-.08.197-.132.296-.028.334.24.921.126 1.043-.295.07-.412.128-.84.141-1.282-.272.085-.475.142-.493.254l-.057.366c-.023.119-.259.123-.268-.027-.103-.47-.53-.531-.79.197-.173.141-.487.169-.52-.042.04-.488-.156-.554-.55-.325-.126-.967-.254-1.892-.38-2.86.165-.004.315.117.465-.07-.165-.513-.513-1.559-.705-1.634-.094-.114-.174-.043-.295-.014-.207.066-.399.245-.339.59.245 1.485.405 2.616.648 4.1.037.175-.108.404-.296.38-.318-.215-.398-.652-.943-.633-.395.005-.846.432-.901.846-.066.328-.09.685 0 .972.277.333.61.3.901.225.239-.098.437-.338.52-.282.057.07.014.859-1.126 1.465-.69.31-1.24.38-1.535-.183-.183-.352.014-1.69-.437-1.38-1.334 3.438 3.123 3.915 3.621.142.048-.156.236-.311.268-.057-.103 3.418-3.448 3.653-4.015 2.578-.142-.254-.183-.817-.197-1.155-.085-.673-.437-.414-.492.252-.057.37-.042.475-.042.83.177 2.7 4.485 1.54 5.183-.69Zm-1.662-2.335c-.027.052-.149.03-.238.03-.101-.004-.15-.021-.21-.103-.028-.092.058-.18.096-.249.048-.082.305-.166.396.061.04.104.004.21-.043.26Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M13.234 12.322c.268-.099 1.537-1.55 1.537-1.55-.066-.057-.125-.098-.191-.155-.07-.062-.063-.123 0-.183.314-.183.214-.585.05-.768a.762.762 0 0 0-.684.006c-.22.211-.272.55-.098.762.169.08.338.25.226.345-.519.553-1.94 1.509-1.776 1.543.036.046.908.044.936 0Zm.94-2.279c.081-.02.186.052.235.16.05.108.023.21-.057.23h-.003c-.08.02-.184-.051-.234-.16-.047-.108-.021-.21.059-.23ZM5.942 18.86c-.21.426-.297.133-.316-.105-.032-.453.01-.87.06-1.199.052-.338 0-.235-.108-.098-.475.757-.516 1.89-.253 2.226.138.16.367.23.538.178.299-.129.43-.735.359-.955-.102-.155-.18-.18-.28-.047Zm15.663-8.013a52.992 52.992 0 0 1 1.576 2.248c.1.661.173 1.308.216 1.95a30.97 30.97 0 0 1 .032 3.878c.231.009.605-.376.734-.937.085-.777-.03-2.16-.038-2.619a34.245 34.245 0 0 0-.042-.861c.606.99 1.197 2.027 1.774 3.18.21-.099.165-1.277.041-1.444-.461-.989-1.096-1.967-1.3-2.342a18.309 18.309 0 0 0-.638-.984c-.048-.516-.095-.935-.13-1.073-.095-.659.273.072.222-.311-.118-.659-.484-1.103-.912-1.706-.139-.196-.134-.236-.348.047-.089.202-.106.376-.101.54a3.811 3.811 0 0 0-.214-.284c-.37-.319-.392-.337-.7-.597-.155-.111-.534-.311-.602.021-.034.294-.015.453.034.699.04.164.279.438.396.595Zm1.138-.037c.03.128.06.256.08.386l.023.125a5.514 5.514 0 0 0-.201-.265c-.253-.298-.043-.233.098-.246Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M26.03 17.99c-.536.558-1.309 1.245-2.149 1.564-.09.101.225.537.631.537.682-.08 1.282-.463 1.837-1.471.15-.234.411-.737.417-1.128.05-2.286-.114-4.066-.457-5.718-.023-.16-.009-.35.019-.399.043-.052.194 0 .274-.129.115-.12-.31-1.104-.553-1.483-.086-.17-.115-.283-.258.02-.151.246-.251.676-.239 1.075.325 2.251.425 4.222.637 6.473.017.217-.015.534-.16.658Zm8.968-5.708c-.023-.16-.093-.533-.066-.58.043-.114.267.012.346-.119.117-.118-.575-1.008-.816-1.386-.088-.17-.117-.283-.26.02-.151.246-.203.688-.143 1.075.361 2.445.63 4.282.686 6.45-.033.206-.039.316-.136.575-.214.274-.449.615-.672.782-.222.164-.694.323-.85.444-.487.285-.489.61-.092.62.68-.08 1.486-.135 2.042-.975.15-.234.326-.87.334-1.26.05-2.286-.03-3.994-.373-5.646Zm-5.155 1.903c.006-.314.035-.73.052-.99.008-.097.031-.206.123-.23.094-.025.26.095.262-.006-.018-.199-.059-.494-.17-.634-.155-.228-.562-.173-.635.184.002.133.062.203.051.323-.018.068-.09.114-.257.034.028-.024-.109-.214-.109-.214-.13-.08-.306.005-.419.077a.638.638 0 0 0-.036.508c.184.35.829.941 1.138.948Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M29.626 11.51c.45.552.91 1.112 1.374 1.68.1 1.272.126 2.312.225 3.582-.014.539-.18 1.008-.339 1.076 0 0-.238.138-.398-.014-.117-.048-.583-.777-.583-.777-.239-.218-.396-.157-.565 0-.468.45-.678 1.297-.995 1.878-.083.131-.314.242-.571-.009-.65-.89-.27-2.157-.35-1.83-.58.653-.324 1.735-.193 1.969.19.381.346.627.718.817.339.249.603.092.748-.082.341-.355.346-1.255.506-1.437.11-.328.395-.272.532-.126.134.19.291.314.485.42.319.282.699.332 1.072.075.256-.143.423-.329.573-.697.166-.443.075-2.48.041-3.701.239.308.47.63.706.95a22.95 22.95 0 0 1 .128 3.073c-.025.208.723-.615.717-1.006-.003-.316 0-.602 0-.871.36.542.71 1.1 1.04 1.69.206-.107.138-1.268.008-1.428-.38-.637-.887-1.3-1.236-1.774-.023-.06-.035-.128-.063-.185-.14-.324-.052-.586-.118-.93-.065-.347-.048-.864-.148-1.274-.028-.16-.11-.674-.086-.722.04-.115.194.003.27-.13.111-.122-.39-1.422-.646-1.795-.092-.166-.258-.109-.464.162-.19.178-.119.585-.046.97.18.936.33 1.833.46 2.72-.248-.33-.548-.72-.839-1.096l-.012-.068c0-.017-.042-.806-.079-.994-.006-.075-.024-.098.056-.09.085.072.095.076.15.1.085.016.16-.13.11-.264l-.796-1.464c-.063-.063-.146-.131-.246.017a.575.575 0 0 0-.197.435c.025.346.085.7.108 1.048l.034.187c-.035-.041-.078-.093-.097-.112-.675-.71.31-.115-.13-.665-.371-.409-.48-.536-.8-.783-.16-.103-.256-.3-.309.036-.02.294-.041.637-.023.884 0 .142.143.4.268.554Zm-13.694 1.66c.388.16.636-.58.796-1.388.107-.228.19-.253.246-.136-.014 1.077.077 1.316.354 1.643.617.477 1.127.06 1.169.02l.48-.48c.106-.112.25-.12.4-.02.148.133.128.363.441.523.265.106.831.025.962-.203.177-.301.22-.406.3-.52.126-.167.342-.092.342-.04-.02.094-.147.188-.06.356.15.112.184.04.273.015.314-.15.548-.83.548-.83.014-.255-.128-.233-.22-.18-.12.072-.128.096-.248.17-.154.023-.45.125-.597-.103-.15-.274-.153-.655-.267-.93 0-.02-.2-.436-.014-.462.094.017.292.069.325-.097.096-.163-.211-.628-.42-.863-.184-.2-.437-.225-.682-.02-.172.158-.148.333-.182.501a.782.782 0 0 0 .162.682c.17.337.483.772.38 1.381 0 0-.182.29-.5.253-.132-.03-.348-.087-.462-.933-.086-.641.022-1.538-.25-1.958-.099-.254-.17-.499-.41-.065-.064.17-.341.43-.14.963.165.337.231.886.157 1.499-.114.174-.138.232-.287.406-.21.225-.436.168-.61.083-.163-.11-.289-.166-.363-.514.014-.554.045-1.461-.056-1.654-.15-.298-.396-.19-.502-.1-.506.463-.756 1.243-.908 1.863-.14.453-.289.323-.394.14-.255-.24-.272-2.112-.581-1.803-.497 1.406.28 2.951.818 2.8Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "m23.288 16.19-.148-.084-2.894-.014c-.15-.057-.104-.106 0-.146.69-.094 1.92-.294 2.002-1.474-.014-.614-.265-1.017-1.019-1.127-.552.043-.947.58-.884 1.169-.026.16.052.47-.11.506-1.063.097-2.221.761-2.26 1.239-.064.044-.209-.085-.19-.288a5.683 5.683 0 0 0-.731-2.471c-.336-.335-.23-.225-.456-.066-.144.166-.17.28-.163.61 0 .013.271.768.5 1.297.153.544.296 1.164.193 1.75-.357.775-1.076 1.47-1.768 1.848-.357.115-.663.073-.739-.007-.22-.147-.209-.42-.192-.424.583-.408 1.251-.736 1.774-1.833.154-.418.2-.672.048-1.32-.06-.243-.137-.44-.303-.612.093-.062.363.143.404.022-.061-.311-.272-.726-.509-.939-.208-.19-.434-.21-.625-.037-.215.12-.261.548-.158.923.114.283.423.331.645.899 0 .012.08.424-.034.586-.091.283-1.268 1.208-1.333 1.25-.032.04-.018-.02-.023-.175-.007-.187.076-.63.053-.633-.383.247-.511 1.006-.58 1.23-.97.67-2.066 1.168-2.7 1.848-.331.515 2.274-.592 2.577-.726.067.049.06.281.241.489.27.366.843.592 1.405.452.938-.34 1.481-.98 2.032-1.689.079-.115.202-.203.316-.115.378.847 1.472 1.447 2.883 1.51.327-.398.169-.59.036-.673 0-.013-.697-.277-.803-.542-.064-.24.093-.45.407-.61.906-.11 1.796-.232 2.66-.508.009-.29.176-.724.292-.911.11-.19.17-.134.154-.203Zm-2.38-1.802c.043-.073.186-.07.32.009.133.077.209.2.164.272-.043.074-.187.07-.321-.009-.134-.077-.206-.199-.163-.272Zm-1.165 2.923c-.31.106-.61.189-.61.638.116.625-.158.411-.32.325-.19-.137-.727-.468-.804-1.182-.012-.17.122-.313.336-.313.321.087.797.093 1.209.136.337.022.504.287.19.396ZM9.025 10.38c.332.16.96.092.932-.446 0-.048-.012-.208-.017-.25-.068-.16-.252-.12-.295.044-.014.054.023.14-.025.167-.028.028-.134.011-.13-.137 0-.047-.035-.098-.055-.127-.021-.014-.033-.019-.072-.019-.046.002-.046.014-.07.054-.011.039-.027.079-.027.123-.006.053-.026.071-.064.08-.044 0-.034.005-.068-.018-.022-.023-.048-.033-.048-.071 0-.04-.01-.105-.021-.132-.019-.025-.048-.036-.082-.045-.181 0-.194.208-.183.288-.017.014-.023.386.225.489Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.25 13.888c0-.048-.036-.097-.056-.128-.022-.014-.034-.018-.072-.018-.047.001-.045.013-.071.053-.011.04-.026.079-.026.123-.005.054-.027.073-.065.08-.043 0-.034.005-.07-.016-.02-.023-.047-.033-.047-.071 0-.04-.01-.106-.021-.133-.019-.024-.048-.035-.082-.043-.182 0-.194.208-.185.287-.014.015-.021.386.227.49.333.159 1.126.066.932-.446 0-.048-.012-.208-.017-.252-.068-.159-.254-.119-.296.044-.012.054.025.14-.024.168-.025.028-.132.01-.128-.138Zm5.225-1.088c.333.16.959.092.931-.445 0-.047-.012-.207-.017-.252-.067-.158-.252-.118-.294.045-.014.053.023.14-.026.167-.027.028-.134.013-.129-.136 0-.048-.035-.099-.055-.128-.022-.014-.034-.019-.074-.019-.046.003-.045.014-.071.054-.01.04-.026.079-.026.123-.006.054-.026.072-.065.08-.043 0-.034.005-.069-.017-.022-.023-.046-.032-.046-.07 0-.04-.01-.107-.022-.134-.02-.025-.047-.036-.083-.043-.181 0-.194.207-.183.286-.01.015-.018.386.23.489Zm.225-2.08c.118.332-.09.65.034.695.112.053.272-.343.33-.707.07-.296-.14-.9-.44-1.025-.18-.043-.44.065-.356.308-.042.117.366.514.432.729Zm3.07 7.79c.232.002.5-.53.613-1.058.063-.726-.043-1.167-.061-1.595-.02-.426-.482-3.68-.577-4.003-.113-.61.45-.082.389-.437-.196-.448-.68-1.098-.834-1.488-.092-.166-.052-.314-.259-.043-.189.623-.255 1.13-.183 1.519.49 2.554.991 4.676.911 7.106Zm5.778-6.676c.053.166-.082.703.03.752.103.056.248-.37.302-.766.03-.217-.13-.974-.402-1.11-.166-.045-.401.07-.324.335-.039.127.334.555.394.789Zm-20.183 5.625c.1.041.236-.273.289-.564.03-.16-.125-.715-.385-.815-.16-.034-.378.01-.31.246-.008.128.353.282.375.579.052.123-.077.518.03.553Zm-7.01-7.1c.051.127-.05.535.056.573.097.043.234-.283.284-.583.03-.166.007-.729-.378-.844-.159-.036-.379.052-.306.253-.037.096.287.422.344.6Zm7.542 1.804c-.294.16-.41.634-.225.91.171.244.442.153.479.153.289.035.46-.541.46-.541s.009-.162-.334.144c-.145.028-.163-.026-.199-.109a.701.701 0 0 1 .045-.45c.05-.142-.061-.205-.226-.107Zm2.218-1.774a.396.396 0 0 0 .182-.268c.044-.224-.239.107-.274-.144-.063-.232.119-.328.29-.552.007-.156.004-.265-.207-.139-.148.1-.443.405-.452.755-.01.199-.046.197.084.324.094.136.188.123.377.024Zm1.999.12c.19-.517.19-.735.204-.955-.058-.334-.284-.323-.433.048-.065.14-.14.877-.128.877-.05.22.23.313.357.03Zm12.57 3.666s-1.544 1.097-1.58 1.136c-.155.135-.078.615 0 .56.108.043 1.66-1.011 1.63-1.134.072.003.107-.617-.05-.562Zm-.19 2.976c.103.055.375-.282.364-.702.031-.217-.078-1.012-.349-1.148-.166-.046-.387.096-.31.359-.039.126.19.568.25.802.054.167-.068.64.045.689Zm-8.739 2.301c0 .014.131.126.285.037.323-.124.526-.244.978-.344.119-.002.111-.32-.076-.331-.245.012-.473.024-.717.218-.151.034-.176-.057-.21-.14-.037-.204.085-.346.059-.498.01.01-.14-.128-.293-.05-.007 0-.34.224-.446.38-.066.051-.058.095-.038.18.05.116.141.08.243.025.135-.018.2.071.19.233-.065.204.025.28.025.29Zm10.079.256c-.05.087-.085.22.072.261.29.082.956-.352.956-.36.107-.081.072-.234.063-.234-.063-.072-.205-.03-.3-.041-.045 0-.196-.023-.123-.155a.92.92 0 0 0 .12-.233c.044-.1.006-.166-.157-.22-.165-.03-.231-.015-.414 0-.099.022-.133.065-.151.185.008.181.117.172.23.244.067.085.11.162-.004.299-.108.1-.183.155-.292.254Zm-.296 7.984h-2.307v-.769a.77.77 0 0 0-1.539 0v.77H9.231s0 1.538 4.615 1.538h13.846V30a.77.77 0 0 0 1.539 0v-.77h1.538V30a.77.77 0 0 0 1.539 0v-1.538a.77.77 0 0 0-.77-.77Z", + fill: "#fff" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-7.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgSar); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SEK.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SEK.svg new file mode 100644 index 0000000000..bf99767379 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SEK.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgSek = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M19.154 40h25.384c3.399 0 6.154-2.755 6.154-6.923v-9.23H19.154V40ZM44.538 0H19.154v16.154h31.538v-10A6.154 6.154 0 0 0 44.538 0ZM11.462 0h-10a6.154 6.154 0 0 0-6.154 6.15v10.004h16.154V0ZM-4.692 23.846v9.237C-4.69 37.248-1.935 40 1.462 40h10V23.846H-4.693Z", + fill: "#006AA7" +}), /*#__PURE__*/React.createElement("path", { + d: "M19.154 0H11.46v16.154H-4.691v7.692h16.154V40h7.692V23.846h31.538v-7.692H19.154V0Z", + fill: "#FECC00" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-4.692)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgSek); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SGD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SGD.svg new file mode 100644 index 0000000000..94f3249626 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/SGD.svg @@ -0,0 +1,42 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgSgd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M55.385 33.846A6.154 6.154 0 0 1 49.23 40H6.154A6.154 6.154 0 0 1 0 33.846V6.154A6.154 6.154 0 0 1 6.154 0H49.23a6.154 6.154 0 0 1 6.154 6.154v27.692Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M55.385 20V6.154A6.154 6.154 0 0 0 49.23 0H6.154A6.154 6.154 0 0 0 0 6.154V20h55.385Z", + fill: "#ED2939" +}), /*#__PURE__*/React.createElement("path", { + d: "M14.23 10c0-3.977 2.5-7.305 5.862-8.21a8.458 8.458 0 0 0-2.015-.252A8.46 8.46 0 0 0 9.615 10a8.46 8.46 0 0 0 8.462 8.462 8.38 8.38 0 0 0 2.015-.253c-3.363-.904-5.861-4.232-5.861-8.209Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "m23.462 3.077.346 1.063h1.117l-.905.657.346 1.063-.904-.657-.905.657.346-1.063L22 4.14h1.116l.347-1.063Zm-3.077 10.77.346 1.062h1.117l-.905.657.346 1.063-.904-.657-.905.657.346-1.063-.904-.657h1.116l.347-1.063Zm6.153 0 .347 1.062H28l-.904.657.346 1.063-.905-.657-.904.657.346-1.063-.905-.657h1.117l.346-1.063Zm-7.692-6.155.346 1.063h1.117l-.904.657.346 1.063-.905-.657-.904.657.346-1.063-.905-.657H18.5l.346-1.063Zm9.23 0 .347 1.063h1.117l-.905.657.346 1.063-.904-.657-.905.657.346-1.063-.904-.657h1.117l.346-1.063Z", + fill: "#EEE" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgSgd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/TRY.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/TRY.svg new file mode 100644 index 0000000000..ab588c2ba4 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/TRY.svg @@ -0,0 +1,36 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgTry = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M51.472 33.754A6.246 6.246 0 0 1 45.226 40H1.503a6.246 6.246 0 0 1-6.246-6.246V5.646A6.246 6.246 0 0 1 1.503-.6h43.723a6.246 6.246 0 0 1 6.246 6.246v28.108Z", + fill: "#E30917" +}), /*#__PURE__*/React.createElement("path", { + d: "M20.242 29.07a9.368 9.368 0 0 1-9.37-9.37 9.369 9.369 0 0 1 9.37-9.37c2.045 0 3.935.664 5.476 1.778-2.105-2.38-5.172-3.89-8.6-3.89-6.34 0-11.481 5.14-11.481 11.482 0 6.343 5.14 11.483 11.482 11.483 3.427 0 6.496-1.51 8.6-3.89a9.31 9.31 0 0 1-5.477 1.776Zm6.11-9.01 3.81.877.344 3.893 2.011-3.351 3.81.876-2.567-2.949 2.01-3.352-3.597 1.53-2.567-2.95.344 3.895-3.598 1.53Z", + fill: "#EEE" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + d: "M0 0h40v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgTry); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/TWD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/TWD.svg new file mode 100644 index 0000000000..4956fdce74 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/TWD.svg @@ -0,0 +1,43 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgTwd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M43.23 0H20.155v20H-6v13.846A6.154 6.154 0 0 0 .154 40H43.23a6.154 6.154 0 0 0 6.154-6.154V6.154A6.154 6.154 0 0 0 43.23 0Z", + fill: "#FE0000" +}), /*#__PURE__*/React.createElement("path", { + d: "M20.154 0h-20A6.154 6.154 0 0 0-6 6.154V20h26.154V0Zm-9.328 7.092 3.13-.843-2.293 2.288a4.434 4.434 0 0 0-.837-1.445ZM11.212 10a3.75 3.75 0 1 1-7.501 0 3.75 3.75 0 0 1 7.501 0Zm0-6.495-.843 3.13c-.42-.364-.909-.65-1.444-.837l2.287-2.293ZM7.462 2.5l.833 3.13c-.269-.052-.549-.08-.833-.08-.285 0-.565.028-.834.08l.834-3.13ZM5.998 5.798a4.433 4.433 0 0 0-1.444.837l-.843-3.13 2.287 2.293ZM4.097 7.092c-.365.42-.65.91-.837 1.445L.966 6.249l3.13.843ZM3.09 9.166a4.39 4.39 0 0 0 0 1.668L-.04 10l3.13-.834Zm.169 2.295c.186.536.474 1.025.837 1.445l-3.13.843 2.293-2.288Zm.45 5.034.844-3.13c.42.363.91.65 1.444.836l-2.287 2.294ZM7.463 17.5l-.834-3.13a4.391 4.391 0 0 0 1.667 0l-.833 3.13Zm1.463-3.299a4.442 4.442 0 0 0 1.444-.836l.843 3.13-2.287-2.294Zm1.901-1.293c.365-.42.65-.91.837-1.445l2.294 2.288-3.13-.843Zm1.006-2.074a4.39 4.39 0 0 0 0-1.668l3.13.834-3.13.834Z", + fill: "#000095" +}), /*#__PURE__*/React.createElement("path", { + d: "M8.295 5.63 7.462 2.5l-.834 3.13c.269-.052.549-.08.834-.08.284 0 .564.028.833.08ZM3.011 10c0-.285.027-.565.08-.834L-.04 10l3.13.834c-.051-.27-.08-.55-.08-.834Zm3.617 4.37.834 3.13.833-3.13a4.391 4.391 0 0 1-1.667 0ZM11.912 10c0 .285-.027.565-.08.834l3.13-.834-3.13-.834c.051.27.08.55.08.834Zm-.7-6.495L8.925 5.798a4.472 4.472 0 0 1 1.444.837l.843-3.13Zm-.386 9.403 3.13.843-2.293-2.288a4.433 4.433 0 0 1-.837 1.445Zm-7.115 3.587 2.287-2.294a4.443 4.443 0 0 1-1.444-.836l-.843 3.13Zm.386-9.403L.967 6.25 3.26 8.537a4.433 4.433 0 0 1 .837-1.445Zm4.828 7.11 2.287 2.293-.843-3.13c-.421.364-.909.65-1.444.836Zm-5.665-2.74L.966 13.748l3.13-.843a4.4 4.4 0 0 1-.836-1.445Zm2.738-5.664L3.711 3.505l.843 3.13c.421-.364.91-.65 1.444-.837Zm7.959.451-3.13.843c.364.42.65.91.836 1.445l2.294-2.288Z", + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M7.462 13.75a3.75 3.75 0 1 0 0-7.5 3.75 3.75 0 0 0 0 7.5Z", + fill: "#fff" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-6)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgTwd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/UAH.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/UAH.svg new file mode 100644 index 0000000000..004f785853 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/UAH.svg @@ -0,0 +1,37 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgUah = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("g", { + clipPath: "url(#b)" +}, /*#__PURE__*/React.createElement("path", { + d: "M41.23 0H-1.845A6.154 6.154 0 0 0-8 6.154V20h55.385V6.154A6.154 6.154 0 0 0 41.23 0Z", + fill: "#005BBB" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.385 33.846A6.154 6.154 0 0 1 41.23 40H-1.846A6.154 6.154 0 0 1-8 33.846V20h55.385v13.846Z", + fill: "#FFD500" +})))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +})), /*#__PURE__*/React.createElement("clipPath", { + id: "b" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + transform: "translate(-8)", + d: "M0 0h55.385v40H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgUah); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/USD.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/USD.svg new file mode 100644 index 0000000000..1c397d708c --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/USD.svg @@ -0,0 +1,40 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgUsd = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}), /*#__PURE__*/React.createElement("path", { + d: "M46.838 3.077C45.772 1.245 43.811 0 41.538 0H20v3.077h26.838Zm-54.53 27.692h55.384v3.077H-7.692V30.77ZM20 18.462h27.692v3.076H20v-3.076Zm0-6.154h27.692v3.077H20v-3.077ZM-7.692 24.615h55.384v3.077H-7.692v-3.077ZM-1.54 40h43.077c2.273 0 4.234-1.245 5.3-3.077H-6.839C-5.772 38.755-3.81 40-1.539 40ZM20 6.154h27.692V9.23H20V6.154Z", + fill: "#B22334" +}), /*#__PURE__*/React.createElement("path", { + d: "M-7.588 34.89c.026.144.056.287.091.427.04.155.09.305.142.455.136.399.303.783.512 1.143l.004.008h53.677l.004-.006c.207-.358.373-.743.51-1.14.053-.152.103-.305.143-.463.036-.139.065-.28.091-.423.063-.339.106-.686.106-1.045H-7.692c0 .359.043.705.104 1.045Zm-.104-7.198h55.384v3.077H-7.692v-3.077Zm0-6.154v3.077h55.384V21.54H-7.692ZM20 15.386h27.692v3.077H20v-3.077Zm0-6.154h27.692v3.077H20V9.23ZM-7.692 6.154Zm.197-1.47c.038-.158.092-.307.141-.458-.052.15-.101.302-.141.457ZM20 6.153h27.692c0-.359-.043-.706-.106-1.046a5.584 5.584 0 0 0-.09-.422 5.818 5.818 0 0 0-.145-.464 6.475 6.475 0 0 0-.513-1.145H20v3.077Z", + fill: "#EEE" +}), /*#__PURE__*/React.createElement("path", { + d: "M20 0H-1.54a6.154 6.154 0 0 0-6.153 6.154v15.384H20V0Z", + fill: "#3C3B6E" +}), /*#__PURE__*/React.createElement("path", { + d: "m-4.614 4.194.95.69L-4.025 6l.949-.69.95.69-.362-1.115.95-.691h-1.175l-.363-1.117-.362 1.117h-1.175Zm3.077 3.077.95.69-.362 1.116.949-.69.95.69-.362-1.115.95-.691H.363L0 6.154-.362 7.27h-1.175Zm6.154 0 .95.69-.362 1.116.949-.69.95.69-.363-1.115.951-.691H6.517l-.363-1.117-.362 1.117H4.617Zm6.154 0 .95.69-.363 1.116.95-.69.95.69-.363-1.115.951-.691h-1.175l-.363-1.117-.362 1.117h-1.175Zm-12.308 6.154.95.69-.362 1.116.949-.69.95.69-.362-1.116.95-.69H.363L0 12.308l-.362 1.117h-1.175Zm6.154 0 .95.69-.362 1.116.949-.69.95.69-.363-1.116.951-.69H6.517l-.363-1.117-.362 1.117H4.617Zm6.154 0 .95.69-.363 1.116.95-.69.95.69-.363-1.116.951-.69h-1.175l-.363-1.117-.362 1.117h-1.175ZM1.54 4.194l.95.69L2.129 6l.949-.69.95.69-.362-1.115.95-.691H3.44l-.363-1.117-.362 1.117H1.54Zm6.154 0 .95.69L8.282 6l.95-.69.95.69-.363-1.115.951-.691H9.594L9.23 3.077l-.362 1.117H7.694Zm6.154 0 .95.69L14.435 6l.95-.69.95.69-.363-1.115.951-.691h-1.175l-.364-1.117-.361 1.117h-1.175Zm-18.462 6.154.95.69-.362 1.116.949-.69.95.69-.362-1.115.95-.691h-1.175l-.363-1.117-.362 1.117h-1.175Zm6.742 1.806.949-.69.95.69-.362-1.115.95-.691H3.44L3.077 9.23l-.362 1.117H1.54l.95.69-.362 1.116Zm5.566-1.806.95.69-.363 1.116.95-.69.95.69-.363-1.115.951-.691H9.594L9.23 9.23l-.362 1.117H7.694Zm6.154 0 .95.69-.363 1.116.95-.69.95.69-.363-1.115.951-.691h-1.175l-.364-1.117-.361 1.117h-1.175ZM-4.614 16.5l.95.691-.362 1.116.949-.69.95.69-.362-1.116.95-.69h-1.175l-.363-1.117-.362 1.117h-1.175Zm6.742 1.807.949-.69.95.69-.362-1.116.95-.69H3.44l-.363-1.117-.362 1.117H1.54l.95.69-.362 1.116Zm5.566-1.806.95.69-.363 1.116.95-.69.95.69-.363-1.116.951-.69H9.594l-.363-1.117-.362 1.117H7.694Zm6.154 0 .95.69-.363 1.116.95-.69.95.69-.363-1.116.951-.69h-1.175l-.364-1.117-.361 1.117h-1.175Z", + fill: "#fff" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "#fff" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgUsd); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/default.svg b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/default.svg new file mode 100644 index 0000000000..eb9d76bc61 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyFlagIcon/icons/default.svg @@ -0,0 +1,18 @@ +var _rect; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgDefault = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 40, + height: 40, + viewBox: "0 0 40 40", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _rect || (_rect = /*#__PURE__*/React.createElement("rect", { + width: 40, + height: 40, + rx: 20, + fill: "var(--quaternary-fill-background)" +}))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgDefault); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/BtcAppearance.tsx b/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/BtcAppearance.tsx new file mode 100644 index 0000000000..4f45b17959 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/BtcAppearance.tsx @@ -0,0 +1,23 @@ +import Lottie from 'lottie-react'; +import { forwardRef, memo } from 'react'; + +import animationData from './btc_logo.json'; + +const BtcAppearance = forwardRef< + HTMLDivElement, + { className?: string; onComplete?: () => void } +>(({ className, onComplete }, ref) => { + return ( +
+ +
+ ); +}); + +export default memo(BtcAppearance); diff --git a/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/TonAppearance.tsx b/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/TonAppearance.tsx new file mode 100644 index 0000000000..891c01c5af --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/TonAppearance.tsx @@ -0,0 +1,23 @@ +import Lottie from 'lottie-react'; +import { forwardRef, memo } from 'react'; + +import animationData from './ton_logo.json'; + +const TonAppearance = forwardRef< + HTMLDivElement, + { className?: string; onComplete?: () => void } +>(({ className, onComplete }, ref) => { + return ( +
+ +
+ ); +}); + +export default memo(TonAppearance); diff --git a/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/UsdtAppearance.tsx b/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/UsdtAppearance.tsx new file mode 100644 index 0000000000..055d602019 --- /dev/null +++ b/data/mini_app/wallet/src/components/CurrencyLogo/Appearance/UsdtAppearance.tsx @@ -0,0 +1,54 @@ +import Lottie, { LottieRefCurrentProps } from 'lottie-react'; +import { FC, memo, useRef, useState } from 'react'; + +import simpleAnimationData from './dollars_logo.json'; +import complexAnimationData from './usdt_logo.json'; + +const UsdtAppearance: FC<{ + className?: string; + onComplete?: () => void; + loop?: boolean; + variant?: 'simple' | 'complex'; +}> = ({ className, onComplete, variant = 'simple', loop = false }) => { + const lottieRef = useRef(null); + const [fragment, setFragment] = useState<[number, number]>([30, 55]); + const [animating, setAnimating] = useState(false); + + return ( +
{ + if (variant === 'simple' && !animating && lottieRef.current && !loop) { + window.Telegram.WebApp.HapticFeedback.impactOccurred('light'); + lottieRef.current.playSegments(fragment, true); + } + }} + > + { + variant === 'simple' && setAnimating(true); + }} + onComplete={() => { + if (variant === 'simple') { + if (fragment[0] === 30) { + setFragment([90, 115]); + } else { + setFragment([30, 55]); + } + setAnimating(false); + } + onComplete && onComplete(); + }} + animationData={ + variant === 'simple' ? simpleAnimationData : complexAnimationData + } + /> +
+ ); +}; + +export default memo(UsdtAppearance); diff --git a/data/mini_app/wallet/src/components/EmailCode/EmailCode.module.scss3fd9 b/data/mini_app/wallet/src/components/EmailCode/EmailCode.module.scss3fd9 new file mode 100644 index 0000000000..07887c3332 --- /dev/null +++ b/data/mini_app/wallet/src/components/EmailCode/EmailCode.module.scss3fd9 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"lvS5","top":"CSEU","topAvatar":"xzEy","title__apple":"qqAj","title__material":"gBPK","text__apple":"i5Bg","text__material":"obWT","digitContainer":"yEDC","digitInput":"eEki","digitInput__apple":"yqMe","digitInput__material":"ip1F","errored":"OOmk","shake":"p_R7","inboxIcon":"bisi","bottom__apple":"ONqg","bottom__material":"fjpO","supportLink":"FQfG"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/EmailCode/EmailCode.tsx b/data/mini_app/wallet/src/components/EmailCode/EmailCode.tsx new file mode 100644 index 0000000000..b9a287de9f --- /dev/null +++ b/data/mini_app/wallet/src/components/EmailCode/EmailCode.tsx @@ -0,0 +1,316 @@ +import classNames from 'classnames'; +import { useContext, useEffect, useRef, useState } from 'react'; +import Countdown from 'react-countdown'; +import { Trans, useTranslation } from 'react-i18next'; + +import API from 'api/wallet-v2'; +import { EmailCodeReasonEnum } from 'api/wallet-v2/generated'; + +import { WALLET_SUPPORT_BOT_LINK } from 'config'; + +import { useAppSelector } from 'store'; + +import { SnackbarContext } from 'components/Snackbar/SnackbarProvider'; +import { Text } from 'components/Text/Text'; + +import { censorEmail } from 'utils/common/sanitize'; + +import { usePreventContentHideUnderKeyboard } from 'hooks/common/ReceiverSearch/usePreventContentHideUnderKeyboard'; +import { useTheme } from 'hooks/utils/useTheme'; + +import { ReactComponent as MailboxSVG } from 'images/mailbox.svg'; + +import styles from './EmailCode.module.scss'; + +const EMAIL_TIMEOUT_SEC = 59; +const EMAIL_TIMEOUT_MS = EMAIL_TIMEOUT_SEC * 1000; + +export interface EmailCodeProps { + reason: EmailCodeReasonEnum; + email?: string; + onComplete: (emailCode: string) => void; + onClear?: () => void; +} + +const EmailCode: React.FC = ({ + reason, + email, + onComplete, + onClear, +}) => { + const { t } = useTranslation(); + const { themeClassName } = useTheme(styles); + const snackbarContext = useContext(SnackbarContext); + const { contentStyle } = usePreventContentHideUnderKeyboard(); + const { recoveryEmail } = useAppSelector((state) => state.passcode); + + const digits: React.MutableRefObject[] = [ + useRef(null), + useRef(null), + useRef(null), + useRef(null), + useRef(null), + useRef(null), + ]; + + const [emailCode, setEmailCode] = useState(''); + const [highlightRed, setHighlightRed] = useState(false); + const [canResend, setCanResend] = useState(false); + const [countdownEnd, setCountdownEnd] = useState( + Date.now() + EMAIL_TIMEOUT_MS, + ); + const [countdownSeconds, setCountdownSeconds] = useState(EMAIL_TIMEOUT_SEC); + const displayMinutes = Math.floor(countdownSeconds / 60); + const displaySeconds = String(countdownSeconds % 60).padStart(2, '0'); + const isResettingPasscode = reason === EmailCodeReasonEnum.ChangePasscode; + + const customStyle = { + display: 'flex', + 'flex-direction': 'column', + height: contentStyle.height === 'initial' ? 'inherit' : contentStyle.height, + overflowY: contentStyle.overflowY, + }; + + // send another email to user with code + const handleResendCode = () => { + if (!email) { + // just in case, in theory this should not occur + snackbarContext.showSnackbar({ + snackbarId: 'email_code', + icon: 'warning', + text: t('recovery_email.must_enter_email_again'), + action: ( + {t('common.contact_support')} + ), + actionPosition: 'bottom', + }); + return; + } + API.RecoveryEmail.requestEmailCode({ email, reason }); + }; + + const focusOnIndex = (index: number) => { + const nextRef = digits[index]; + if (nextRef && nextRef.current) { + nextRef.current.focus(); + } + }; + + const handleChange = (value: string, index: number) => { + if (value.length === 1) { + if (value in ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']) { + // append digit + const newEmailCode = emailCode.substring(0, index) + value; + + // prevent retyping last cell without delete + if (emailCode.length !== newEmailCode.length) { + setEmailCode(newEmailCode); + // submit when finishing last digit + if (index === digits.length - 1) { + onComplete(newEmailCode); + } + } + // move forwards to next cell + if (index < digits.length) { + focusOnIndex(index + 1); + } + } + } else if (value.length > 1) { + if (/^\d+$/.test(value)) { + const trimmedValue = value.substring(0, digits.length); + setEmailCode(trimmedValue); + focusOnIndex(trimmedValue.length); + if (trimmedValue.length === digits.length) { + onComplete(trimmedValue); + } + } else { + snackbarContext.showSnackbar({ + snackbarId: 'email_code', + icon: 'warning', + text: t('recovery_email.pasted_invalid_code', { + code: value, + }), + }); + } + } + }; + + const handleKeyPress = ( + event: React.KeyboardEvent, + index: number, + ) => { + if (event.key === 'Backspace') { + // backspace on empty cell, move backwards + if (emailCode.length === index) { + if (index > 0) { + focusOnIndex(index - 1); + } + } else { + // backspace on non-empty cell, empty cell and keep index + setEmailCode(emailCode.substring(0, index)); + focusOnIndex(index); + } + } + }; + + const handleFocus = (index: number) => { + const trimmedEmailCode = emailCode.trim(); + + // Clear code after focused cell + if (trimmedEmailCode.length > index) { + setEmailCode(trimmedEmailCode.substring(0, index)); + } + }; + + const handleClick = (index: number) => { + // Focus on last cell before first blank, instead of clicked cell + if (emailCode.length < index) { + focusOnIndex(emailCode.length); + } + }; + + useEffect(() => { + // trigger resize incase virtual keyboard already open + if (window.visualViewport) { + window.visualViewport.dispatchEvent(new Event('resize')); + } + }, []); + + useEffect(() => { + if (onClear) { + setHighlightRed(true); + setTimeout(() => { + setHighlightRed(false); + focusOnIndex(0); + setEmailCode(''); + onClear(); + }, 1000); + } + }, [onClear]); + + return ( +
+
+
+
+ +
+

+ {t( + isResettingPasscode + ? 'recovery_email.check_your_email' + : 'recovery_email.email_code', + )} +

+

+ {isResettingPasscode ? ( + ]} + values={{ + email: censorEmail(recoveryEmail || ''), + }} + /> + ) : ( + t('recovery_email.check_email_for_code') + )} +

+
+ {digits.map((ref, index) => ( + { + handleKeyPress(event, index); + }} + onChange={(event) => { + handleChange(event.target.value, index); + }} + value={emailCode.length > index ? emailCode[index] : ''} + onFocus={() => { + handleFocus(index); + }} + onClick={() => { + handleClick(index); + }} + autoFocus={index === 0 && emailCode.length === 0} + /> + ))} +
+ {/* Countdown used outside of MainButton because MainButton only + accepts text and not component + */} + { + setCanResend(true); + }} + onTick={() => { + setCountdownSeconds(countdownSeconds - 1); + }} + renderer={() => ''} + /> +
+
+ {isResettingPasscode && ( +
+ { + window.Telegram.WebApp.openTelegramLink( + WALLET_SUPPORT_BOT_LINK, + ); + }} + > + {t('recovery_email.cant_access_your_email')} + +
+ )} + { + if (canResend) { + setCanResend(false); + setCountdownEnd(Date.now() + EMAIL_TIMEOUT_MS); + setCountdownSeconds(EMAIL_TIMEOUT_SEC); + handleResendCode(); + } + }} + > + {canResend && t('recovery_email.resend_code')} + {!canResend && + t('recovery_email.request_another_code', { + timeRemaining: `${displayMinutes}:${displaySeconds}`, + })} + +
+
+
+ ); +}; + +export default EmailCode; diff --git a/data/mini_app/wallet/src/components/Identificator/Identificator.module.scss6714 b/data/mini_app/wallet/src/components/Identificator/Identificator.module.scss6714 new file mode 100644 index 0000000000..e8951a7ede --- /dev/null +++ b/data/mini_app/wallet/src/components/Identificator/Identificator.module.scss6714 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"skeleton":"OAs9","root":"gSiE","root__apple":"Osdr","root__material":"iWfQ","numberSign":"N_98"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/Identificator/Identificator.tsx b/data/mini_app/wallet/src/components/Identificator/Identificator.tsx new file mode 100644 index 0000000000..8c1b4a94bd --- /dev/null +++ b/data/mini_app/wallet/src/components/Identificator/Identificator.tsx @@ -0,0 +1,49 @@ +import { FC, useContext } from 'react'; +import { useTranslation } from 'react-i18next'; + +import Mono from 'components/Mono/Mono'; +import Skeleton from 'components/Skeleton/Skeleton'; +import { SnackbarContext } from 'components/Snackbar/SnackbarProvider'; + +import { copyToClipboard } from 'utils/common/common'; + +import { useTheme } from 'hooks/utils/useTheme'; + +import styles from './Identificator.module.scss'; + +interface Props { + number: string | number; + isLoading?: boolean; + className?: string; +} + +export const Identificator: FC = ({ number, isLoading, className }) => { + const { t } = useTranslation(); + const { themeClassName } = useTheme(styles); + const snackbarContext = useContext(SnackbarContext); + + const handleClick = () => { + copyToClipboard(String(number)).then(() => { + snackbarContext.showSnackbar({ + text: t('common.copied_to_clipboard'), + }); + }); + }; + + return ( + +
+
+ } + skeletonShown={isLoading} + className={className} + > + + # + {number} + +
+ ); +}; diff --git a/data/mini_app/wallet/src/components/PageWithOptions/PageWithOptions.module.scsse1c5 b/data/mini_app/wallet/src/components/PageWithOptions/PageWithOptions.module.scsse1c5 new file mode 100644 index 0000000000..c0e7864884 --- /dev/null +++ b/data/mini_app/wallet/src/components/PageWithOptions/PageWithOptions.module.scsse1c5 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"title":"jkMH","title__material":"T_M4","title__apple":"AS5F","options":"LpoM","options__apple":"VVoW","options__material":"ESay"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/PageWithOptions/PageWithOptions.tsx b/data/mini_app/wallet/src/components/PageWithOptions/PageWithOptions.tsx new file mode 100644 index 0000000000..d0079b61cb --- /dev/null +++ b/data/mini_app/wallet/src/components/PageWithOptions/PageWithOptions.tsx @@ -0,0 +1,30 @@ +import { FC, ReactNode } from 'react'; + +import Page from 'components/Page/Page'; +import { Text } from 'components/Text/Text'; + +import { useTheme } from 'hooks/utils/useTheme'; + +import styles from './PageWithOptions.module.scss'; + +export const PageWithOptions: FC<{ + backButton?: ReactNode; + title: ReactNode; +}> = ({ backButton, title, children }) => { + const { themeClassName } = useTheme(styles); + + return ( + + {backButton} + + {title} + +
{children}
+
+ ); +}; diff --git a/data/mini_app/wallet/src/components/Passcode/Passcode.module.scss05ea b/data/mini_app/wallet/src/components/Passcode/Passcode.module.scss05ea new file mode 100644 index 0000000000..b722662b9f --- /dev/null +++ b/data/mini_app/wallet/src/components/Passcode/Passcode.module.scss05ea @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"nrmr","top":"zKIK","topAvatar":"HKMs","title__apple":"cFaj","title__material":"iN1C","text__apple":"tFSc","text__material":"HWs8","error":"j0zS","error__apple":"aUcy","error__material":"EwjI","passCodeInput":"pexR","bottom__apple":"XPJ0","bottom__material":"JgzZ"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/Passcode/Passcode.tsx b/data/mini_app/wallet/src/components/Passcode/Passcode.tsx new file mode 100644 index 0000000000..ac98b28064 --- /dev/null +++ b/data/mini_app/wallet/src/components/Passcode/Passcode.tsx @@ -0,0 +1,156 @@ +import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; + +import { PasscodeTypeEnum } from 'api/wallet-v2/generated'; + +import PasscodeDots from 'components/PasscodeDots/PasscodeDots'; +import { Text } from 'components/Text/Text'; + +import { usePreventContentHideUnderKeyboard } from 'hooks/common/ReceiverSearch/usePreventContentHideUnderKeyboard'; +import { useTheme } from 'hooks/utils/useTheme'; + +import styles from './Passcode.module.scss'; +import { ReactComponent as SecretMonkey } from './secret_monkey.svg'; + +export interface PassCodeProps { + title: string; + onComplete: (passcode: string, passcodeOption: PasscodeTypeEnum) => void; + showOptions?: boolean; + error?: string; + onClear?: () => void; + defaultPasscodeType?: PasscodeTypeEnum; +} + +const Passcode: React.FC = ({ + title, + onComplete, + showOptions, + error, + onClear, + defaultPasscodeType = PasscodeTypeEnum._4Digit, +}) => { + const { t } = useTranslation(); + const { themeClassName } = useTheme(styles); + const { contentStyle } = usePreventContentHideUnderKeyboard(); + + const [formPasscode, setFormPasscode] = useState(''); + const [formPasscodeType, setFormPasscodeType] = useState(defaultPasscodeType); + const [shake, setShake] = useState(false); + const customStyle = { + display: 'flex', + 'flex-direction': 'column', + height: contentStyle.height === 'initial' ? 'inherit' : contentStyle.height, + overflowY: contentStyle.overflowY, + }; + + const passcodeMaxLength = + formPasscodeType === PasscodeTypeEnum._6Digit ? 6 : 4; + + useEffect(() => { + // trigger resize incase virtual keyboard already open + if (window.visualViewport) { + window.visualViewport.dispatchEvent(new Event('resize')); + } + }, []); + + useEffect(() => { + if (onClear) { + setShake(true); + setTimeout(() => { + setShake(false); + setFormPasscode(''); + setFormPasscodeType(defaultPasscodeType); + onClear(); + }, 1000); + } + }, [onClear]); + + const handleUpdatePasscode = (e: React.ChangeEvent) => { + const eventPasscode = e.target.value; + if (eventPasscode.length <= passcodeMaxLength) { + setFormPasscode(eventPasscode); + } + if (eventPasscode.length == passcodeMaxLength) { + onComplete(eventPasscode, formPasscodeType); + } + }; + + return ( +
+
+ + {showOptions && ( +
+ { + window.Telegram.WebApp.showPopup( + { + message: t('passcode.select_passcode_type'), + buttons: [ + { + id: PasscodeTypeEnum._4Digit, + text: t('passcode.4_digit_code'), + }, + { + id: PasscodeTypeEnum._6Digit, + text: t('passcode.6_digit_code'), + }, + ], + }, + (id: string) => { + const option = Object.entries(PasscodeTypeEnum).find( + ([, value]) => value === id, + ); + if (!option) return; + setFormPasscodeType(option[1]); + }, + ); + }} + > + {t('passcode.passcode_options')} + +
+ )} +
+
+ ); +}; + +export default Passcode; diff --git a/data/mini_app/wallet/src/components/Passcode/secret_monkey.svg b/data/mini_app/wallet/src/components/Passcode/secret_monkey.svg new file mode 100644 index 0000000000..83f47eca51 --- /dev/null +++ b/data/mini_app/wallet/src/components/Passcode/secret_monkey.svg @@ -0,0 +1,244 @@ +var _g, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgSecretMonkey = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 124, + height: 124, + viewBox: "0 0 124 124", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + ref: ref +}, props), _g || (_g = /*#__PURE__*/React.createElement("g", { + clipPath: "url(#a)" +}, /*#__PURE__*/React.createElement("path", { + d: "M90.928 29.094c4.547-.3 11.278-.558 16.379 5.739 5.631 6.95 5.739 20.624-5.141 29.65-11.395 9.455-23.912-34.552-11.238-35.39Z", + fill: "#9E763D" +}), /*#__PURE__*/React.createElement("path", { + d: "M93.439 35.342s6.695-1.957 10.576 4.603c3.163 5.346 1.22 14.336-3.755 18.392-5.917 4.822-10.9-23.444-6.821-22.995Z", + fill: "#EDACAA" +}), /*#__PURE__*/React.createElement("path", { + d: "M108.914 43.5s-1.112-9.144-9.468-11.487", + stroke: "#BC9259", + strokeWidth: 2.301, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M90.928 29.094c4.547-.3 11.278-.558 16.379 5.739 5.631 6.95 5.739 20.624-5.141 29.65-11.395 9.455-23.912-34.552-11.238-35.39Z", + stroke: "#5E421F", + strokeWidth: 1.841, + strokeMiterlimit: 10 +}), /*#__PURE__*/React.createElement("path", { + d: "M92.121 41.456c9.81-5.098 13.437 6.412 13.437 6.412.002 0 .003-.003.005-.003.295-2.86-.14-5.702-1.451-7.92-3.88-6.56-10.575-4.603-10.575-4.603-1.276-.14-1.665 2.527-1.416 6.114Z", + fill: "#DB9897" +}), /*#__PURE__*/React.createElement("path", { + d: "M35.357 29.094c-4.547-.3-11.278-.558-16.38 5.739-5.63 6.95-5.738 20.624 5.142 29.65 11.395 9.455 23.912-34.552 11.238-35.39Z", + fill: "#9E763D" +}), /*#__PURE__*/React.createElement("path", { + d: "M35.357 29.094c-4.547-.3-11.278-.558-16.38 5.739-5.63 6.95-5.738 20.624 5.142 29.65 11.395 9.455 23.912-34.552 11.238-35.39Z", + stroke: "#5E421F", + strokeWidth: 1.841, + strokeMiterlimit: 10 +}), /*#__PURE__*/React.createElement("path", { + d: "M17.336 43.27s1.112-9.145 9.469-11.487", + stroke: "#BC9259", + strokeWidth: 2.301, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M35.357 29.094c-4.547-.3-11.278-.558-16.38 5.739-5.63 6.95-5.738 20.624 5.142 29.65 11.395 9.455 23.912-34.552 11.238-35.39Z", + stroke: "#5E421F", + strokeWidth: 1.841, + strokeMiterlimit: 10 +}), /*#__PURE__*/React.createElement("path", { + d: "M32.847 35.342s-6.696-1.957-10.577 4.603c-3.163 5.346-1.22 14.336 3.755 18.392 5.917 4.822 10.9-23.444 6.822-22.995Z", + fill: "#EDACAA" +}), /*#__PURE__*/React.createElement("path", { + d: "M34.262 41.456c-9.81-5.098-13.438 6.412-13.438 6.412-.002 0-.002-.003-.004-.003-.295-2.86.14-5.702 1.45-7.92 3.88-6.56 10.576-4.603 10.576-4.603 1.276-.14 1.665 2.527 1.416 6.114Z", + fill: "#DB9897" +}), /*#__PURE__*/React.createElement("path", { + d: "M101.018 57.188c-5.061-10.122-2.383-10.587-5.42-20.684-3.499-11.628-14.605-22.152-32.378-22.152-17.964 0-28.879 10.524-32.377 22.152-3.038 10.097-.36 10.562-5.421 20.684-5.557 11.114-7.904 41.414 37.798 41.414s43.356-30.3 37.798-41.414Z", + fill: "#9E763D" +}), /*#__PURE__*/React.createElement("path", { + d: "M97.918 57.13c-4.647-9.291-2.188-9.719-4.977-18.987-3.21-10.674-13.406-20.335-29.72-20.335-16.492 0-26.51 9.66-29.722 20.335-2.789 9.268-.33 9.696-4.976 18.987-5.102 10.202-7.256 38.017 34.697 38.017S103.02 67.332 97.918 57.13Z", + fill: "#BC9259" +}), /*#__PURE__*/React.createElement("path", { + d: "M84.285 27.809c0 5.415-9.367 9.805-20.923 9.805-11.555 0-20.922-4.39-20.922-9.805s9.367-9.805 20.922-9.805c11.556 0 20.923 4.39 20.923 9.805Z", + fill: "#C79F6B" +}), /*#__PURE__*/React.createElement("path", { + d: "M76.43 20.35c.347.114.708.237 1.079.37M71.566 19.104s1.12.175 2.876.652", + stroke: "#fff", + strokeWidth: 1.38, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M101.018 57.188c-5.061-10.122-2.383-10.587-5.42-20.684-3.499-11.628-14.605-22.152-32.378-22.152-17.964 0-28.879 10.524-32.377 22.152-3.038 10.097-.36 10.562-5.421 20.684-5.557 11.114-7.904 41.414 37.798 41.414s43.356-30.3 37.798-41.414Z", + stroke: "#5E421F", + strokeWidth: 1.841, + strokeMiterlimit: 10 +}), /*#__PURE__*/React.createElement("path", { + d: "M82.38 44.526c-8.927-2.164-15.287 3.833-17.874 6.911-.672.8-1.9.8-2.572 0-2.587-3.078-8.947-9.075-17.874-6.911-11.836 2.87-13.63 13.151-12.434 18.532 1.117 5.025 5.258 9.842 11.84 12.209a1.676 1.676 0 0 1 1.077 1.934c-.799 3.646-2.393 13.195 1.334 18.592a4.065 4.065 0 0 0 2.792 1.712c1.698.233 4.637.869 7.108 2.583 3.905 2.71 7.443 2.544 7.443 2.544s3.538.166 7.443-2.544c2.47-1.714 5.41-2.35 7.108-2.583a4.066 4.066 0 0 0 2.792-1.712c3.727-5.397 2.133-14.946 1.334-18.592a1.676 1.676 0 0 1 1.077-1.934c6.582-2.367 10.724-7.184 11.84-12.21 1.196-5.38-.598-15.662-12.434-18.531Z", + fill: "#F0D8B3" +}), /*#__PURE__*/React.createElement("path", { + d: "M92.852 53.724a2.968 2.968 0 0 1-1.297 3.743c-9.134 5.05-21.027 2.91-26.202 1.853-1.535-.313-3.12-.3-4.646.058-12.914 3.029-21.603-.252-25.51-2.269-1.437-.741-2.034-2.5-1.31-3.946 1.261-2.523 3.952-6.205 10.555-7.903 8.895-2.288 14.905 3.098 17.493 6.176.672.801 1.898.801 2.57 0 2.588-3.078 8.767-8.22 17.694-6.058 6.163 1.495 9.112 4.683 10.653 8.346Z", + fill: "#DBBF97" +}), /*#__PURE__*/React.createElement("path", { + d: "M82.38 44.526c-8.927-2.164-15.287 3.833-17.874 6.911-.672.8-1.9.8-2.572 0-2.587-3.078-8.947-9.075-17.874-6.911-11.836 2.87-13.63 13.151-12.434 18.532 1.117 5.025 5.258 9.842 11.84 12.209a1.676 1.676 0 0 1 1.077 1.934c-.799 3.646-2.393 13.195 1.334 18.592a4.065 4.065 0 0 0 2.792 1.712c1.698.233 4.637.869 7.108 2.583 3.905 2.71 7.443 2.544 7.443 2.544s3.538.166 7.443-2.544c2.47-1.714 5.41-2.58 7.108-2.813 1.128-.155 2.145-.545 2.792-1.482 3.727-5.397 2.133-14.946 1.334-18.592a1.676 1.676 0 0 1 1.077-1.934c6.582-2.367 10.724-7.184 11.84-12.21 1.196-5.38-.598-15.662-12.434-18.531Z", + stroke: "#F0D8B3", + strokeWidth: 1.841, + strokeMiterlimit: 10 +}), /*#__PURE__*/React.createElement("g", { + opacity: 0.11 +}, /*#__PURE__*/React.createElement("path", { + d: "M83.134 92.284c-.384 1.519-1.207 3.195-1.854 4.132-.646.936-2.381.935-3.508 1.089-1.698.232-4.639.87-7.11 2.584-3.904 2.71-7.443 2.542-7.443 2.542s-3.536.168-7.443-2.542c-2.469-1.714-5.409-2.352-7.107-2.584-1.127-.154-2.556-.143-3.34-.968-.883-.93-1.65-3.07-2.012-4.243 2.833.785 11.43 3.244 14.748 5.147 4.126 2.367 8.663 1.302 10.596 0 1.815-1.225 8.756-4.234 14.473-5.157Z", + fill: "#9E763D" +})), /*#__PURE__*/React.createElement("path", { + d: "M45.668 96.72c3.96 1.18 7.396 1.813 9.925 3.414 4.282 2.711 7.627 2.498 7.627 2.498s3.537.166 7.443-2.544c2.343-1.625 5.753-2.268 10.045-3.367", + stroke: "#B29572", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M70.255 81.755c-.339-.15-1.398-.116-2.925-.261a48.435 48.435 0 0 0-3.967-.18c-1.631 0-3.404.1-4.022.152-1.529.13-2.614.14-2.954.289-.46.202-.088 1.282.488 2.155.815 1.238 3.82 3.123 6.447 3.123 2.627 0 5.632-1.885 6.447-3.123.576-.873.947-1.953.486-2.155Z", + fill: "#DBBF97" +}), /*#__PURE__*/React.createElement("path", { + d: "M69.878 82.477c-.379-.05-1.083.407-2.666.249a41.67 41.67 0 0 0-3.849-.183 49.42 49.42 0 0 0-3.914.156c-1.585.142-2.316-.329-2.683-.222-.701.204-.384 1.876.213 2.749.846 1.237 3.613 3.39 6.34 3.39s5.555-2.092 6.401-3.33c.597-.873.892-2.714.158-2.809Z", + fill: "#FFF4E9" +}), /*#__PURE__*/React.createElement("path", { + d: "M69.878 82.477c-.339-.15-1.174-.132-2.701-.278a45.698 45.698 0 0 0-3.814-.163c-1.63 0-3.256.084-3.874.137-1.528.13-2.384.155-2.723.304-.46.203-.089 1.066.487 1.94.815 1.237 3.442 3.123 6.07 3.123 2.626 0 5.253-1.886 6.069-3.123.575-.874.947-1.737.486-1.94Z", + fill: "#3F0A24" +}), /*#__PURE__*/React.createElement("path", { + d: "M67.297 86.287c-1.134.702-2.555 1.253-3.975 1.253-1.46 0-2.92-.626-4.07-1.355-.054 0 .55.362.873.362 1.473 0 3.153.207 3.153.207s1.772-.409 3.205-.15c.308.057.97-.317.814-.317Z", + fill: "#B24660" +}), /*#__PURE__*/React.createElement("path", { + d: "M69.843 83.64c.087-.323.056-.568-.155-.664-.33-.15-1.245-.178-2.73-.313-.598-.055-2.012-.127-3.594-.127-1.584 0-3.061.054-3.663.103-1.484.12-2.414.187-2.744.337-.212.097-.242.34-.156.663-.274-.561-.355-1.02-.035-1.161.34-.15 1.195-.175 2.724-.305a54.475 54.475 0 0 1 3.873-.137c1.63 0 3.196.105 3.813.163 1.528.146 2.362.13 2.702.279.321.14.238.601-.035 1.162Z", + fill: "#040001" +}), /*#__PURE__*/React.createElement("path", { + d: "M67.507 68.868c-.835-.022-2.08.37-2.78.682-.726.321-2.03.321-2.755 0-.701-.311-1.946-.704-2.78-.682-2.597.067-3.802 1.547-3.778 3.955.018 1.818 1.072 5.433 7.935 5.433 6.795 0 7.833-3.555 7.935-5.433.131-2.404-1.18-3.888-3.777-3.955Z", + fill: "#DBBF97" +}), /*#__PURE__*/React.createElement("path", { + d: "M61.938 72.81c.577 1.13.113 2.524-.795 2.987-.908.464-2.022-.04-2.67-1.133-.971-1.641-.56-2.952.348-3.415.908-.464 2.213-.21 3.117 1.561Z", + fill: "#F0D8B4" +}), /*#__PURE__*/React.createElement("path", { + d: "M61.659 72.298c.577 1.13.309 2.423-.6 2.887-.908.463-2.112-.078-2.69-1.208-.577-1.13-.308-2.423.6-2.887.908-.464 2.112.077 2.69 1.208Z", + fill: "#674430" +}), /*#__PURE__*/React.createElement("path", { + d: "M61.658 72.298c.108.211.188.43.237.647-.58-1.116-1.86-1.444-2.72-1.004-.862.44-.984 1.488-.414 2.614a2.836 2.836 0 0 1-.392-.578c-.577-1.132-.309-2.424.6-2.887.908-.464 2.112.076 2.69 1.208Z", + fill: "#361609" +}), /*#__PURE__*/React.createElement("path", { + d: "M64.787 72.81c-.578 1.13-.114 2.524.795 2.987.908.464 2.022-.04 2.669-1.133.972-1.641.561-2.952-.347-3.415-.908-.464-2.213-.21-3.117 1.561Z", + fill: "#F0D8B4" +}), /*#__PURE__*/React.createElement("path", { + d: "M65.066 72.298c-.577 1.13-.309 2.423.6 2.887.908.463 2.112-.078 2.689-1.208s.309-2.423-.6-2.887c-.908-.464-2.112.077-2.689 1.208Z", + fill: "#674430" +}), /*#__PURE__*/React.createElement("path", { + d: "M65.066 72.298c-.108.211-.187.43-.236.647.58-1.116 1.86-1.444 2.72-1.004.862.44.984 1.488.414 2.614.148-.17.282-.363.392-.578.577-1.132.309-2.424-.6-2.887-.908-.464-2.112.076-2.69 1.208Z", + fill: "#361609" +}), /*#__PURE__*/React.createElement("path", { + d: "M73.183 63.8c0 1.558 2.733 2.723 5.814 2.723 3.082 0 5.815-1.654 5.815-2.608 0-2.67-2.733 1.303-5.815 1.303-3.081 0-5.814-3.8-5.814-1.418Z", + fill: "#DBBF97" +}), /*#__PURE__*/React.createElement("path", { + d: "M73.41 63.097c0 1.541 2.492 2.982 5.574 2.982 3.081 0 5.585-1.786 5.585-2.982 0-1.248-2.504 1.879-5.585 1.879-3.082 0-5.574-3.156-5.574-1.879Z", + fill: "#111" +}), /*#__PURE__*/React.createElement("path", { + d: "M75.89 64.665c0-.058 1.403.664 3.096.664 1.692 0 3.06-.773 3.06-.714 0 .037-1.368.707-3.06.707-1.693 0-3.096-.62-3.096-.657Z", + fill: "#F5F5F5" +}), /*#__PURE__*/React.createElement("path", { + d: "M75.946 65.227c0 .504 1.957.66 3.051.66s2.934-.242 2.934-.747c0-.257-1.84.405-2.933.405-1.094 0-3.052-.46-3.052-.318Z", + fill: "#484949" +}), /*#__PURE__*/React.createElement("path", { + d: "M53.132 63.8c0 1.558-2.733 2.723-5.815 2.723-3.081 0-5.814-1.654-5.814-2.608 0-2.67 2.733 1.303 5.814 1.303 3.082 0 5.815-3.8 5.815-1.418Z", + fill: "#DBBF97" +}), /*#__PURE__*/React.createElement("path", { + d: "M52.904 63.097c0 1.541-2.492 2.982-5.573 2.982-3.082 0-5.586-1.786-5.586-2.982 0-1.248 2.504 1.879 5.586 1.879 3.081 0 5.573-3.156 5.573-1.879Z", + fill: "#111" +}), /*#__PURE__*/React.createElement("path", { + d: "M50.425 64.665c0-.058-1.403.664-3.096.664s-3.06-.773-3.06-.714c0 .037 1.367.707 3.06.707s3.096-.62 3.096-.657Z", + fill: "#F5F5F5" +}), /*#__PURE__*/React.createElement("path", { + d: "M50.368 65.227c0 .504-1.957.66-3.05.66-1.094 0-2.935-.242-2.935-.747 0-.257 1.84.405 2.933.405 1.094 0 3.052-.46 3.052-.318Z", + fill: "#484949" +}), /*#__PURE__*/React.createElement("g", { + opacity: 0.2 +}, /*#__PURE__*/React.createElement("path", { + d: "M61.188 50.291c-.815 2.846-2.73 6.686-3.604 10.994-1.581 7.802-3.915 15.468-9.747 19.277-1.777 1.13-3.67 3.103-4.366 5.718-.505 1.894.998 7.849 8.34 12.345-7.978-1.632-19.728-6.624-23.245-9.6 1.236-5.166 2.005-7.032 2.205-8.585.353-2.74-.304-5.13-.871-6.582a6.608 6.608 0 0 1-.69-1.48s-2.359-4.629-.904-11.506c1.42-6.711 5.589-14.318 10.416-13.63 0 0 4.735-8.493 9.156-10.276 3.323-1.34 5.15.877 5.192 2.647 0 0-.257-1.833 2.665-1.53 2.923.301 2.084.453 1.455 3.352 0 0 7.098-1.974 3.998 8.856Z", + fill: "#9E763D" +})), /*#__PURE__*/React.createElement("g", { + opacity: 0.2 +}, /*#__PURE__*/React.createElement("path", { + d: "M64.763 50.533c.815 2.846 2.731 6.686 3.604 10.994 1.582 7.802 3.915 15.468 9.748 19.277 1.777 1.13 3.67 3.104 4.366 5.718.505 1.894-.999 7.849-8.341 12.346 7.979-1.633 19.729-6.625 23.245-9.601-1.236-5.166-2.005-7.032-2.205-8.585-.352-2.74.305-5.13.872-6.582a6.61 6.61 0 0 0 .69-1.48s2.358-4.629.903-11.506c-1.42-6.71-5.588-14.317-10.416-13.63 0 0-4.734-8.493-9.156-10.276-3.323-1.34-5.15.878-5.191 2.647 0 0 .257-1.832-2.666-1.53-2.922.301-2.083.453-1.454 3.352 0 0-7.099-1.974-3.999 8.856Z", + fill: "#9E763D" +})), /*#__PURE__*/React.createElement("path", { + d: "M99.049 70.239s2.549-4.225 1.642-10.84c-.885-6.456-4.313-13.949-8.936-13.63 0 0-3.905-8.37-7.97-10.362-3.058-1.498-4.942.479-5.102 2.152 0 0-1.833-2.642-4.623-2.556-2.79.085-3.905 2.875-3.507 5.665 0 0-2.727-.963-3.905 2.152-1.116 2.949 3.1 10.204 3.972 14.966 1.049 5.731 1.646 12.863 6.946 17.714 5.3 4.85 19.131.637 21.483-5.261Z", + fill: "#E9C9A5" +}), /*#__PURE__*/React.createElement("path", { + d: "M67.053 46.92c.186-.375.288-.77.27-1.15-.125-2.39 1.813-3.959 4.77.92 3.15 5.195 3.676 7.896 4.734 8.492 1.391.785 1.336-1.224 1.336-1.224-.674-2.68-3.069-6.796-4.7-9.465-1.633-2.667-2.119-4.22-2.119-4.22 1.185-4.141 3.984-2.714 6.82.79 2.56 3.163 4.539 8.045 5.579 10.095 1.04 2.053 2.354.909 2.427.672.076-.237-.15-.883-.15-.883-.98-3.484-5.484-11.502-5.484-11.502.315-2.605 2.489-2.528 6.12 2.326 4.212 5.632 5.174 12.984 6.612 13.727 1.264.652 1.767-.755 1.767-.755l-1.183-3.92c.838-3.654 3.818-.742 3.933-.627-1.553-2.724-3.599-4.59-5.955-4.426 0 0-3.906-8.37-7.97-10.363-3.057-1.498-4.942.479-5.103 2.154 0 0-1.831-2.644-4.622-2.559-2.789.087-3.905 2.876-3.507 5.667 0 0-2.726-.964-3.906 2.151-.37.978-.154 2.425.33 4.1Z", + fill: "#FCE3C7" +}), /*#__PURE__*/React.createElement("path", { + d: "M69.565 54.103c.46 1.306.85 2.564 1.055 3.682 1.048 5.733 1.646 12.863 6.947 17.715 5.298 4.85 19.13.637 21.48-5.261 0 0 2.551-4.226 1.644-10.84a28.336 28.336 0 0 0-.618-3.153s-.237 13.605-10.055 14.358c-7.708.592-14.553-.393-20.453-16.501Z", + fill: "#DCB07F" +}), /*#__PURE__*/React.createElement("path", { + d: "M99.049 70.239s2.549-4.225 1.642-10.84c-.885-6.456-4.313-13.949-8.936-13.63 0 0-3.905-8.37-7.97-10.362-3.058-1.498-4.942.479-5.102 2.152 0 0-1.833-2.642-4.623-2.556-2.79.085-3.905 2.875-3.507 5.665 0 0-2.727-.963-3.905 2.152-1.116 2.949 3.1 10.204 3.972 14.966 1.049 5.731 1.646 12.863 6.946 17.714 5.3 4.85 19.131.637 21.483-5.261Z", + stroke: "#946037", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M78.683 37.56s5.34 6.934 7.413 13.868M91.755 45.77s2.392 5.26 3.268 9.245M70.553 40.668s4.862 5.5 7.665 13.47", + stroke: "#946037", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M104.832 109.919s-7.506-27.854-7.75-32.153c-.245-4.3.719-6.802.719-6.802l-2.157 2.258-.892-2.862c-.13-.417-.676-.56-.978-.23l-1.855 2.028-2.53-3.207c-.288-.36-.878-.26-1.007.187l-1.208 3.969-4.012-1.597a.582.582 0 0 0-.791.533v4.53l-4.487-1.841s5.033 3.522 5.838 7.707c.806 4.185 3.553 27.71 3.553 27.71s3.278 1.783 7.808 1.769c7.894-.015 9.749-1.999 9.749-1.999Z", + fill: "#9E763D" +}), /*#__PURE__*/React.createElement("path", { + d: "M91.344 111.53s3.264.819 7.449.259c4.946-.662 6.039-1.87 6.039-1.87s-5.105-18.809-7.017-27.825l-.46.92c-.633-3.365-4.703-6.873-7.406-3.81-1.898 2.157-1.165 7.78-.216 15.53.92 7.435 1.61 16.796 1.61 16.796Z", + fill: "#BC9259" +}), /*#__PURE__*/React.createElement("path", { + d: "M104.602 109.459s-7.276-27.394-7.52-31.693c-.144-2.617.632-4.832 1.265-6.17M78 75.853s5.047 2.747 5.722 6.586c.734 4.2 3.553 27.02 3.553 27.02", + stroke: "#5E421F", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M27.373 70.239s-2.55-4.225-1.642-10.84c.885-6.456 4.313-13.949 8.936-13.63 0 0 3.905-8.37 7.97-10.362 3.058-1.498 4.942.479 5.102 2.152 0 0 1.833-2.642 4.623-2.556 2.79.085 3.905 2.875 3.507 5.665 0 0 2.727-.963 3.905 2.152 1.116 2.949-3.1 10.204-3.972 14.966-1.049 5.731-1.646 12.863-6.946 17.714-5.3 4.85-19.131.637-21.483-5.261Z", + fill: "#E9C9A5" +}), /*#__PURE__*/React.createElement("path", { + d: "M59.369 46.92c-.186-.375-.288-.77-.27-1.15.125-2.39-1.813-3.959-4.771.92-3.15 5.195-3.675 7.896-4.733 8.492-1.392.785-1.337-1.224-1.337-1.224.675-2.68 3.07-6.796 4.7-9.465 1.634-2.667 2.12-4.22 2.12-4.22-1.185-4.141-3.984-2.714-6.82.79-2.56 3.163-4.539 8.045-5.579 10.095-1.04 2.053-2.354.909-2.427.672-.076-.237.15-.883.15-.883.98-3.484 5.484-11.502 5.484-11.502-.315-2.605-2.489-2.528-6.12 2.326-4.212 5.632-5.174 12.984-6.612 13.727-1.264.652-1.767-.755-1.767-.755l1.182-3.92c-.837-3.654-3.817-.742-3.932-.627 1.553-2.724 3.599-4.59 5.955-4.426 0 0 3.906-8.37 7.97-10.363 3.057-1.498 4.942.479 5.103 2.154 0 0 1.831-2.644 4.622-2.559 2.788.087 3.905 2.876 3.507 5.667 0 0 2.726-.964 3.906 2.151.37.978.154 2.425-.331 4.1Z", + fill: "#FCE3C7" +}), /*#__PURE__*/React.createElement("path", { + d: "M56.857 54.103c-.46 1.306-.85 2.564-1.055 3.682-1.049 5.733-1.646 12.863-6.947 17.715-5.298 4.85-19.13.637-21.48-5.261 0 0-2.55-4.226-1.644-10.84.142-1.037.349-2.1.618-3.153 0 0 .237 13.605 10.055 14.358 7.708.592 14.553-.393 20.453-16.501Z", + fill: "#DCB07F" +}), /*#__PURE__*/React.createElement("path", { + d: "M27.373 70.239s-2.55-4.225-1.642-10.84c.885-6.456 4.313-13.949 8.936-13.63 0 0 3.905-8.37 7.97-10.362 3.058-1.498 4.942.479 5.102 2.152 0 0 1.833-2.642 4.623-2.556 2.79.085 3.905 2.875 3.507 5.665 0 0 2.727-.963 3.905 2.152 1.116 2.949-3.1 10.204-3.972 14.966-1.049 5.731-1.646 12.863-6.946 17.714-5.3 4.85-19.131.637-21.483-5.261Z", + stroke: "#946037", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M47.739 37.56s-5.34 6.934-7.413 13.868M34.667 45.77s-2.392 5.26-3.268 9.245M55.869 40.668s-4.862 5.5-7.666 13.47", + stroke: "#946037", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.59 109.919s7.506-27.854 7.75-32.153c.245-4.3-.719-6.802-.719-6.802l2.157 2.258.892-2.862c.13-.417.676-.56.978-.23l1.855 2.028 2.53-3.207c.288-.36.878-.26 1.007.187l1.208 3.969 4.012-1.597a.582.582 0 0 1 .791.533v4.53l4.487-1.841s-5.033 3.522-5.839 7.707c-.805 4.185-3.551 27.71-3.551 27.71s-3.279 1.783-7.809 1.769c-7.894-.015-9.75-1.999-9.75-1.999Z", + fill: "#9E763D" +}), /*#__PURE__*/React.createElement("path", { + d: "M35.078 111.53s-3.264.819-7.449.259c-4.946-.662-6.04-1.87-6.04-1.87s5.106-18.809 7.018-27.825l.46.92c.633-3.365 4.702-6.873 7.406-3.81 1.898 2.157 1.165 7.78.216 15.53-.92 7.435-1.61 16.796-1.61 16.796Z", + fill: "#BC9259" +}), /*#__PURE__*/React.createElement("path", { + d: "M21.82 109.459s7.276-27.394 7.52-31.693c.144-2.617-.632-4.832-1.265-6.17M48.423 75.853s-5.048 2.747-5.724 6.586c-.733 4.2-3.551 27.02-3.551 27.02", + stroke: "#5E421F", + strokeWidth: 1.841, + strokeLinecap: "round", + strokeLinejoin: "round" +}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", { + id: "a" +}, /*#__PURE__*/React.createElement("path", { + fill: "#fff", + d: "M0 0h124v124H0z" +}))))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgSecretMonkey); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/RecoveryEmail/RecoveryEmail.module.scss73e8 b/data/mini_app/wallet/src/components/RecoveryEmail/RecoveryEmail.module.scss73e8 new file mode 100644 index 0000000000..a05a13ca95 --- /dev/null +++ b/data/mini_app/wallet/src/components/RecoveryEmail/RecoveryEmail.module.scss73e8 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"hzzZ","top":"SLaq","topAvatar":"u_uD","title__apple":"jOWv","title__material":"SMbK","text__apple":"FytK","text__material":"entY","textInput":"e9OZ","textInput__apple":"yChz","textInput__material":"cUVJ","error":"NExJ","error__apple":"tOj8","error__material":"FCNp","passCodeInput":"BXuY","passCodeContainer":"mIP9","svgContainer":"UqLc","full":"lfIB","active":"DXYr"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/RecoveryEmail/RecoveryEmail.tsx b/data/mini_app/wallet/src/components/RecoveryEmail/RecoveryEmail.tsx new file mode 100644 index 0000000000..21c92e4acc --- /dev/null +++ b/data/mini_app/wallet/src/components/RecoveryEmail/RecoveryEmail.tsx @@ -0,0 +1,94 @@ +import { useContext, useState } from 'react'; +import { useTranslation } from 'react-i18next'; + +import { MainButton } from 'components/MainButton/MainButton'; +import { SnackbarContext } from 'components/Snackbar/SnackbarProvider'; + +import { isValidEmail } from 'utils/common/sanitize'; + +import { useTheme } from 'hooks/utils/useTheme'; + +import styles from './RecoveryEmail.module.scss'; +import { ReactComponent as Monkey } from './monkey.svg'; + +export enum CreateRecoveryEmailIntents { + scw = 'scw', +} + +export interface RecoveryEmailProps { + onComplete: (text: string) => void; + error?: string; + intent?: CreateRecoveryEmailIntents; +} + +const RecoveryEmail: React.FC = ({ + onComplete, + error, + intent, +}) => { + const { t } = useTranslation(); + const { themeClassName } = useTheme(styles); + const snackbarContext = useContext(SnackbarContext); + + const [recoveryEmail, setRecoveryEmail] = useState(''); + + const handleUpdateEmail = (e: React.ChangeEvent) => { + setRecoveryEmail(e.target.value); + }; + + const handleConfirmEmail = () => { + if (isValidEmail(recoveryEmail)) { + onComplete(recoveryEmail); + } else { + snackbarContext.showSnackbar({ + snackbarId: 'recovery_email', + icon: 'warning', + text: t('recovery_email.please_enter_valid_email'), + }); + } + }; + + const getTitle = () => { + if (intent === CreateRecoveryEmailIntents.scw) { + return t('recovery_email.add_recovery_email'); + } + return t('recovery_email.recovery_email'); + }; + + const getDescription = () => { + if (intent === CreateRecoveryEmailIntents.scw) { + return t('recovery_email.email_can_restore_ton_space'); + } + return t('recovery_email.email_can_reset_passcode'); + }; + + return ( +
+ + +
+ ); +}; + +export default RecoveryEmail; diff --git a/data/mini_app/wallet/src/components/RecoveryEmail/monkey.svg b/data/mini_app/wallet/src/components/RecoveryEmail/monkey.svg new file mode 100644 index 0000000000..672dac3252 --- /dev/null +++ b/data/mini_app/wallet/src/components/RecoveryEmail/monkey.svg @@ -0,0 +1,31 @@ +var _path, _defs; +function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } +import * as React from "react"; +import { forwardRef } from "react"; +const SvgMonkey = (props, ref) => /*#__PURE__*/React.createElement("svg", _extends({ + width: 112, + height: 112, + viewBox: "0 0 112 112", + fill: "none", + xmlns: "http://www.w3.org/2000/svg", + xmlnsXlink: "http://www.w3.org/1999/xlink", + ref: ref +}, props), _path || (_path = /*#__PURE__*/React.createElement("path", { + fill: "url(#a)", + d: "M0 0h112v112H0z" +})), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("pattern", { + id: "a", + patternContentUnits: "objectBoundingBox", + width: 1, + height: 1 +}, /*#__PURE__*/React.createElement("use", { + xlinkHref: "#b", + transform: "scale(.00195)" +})), /*#__PURE__*/React.createElement("image", { + id: "b", + width: 512, + height: 512, + xlinkHref: "data:image/png;base64,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" +})))); +const ForwardRef = /*#__PURE__*/forwardRef(SvgMonkey); +export { ForwardRef as ReactComponent }; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/Tooltip/Tooltip.module.scssa80d b/data/mini_app/wallet/src/components/Tooltip/Tooltip.module.scssa80d new file mode 100644 index 0000000000..102bdd4201 --- /dev/null +++ b/data/mini_app/wallet/src/components/Tooltip/Tooltip.module.scssa80d @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"tooltip":"oh0f","arrow":"a02f"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/Tooltip/Tooltip.tsx b/data/mini_app/wallet/src/components/Tooltip/Tooltip.tsx new file mode 100644 index 0000000000..19b7835e94 --- /dev/null +++ b/data/mini_app/wallet/src/components/Tooltip/Tooltip.tsx @@ -0,0 +1,217 @@ +import { + FloatingArrow, + FloatingPortal, + arrow as arrowFunc, + autoUpdate, + flip, + offset as offsetFunc, + shift, + useDelayGroup, + useDelayGroupContext, + useDismiss, + useFloating, + useFocus, + useHover, + useId, + useInteractions, + useMergeRefs, + useRole, + useTransitionStyles, +} from '@floating-ui/react'; +import type { Placement } from '@floating-ui/react'; +import classNames from 'classnames'; +import * as React from 'react'; +import { useRef } from 'react'; + +import s from './Tooltip.module.scss'; + +const ARROW_WIDTH = 18; +const ARROW_HEIGHT = 9; +const DEFAULT_OFFSET = 7; + +interface TooltipOptions { + initialOpen?: boolean; + placement?: Placement; + open?: boolean; + onOpenChange?: (open: boolean) => void; + arrow?: boolean; + offset?: number; +} + +export function useTooltip({ + initialOpen = false, + placement = 'top', + open: controlledOpen, + onOpenChange: setControlledOpen, + arrow = false, + offset, +}: TooltipOptions = {}) { + const [uncontrolledOpen, setUncontrolledOpen] = React.useState(initialOpen); + + const arrowRef = useRef(null); + const open = controlledOpen ?? uncontrolledOpen; + const setOpen = setControlledOpen ?? setUncontrolledOpen; + + const { delay } = useDelayGroupContext(); + const data = useFloating({ + placement, + open, + onOpenChange: setOpen, + whileElementsMounted: autoUpdate, + middleware: [ + offsetFunc((offset ? offset : arrow ? ARROW_HEIGHT : 0) + DEFAULT_OFFSET), + flip(), + shift(), + arrow && + arrowFunc({ + element: arrowRef, + }), + ], + }); + + const context = data.context; + + const hover = useHover(context, { + move: false, + enabled: controlledOpen == null, + delay, + }); + const focus = useFocus(context, { + enabled: controlledOpen == null, + }); + const dismiss = useDismiss(context); + const role = useRole(context, { role: 'tooltip' }); + + const interactions = useInteractions([hover, focus, dismiss, role]); + + return React.useMemo( + () => ({ + open, + setOpen, + ...interactions, + ...data, + arrowRef, + showArrow: arrow, + }), + [open, setOpen, interactions, data, arrowRef, arrow], + ); +} + +type ContextType = ReturnType | null; + +const TooltipContext = React.createContext(null); + +export const useTooltipState = () => { + const context = React.useContext(TooltipContext); + + if (context == null) { + throw new Error('Tooltip components must be wrapped in '); + } + + return context; +}; + +export function Tooltip({ + children, + ...options +}: { children: React.ReactNode } & TooltipOptions) { + const tooltip = useTooltip(options); + return ( + + {children} + + ); +} + +const TooltipTrigger = React.forwardRef< + HTMLElement, + React.HTMLProps & { asChild?: boolean } +>(function TooltipTrigger({ children, asChild = false, ...props }, propRef) { + const state = useTooltipState(); + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const childrenRef = children && (children as any).ref; + const ref = useMergeRefs([state.refs.setReference, propRef, childrenRef]); + + if (asChild && React.isValidElement(children)) { + return React.cloneElement( + children, + state.getReferenceProps({ + ref, + ...props, + ...children.props, + 'data-state': state.open ? 'open' : 'closed', + }), + ); + } + + return ( + + ); +}); + +const TooltipContent = React.forwardRef< + HTMLDivElement, + React.HTMLProps +>(function TooltipContent(props, propRef) { + const state = useTooltipState(); + const id = useId(); + const { isInstantPhase, currentId } = useDelayGroupContext(); + const ref = useMergeRefs([state.refs.setFloating, propRef]); + + useDelayGroup(state.context, { id }); + + const instantDuration = 0; + const duration = 250; + + const { isMounted, styles } = useTransitionStyles(state.context, { + duration: isInstantPhase + ? { + open: instantDuration, + close: currentId === id ? duration : instantDuration, + } + : duration, + initial: { + opacity: 0, + }, + }); + + if (!isMounted) return null; + + return ( + +
+ {props.children} + {state.showArrow && props.children && ( + + )} +
+
+ ); +}); + +Tooltip.Trigger = TooltipTrigger; +Tooltip.Content = TooltipContent; diff --git a/data/mini_app/wallet/src/components/animations/AttachesAnimation/AttachesAnimation.tsx b/data/mini_app/wallet/src/components/animations/AttachesAnimation/AttachesAnimation.tsx new file mode 100644 index 0000000000..acea55dca6 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/AttachesAnimation/AttachesAnimation.tsx @@ -0,0 +1,34 @@ +import classNames from 'classnames'; +import Lottie from 'lottie-react'; +import { CSSProperties, FC } from 'react'; + +import { useTheme } from 'hooks/utils/useTheme'; + +import styles from './AttachesAnimation.module.scss'; +import appleAnimationData from './apple_banner.json'; +import materialAnimationData from './material_banner.json'; + +const AttachesAnimation: FC<{ + className?: string; + style?: CSSProperties; +}> = ({ className, style }) => { + const { theme, themeClassName } = useTheme(styles); + + return ( +
+ +
+ ); +}; + +export default AttachesAnimation; diff --git a/data/mini_app/wallet/src/components/animations/BoomstickAnimation/BoomstickAnimation.module.scss9242 b/data/mini_app/wallet/src/components/animations/BoomstickAnimation/BoomstickAnimation.module.scss9242 new file mode 100644 index 0000000000..1887bbf512 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/BoomstickAnimation/BoomstickAnimation.module.scss9242 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"H9I7","boomstick":"NNGS","confetti":"Cu4C"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/animations/BoomstickAnimation/BoomstickAnimation.tsx b/data/mini_app/wallet/src/components/animations/BoomstickAnimation/BoomstickAnimation.tsx new file mode 100644 index 0000000000..b9071bae47 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/BoomstickAnimation/BoomstickAnimation.tsx @@ -0,0 +1,51 @@ +import classNames from 'classnames'; +import Lottie, { LottieRefCurrentProps } from 'lottie-react'; +import { FC, useEffect, useRef } from 'react'; + +import styles from './BoomstickAnimation.module.scss'; +import BoomstickAnimationData from './boomstick.json'; +import ConfettiAnimationData from './confetti.json'; + +const BoomstickAnimation: FC<{ className?: string }> = ({ className }) => { + const confettiRef = useRef(null); + const boomstickRef = useRef(null); + const confettiDelay = 1200; + + useEffect(() => { + play(); + }, []); + + const play = () => { + boomstickRef.current?.goToAndPlay(0); + setTimeout(() => { + confettiRef.current?.goToAndPlay(0); + }, confettiDelay); + }; + + return ( +
{ + play(); + }} + > + + +
+ ); +}; + +export default BoomstickAnimation; diff --git a/data/mini_app/wallet/src/components/animations/CrystalAnimation/CrystalAnimation.tsx b/data/mini_app/wallet/src/components/animations/CrystalAnimation/CrystalAnimation.tsx new file mode 100644 index 0000000000..ef16afe889 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/CrystalAnimation/CrystalAnimation.tsx @@ -0,0 +1,17 @@ +import Lottie from 'lottie-react'; +import { CSSProperties, FC } from 'react'; + +import CrystalAnimationData from './crystal.json'; + +const CrystalAnimation: FC<{ className?: string; style?: CSSProperties }> = ({ + className, + style, +}) => { + return ( +
+ +
+ ); +}; + +export default CrystalAnimation; diff --git a/data/mini_app/wallet/src/components/animations/FaceAnimation/FaceAnimation.tsx b/data/mini_app/wallet/src/components/animations/FaceAnimation/FaceAnimation.tsx new file mode 100644 index 0000000000..365d1bd8b1 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/FaceAnimation/FaceAnimation.tsx @@ -0,0 +1,16 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import FaceAnimationData from './face.json'; + +const FaceAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default FaceAnimation; diff --git a/data/mini_app/wallet/src/components/animations/FeaturesAnimation/FeaturesAnimation.tsx b/data/mini_app/wallet/src/components/animations/FeaturesAnimation/FeaturesAnimation.tsx new file mode 100644 index 0000000000..04d4db819d --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/FeaturesAnimation/FeaturesAnimation.tsx @@ -0,0 +1,37 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import styles from './FeaturesAnimation.module.scss'; +import bunny from './bunny.json'; +import shield from './shield.json'; +import stars from './stars.json'; +import { FeaturesAnimationFeature } from './types'; + +const ANIMATION_DATA: { + // Comment any to avoid typescript errors + // eslint-disable-next-line @typescript-eslint/no-explicit-any + [key in FeaturesAnimationFeature]: any; +} = { + transactions: bunny, + crypto: stars, + security: shield, + // TODO: add animation for it https://wallet-bot.atlassian.net/browse/WAL-1103 + flexibility: null, +}; + +const FeaturesAnimation: FC<{ + feature: FeaturesAnimationFeature; +}> = ({ feature }) => { + if (!ANIMATION_DATA[feature]) return null; + + return ( + + ); +}; + +export default FeaturesAnimation; diff --git a/data/mini_app/wallet/src/components/animations/IdCardAnimation/IdCardAnimation.tsx b/data/mini_app/wallet/src/components/animations/IdCardAnimation/IdCardAnimation.tsx new file mode 100644 index 0000000000..7da9b03c61 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/IdCardAnimation/IdCardAnimation.tsx @@ -0,0 +1,16 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import IdCardAnimationData from './idCard.json'; + +const IdCardAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default IdCardAnimation; diff --git a/data/mini_app/wallet/src/components/animations/InvertButtonAnimation/InvertButtonAnimation.module.scssb234 b/data/mini_app/wallet/src/components/animations/InvertButtonAnimation/InvertButtonAnimation.module.scssb234 new file mode 100644 index 0000000000..b83fc5a09a --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/InvertButtonAnimation/InvertButtonAnimation.module.scssb234 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"Je3B","lottie":"sfQb"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/animations/InvertButtonAnimation/InvertButtonAnimation.tsx b/data/mini_app/wallet/src/components/animations/InvertButtonAnimation/InvertButtonAnimation.tsx new file mode 100644 index 0000000000..cf90b900e5 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/InvertButtonAnimation/InvertButtonAnimation.tsx @@ -0,0 +1,38 @@ +import classNames from 'classnames'; +import Lottie, { LottieRef } from 'lottie-react'; +import { ButtonHTMLAttributes, FC } from 'react'; + +import styles from './InvertButtonAnimation.module.scss'; +import InvertButtonAnimationData from './invert_button.json'; + +interface InvertButtonAnimationProps + extends ButtonHTMLAttributes { + lottieRef?: LottieRef; + 'data-testid'?: string; +} + +const InvertButtonAnimation: FC = ({ + className, + lottieRef, + onClick, + 'data-testid': dataTestId, +}) => { + return ( + + ); +}; + +export default InvertButtonAnimation; diff --git a/data/mini_app/wallet/src/components/animations/LockAnimation/LockAnimation.tsx b/data/mini_app/wallet/src/components/animations/LockAnimation/LockAnimation.tsx new file mode 100644 index 0000000000..70bff802b4 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/LockAnimation/LockAnimation.tsx @@ -0,0 +1,17 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import LockAnimationData from './lock.json'; + +const LockAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default LockAnimation; diff --git a/data/mini_app/wallet/src/components/animations/MoneyAnimation/MoneyAnimation.tsx b/data/mini_app/wallet/src/components/animations/MoneyAnimation/MoneyAnimation.tsx new file mode 100644 index 0000000000..1fa6608ed6 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/MoneyAnimation/MoneyAnimation.tsx @@ -0,0 +1,16 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import MoneyAnimationData from './money.json'; + +const MoneyAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default MoneyAnimation; diff --git a/data/mini_app/wallet/src/components/animations/NotFoundUtkaAnimation/NotFoundUtkaAnimation.module.scssff4f b/data/mini_app/wallet/src/components/animations/NotFoundUtkaAnimation/NotFoundUtkaAnimation.module.scssff4f new file mode 100644 index 0000000000..fea5565a4c --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/NotFoundUtkaAnimation/NotFoundUtkaAnimation.module.scssff4f @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"YbN1","svg":"E2fz"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/animations/NotFoundUtkaAnimation/NotFoundUtkaAnimation.tsx b/data/mini_app/wallet/src/components/animations/NotFoundUtkaAnimation/NotFoundUtkaAnimation.tsx new file mode 100644 index 0000000000..eb3e396320 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/NotFoundUtkaAnimation/NotFoundUtkaAnimation.tsx @@ -0,0 +1,32 @@ +import classNames from 'classnames'; +import Lottie, { LottieRefCurrentProps } from 'lottie-react'; +import { FC, useEffect, useRef } from 'react'; + +import styles from './NotFoundUtkaAnimation.module.scss'; +import animationData from './utka.json'; + +const NotFoundUtkaAnimation: FC<{ className?: string }> = ({ className }) => { + const clockRef = useRef(null); + + const play = () => { + clockRef.current?.goToAndPlay(0); + }; + + useEffect(() => { + play(); + }, []); + + return ( +
+ +
+ ); +}; + +export default NotFoundUtkaAnimation; diff --git a/data/mini_app/wallet/src/components/animations/NotebookAnimation/NotebookAnimation.tsx b/data/mini_app/wallet/src/components/animations/NotebookAnimation/NotebookAnimation.tsx new file mode 100644 index 0000000000..1fcc8f42d9 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/NotebookAnimation/NotebookAnimation.tsx @@ -0,0 +1,16 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import NotebookAnimationData from './notebook.json'; + +const NotebookAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default NotebookAnimation; diff --git a/data/mini_app/wallet/src/components/animations/SadSmileAnimation/SadSmileAnimation.tsx b/data/mini_app/wallet/src/components/animations/SadSmileAnimation/SadSmileAnimation.tsx new file mode 100644 index 0000000000..7fe78b411b --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/SadSmileAnimation/SadSmileAnimation.tsx @@ -0,0 +1,18 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import SadSmileAnimationData from './sad.json'; + +const SadSmileAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default SadSmileAnimation; diff --git a/data/mini_app/wallet/src/components/animations/SandClockAnimation/SandClockAnimation.module.scss73e0 b/data/mini_app/wallet/src/components/animations/SandClockAnimation/SandClockAnimation.module.scss73e0 new file mode 100644 index 0000000000..0db94de753 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/SandClockAnimation/SandClockAnimation.module.scss73e0 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root":"j82N","clock":"sYj9"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/components/animations/SandClockAnimation/SandClockAnimation.tsx b/data/mini_app/wallet/src/components/animations/SandClockAnimation/SandClockAnimation.tsx new file mode 100644 index 0000000000..0d6cf1be61 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/SandClockAnimation/SandClockAnimation.tsx @@ -0,0 +1,32 @@ +import classNames from 'classnames'; +import Lottie, { LottieRefCurrentProps } from 'lottie-react'; +import { FC, useEffect, useRef } from 'react'; + +import styles from './SandClockAnimation.module.scss'; +import animationData from './sand_clock.json'; + +const SandClockAnimation: FC<{ className?: string }> = ({ className }) => { + const clockRef = useRef(null); + + const play = () => { + clockRef.current?.goToAndPlay(0); + }; + + useEffect(() => { + play(); + }, []); + + return ( +
+ +
+ ); +}; + +export default SandClockAnimation; diff --git a/data/mini_app/wallet/src/components/animations/TeacherAnimation/TeacherAnimation.tsx b/data/mini_app/wallet/src/components/animations/TeacherAnimation/TeacherAnimation.tsx new file mode 100644 index 0000000000..c755927da0 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/TeacherAnimation/TeacherAnimation.tsx @@ -0,0 +1,18 @@ +import Lottie from 'lottie-react'; +import { FC } from 'react'; + +import TeacherAnimationData from './teacher.json'; + +const TeacherAnimation: FC<{ className?: string }> = ({ className }) => { + return ( + + ); +}; + +export default TeacherAnimation; diff --git a/data/mini_app/wallet/src/components/animations/WriteAnimation/WriteAnimation.tsx b/data/mini_app/wallet/src/components/animations/WriteAnimation/WriteAnimation.tsx new file mode 100644 index 0000000000..3367b805a4 --- /dev/null +++ b/data/mini_app/wallet/src/components/animations/WriteAnimation/WriteAnimation.tsx @@ -0,0 +1,17 @@ +import Lottie from 'lottie-react'; +import { CSSProperties, FC } from 'react'; + +import WriteAnimationData from './write.json'; + +const WriteAnimation: FC<{ className?: string; style?: CSSProperties }> = ({ + className, + style, +}) => { + return ( +
+ +
+ ); +}; + +export default WriteAnimation; diff --git a/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/CreateEditOffer.tsx b/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/CreateEditOffer.tsx new file mode 100644 index 0000000000..d4a6dd0b42 --- /dev/null +++ b/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/CreateEditOffer.tsx @@ -0,0 +1,1042 @@ +import { useQuery } from '@tanstack/react-query'; +import BigNumber from 'bignumber.js'; +import { FC, useCallback, useEffect, useMemo, useState } from 'react'; +// eslint-disable-next-line +// @ts-ignore +// This module is declared with 'export =', and can only be used with a default import when using the 'allowSyntheticDefaultImports' flag. +import isEqual from 'react-fast-compare'; +import { useTranslation } from 'react-i18next'; +import { useSelector } from 'react-redux'; +import { + Outlet, + createSearchParams, + generatePath, + matchPath, + useLocation, + useNavigate, + useOutletContext, + useSearchParams, +} from 'react-router-dom'; +import { concat, uniqBy } from 'remeda'; + +import API from 'api/p2p'; +import { + BaseOfferRestDto, + BaseOfferRestDtoTypeEnum, + OfferFixedPriceLimitsRestDto, + PaymentDetailsRestDto, + PaymentMethodRestDto, + SellOfferRestDto, + SettingsRestDto, +} from 'api/p2p/generated-common'; +import { RateDto } from 'api/p2p/generated-exchange'; +import WalletAPI from 'api/wallet'; +import { FrontendCryptoCurrencyEnum } from 'api/wallet/generated'; + +import routePaths from 'routePaths'; + +import { + CRYPTO_FRACTION, + DEFAULT_FIAT_FRACTION, + DEPRECATED_P2P_PAYMENT_METHODS, + P2P_CRYPTO_CURRENCIES_MULTICURRENCY, +} from 'config'; + +import { RootState, useAppDispatch } from 'store'; + +import { setChosenPaymentMethods } from 'reducers/p2p/adFormSlice'; + +import { BackButton } from 'components/BackButton/BackButton'; +import Page from 'components/Page/Page'; + +import { + printNumber, + printStringNumber, + roundDownFractionalDigits, +} from 'utils/common/currency'; +import { logEvent } from 'utils/common/logEvent'; + +import { + useAntifraudStatus, + useSettings, + useSnackbarForBannedUser, +} from 'hooks/p2p'; +import { useUserDefaultFiatCurrency } from 'hooks/p2p/useUserDefaultFiatCurrency'; +import { useDidUpdate } from 'hooks/utils/useDidUpdate'; +import { useIsPageReloaded } from 'hooks/utils/useIsPageReloaded'; +import { useLanguage } from 'hooks/utils/useLanguage'; + +export type UserPaymentDetails = PaymentDetailsRestDto & { + isEnabled: boolean; +}; + +export type PaymentConfirmationTimeoutDuration = + | 'PT15M' + | 'PT30M' + | 'PT45M' + | 'PT1H' + | 'PT2H' + | 'PT3H'; + +export interface DraftOffer { + baseCurrencyCode: keyof typeof P2P_CRYPTO_CURRENCIES_MULTICURRENCY; + quoteCurrencyCode: string; + priceType: 'fixed' | 'floating'; + price: number; + priceValue: string; + amount: BigNumber; + amountValue: string; + floatingPercentage: number; + floatingPercentageValue: string; + minOrderAmount: number; + minOrderAmountValue: string; + minOrderVolumeLimit?: string; + maxOrderVolumeLimit?: string; + paymentConfirmationTimeout: PaymentConfirmationTimeoutDuration; + comment: string; + paymentDetails: UserPaymentDetails[]; + number?: string; +} + +interface LoadingStates { + isRatesLoading: boolean; + isUserBalanceLoading: boolean; + isPaymentMethodsLoading: boolean; + isUserPaymentDetailsLoading: boolean; + isOfferLoading: boolean; +} + +type CameFrom = 'home' | 'profile' | 'dom'; + +interface FieldsUserEdited { + price: boolean; + floatingPercentage: boolean; + minOrderAmount: boolean; +} + +export interface CreateEditOfferOutletContext { + mode: 'create' | 'edit'; + draftOffer: DraftOffer; + setDraftOffer: React.Dispatch>; + userBalance?: { + [key in keyof typeof P2P_CRYPTO_CURRENCIES_MULTICURRENCY]?: string; + }; + exchangePricePerUnitOfBaseCurrency: number; + approximateAdPrice: number; + rates: RateDto[]; + offerId: string | undefined; + isSettingsLoading: boolean; + isRatesLoading: boolean; + isUserBalanceLoading: boolean; + isPaymentMethodsLoading: boolean; + isUserPaymentDetailsLoading: boolean; + isOfferLoading: boolean; + paymentMethods: PaymentMethodRestDto[]; + setLoadingStates: React.Dispatch>; + selectedPaymentMethodToAdd: PaymentMethodRestDto; + setSelectedPaymentMethodToAdd: React.Dispatch< + React.SetStateAction< + CreateEditOfferOutletContext['selectedPaymentMethodToAdd'] + > + >; + cameFrom: CameFrom; + fieldsUserEdited: FieldsUserEdited; + handleFieldEdit: ({ + field, + numValue, + }: { + field: keyof FieldsUserEdited; + numValue: BigNumber; + }) => void; + offerType: BaseOfferRestDtoTypeEnum; + setOfferType: React.Dispatch>; + setIsFormWasUsed: React.Dispatch>; + settings?: SettingsRestDto; + fixedPriceLimits?: OfferFixedPriceLimitsRestDto; + initialOfferToEdit?: DraftOffer & { + status: BaseOfferRestDto['status']; + fee?: SellOfferRestDto['fee']; + }; +} + +export function useCreateEditOfferPageContext() { + return useOutletContext(); +} + +interface Props { + mode: 'create' | 'edit'; + offerId?: string; +} + +const ROUTES_PATTERNS_TO_RESET_FORM = [ + routePaths.P2P_OFFER_CREATE_ADD_PAYMENT_METHODS, + routePaths.P2P_OFFER_CREATE_NEW_PAYMENT_METHOD, + routePaths.P2P_OFFER_CREATE_ADD_COMMENT, + routePaths.P2P_OFFER_CREATE_PREVIEW_OFFER, + routePaths.P2P_OFFER_EDIT_ADD_PAYMENT_METHODS, + routePaths.P2P_OFFER_EDIT_NEW_PAYMENT_METHOD, + routePaths.P2P_OFFER_EDIT_ADD_COMMENT, + routePaths.P2P_OFFER_EDIT_PREVIEW_OFFER, + routePaths.P2P_OFFER_CREATE_CHOOSE_PAYMENT_METHODS, + routePaths.P2P_OFFER_EDIT_CHOOSE_PAYMENT_METHODS, +]; + +const ROUTES_PATTERNS_TO_RESET_FORM_ON_REFRESH = [ + routePaths.P2P_OFFER_CREATE_SELECT_CURRENCY, +]; + +const CREATE_SEL_OFFER_BACK_ROUTE_MAP = { + [routePaths.P2P_OFFER_CREATE_SELECT_CURRENCY]: routePaths.P2P_OFFER_CREATE, + [routePaths.P2P_OFFER_CREATE_ADD_PAYMENT_METHODS]: + routePaths.P2P_OFFER_CREATE, + [routePaths.P2P_OFFER_CREATE_NEW_PAYMENT_METHOD]: + routePaths.P2P_OFFER_CREATE_ADD_PAYMENT_METHODS, + [routePaths.P2P_OFFER_CREATE_ADD_COMMENT]: + routePaths.P2P_OFFER_CREATE_ADD_PAYMENT_METHODS, + [routePaths.P2P_OFFER_CREATE_PREVIEW_OFFER]: + routePaths.P2P_OFFER_CREATE_ADD_COMMENT, +}; + +const CREATE_BUY_OFFER_BACK_ROUTE_MAP = { + [routePaths.P2P_OFFER_CREATE_SELECT_CURRENCY]: routePaths.P2P_OFFER_CREATE, + [routePaths.P2P_OFFER_CREATE_CHOOSE_PAYMENT_METHODS]: + routePaths.P2P_OFFER_CREATE, + [routePaths.P2P_OFFER_CREATE_ADD_COMMENT]: + routePaths.P2P_OFFER_CREATE_CHOOSE_PAYMENT_METHODS, + [routePaths.P2P_OFFER_CREATE_PREVIEW_OFFER]: + routePaths.P2P_OFFER_CREATE_ADD_COMMENT, +}; + +const EDIT_SELL_OFFER_BACK_ROUTE_MAP = { + [routePaths.P2P_OFFER_EDIT_ADD_PAYMENT_METHODS]: routePaths.P2P_OFFER_EDIT, + [routePaths.P2P_OFFER_EDIT_NEW_PAYMENT_METHOD]: + routePaths.P2P_OFFER_EDIT_ADD_PAYMENT_METHODS, + [routePaths.P2P_OFFER_EDIT_ADD_COMMENT]: + routePaths.P2P_OFFER_EDIT_ADD_PAYMENT_METHODS, + [routePaths.P2P_OFFER_EDIT_PREVIEW_OFFER]: + routePaths.P2P_OFFER_EDIT_ADD_COMMENT, +} as const; + +const EDIT_BUY_OFFER_BACK_ROUTE_MAP = { + [routePaths.P2P_OFFER_EDIT_CHOOSE_PAYMENT_METHODS]: routePaths.P2P_OFFER_EDIT, + [routePaths.P2P_OFFER_EDIT_ADD_COMMENT]: + routePaths.P2P_OFFER_EDIT_CHOOSE_PAYMENT_METHODS, + [routePaths.P2P_OFFER_EDIT_PREVIEW_OFFER]: + routePaths.P2P_OFFER_EDIT_ADD_COMMENT, +}; + +const getIsOfferEdited = ( + draftOffer: DraftOffer, + editedOffer: DraftOffer & { + fee?: SellOfferRestDto['fee']; + }, +) => { + const editOffer = { + price: editedOffer.price, + amount: editedOffer.amount.plus( + editedOffer.fee ? editedOffer.fee.availableVolume.amount : 0, + ), + floatingPercentage: editedOffer.floatingPercentage, + minOrderAmount: editedOffer.minOrderAmount, + minOrderVolumeLimit: editedOffer.minOrderVolumeLimit, + maxOrderVolumeLimit: editedOffer.maxOrderVolumeLimit, + paymentConfirmationTimeout: editedOffer.paymentConfirmationTimeout, + comment: editedOffer.comment, + paymentDetails: editedOffer.paymentDetails, + number: editedOffer.number, + }; + + const initialOffer = { + price: draftOffer.price, + amount: draftOffer.amount, + floatingPercentage: draftOffer.floatingPercentage, + minOrderAmount: draftOffer.minOrderAmount, + minOrderVolumeLimit: draftOffer.minOrderVolumeLimit, + maxOrderVolumeLimit: draftOffer.maxOrderVolumeLimit, + paymentConfirmationTimeout: draftOffer.paymentConfirmationTimeout, + comment: draftOffer.comment, + paymentDetails: draftOffer.paymentDetails, + number: draftOffer.number, + }; + + return isEqual(editOffer, initialOffer); +}; + +const CreateEditOffer: FC = ({ mode, offerId }) => { + const { t } = useTranslation(); + const navigate = useNavigate(); + const location = useLocation(); + const [searchParams] = useSearchParams(); + const dispatch = useAppDispatch(); + const [cameFrom] = useState( + (searchParams.get('cameFrom') as CameFrom) || 'home', + ); + const [offerTypeFromPath] = useState( + (searchParams.get('offerType') as BaseOfferRestDtoTypeEnum) || 'SALE', + ); + const [offerType, setOfferType] = + useState(offerTypeFromPath); + const languageCode = useLanguage(); + + const { data: antifraudStatus, showShareNumberModal } = useAntifraudStatus(); + const { showSnackbarForBannedUser } = useSnackbarForBannedUser(); + + useEffect(() => { + if (antifraudStatus === 'PHONE_NUMBER_REQUIRED') { + showShareNumberModal({ + onCancel: () => { + // Prevents Telegram WebZ from navigating back to create offer page + setTimeout(() => { + navigate( + cameFrom === 'home' + ? routePaths.P2P_HOME + : routePaths.P2P_USER_PROFILE, + ); + }, 100); + }, + }); + } else if (antifraudStatus === 'ACCESS_DENIED') { + showSnackbarForBannedUser(); + } + }, [antifraudStatus]); + + // Initialization + + const { userId } = useSelector((state: RootState) => state.p2pUser); + const { defaultCurrencies } = useSelector( + (state: RootState) => state.p2pAdForm, + ); + const { chosenCryptoCurrencyOnAssetPageForAdForm } = useSelector( + (state: RootState) => state.p2p, + ); + + const userDefaultCurrency = useUserDefaultFiatCurrency(); + + const defaultFiatCurrency = defaultCurrencies.fiat + ? defaultCurrencies.fiat + : userDefaultCurrency; + + const defaultCryptoCurrency = + chosenCryptoCurrencyOnAssetPageForAdForm || + defaultCurrencies.crypto || + 'TON'; + + const [draftOffer, setDraftOffer] = useState({ + baseCurrencyCode: defaultCryptoCurrency, + quoteCurrencyCode: defaultFiatCurrency, + priceType: 'floating', + price: 0, + priceValue: '', + amount: BigNumber(0), + amountValue: '', + floatingPercentage: 0, + floatingPercentageValue: '', + minOrderAmount: 0, + minOrderAmountValue: '', + paymentConfirmationTimeout: 'PT15M', + comment: '', + paymentDetails: [], + }); + + const [initialOfferToEdit, setInitialOfferToEdit] = + useState(); + + const [selectedPaymentMethodToAdd, setSelectedPaymentMethodToAdd] = + useState(); + + const [loadingStates, setLoadingStates] = useState({ + isRatesLoading: true, + isUserBalanceLoading: true, + isPaymentMethodsLoading: true, + isUserPaymentDetailsLoading: true, + isOfferLoading: mode === 'edit', + }); + + const [fieldsUserEdited, setFieldsUserEdited] = useState({ + price: false, + floatingPercentage: false, + minOrderAmount: false, + }); + + const [rates, setRates] = useState([]); + // isFormWasUsed used to know when user has changed any field during offer creation + const [isFormWasUsed, setIsFormWasUsed] = useState(false); + + const [paymentMethods, setPaymentMethods] = useState<{ + [key: string]: CreateEditOfferOutletContext['paymentMethods']; + }>(); + + const [userBalance, setUserBalance] = + useState(); + + // Fetch methods + + const { data: fixedPriceLimits } = useQuery({ + queryKey: [ + 'getOfferFixedPriceLimitsByCurrencyPair', + draftOffer.baseCurrencyCode, + draftOffer.quoteCurrencyCode, + ], + queryFn: async () => { + const { data } = await API.Offer.getOfferFixedPriceLimitsByCurrencyPair({ + baseCurrencyCode: draftOffer.baseCurrencyCode, + quoteCurrencyCode: draftOffer.quoteCurrencyCode, + }); + + if (data.status !== 'SUCCESS') { + console.error(data); + } + + return data.data; + }, + }); + + const { data: settings, isLoading: isSettingsLoading } = useSettings(); + + const fetchUserBalance = useCallback( + async (currencyCode: FrontendCryptoCurrencyEnum) => { + try { + const balance = await WalletAPI.AccountsApi.getAccount(currencyCode); + + setUserBalance((prevUserBalance) => ({ + ...prevUserBalance, + [currencyCode]: roundDownFractionalDigits( + BigNumber(balance.data.available_balance).toString(), + CRYPTO_FRACTION[currencyCode as keyof typeof CRYPTO_FRACTION], + ), + })); + } catch (error) { + console.error(error); + } + }, + [], + ); + + const fetchUserPaymentDetails = useCallback(async () => { + try { + if (!userId) { + return; + } + + const { data } = await API.PaymentDetails.findPaymentDetailsByUserIdV2(); + + if (data.data) { + const paymentDetails = data.data.map((paymentDetails) => ({ + ...paymentDetails, + isEnabled: false, + })); + + setDraftOffer({ + ...draftOffer, + paymentDetails, + }); + + return paymentDetails; + } else { + console.error(data); + } + } catch (error) { + console.error(error); + } + }, [draftOffer, userId]); + + const fetchPaymentMethodsByCurrencyCode = useCallback( + async (currencyCode) => { + try { + const { data } = + await API.PaymentDetails.findAllPaymentMethodsByCurrencyCodeV2({ + currencyCode, + }); + + if (data.status === 'SUCCESS') { + setPaymentMethods((prevPaymentMethods) => ({ + ...prevPaymentMethods, + [currencyCode]: data.data?.filter( + ({ code }) => !DEPRECATED_P2P_PAYMENT_METHODS.includes(code), + ), + })); + } else { + console.error(data); + } + } catch (error) { + console.error(error); + } + }, + [], + ); + + const fetchRates = useCallback(async () => { + try { + const { data } = await API.Rate.getRate1( + draftOffer.baseCurrencyCode, + draftOffer.quoteCurrencyCode, + ); + + if (data.status === 'SUCCESS' && data.data) { + // Find and replace rate with new data if it already exists + setRates((prev) => + prev.find( + (rate) => + rate.base === draftOffer.baseCurrencyCode && + rate.quote === draftOffer.quoteCurrencyCode, + ) + ? prev.map((rate) => { + if ( + rate.base === draftOffer.baseCurrencyCode && + rate.quote === draftOffer.quoteCurrencyCode && + data.data + ) { + return data.data; + } + + return rate; + }) + : data.data + ? [...prev, data.data] + : prev, + ); + } else { + console.error(data.message); + } + } catch (error) { + console.error(error); + } + }, [draftOffer.baseCurrencyCode, draftOffer.quoteCurrencyCode]); + + const fetchOffer = useCallback( + async ({ paymentDetails }: { paymentDetails?: UserPaymentDetails[] }) => { + try { + if (!offerId) { + return; + } + + setLoadingStates((prev) => ({ ...prev, isOfferLoading: true })); + + const { data } = await API.Offer.getOfferV2({ + offerId: Number(offerId), + }); + + if (data.status === 'SUCCESS' && data.data) { + const price = Number(data.data?.price.value); + const minOrderAmount = Number(data.data?.orderAmountLimits.min); + const amount = BigNumber(data.data?.availableVolume.amount); + const amountWithFee = BigNumber( + data.data?.availableVolume.amount, + ).plus('fee' in data.data ? data.data.fee.availableVolume.amount : 0); + + let userPaymentDetails: UserPaymentDetails[] = []; + if ('paymentDetails' in data.data) { + userPaymentDetails = data.data?.paymentDetails.map( + (paymentDetails) => ({ + id: paymentDetails.id, + userId: paymentDetails.userId, + paymentMethod: { + code: paymentDetails.paymentMethod.code, + name: paymentDetails.paymentMethod.name, + nameEng: paymentDetails.paymentMethod.nameEng, + originNameLocale: + paymentDetails.paymentMethod.originNameLocale, + }, + currency: paymentDetails.currency, + name: paymentDetails.name, + attributes: paymentDetails.attributes, + isEnabled: true, + }), + ); + } + + if (userPaymentDetails.length) { + userPaymentDetails = uniqBy( + concat(userPaymentDetails, paymentDetails ?? []), + (entry) => entry.id, + ) + .map((paymentDetails: UserPaymentDetails) => ({ + ...paymentDetails, + isEnabled: paymentDetails?.isEnabled, + })) + .map((paymentDetails: UserPaymentDetails) => { + if ( + data.data && + 'paymentDetails' in data.data && + data.data?.paymentDetails.find( + (details) => details.id === paymentDetails.id, + ) + ) { + return { + ...paymentDetails, + isEnabled: true, + }; + } + + return paymentDetails; + }); + } + + let chosenPaymentMethodsFromOffer: PaymentMethodRestDto[] = []; + + if ('paymentMethods' in data.data) { + chosenPaymentMethodsFromOffer = data.data.paymentMethods; + } + + const priceType: 'fixed' | 'floating' = + data.data?.price.type === 'FIXED' ? 'fixed' : 'floating'; + + const baseCurrencyCode = data.data?.price + .baseCurrencyCode as keyof typeof P2P_CRYPTO_CURRENCIES_MULTICURRENCY; + + const amountStr = printStringNumber({ + value: amount.toString(), + languageCode, + options: { + maximumFractionDigits: CRYPTO_FRACTION[baseCurrencyCode], + }, + }); + + const amountWithFeeStr = printStringNumber({ + value: amountWithFee.toString(), + languageCode, + options: { + maximumFractionDigits: CRYPTO_FRACTION[baseCurrencyCode], + }, + }); + + const priceStr = printNumber({ + value: price, + languageCode, + options: { + maximumFractionDigits: DEFAULT_FIAT_FRACTION, + }, + }); + + const minOrderAmountStr = printNumber({ + value: minOrderAmount, + languageCode, + options: { + maximumFractionDigits: DEFAULT_FIAT_FRACTION, + }, + }); + + const quoteCurrencyCode = data.data?.price.quoteCurrencyCode; + + const draftOffer = { + baseCurrencyCode, + quoteCurrencyCode, + priceType, + price: priceType === 'fixed' ? price : 0, + priceValue: priceType === 'fixed' && priceStr ? priceStr : '', + amount: amountWithFee, + amountValue: amountWithFeeStr, + floatingPercentage: priceType === 'floating' ? price : 0, + floatingPercentageValue: + priceType === 'floating' && priceStr ? priceStr : '', + minOrderAmount, + minOrderAmountValue: minOrderAmountStr || '', + minOrderVolumeLimit: data.data?.orderVolumeLimits?.min, + maxOrderVolumeLimit: data.data?.orderVolumeLimits?.max, + paymentConfirmationTimeout: data.data + ?.paymentConfirmTimeout as PaymentConfirmationTimeoutDuration, + comment: data.data?.comment || '', + paymentDetails: userPaymentDetails, + number: data.data?.number, + }; + + dispatch( + setChosenPaymentMethods({ + currency: quoteCurrencyCode, + paymentMethods: chosenPaymentMethodsFromOffer, + }), + ); + + setOfferType(data.data.type); + setDraftOffer(draftOffer); + setInitialOfferToEdit({ + ...draftOffer, + amount, + amountValue: amountStr || '', + status: data.data.status, + fee: 'fee' in data.data ? data.data.fee : undefined, + }); + } else { + console.error(data); + } + } catch (error) { + console.error(error); + } finally { + setLoadingStates((prev) => ({ ...prev, isOfferLoading: false })); + } + }, + [dispatch, languageCode, offerId], + ); + + const openDeletePopup = useCallback(() => { + window.Telegram.WebApp.showPopup( + { + message: t('p2p.user_profile.do_you_want_to_delete'), + buttons: [ + { id: 'cancel', text: t('common.cancel') }, + { id: 'confirm', text: t('common.delete') }, + ], + }, + (id: string) => { + if (id === 'confirm') { + // Prevents Telegram WebZ from navigating back to create offer page + setTimeout(() => { + navigate( + cameFrom === 'home' + ? routePaths.P2P_HOME + : routePaths.P2P_USER_PROFILE, + ); + }, 100); + } + }, + ); + }, [cameFrom, navigate, t]); + + const handleBackButtonClick = useCallback(() => { + const isFirstCreateStep = location.pathname === routePaths.P2P_OFFER_CREATE; + const isFirstEditStep = matchPath( + { path: routePaths.P2P_OFFER_EDIT }, + location.pathname, + ); + + if (isFirstEditStep && initialOfferToEdit) { + const isOfferEdited = + mode === 'edit' && !getIsOfferEdited(draftOffer, initialOfferToEdit); + + if (isFirstEditStep && isOfferEdited) { + openDeletePopup(); + return; + } + } + + if (isFirstCreateStep && isFormWasUsed) { + openDeletePopup(); + return; + } + + if (mode === 'edit') { + const routerMap = + offerType === 'PURCHASE' + ? EDIT_BUY_OFFER_BACK_ROUTE_MAP + : EDIT_SELL_OFFER_BACK_ROUTE_MAP; + + const routePatterns = Object.keys(routerMap) as Array< + keyof typeof routerMap + >; + + const foundMatchPattern = routePatterns.find((pattern) => + matchPath({ path: pattern }, location.pathname), + ); + + if (foundMatchPattern) { + // eslint-disable-next-line + // @ts-ignore + const newRoute = generatePath(routerMap[foundMatchPattern], { + id: String(offerId), + }); + + navigate(newRoute); + return; + } + } else { + const routerMap = + offerType === 'PURCHASE' + ? CREATE_BUY_OFFER_BACK_ROUTE_MAP + : CREATE_SEL_OFFER_BACK_ROUTE_MAP; + + const routePatterns = Object.keys(routerMap) as Array< + keyof typeof routerMap + >; + const foundMatchPattern = routePatterns.find((pattern) => + matchPath({ path: pattern }, location.pathname), + ); + + if (foundMatchPattern) { + const newRoute = routerMap[foundMatchPattern]; + navigate(newRoute); + return; + } + } + + if (cameFrom === 'profile') { + navigate({ + pathname: generatePath(routePaths.P2P_USER_PROFILE, { + type: offerType, + '*': '', + }), + search: createSearchParams({ + isRestoreYScrollPosition: String(true), + }).toString(), + }); + } else if (cameFrom === 'dom') { + navigate({ + pathname: generatePath(routePaths.P2P_OFFERS, { + type: offerType, + '*': '', + }), + search: createSearchParams({ + isRestorePrevStateOnOffersPage: String(true), + }).toString(), + }); + } else { + navigate(routePaths.P2P_HOME); + } + }, [ + mode, + draftOffer, + initialOfferToEdit, + location.pathname, + isFormWasUsed, + cameFrom, + openDeletePopup, + offerType, + offerId, + navigate, + ]); + + const handleFieldEdit = useCallback( + ({ + field, + numValue, + }: { + field: keyof FieldsUserEdited; + numValue: BigNumber; + }) => { + if (!initialOfferToEdit) return; + + const isFieldEdited = !numValue.isEqualTo( + BigNumber(initialOfferToEdit[field]), + ); + + setFieldsUserEdited((prev) => ({ + ...prev, + [field]: isFieldEdited, + })); + }, + [initialOfferToEdit], + ); + + // Lifecycle hooks + + useEffect(() => { + const isOfferEdited = + initialOfferToEdit && + mode === 'edit' && + !getIsOfferEdited(draftOffer, initialOfferToEdit); + + if (isOfferEdited || isFormWasUsed) { + window.Telegram.WebApp.enableClosingConfirmation(); + } + + return () => { + window.Telegram.WebApp.disableClosingConfirmation(); + }; + }, [draftOffer, mode, initialOfferToEdit, isFormWasUsed]); + + useEffect(() => { + if (mode === 'create') { + logEvent('Create ad screen viewed', { + category: 'p2p.merchant.ad', + source: cameFrom === 'profile' ? 'profile' : 'main', + }); + } + + const init = async () => { + fetchUserBalance(draftOffer.baseCurrencyCode).finally(() => { + setLoadingStates((prevState) => ({ + ...prevState, + isUserBalanceLoading: false, + })); + }); + + fetchPaymentMethodsByCurrencyCode(draftOffer.quoteCurrencyCode).finally( + () => { + setLoadingStates((prev) => ({ + ...prev, + isPaymentMethodsLoading: false, + })); + }, + ); + + fetchRates().finally(() => { + setLoadingStates((prev) => ({ ...prev, isRatesLoading: false })); + }); + + if (mode === 'edit') { + const paymentDetails = await fetchUserPaymentDetails(); + setLoadingStates((prev) => ({ + ...prev, + isUserPaymentDetailsLoading: false, + })); + await fetchOffer({ paymentDetails }); + } else { + await fetchUserPaymentDetails(); + setLoadingStates((prev) => ({ + ...prev, + isUserPaymentDetailsLoading: false, + })); + } + }; + + init(); + }, []); + + useDidUpdate(() => { + const rate = rates.find( + (item) => + item.base === draftOffer.baseCurrencyCode && + item.quote === draftOffer.quoteCurrencyCode, + ); + const isRateLastTimeUpdatedWasMoreThanFiveMinutesAgo = + rate && + rate.lastUpdateDateTime && + new Date(rate.lastUpdateDateTime) < new Date(Date.now() - 5 * 60 * 1000); + + if (isRateLastTimeUpdatedWasMoreThanFiveMinutesAgo || !rate) { + if (exchangePricePerUnitOfBaseCurrency === 0) { + setLoadingStates((prev) => ({ ...prev, isRatesLoading: true })); + } + fetchRates().finally(() => { + setLoadingStates((prev) => ({ ...prev, isRatesLoading: false })); + }); + } + + // if there is no payment methods for selected currency, then we fetch them + if (!paymentMethods || !paymentMethods[draftOffer.quoteCurrencyCode]) { + fetchPaymentMethodsByCurrencyCode(draftOffer.quoteCurrencyCode); + } + }, [draftOffer.baseCurrencyCode, draftOffer.quoteCurrencyCode]); + + useDidUpdate(() => { + fetchUserBalance(draftOffer.baseCurrencyCode); + }, [draftOffer.baseCurrencyCode]); + + const isPageReloaded = useIsPageReloaded(); + + useEffect(() => { + const userDoesNotEnterAmountButIsOnNextFormStep = + draftOffer.amount.toString() === '0' || !draftOffer.amount.toString(); + + const isUserOnStepsThatShouldResetForm = ROUTES_PATTERNS_TO_RESET_FORM.some( + (pattern) => + !!matchPath( + { + path: pattern, + }, + location.pathname, + ), + ); + + const isUserOnStepsThatShouldResetFormOnRefresh = + ROUTES_PATTERNS_TO_RESET_FORM_ON_REFRESH.some( + (pattern) => + !!matchPath( + { + path: pattern, + }, + location.pathname, + ), + ); + + // If user reloads the page on the step 2, 3 or 4, we need to redirect him to the step 1 + if ( + (userDoesNotEnterAmountButIsOnNextFormStep && + isUserOnStepsThatShouldResetForm) || + (isPageReloaded && isUserOnStepsThatShouldResetFormOnRefresh) + ) { + if (mode === 'create') { + navigate( + { + pathname: routePaths.P2P_OFFER_CREATE, + search: createSearchParams({ + offerType, + }).toString(), + }, + { replace: true }, + ); + } else { + navigate( + { + pathname: generatePath(routePaths.P2P_OFFER_EDIT, { + id: String(offerId), + }), + search: createSearchParams({ + offerType, + }).toString(), + }, + { + replace: true, + }, + ); + } + } + }, [ + isPageReloaded, + draftOffer.amount, + location.pathname, + mode, + navigate, + offerId, + offerType, + ]); + + // Computed values + + const exchangePricePerUnitOfBaseCurrency = useMemo(() => { + return ( + Number( + rates.find( + (item) => + item.base === draftOffer.baseCurrencyCode && + item.quote === draftOffer.quoteCurrencyCode, + )?.rate, + ) || 0 + ); + }, [rates, draftOffer.baseCurrencyCode, draftOffer.quoteCurrencyCode]); + + const approximateAdPrice = useMemo(() => { + return exchangePricePerUnitOfBaseCurrency + ? (Number(exchangePricePerUnitOfBaseCurrency) * + Number(draftOffer.floatingPercentage || 0)) / + 100 + : 0; + }, [draftOffer.floatingPercentage, exchangePricePerUnitOfBaseCurrency]); + + return ( + + + + + ); +}; + +export default CreateEditOffer; diff --git a/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/components/AddComment/AddComment.module.scss2510 b/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/components/AddComment/AddComment.module.scss2510 new file mode 100644 index 0000000000..30d34d354c --- /dev/null +++ b/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/components/AddComment/AddComment.module.scss2510 @@ -0,0 +1,2 @@ +// extracted by mini-css-extract-plugin +export default {"root__apple":"aVj5","root__material":"jd4E","comment":"IPiM","comment__apple":"Nkd5","comment__material":"U0Hw","bold":"QZGT","charactersLeft":"bDIh"}; \ No newline at end of file diff --git a/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/components/AddComment/AddComment.tsx b/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/components/AddComment/AddComment.tsx new file mode 100644 index 0000000000..89a0950b42 --- /dev/null +++ b/data/mini_app/wallet/src/containers/p2p/CreateEditOffer/components/AddComment/AddComment.tsx @@ -0,0 +1,150 @@ +// eslint-disable-next-line +// @ts-ignore +import autosize from 'autosize'; +import cn from 'classnames'; +import { useCallback, useEffect, useRef } from 'react'; +import { useTranslation } from 'react-i18next'; +import { generatePath, useNavigate } from 'react-router-dom'; + +import routePaths from 'routePaths'; + +import { DetailCell } from 'components/Cells'; +import { MainButton } from 'components/MainButton/MainButton'; +import Section from 'components/Section/Section'; + +import { logEvent } from 'utils/common/logEvent'; + +import { useTheme } from 'hooks/utils/useTheme'; + +import { useCreateEditOfferPageContext } from '../../CreateEditOffer'; +import StepsTitle from '../StepsTitle/StepsTitle'; +import styles from './AddComment.module.scss'; + +const AddComment = () => { + const { draftOffer, setDraftOffer, mode, offerId, offerType, settings } = + useCreateEditOfferPageContext(); + + const { t } = useTranslation(); + const { themeClassName } = useTheme(styles); + const commentRef = useRef(null); + const navigate = useNavigate(); + + const MAX_COMMENT_LENGTH = + settings?.offerSettings?.commentMaxLengthInclusive || 0; + + useEffect(() => { + const commentEl = commentRef?.current; + + if (commentEl) { + autosize(commentEl); + } + }, []); + + const handleCommentChange = useCallback( + (e: React.ChangeEvent) => { + const comment = e.target.value; + + const newLinesCount = (comment.match(/\n/g) || []).length; + + const commentLength = comment.length + newLinesCount; + + if (commentLength > MAX_COMMENT_LENGTH) { + // If user copy-pasted a long text, we need to trim it + if (!draftOffer.comment.length) { + setDraftOffer((offer) => ({ + ...offer, + comment: comment.slice(0, MAX_COMMENT_LENGTH - newLinesCount), + })); + } + + return; + } + + setDraftOffer((offer) => ({ + ...offer, + comment, + })); + }, + [MAX_COMMENT_LENGTH, draftOffer.comment.length, setDraftOffer], + ); + + const handleCompleteAddCommentStep = useCallback(() => { + navigate( + mode === 'create' + ? routePaths.P2P_OFFER_CREATE_PREVIEW_OFFER + : generatePath(routePaths.P2P_OFFER_EDIT_PREVIEW_OFFER, { + id: offerId!, + }), + ); + + logEvent('Maker. Creation step comment completed', { + category: 'p2p.merchant.ad', + type: offerType === 'SALE' ? 'sell' : 'buy', + }); + }, [mode, navigate, offerId, offerType]); + + const commentNewLinesCount = (draftOffer.comment.match(/\n/g) || []).length; + const commentLength = draftOffer.comment.length + commentNewLinesCount; + + return ( + <> +
+ +
+ {draftOffer.comment && + commentLength > MAX_COMMENT_LENGTH - 20 && ( +

+ {t('p2p.create_offer_page.xx_characters_left', { + count: + MAX_COMMENT_LENGTH - commentLength > 0 + ? MAX_COMMENT_LENGTH - commentLength + : 0, + })} +

+ )} + +

+ {t('p2p.create_offer_page.sample_message')} +

+

+ {offerType === 'PURCHASE' + ? t( + 'p2p.create_offer_page.description_about_message_for_buy_offer', + ) + : t('p2p.create_offer_page.description_about_message')} +

+ + } + material={{ descriptionLayout: 'outer' }} + > + +