Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(packages): autofix for sort-imports eslint rule #16670

Merged
merged 1 commit into from
Jan 30, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
6 changes: 3 additions & 3 deletions packages/analytics/src/analytics.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { encodeDataToQueryString, getRandomId, getUrl, reportEvent } from './utils';
import type {
InitOptions,
Event as AnalyticsEvent,
AnalyticsOptions,
App,
InitOptions,
ReportConfig,
AnalyticsOptions,
} from './types';
import { encodeDataToQueryString, getRandomId, getUrl, reportEvent } from './utils';

export class Analytics<T extends AnalyticsEvent> {
private enabled?: boolean;
2 changes: 1 addition & 1 deletion packages/analytics/src/tests/analytics.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable no-console */
import { fixtures } from './fixtures/encodeDataToQueryString';
import { Analytics } from '../analytics';
import { encodeDataToQueryString, getRandomId } from '../utils';
import { fixtures } from './fixtures/encodeDataToQueryString';

jest.mock('@trezor/utils', () => ({
__esModule: true,
2 changes: 1 addition & 1 deletion packages/analytics/src/utils.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import type { Environment } from '@trezor/env-utils';
import { getWeakRandomId } from '@trezor/utils';

import type { App, Event as AnalyticsEvent } from './types';
import type { Event as AnalyticsEvent, App } from './types';

export const getTrackingRandomId = () => getWeakRandomId(10);

2 changes: 1 addition & 1 deletion packages/auth-server/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import express from 'express';
import cors, { CorsOptions } from 'cors';
import express from 'express';

const app = express();

38 changes: 19 additions & 19 deletions packages/blockchain-link-types/src/blockbook.ts
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
import type { RequiredKey } from '@trezor/type-utils';

import type {
AccountBalanceHistoryParams,
GetCurrentFiatRatesParams,
GetFiatRatesForTimestampsParams,
GetFiatRatesTickersListParams,
EstimateFeeParams,
RpcCallParams,
AccountInfoParams,
} from './params';
import type { AccountBalanceHistory, FiatRatesBySymbol, TokenStandard } from './common';
import type {
AddressAlias,
Token as BlockbookToken,
TokenTransfer as BlockbookTokenTransfer,
Tx as BlockbookTx,
Utxo as BlockbookUtxo,
ContractInfo,
MempoolTxidFilterEntries,
StakingPool,
Vin,
Vout,
Utxo as BlockbookUtxo,
WsInfoRes,
WsBlockHashRes,
WsBlockFilterReq,
WsBlockFiltersBatchReq,
MempoolTxidFilterEntries,
Token as BlockbookToken,
TokenTransfer as BlockbookTokenTransfer,
AddressAlias,
ContractInfo,
StakingPool,
WsBlockHashRes,
WsInfoRes,
} from './blockbook-api';
import type { AccountBalanceHistory, FiatRatesBySymbol, TokenStandard } from './common';
import type {
AccountBalanceHistoryParams,
AccountInfoParams,
EstimateFeeParams,
GetCurrentFiatRatesParams,
GetFiatRatesForTimestampsParams,
GetFiatRatesTickersListParams,
RpcCallParams,
} from './params';

type OptionalKey<M, K extends keyof M> = Omit<M, K> & Partial<Pick<M, K>>;

2 changes: 1 addition & 1 deletion packages/blockchain-link-types/src/blockfrost.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type { AccountInfoParams, EstimateFeeParams, AccountBalanceHistoryParams } from './params';
import type { AccountBalanceHistory } from './common';
import type { AccountBalanceHistoryParams, AccountInfoParams, EstimateFeeParams } from './params';

type TxContentUtxo = {
/** Transaction hash */
2 changes: 1 addition & 1 deletion packages/blockchain-link-types/src/events.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { BlockEvent, NotificationEvent, FiatRatesEvent, MempoolEvent } from './responses';
import type { BlockEvent, FiatRatesEvent, MempoolEvent, NotificationEvent } from './responses';

export interface Events {
connected: undefined;
6 changes: 3 additions & 3 deletions packages/blockchain-link-types/src/messages.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import type { BlockchainSettings, ChannelMessage, SubscriptionAccountInfo } from './common';
import * as MESSAGES from './constants/messages';
import type { SubscriptionAccountInfo, BlockchainSettings, ChannelMessage } from './common';
import type {
AccountBalanceHistoryParams,
AccountInfoParams,
EstimateFeeParams,
GetCurrentFiatRatesParams,
GetFiatRatesForTimestampsParams,
GetFiatRatesTickersListParams,
EstimateFeeParams,
RpcCallParams,
AccountInfoParams,
} from './params';

// messages sent from blockchain.js to worker
14 changes: 7 additions & 7 deletions packages/blockchain-link-types/src/responses.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { HANDSHAKE } from './constants/messages';
import * as RESPONSES from './constants/responses';
import type { Block, MempoolTransactionNotification } from './blockbook';
import type {
ServerInfo,
AccountBalanceHistory,
AccountInfo,
Utxo,
ChannelMessage,
FiatRatesBySymbol,
ServerInfo,
Transaction,
AccountBalanceHistory,
ChannelMessage,
Utxo,
} from './common';
import type { MempoolTransactionNotification, Block } from './blockbook';
import { HANDSHAKE } from './constants/messages';
import * as RESPONSES from './constants/responses';

// messages sent from worker to blockchain.js

2 changes: 1 addition & 1 deletion packages/blockchain-link-types/src/solana.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import type { SolDelegation } from '@everstake/wallet-sdk';
import type {
AccountInfoBase,
AccountInfoWithBase58EncodedData,
@@ -7,7 +8,6 @@ import type {
GetTransactionApi,
Signature,
} from '@solana/web3.js';
import type { SolDelegation } from '@everstake/wallet-sdk';

import type {
GetObjectWithKey,
16 changes: 8 additions & 8 deletions packages/blockchain-link-utils/src/blockbook.ts
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
import { ETH_NETWORK_ADDRESSES } from '@everstake/wallet-sdk';

import { BigNumber } from '@trezor/utils/src/bigNumber';
import type {
Utxo,
Transaction,
TokenTransfer,
TokenInfo,
Address,
AccountAddresses,
AccountInfo,
Address,
InternalTransfer,
TokenInfo,
TokenTransfer,
Transaction,
Utxo,
} from '@trezor/blockchain-link-types';
import type {
ServerInfo,
AccountInfo as BlockbookAccountInfo,
AccountUtxo as BlockbookAccountUtxo,
Transaction as BlockbookTransaction,
ServerInfo,
VinVout,
} from '@trezor/blockchain-link-types/src/blockbook';
import { BigNumber } from '@trezor/utils/src/bigNumber';

import { Addresses, filterTargets, enhanceVinVout, sumVinVout, transformTarget } from './utils';
import { Addresses, enhanceVinVout, filterTargets, sumVinVout, transformTarget } from './utils';

export const transformServerInfo = (payload: ServerInfo) => ({
name: payload.name,
16 changes: 8 additions & 8 deletions packages/blockchain-link-utils/src/blockfrost.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
import { BigNumber, BigNumberValue } from '@trezor/utils/src/bigNumber';
import type { VinVout } from '@trezor/blockchain-link-types/src/blockbook';
import type {
BlockfrostUtxos,
BlockfrostTransaction,
AssetBalance,
BlockfrostAccountInfo,
BlockfrostTransaction,
BlockfrostUtxos,
ParseAssetResult,
AssetBalance,
} from '@trezor/blockchain-link-types/src/blockfrost';
import type { VinVout } from '@trezor/blockchain-link-types/src/blockbook';
import type {
Utxo,
Transaction,
AccountInfo,
AccountAddresses,
AccountInfo,
TokenInfo,
TokenTransfer,
Transaction,
TransferType,
Utxo,
} from '@trezor/blockchain-link-types/src/common';
import { BigNumber, BigNumberValue } from '@trezor/utils/src/bigNumber';

import {
enhanceVinVout,
6 changes: 3 additions & 3 deletions packages/blockchain-link-utils/src/solana.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import { A, D, F, pipe } from '@mobily/ts-belt';

import { BigNumber } from '@trezor/utils/src/bigNumber';
import { Target, TokenTransfer, Transaction } from '@trezor/blockchain-link-types/src';
import { arrayPartition } from '@trezor/utils';
import type { StakeType, TokenInfo, TokenStandard } from '@trezor/blockchain-link-types/src';
import type {
AccountInfo,
Address,
@@ -14,8 +13,9 @@ import type {
SolanaValidParsedTxWithMeta,
TokenDetailByMint,
} from '@trezor/blockchain-link-types/src/solana';
import type { TokenInfo, TokenStandard, StakeType } from '@trezor/blockchain-link-types/src';
import { isCodesignBuild } from '@trezor/env-utils';
import { arrayPartition } from '@trezor/utils';
import { BigNumber } from '@trezor/utils/src/bigNumber';

import { formatTokenSymbol } from './utils';

6 changes: 3 additions & 3 deletions packages/blockchain-link-utils/src/tests/blockfrost.test.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import {
parseAsset,
transformUtxos,
transformTokenInfo,
transformAccountInfo,
transformInputOutput,
transformTokenInfo,
transformTransaction,
transformAccountInfo,
transformUtxos,
} from '../blockfrost';
import fixtures from './fixtures/blockfrost';

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import type { DeepPartial } from '@trezor/type-utils';
import type { AccountAddresses, Transaction } from '@trezor/blockchain-link-types';
import type { Transaction as BlockbookTransaction } from '@trezor/blockchain-link-types/src/blockbook';
import type { DeepPartial } from '@trezor/type-utils';

const token = {
amount: '',
8 changes: 4 additions & 4 deletions packages/blockchain-link-utils/src/tests/solana.test.ts
Original file line number Diff line number Diff line change
@@ -5,17 +5,17 @@ import {
} from '@trezor/blockchain-link-types/src/solana';

import {
ApiTokenAccount,
extractAccountBalanceDiff,
getAmount,
getDetails,
getNativeEffects,
getTargets,
getTokenNameAndSymbol,
getTokens,
getNativeEffects,
getTxType,
transformTransaction,
getTokenNameAndSymbol,
transformTokenInfo,
ApiTokenAccount,
transformTransaction,
} from '../solana';
import { fixtures } from './fixtures/solana';

6 changes: 3 additions & 3 deletions packages/blockchain-link-utils/src/utils.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { BigNumber, BigNumberValue } from '@trezor/utils/src/bigNumber';
import { isNotUndefined, topologicalSort } from '@trezor/utils';
import type { Transaction, EnhancedVinVout } from '@trezor/blockchain-link-types/src/common';
import type { VinVout } from '@trezor/blockchain-link-types/src/blockbook';
import type { EnhancedVinVout, Transaction } from '@trezor/blockchain-link-types/src/common';
import { isNotUndefined, topologicalSort } from '@trezor/utils';
import { BigNumber, BigNumberValue } from '@trezor/utils/src/bigNumber';

export type Addresses = ({ address: string } | string)[] | string;

16 changes: 8 additions & 8 deletions packages/blockchain-link/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import type { BlockchainSettings } from '@trezor/blockchain-link-types';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type { Events } from '@trezor/blockchain-link-types/src/events';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import type * as ResponseTypes from '@trezor/blockchain-link-types/src/responses';
import {
Throttler,
TypedEmitter,
createDeferred,
createDeferredManager,
createLazy,
TypedEmitter,
Throttler,
} from '@trezor/utils';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import type { BlockchainSettings } from '@trezor/blockchain-link-types';
import type * as ResponseTypes from '@trezor/blockchain-link-types/src/responses';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import type { Events } from '@trezor/blockchain-link-types/src/events';

const workerWrapper = (factory: BlockchainSettings['worker']): Worker | Promise<Worker> => {
if (typeof factory === 'function') return factory();
8 changes: 4 additions & 4 deletions packages/blockchain-link/src/ui/index.ui.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import BlockbookWorker from '../workers/blockbook/index';
import RippleWorker from '../workers/ripple/index';
import BlockfrostWorker from '../workers/blockfrost/index';
import CONFIG from './config';
import BlockchainLink from '../index';
import { getInputValue, fillValues, onClear } from './utils';
import { fillValues, getInputValue, onClear } from './utils';
import BlockbookWorker from '../workers/blockbook/index';
import BlockfrostWorker from '../workers/blockfrost/index';
import RippleWorker from '../workers/ripple/index';
import SolanaWorker from '../workers/solana';

const instances: BlockchainLink[] = [];
2 changes: 1 addition & 1 deletion packages/blockchain-link/src/workers/baseWebsocket.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import WebSocket from 'ws';

import { createDeferred, createDeferredManager, TypedEmitter } from '@trezor/utils';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { TimerId } from '@trezor/type-utils';
import { TypedEmitter, createDeferred, createDeferredManager } from '@trezor/utils';

interface Subscription<T> {
id: string;
6 changes: 3 additions & 3 deletions packages/blockchain-link/src/workers/baseWorker.ts
Original file line number Diff line number Diff line change
@@ -7,13 +7,13 @@

import { SocksProxyAgent } from 'socks-proxy-agent';

import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type { BlockchainSettings, Response } from '@trezor/blockchain-link-types';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import type { Response, BlockchainSettings } from '@trezor/blockchain-link-types';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type { Message } from '@trezor/blockchain-link-types/src/messages';

import { prioritizeEndpoints } from './utils';
import { WorkerState } from './state';
import { prioritizeEndpoints } from './utils';

// self is not declared in TS Webworker lib typings
declare const self: { postMessage: (...args: any[]) => any };
6 changes: 3 additions & 3 deletions packages/blockchain-link/src/workers/blockbook/index.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import * as utils from '@trezor/blockchain-link-utils/src/blockbook';
import type { Response, SubscriptionAccountInfo } from '@trezor/blockchain-link-types';
import type {
AddressNotification,
BlockNotification,
FiatRatesNotification,
MempoolTransactionNotification,
} from '@trezor/blockchain-link-types/src/blockbook';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import * as utils from '@trezor/blockchain-link-utils/src/blockbook';

import { BlockbookAPI } from './websocket';
import { BaseWorker, CONTEXT, ContextType } from '../baseWorker';
12 changes: 6 additions & 6 deletions packages/blockchain-link/src/workers/blockbook/websocket.ts
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
import WebSocket from 'ws';

import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type {
BlockNotification,
MempoolTransactionNotification,
AddressNotification,
Send,
BlockNotification,
FiatRatesNotification,
FilterRequestParams,
MempoolTransactionNotification,
Send,
} from '@trezor/blockchain-link-types/src/blockbook';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type {
GetCurrentFiatRates,
GetFiatRatesForTimestamps,
GetFiatRatesTickersList,
GetCurrentFiatRates,
} from '@trezor/blockchain-link-types/src/messages';
import type {
AccountBalanceHistoryParams,
AccountInfoParams,
EstimateFeeParams,
AccountBalanceHistoryParams,
RpcCallParams,
} from '@trezor/blockchain-link-types/src/params';
import { getSuiteVersion } from '@trezor/env-utils';
18 changes: 9 additions & 9 deletions packages/blockchain-link/src/workers/blockfrost/index.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import {
transformUtxos,
transformAccountInfo,
transformTransaction,
} from '@trezor/blockchain-link-utils/src/blockfrost';
import type { SubscriptionAccountInfo } from '@trezor/blockchain-link-types/src/common';
import type { Response } from '@trezor/blockchain-link-types';
import type {
BlockfrostTransaction,
BlockContent,
BlockfrostTransaction,
} from '@trezor/blockchain-link-types/src/blockfrost';
import type { SubscriptionAccountInfo } from '@trezor/blockchain-link-types/src/common';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import {
transformAccountInfo,
transformTransaction,
transformUtxos,
} from '@trezor/blockchain-link-utils/src/blockfrost';

import { BlockfrostAPI } from './websocket';
import { BaseWorker, CONTEXT, ContextType } from '../baseWorker';
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import WebSocket from 'ws';

import type {
Send,
BlockContent,
BlockfrostTransaction,
Send,
} from '@trezor/blockchain-link-types/src/blockfrost';
import type {
AccountBalanceHistoryParams,
AccountInfoParams,
EstimateFeeParams,
AccountBalanceHistoryParams,
} from '@trezor/blockchain-link-types/src/params';
import { getSuiteVersion } from '@trezor/env-utils';

Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { Network, networks } from '@trezor/utxo-lib';
import { ElectrumAPI, BlockHeader, Version } from '@trezor/blockchain-link-types/src/electrum';
import { BlockHeader, ElectrumAPI, Version } from '@trezor/blockchain-link-types/src/electrum';
import { IntervalId } from '@trezor/type-utils';
import { Network, networks } from '@trezor/utxo-lib';

import { JsonRpcClientOptions } from './json-rpc';
import { BatchingJsonRpcClient } from './batching';
import { JsonRpcClientOptions } from './json-rpc';
import type { ISocket } from '../sockets/interface';

const KEEP_ALIVE_INTERVAL = 120 * 1000; // 2 minutes
10 changes: 5 additions & 5 deletions packages/blockchain-link/src/workers/electrum/index.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import type { Response } from '@trezor/blockchain-link-types';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { Message } from '@trezor/blockchain-link-types/src/messages';
import { Without } from '@trezor/type-utils';

import { BaseWorker, CONTEXT, ContextType } from '../baseWorker';
import * as M from './methods';
import * as L from './listeners';
import { createSocket } from './sockets';
import { CachingElectrumClient } from './client/caching';
import type { ElectrumClient } from './client/electrum';
import * as L from './listeners';
import * as M from './methods';
import { createSocket } from './sockets';

type BlockListener = ReturnType<typeof L.blockListener>;
type TxListener = ReturnType<typeof L.txListener>;
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { throwError } from '@trezor/utils';
import { RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import type { BlockHeader, ElectrumAPI } from '@trezor/blockchain-link-types/src/electrum';
import { throwError } from '@trezor/utils';

import { blockheaderToBlockhash } from '../utils';
import type { BaseWorker } from '../../baseWorker';
import { blockheaderToBlockhash } from '../utils';

export const blockListener = (worker: BaseWorker<ElectrumAPI>) => {
const { state } = worker;
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { throwError } from '@trezor/utils';
import { RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import type {
ElectrumAPI,
HistoryTx,
StatusChange,
} from '@trezor/blockchain-link-types/src/electrum';
import type { Subscribe, Unsubscribe } from '@trezor/blockchain-link-types/src/messages';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import { throwError } from '@trezor/utils';

import type { BaseWorker } from '../../baseWorker';
import { createAddressManager, getTransactions } from '../utils';
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { BigNumber } from '@trezor/utils/src/bigNumber';
import { discovery } from '@trezor/utxo-lib';
import { sumVinVout } from '@trezor/blockchain-link-utils';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import type { GetAccountBalanceHistory as Req } from '@trezor/blockchain-link-types/src/messages';
import type { GetAccountBalanceHistory as Res } from '@trezor/blockchain-link-types/src/responses';
import { AccountAddresses, Address, Transaction } from '@trezor/blockchain-link-types/src/common';
import type { HistoryTx } from '@trezor/blockchain-link-types/src/electrum';
import type { GetAccountBalanceHistory as Req } from '@trezor/blockchain-link-types/src/messages';
import type { GetAccountBalanceHistory as Res } from '@trezor/blockchain-link-types/src/responses';
import { sumVinVout } from '@trezor/blockchain-link-utils';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import { BigNumber } from '@trezor/utils/src/bigNumber';
import { discovery } from '@trezor/utxo-lib';

import { Api, tryGetScripthash, getTransactions, discoverAddress, AddressHistory } from '../utils';
import { AddressHistory, Api, discoverAddress, getTransactions, tryGetScripthash } from '../utils';

const transformAddress = (addr: AddressHistory): Address => ({
address: addr.address,
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { discovery } from '@trezor/utxo-lib';
import { sortTxsFromLatest } from '@trezor/blockchain-link-utils';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import type { Address, Transaction } from '@trezor/blockchain-link-types';
import type { VinVout } from '@trezor/blockchain-link-types/src/blockbook';
import type { ElectrumAPI } from '@trezor/blockchain-link-types/src/electrum';
import type { GetAccountInfo as Req } from '@trezor/blockchain-link-types/src/messages';
import type { GetAccountInfo as Res } from '@trezor/blockchain-link-types/src/responses';
import type { VinVout } from '@trezor/blockchain-link-types/src/blockbook';
import type { Address, Transaction } from '@trezor/blockchain-link-types';
import { sortTxsFromLatest } from '@trezor/blockchain-link-utils';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import { discovery } from '@trezor/utxo-lib';

import { Api, tryGetScripthash, discoverAddress, AddressHistory, getTransactions } from '../utils';
import { AddressHistory, Api, discoverAddress, getTransactions, tryGetScripthash } from '../utils';

// const PAGE_DEFAULT = 0;
const PAGE_SIZE_DEFAULT = 25;
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { throwError } from '@trezor/utils';
import { discovery } from '@trezor/utxo-lib';
import type { Utxo } from '@trezor/blockchain-link-types/src/electrum';
import type { GetAccountUtxo as Req } from '@trezor/blockchain-link-types/src/messages';
import type { GetAccountUtxo as Res } from '@trezor/blockchain-link-types/src/responses';
import type { Utxo } from '@trezor/blockchain-link-types/src/electrum';
import { throwError } from '@trezor/utils';
import { discovery } from '@trezor/utxo-lib';

import { Api, tryGetScripthash, discoverAddress } from '../utils';
import { Api, discoverAddress, tryGetScripthash } from '../utils';

const transformUtxo =
(currentHeight: number, addressInfo: { address?: string; path?: string } = {}) =>
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { throwError } from '@trezor/utils';
import type { GetInfo as Req } from '@trezor/blockchain-link-types/src/messages';
import type { GetInfo as Res } from '@trezor/blockchain-link-types/src/responses';
import { throwError } from '@trezor/utils';

import { Api, blockheaderToBlockhash } from '../utils';

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import type { GetTransaction as Req } from '@trezor/blockchain-link-types/src/messages';
import type { GetTransaction as Res } from '@trezor/blockchain-link-types/src/responses';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';

import { Api, getTransactions } from '../utils';

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import type { Socket as TCPSocket } from 'net';
import type { TLSSocket } from 'tls';
import type { SocksProxyAgent } from 'socks-proxy-agent';
import type { TLSSocket } from 'tls';

import type { ISocket, SocketListener } from './interface';

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { parseElectrumUrl } from '@trezor/utils';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { parseElectrumUrl } from '@trezor/utils';

import type { SocketBase, SocketOptions } from './base';
import { TcpSocket } from './tcp';
import { TlsSocket } from './tls';
import { TorSocket } from './tor';
import type { SocketBase, SocketOptions } from './base';

export const createSocket = (url: string, options?: SocketOptions): SocketBase => {
const parsed = parseElectrumUrl(url);
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { isNotUndefined, arrayDistinct, objectPartition } from '@trezor/utils';
import type { Network } from '@trezor/utxo-lib';
import type { AccountAddresses, SubscriptionAccountInfo } from '@trezor/blockchain-link-types/src';
import { arrayDistinct, isNotUndefined, objectPartition } from '@trezor/utils';
import type { Network } from '@trezor/utxo-lib';

import { addressToScripthash } from './transform';

Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { arrayToDictionary, arrayDistinct } from '@trezor/utils';
import type { Transaction as BlockbookTransaction } from '@trezor/blockchain-link-types/src/blockbook';
import type {
ElectrumAPI,
HistoryTx,
TransactionVerbose,
TxIn,
TxCoinbase,
TxIn,
TxOut,
HistoryTx,
} from '@trezor/blockchain-link-types/src/electrum';
import { arrayDistinct, arrayToDictionary } from '@trezor/utils';

import { btcToSat } from './transform';

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { address as a, crypto as c, Network } from '@trezor/utxo-lib';
import { Network, address as a, crypto as c } from '@trezor/utxo-lib';

export const btcToSat = (btc: number) => Math.round(100000000 * btc).toString();

10 changes: 5 additions & 5 deletions packages/blockchain-link/src/workers/ripple/index.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { RippleAPI, APIOptions } from 'ripple-lib';
import { APIOptions, RippleAPI } from 'ripple-lib';
import { RippleError } from 'ripple-lib/dist/npm/common/errors';

import { BigNumber } from '@trezor/utils/src/bigNumber';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type { AccountInfo, Response, SubscriptionAccountInfo } from '@trezor/blockchain-link-types';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import * as utils from '@trezor/blockchain-link-utils/src/ripple';
import type { Response, SubscriptionAccountInfo, AccountInfo } from '@trezor/blockchain-link-types';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import * as utils from '@trezor/blockchain-link-utils/src/ripple';
import { TimerId } from '@trezor/type-utils';
import { BigNumber } from '@trezor/utils/src/bigNumber';

import { BaseWorker, CONTEXT, ContextType } from '../baseWorker';

12 changes: 6 additions & 6 deletions packages/blockchain-link/src/workers/solana/fee.ts
Original file line number Diff line number Diff line change
@@ -2,19 +2,19 @@ import {
Address,
Base64EncodedWireTransaction,
CompiledTransactionMessage,
decompileTransactionMessage,
getBase64Decoder,
getCompiledTransactionMessageEncoder,
GetFeeForMessageApi,
GetRecentPrioritizationFeesApi,
getTransactionEncoder,
isWritableRole,
pipe,
Rpc,
SignaturesMap,
SimulateTransactionApi,
TransactionMessageBytes,
TransactionMessageBytesBase64,
decompileTransactionMessage,
getBase64Decoder,
getCompiledTransactionMessageEncoder,
getTransactionEncoder,
isWritableRole,
pipe,
} from '@solana/web3.js';

import { COMPUTE_BUDGET_PROGRAM_ID } from '@trezor/blockchain-link-utils/src/solana';
52 changes: 26 additions & 26 deletions packages/blockchain-link/src/workers/solana/index.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,20 @@
import { getTokenSize as _getTokenSize } from '@solana-program/token';
import { getTokenSize as _getToken2022Size } from '@solana-program/token-2022';
import {
AccountInfoBase,
ClusterUrl,
RpcMainnet,
RpcSubscriptionsMainnet,
SOLANA_ERROR__BLOCK_HEIGHT_EXCEEDED,
SOLANA_ERROR__RPC_SUBSCRIPTIONS__CHANNEL_CONNECTION_CLOSED,
SOLANA_ERROR__RPC_SUBSCRIPTIONS__CHANNEL_FAILED_TO_CONNECT,
SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR,
Signature,
Slot,
SolanaRpcApiMainnet,
SolanaRpcResponse,
SolanaRpcSubscriptionsApi,
TransactionWithBlockhashLifetime,
address,
assertTransactionIsFullySigned,
ClusterUrl,
createDefaultRpcTransport,
createSolanaRpcFromTransport,
createSolanaRpcSubscriptions,
@@ -17,50 +28,39 @@ import {
isSolanaError,
mainnet,
pipe,
RpcMainnet,
RpcSubscriptionsMainnet,
sendAndConfirmTransactionFactory,
Signature,
Slot,
SOLANA_ERROR__BLOCK_HEIGHT_EXCEEDED,
SOLANA_ERROR__RPC_SUBSCRIPTIONS__CHANNEL_FAILED_TO_CONNECT,
SOLANA_ERROR__RPC_SUBSCRIPTIONS__CHANNEL_CONNECTION_CLOSED,
SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR,
SolanaRpcApiMainnet,
SolanaRpcSubscriptionsApi,
TransactionWithBlockhashLifetime,
AccountInfoBase,
SolanaRpcResponse,
} from '@solana/web3.js';
import { getTokenSize as _getTokenSize } from '@solana-program/token';
import { getTokenSize as _getToken2022Size } from '@solana-program/token-2022';

import type {
Response,
AccountInfo,
Transaction,
Response,
SubscriptionAccountInfo,
TokenInfo,
Transaction,
} from '@trezor/blockchain-link-types';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import type {
SolanaValidParsedTxWithMeta,
ParsedTransactionWithMeta,
SolanaTokenAccountInfo,
SolanaValidParsedTxWithMeta,
TokenDetailByMint,
} from '@trezor/blockchain-link-types/src/solana';
import type * as MessageTypes from '@trezor/blockchain-link-types/src/messages';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { MESSAGES, RESPONSES } from '@trezor/blockchain-link-types/src/constants';
import { solanaUtils } from '@trezor/blockchain-link-utils';
import { BigNumber, createDeferred, createLazy } from '@trezor/utils';
import {
transformTokenInfo,
tokenProgramsInfo,
type TokenProgramName,
tokenProgramsInfo,
transformTokenInfo,
} from '@trezor/blockchain-link-utils/src/solana';
import { getSuiteVersion } from '@trezor/env-utils';
import { IntervalId } from '@trezor/type-utils';
import { BigNumber, createDeferred, createLazy } from '@trezor/utils';

import { getBaseFee, getPriorityFee } from './fee';
import { BaseWorker, ContextType, CONTEXT } from '../baseWorker';
import { BaseWorker, CONTEXT, ContextType } from '../baseWorker';
import { getSolanaStakingData } from '../utils';

export type SolanaAPI = Readonly<{
2 changes: 1 addition & 1 deletion packages/blockchain-link/src/workers/state.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import type { SubscriptionAccountInfo } from '@trezor/blockchain-link-types';
import { CustomError } from '@trezor/blockchain-link-types/src/constants/errors';
import { Cache } from '@trezor/utils';

export class WorkerState {
2 changes: 1 addition & 1 deletion packages/blockchain-link/src/workers/utils.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Solana, SolNetwork } from '@everstake/wallet-sdk';
import { SolNetwork, Solana } from '@everstake/wallet-sdk';

import { parseHostname } from '@trezor/utils';

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { BackendWebsocketServerMock } from '@trezor/e2e-utils';

import BlockchainLink from '../../src';
import {
// blockbookWorkerFactory,
blockbookModuleFactory,
} from './worker';
import BlockchainLink from '../../src';

const backends = [
// TODO: nodejs tests are failing, fix it.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { BackendWebsocketServerMock } from '@trezor/e2e-utils';

import BlockchainLink from '../../src';
import {
// blockfrostWorkerFactory,
blockfrostModuleFactory,
} from './worker';
import BlockchainLink from '../../src';

const backends = [
// TODO: nodejs tests are failing, fix it.
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { BackendWebsocketServerMock } from '@trezor/e2e-utils';

import BlockchainLink from '../../src';
import {
// rippleWorkerFactory,
rippleModuleFactory,
// blockbookWorkerFactory,
blockbookModuleFactory,
// blockfrostWorkerFactory,
blockfrostModuleFactory,
// rippleWorkerFactory,
rippleModuleFactory,
} from './worker';
import BlockchainLink from '../../src';

// Testing each build using same scenarios (connection + events)

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { GET_ACCOUNT_INFO, HANDSHAKE } from '@trezor/blockchain-link-types/src/constants/messages';
import type { Message } from '@trezor/blockchain-link-types/src/messages';
import type { Response } from '@trezor/blockchain-link-types/src/responses';
import { GET_ACCOUNT_INFO, HANDSHAKE } from '@trezor/blockchain-link-types/src/constants/messages';

import ElectrumWorker from '../../src/workers/electrum';

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { BackendWebsocketServerMock } from '@trezor/e2e-utils';

import BlockchainLink from '../../src';
import {
// rippleWorkerFactory,
rippleModuleFactory,
} from './worker';
import BlockchainLink from '../../src';

const backends = [
// TODO: nodejs tests are failing, fix it.
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import TinyWorker from 'tiny-worker';

const BlockbookWorkerModule = require('../../../build/module/blockbook-worker');
const RippleWorkerModule = require('../../../build/module/ripple-worker');
const BlockfrostWorkerModule = require('../../../build/module/blockfrost-worker');
const RippleWorkerModule = require('../../../build/module/ripple-worker');

export const rippleWorkerFactory = () => {
if (typeof Worker === 'undefined') {
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import type { DeepPartial } from '@trezor/type-utils';
import type { AccountInfo, AccountInfoParams } from '@trezor/blockchain-link-types';
import type { AccountInfo as BlockbookAccountInfo } from '@trezor/blockchain-link-types/src/blockbook';
import type { DeepPartial } from '@trezor/type-utils';

const fixtures: {
description: string;
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import blockbook from './getAccountInfo-blockbook';
import ripple from './getAccountInfo-ripple';
import blockfrost from './getAccountInfo-blockfrost';
import ripple from './getAccountInfo-ripple';

export default {
blockbook,
Original file line number Diff line number Diff line change
@@ -3,8 +3,8 @@ import { BackendWebsocketServerMock } from '@trezor/e2e-utils';
import workers from './worker';
import BlockchainLink from '../../src';
import fixturesBlockbook from './fixtures/notifications-blockbook';
import fixturesRipple from './fixtures/notifications-ripple';
import fixturesBlockfrost from './fixtures/notifications-blockfrost';
import fixturesRipple from './fixtures/notifications-ripple';

const fixtures = {
blockbook: fixturesBlockbook,
2 changes: 1 addition & 1 deletion packages/blockchain-link/tests/unit/state.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { WorkerState } from '../../src/workers/state';
import fixtures from './fixtures/state';
import { WorkerState } from '../../src/workers/state';

const state = new WorkerState();

2 changes: 1 addition & 1 deletion packages/blockchain-link/tests/unit/utils.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { prioritizeEndpoints } from '../../src/workers/utils';
import * as fixtures from './fixtures/utils';
import { prioritizeEndpoints } from '../../src/workers/utils';

describe('prioritizeEndpoints', () => {
it('prioritizeEndpoints', () => {
2 changes: 1 addition & 1 deletion packages/blockchain-link/tests/unit/worker/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import Blockbook from '../../../src/workers/blockbook';
import Ripple from '../../../src/workers/ripple';
import Blockfrost from '../../../src/workers/blockfrost';
import Ripple from '../../../src/workers/ripple';

export default [
{ name: 'blockbook', worker: Blockbook },
2 changes: 1 addition & 1 deletion packages/blockchain-link/webpack/dev.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const webpack = require('webpack');

const { SRC, BUILD, PORT } = require('./constants');

Original file line number Diff line number Diff line change
@@ -4,8 +4,8 @@ import type { Network } from '@trezor/utxo-lib';

import { deriveAddresses } from './backendUtils';
import { getAddressScript } from './filters';
import type { AccountAddress, ScanAccountCheckpoint, AccountCache } from '../types/backend';
import { DISCOVERY_LOOKOUT, DISCOVERY_LOOKOUT_EXTENDED } from '../constants';
import type { AccountAddress, AccountCache, ScanAccountCheckpoint } from '../types/backend';

export type AddressController = Pick<CoinjoinAddressController, 'receive' | 'change' | 'analyze'>;

14 changes: 7 additions & 7 deletions packages/coinjoin/src/backend/CoinjoinBackend.ts
Original file line number Diff line number Diff line change
@@ -4,20 +4,20 @@ import { CoinjoinBackendClient } from './CoinjoinBackendClient';
import { CoinjoinFilterController } from './CoinjoinFilterController';
import { CoinjoinMempoolController } from './CoinjoinMempoolController';
import { DISCOVERY_LOOKOUT, DISCOVERY_LOOKOUT_EXTENDED } from '../constants';
import { scanAccount } from './scanAccount';
import { getAccountInfo } from './getAccountInfo';
import { createPendingTransaction } from './createPendingTx';
import { deriveAddresses, isTaprootAddress } from './backendUtils';
import { getCoinjoinNetwork } from '../utils/settingsUtils';
import type { CoinjoinBackendSettings, LogEvent, Logger, LogLevel } from '../types';
import { createPendingTransaction } from './createPendingTx';
import { getAccountInfo } from './getAccountInfo';
import { scanAccount } from './scanAccount';
import type { CoinjoinBackendSettings, LogEvent, LogLevel, Logger } from '../types';
import type {
ScanAccountParams,
AccountCache,
ScanAccountCheckpoint,
ScanAccountParams,
ScanAccountProgress,
ScanProgressInfo,
Transaction,
AccountCache,
} from '../types/backend';
import { getCoinjoinNetwork } from '../utils/settingsUtils';

interface Events {
log: LogEvent;
22 changes: 11 additions & 11 deletions packages/coinjoin/src/backend/CoinjoinBackendClient.ts
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
import type { BlockbookAPI } from '@trezor/blockchain-link/src/workers/blockbook/websocket';
import {
scheduleAction,
TypedEmitter,
arrayShuffle,
urlToOnion,
getWeakRandomInt,
TypedEmitter,
scheduleAction,
urlToOnion,
} from '@trezor/utils';
import type { BlockbookAPI } from '@trezor/blockchain-link/src/workers/blockbook/websocket';

import { RequestOptions, resetIdentityCircuit } from '../utils/http';
import { FILTERS_REQUEST_TIMEOUT, HTTP_REQUEST_GAP, HTTP_REQUEST_TIMEOUT } from '../constants';
import type { CoinjoinBackendSettings, Logger } from '../types';
import { CoinjoinWebsocketController } from './CoinjoinWebsocketController';
import { identifyWsError } from './backendUtils';
import type {
BlockbookBlock,
BlockFilterResponse,
MempoolFilterResponse,
BlockbookBlock,
BlockbookTransaction,
MempoolFilterResponse,
} from '../types/backend';
import type { CoinjoinBackendSettings, Logger } from '../types';
import { FILTERS_REQUEST_TIMEOUT, HTTP_REQUEST_GAP, HTTP_REQUEST_TIMEOUT } from '../constants';
import { CoinjoinWebsocketController } from './CoinjoinWebsocketController';
import { identifyWsError } from './backendUtils';
import { RequestOptions, resetIdentityCircuit } from '../utils/http';

type CoinjoinBackendClientSettings = CoinjoinBackendSettings & {
timeout?: number;
4 changes: 2 additions & 2 deletions packages/coinjoin/src/backend/CoinjoinFilterController.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { createCooldown } from '@trezor/utils';

import { PROGRESS_INFO_COOLDOWN } from '../constants';
import type { CoinjoinBackendSettings } from '../types';
import type {
FilterClient,
FilterControllerParams,
FilterControllerContext,
FilterControllerParams,
} from '../types/backend';
import type { CoinjoinBackendSettings } from '../types';

export type FilterController = Pick<CoinjoinFilterController, 'getFilterIterator'>;

6 changes: 3 additions & 3 deletions packages/coinjoin/src/backend/CoinjoinMempoolController.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
/* eslint no-underscore-dangle: ["error", { "allowAfterThis": true }] */

import type { Network } from '@trezor/utxo-lib';
import { arrayDistinct, createCooldown, promiseAllSequence } from '@trezor/utils';
import type { Network } from '@trezor/utxo-lib';

import type { Logger } from '../types';
import type { BlockbookTransaction, MempoolClient, OnProgressInfo } from '../types/backend';
import type { AddressController } from './CoinjoinAddressController';
import { getAddressScript, getMultiFilter } from './filters';
import { getAllTxAddresses, isDoublespend } from './backendUtils';
import { getAddressScript, getMultiFilter } from './filters';
import { MEMPOOL_PURGE_CYCLE, PROGRESS_INFO_COOLDOWN } from '../constants';
import type { BlockbookTransaction, MempoolClient, OnProgressInfo } from '../types/backend';

type MempoolStatus = 'stopped' | 'running';

Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { BlockbookAPI } from '@trezor/blockchain-link/src/workers/blockbook/websocket';

import { HTTP_REQUEST_TIMEOUT, WS_CONNECT_TIMEOUT } from '../constants';
import { resetIdentityCircuit } from '../utils/http';
import type { Logger } from '../types';
import { identifyWsError } from './backendUtils';
import { resetIdentityCircuit } from '../utils/http';

export type BlockbookWS = Pick<
BlockbookAPI,
4 changes: 2 additions & 2 deletions packages/coinjoin/src/backend/backendUtils.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { arrayDistinct } from '@trezor/utils';
import { deriveAddresses as deriveNewAddresses, Network } from '@trezor/utxo-lib';
import { Network, deriveAddresses as deriveNewAddresses } from '@trezor/utxo-lib';
import { getAddressType } from '@trezor/utxo-lib/src/address';

import type { VinVout, PrederivedAddress } from '../types/backend';
import type { PrederivedAddress, VinVout } from '../types/backend';

export const isTxConfirmed = ({ blockHeight = -1 }: { blockHeight?: number }) => blockHeight > 0;

2 changes: 1 addition & 1 deletion packages/coinjoin/src/backend/createPendingTx.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';

import type { BroadcastedTransactionDetails } from '../types';
import type { Transaction, AccountAddresses } from '../types/backend';
import type { AccountAddresses, Transaction } from '../types/backend';

// create pending transaction, the result of successfully broadcasted CoinjoinRound
export const createPendingTransaction = (
2 changes: 1 addition & 1 deletion packages/coinjoin/src/backend/filters.ts
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@
import Golomb from 'golomb';
import { U64 } from 'n64';

import { address as addressBjs, Network } from '@trezor/utxo-lib';
import { Network, address as addressBjs } from '@trezor/utxo-lib';

const P_DEFAULT = 20;
const M_DEFAULT = 1 << 20;
18 changes: 9 additions & 9 deletions packages/coinjoin/src/backend/getAccountInfo.ts
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
import type { Network } from '@trezor/utxo-lib';
import { sortTxsFromLatest } from '@trezor/blockchain-link-utils';
import { sumAddressValues } from '@trezor/blockchain-link/src/workers/electrum/methods/getAccountInfo';
import { sortTxsFromLatest } from '@trezor/blockchain-link-utils';
import type { Network } from '@trezor/utxo-lib';

import { isTxConfirmed, doesTxContainAddress } from './backendUtils';
import { CoinjoinAddressController } from './CoinjoinAddressController';
import { doesTxContainAddress, isTxConfirmed } from './backendUtils';
import { getAccountUtxo } from './getAccountUtxo';
import type {
Transaction,
AccountInfo,
ScanAccountCheckpoint,
PrederivedAddress,
AccountCache,
AccountInfo,
Address,
PrederivedAddress,
ScanAccountCheckpoint,
Transaction,
} from '../types/backend';
import { getAccountUtxo } from './getAccountUtxo';
import { CoinjoinAddressController } from './CoinjoinAddressController';

const PAGE_SIZE_DEFAULT = 25;

2 changes: 1 addition & 1 deletion packages/coinjoin/src/backend/getAccountUtxo.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { throwError } from '@trezor/utils';

import type { Utxo, VinVout, Transaction, AccountAddresses } from '../types/backend';
import type { AccountAddresses, Transaction, Utxo, VinVout } from '../types/backend';

type AddressPaths = {
[address: string]: string;
12 changes: 6 additions & 6 deletions packages/coinjoin/src/backend/scanAccount.ts
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
import { createCooldown } from '@trezor/utils';
import { transformTransaction } from '@trezor/blockchain-link-utils/src/blockbook';
import { createCooldown } from '@trezor/utils';

import { getMultiFilter } from './filters';
import { doesTxContainAddress } from './backendUtils';
import { CoinjoinAddressController } from './CoinjoinAddressController';
import { doesTxContainAddress } from './backendUtils';
import { getMultiFilter } from './filters';
import { CHECKPOINT_COOLDOWN } from '../constants';
import type {
Transaction,
BlockbookTransaction,
ScanAccountParams,
ScanAccountCheckpoint,
ScanAccountContext,
ScanAccountParams,
ScanAccountResult,
Transaction,
} from '../types/backend';
import { CHECKPOINT_COOLDOWN } from '../constants';

const transformTx =
({ receive, change }: CoinjoinAddressController) =>
8 changes: 4 additions & 4 deletions packages/coinjoin/src/client/Account.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { Network } from '@trezor/utxo-lib';

import { getScriptPubKeyFromAddress, prefixScriptPubKey } from '../utils/coordinatorUtils';
import { getRoundEvents, compareOutpoint } from '../utils/roundUtils';
import { RegisterAccountParams } from '../types';
import { AccountAddress, AccountUtxo } from '../types/account';
import { AllowedScriptTypes, Round } from '../types/coordinator';
import { RawLiquidityClue } from '../types/middleware';
import { RegisterAccountParams } from '../types';
import { AccountUtxo, AccountAddress } from '../types/account';
import { getScriptPubKeyFromAddress, prefixScriptPubKey } from '../utils/coordinatorUtils';
import { compareOutpoint, getRoundEvents } from '../utils/roundUtils';

const enhanceAccountUtxo = (
utxos: Omit<AccountUtxo, 'scriptPubKey'>[],
8 changes: 4 additions & 4 deletions packages/coinjoin/src/client/Alice.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { getInputSize, getOutputSize, getWitnessFromSignature } from '../utils/coordinatorUtils';
import { AccountUtxo } from '../types/account';
import {
AllowedScriptTypes,
RegistrationData,
ConfirmationData,
RealCredentials,
RegistrationData,
} from '../types/coordinator';
import { AccountUtxo } from '../types/account';
import { Credentials } from '../types/middleware';
import { SerializedAlice, CoinjoinRequestEvent } from '../types/round';
import { CoinjoinRequestEvent, SerializedAlice } from '../types/round';
import { getInputSize, getOutputSize, getWitnessFromSignature } from '../utils/coordinatorUtils';

interface AlicePendingRequest {
type: CoinjoinRequestEvent['type'];
16 changes: 8 additions & 8 deletions packages/coinjoin/src/client/CoinjoinClient.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
import { TypedEmitter } from '@trezor/utils';

import { Status } from './Status';
import { Account } from './Account';
import { CoinjoinPrison } from './CoinjoinPrison';
import { CoinjoinRound } from './CoinjoinRound';
import { getCoinjoinNetwork } from '../utils/settingsUtils';
import { redacted } from '../utils/redacted';
import { analyzeTransactions, AnalyzeTransactionsResult } from './analyzeTransactions';
import { Status } from './Status';
import { AnalyzeTransactionsResult, analyzeTransactions } from './analyzeTransactions';
import type {
CoinjoinClientEvents,
CoinjoinClientSettings,
RegisterAccountParams,
CoinjoinStatusEvent,
CoinjoinResponseEvent,
CoinjoinClientEvents,
Logger,
CoinjoinStatusEvent,
LogLevel,
Logger,
RegisterAccountParams,
} from '../types';
import { redacted } from '../utils/redacted';
import { getCoinjoinNetwork } from '../utils/settingsUtils';

export class CoinjoinClient extends TypedEmitter<CoinjoinClientEvents> {
readonly settings: CoinjoinClientSettings;
4 changes: 2 additions & 2 deletions packages/coinjoin/src/client/CoinjoinPrison.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { TypedEmitter } from '@trezor/utils';
import { ImmediateId, TimerId } from '@trezor/type-utils';
import { TypedEmitter } from '@trezor/utils';

import { CoinjoinPrisonInmate, CoinjoinPrisonEvents } from '../types/client';
import { WabiSabiProtocolErrorCode } from '../enums';
import { CoinjoinPrisonEvents, CoinjoinPrisonInmate } from '../types/client';

export type DetainObject =
| {
38 changes: 19 additions & 19 deletions packages/coinjoin/src/client/CoinjoinRound.ts
Original file line number Diff line number Diff line change
@@ -1,34 +1,34 @@
import { TypedEmitter, scheduleAction, arrayDistinct, arrayPartition } from '@trezor/utils';
import { TypedEmitter, arrayDistinct, arrayPartition, scheduleAction } from '@trezor/utils';
import { Network } from '@trezor/utxo-lib';

import {
getCommitmentData,
getRoundParameters,
getCoinjoinRoundDeadlines,
} from '../utils/roundUtils';
import { ROUND_PHASE_PROCESS_TIMEOUT, ACCOUNT_BUSY_TIMEOUT } from '../constants';
import { ACCOUNT_BUSY_TIMEOUT, ROUND_PHASE_PROCESS_TIMEOUT } from '../constants';
import { EndRoundState, RoundPhase, SessionPhase } from '../enums';
import { Account } from './Account';
import { Alice } from './Alice';
import { CoinjoinPrison } from './CoinjoinPrison';
import { CoinjoinClientEvents, Logger } from '../types';
import { AccountAddress, RegisterAccountParams } from '../types/account';
import { AffiliationId, CoinjoinRoundParameters, Round } from '../types/coordinator';
import {
SerializedCoinjoinRound,
BroadcastedTransactionDetails,
CoinjoinRequestEvent,
CoinjoinResponseEvent,
CoinjoinRoundEvent,
CoinjoinTransactionData,
CoinjoinTransactionLiquidityClue,
CoinjoinRequestEvent,
CoinjoinResponseEvent,
BroadcastedTransactionDetails,
SerializedCoinjoinRound,
} from '../types/round';
import { Round, CoinjoinRoundParameters, AffiliationId } from '../types/coordinator';
import { Account } from './Account';
import { Alice } from './Alice';
import { CoinjoinPrison } from './CoinjoinPrison';
import { selectRound } from './round/selectRound';
import { inputRegistration } from './round/inputRegistration';
import { connectionConfirmation } from './round/connectionConfirmation';
import { ended } from './round/endedRound';
import { inputRegistration } from './round/inputRegistration';
import { outputRegistration } from './round/outputRegistration';
import { selectRound } from './round/selectRound';
import { transactionSigning } from './round/transactionSigning';
import { ended } from './round/endedRound';
import { CoinjoinClientEvents, Logger } from '../types';
import {
getCoinjoinRoundDeadlines,
getCommitmentData,
getRoundParameters,
} from '../utils/roundUtils';

export interface CoinjoinRoundOptions {
network: Network;
8 changes: 4 additions & 4 deletions packages/coinjoin/src/client/Status.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import { TypedEmitter } from '@trezor/utils';
import { TimerId } from '@trezor/type-utils';
import { TypedEmitter } from '@trezor/utils';

import * as coordinator from './coordinator';
import { transformStatus } from '../utils/roundUtils';
import { patchResponse } from '../utils/http';
import { coordinatorRequest } from './coordinatorRequest';
import { STATUS_TIMEOUT } from '../constants';
import { RoundPhase } from '../enums';
import {
CoinjoinClientSettings,
CoinjoinClientVersion,
CoinjoinStatusEvent,
LogEvent,
CoinjoinClientVersion,
} from '../types';
import { Round } from '../types/coordinator';
import { patchResponse } from '../utils/http';
import { transformStatus } from '../utils/roundUtils';

type StatusMode = keyof typeof STATUS_TIMEOUT;

8 changes: 4 additions & 4 deletions packages/coinjoin/src/client/analyzeTransactions.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { address as addressBjs, Network } from '@trezor/utxo-lib';
import { arrayPartition } from '@trezor/utils';
import { Network, address as addressBjs } from '@trezor/utxo-lib';

import * as middleware from './middleware';
import { Transaction, EnhancedVinVout } from '../types/backend';
import { AnalyzeInternalVinVout, AnalyzeExternalVinVout } from '../types/middleware';
import type { CoinjoinClient } from './CoinjoinClient';
import * as middleware from './middleware';
import { EnhancedVinVout, Transaction } from '../types/backend';
import { AnalyzeExternalVinVout, AnalyzeInternalVinVout } from '../types/middleware';

interface AnalyzeTransactionsOptions {
network: Network;
10 changes: 5 additions & 5 deletions packages/coinjoin/src/client/coordinator.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { coordinatorRequest, RequestOptions } from './coordinatorRequest';
import { patchResponse } from '../utils/http';
import { RequestOptions, coordinatorRequest } from './coordinatorRequest';
import { AFFILIATION_ID } from '../constants';
import {
CoinjoinStatus,
ZeroCredentials,
RealCredentials,
ConfirmationData,
IssuanceData,
RealCredentials,
RegistrationData,
ZeroCredentials,
} from '../types/coordinator';
import { AFFILIATION_ID } from '../constants';
import { patchResponse } from '../utils/http';

const request = <T>(...args: Parameters<typeof coordinatorRequest>) =>
coordinatorRequest<T>(...args).then<T>(patchResponse);
6 changes: 3 additions & 3 deletions packages/coinjoin/src/client/coordinatorRequest.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { scheduleAction, enumUtils } from '@trezor/utils';
import { enumUtils, scheduleAction } from '@trezor/utils';

import { HTTP_REQUEST_TIMEOUT } from '../constants';
import { WabiSabiProtocolErrorCode } from '../enums';
import {
httpPost,
RequestOptions,
httpGet,
httpPost,
patchResponse,
RequestOptions,
resetIdentityCircuit,
} from '../utils/http';

14 changes: 7 additions & 7 deletions packages/coinjoin/src/client/middleware.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import { coordinatorRequest as request, RequestOptions } from './coordinatorRequest';
import { RequestOptions, coordinatorRequest as request } from './coordinatorRequest';
import {
AllowedRange,
AllowedScriptTypes,
CoordinationFeeRate,
CredentialsResponseValidation,
IssuerParameter,
ZeroCredentials,
RealCredentials,
CredentialsResponseValidation,
CoordinationFeeRate,
ZeroCredentials,
} from '../types/coordinator';
import {
Credentials,
UtxoForRound,
AnalyzeTransactionDetails,
AnalyzeResult,
AnalyzeTransactionDetails,
Credentials,
RawLiquidityClue,
UtxoForRound,
} from '../types/middleware';

export const getRealCredentials = async (
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import * as coordinator from '../coordinator';
import * as middleware from '../middleware';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import { readTimeSpan } from '../../utils/roundUtils';
import type { Alice, AliceConfirmationInterval } from '../Alice';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import * as coordinator from '../coordinator';
import * as middleware from '../middleware';

/**
* usage in RoundPhase: 0, InputRegistration
2 changes: 1 addition & 1 deletion packages/coinjoin/src/client/round/endedRound.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { enumUtils, getWeakRandomNumberInRange } from '@trezor/utils';

import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { EndRoundState, WabiSabiProtocolErrorCode } from '../../enums';
import { getBroadcastedTxDetails } from '../../utils/roundUtils';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';

/**
* RoundPhase: 4, Ending
2 changes: 1 addition & 1 deletion packages/coinjoin/src/client/round/inputRegistration.ts
Original file line number Diff line number Diff line change
@@ -4,9 +4,9 @@ import * as coordinator from '../coordinator';
import * as middleware from '../middleware';
import { confirmationInterval } from './connectionConfirmation';
import { ROUND_SELECTION_REGISTRATION_OFFSET } from '../../constants';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import type { Alice } from '../Alice';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';

/**
* RoundPhase: 0, InputRegistration
6 changes: 3 additions & 3 deletions packages/coinjoin/src/client/round/outputDecomposition.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { arrayToDictionary, getWeakRandomId } from '@trezor/utils';

import * as coordinator from '../coordinator';
import * as middleware from '../middleware';
import { getRoundEvents, compareOutpoint, sumCredentials } from '../../utils/roundUtils';
import { getExternalOutputSize } from '../../utils/coordinatorUtils';
import { compareOutpoint, getRoundEvents, sumCredentials } from '../../utils/roundUtils';
import type { Account } from '../Account';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import * as coordinator from '../coordinator';
import * as middleware from '../middleware';

/**
* RoundPhase: 2, step 1
10 changes: 5 additions & 5 deletions packages/coinjoin/src/client/round/outputRegistration.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { getWeakRandomId, arrayShuffle, getWeakRandomInt } from '@trezor/utils';
import { arrayShuffle, getWeakRandomId, getWeakRandomInt } from '@trezor/utils';

import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import { AccountAddress } from '../../types';
import * as coordinator from '../coordinator';
import * as middleware from '../middleware';
import { outputDecomposition, Bob } from './outputDecomposition';
import { Bob, outputDecomposition } from './outputDecomposition';
import { scheduleDelay } from '../../utils/roundUtils';
import type { Account } from '../Account';
import type { Alice } from '../Alice';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { AccountAddress } from '../../types';
import { scheduleDelay } from '../../utils/roundUtils';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';

/**
* RoundPhase: 2, OutputRegistration
10 changes: 5 additions & 5 deletions packages/coinjoin/src/client/round/selectRound.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { arrayPartition, arrayToDictionary } from '@trezor/utils';

import { ROUND_SELECTION_MAX_OUTPUTS, ROUND_SELECTION_REGISTRATION_OFFSET } from '../../constants';
import { RoundPhase, SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import { getInputSize, getOutputSize } from '../../utils/coordinatorUtils';
import { Account } from '../Account';
import { Alice } from '../Alice';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { CoinjoinPrison } from '../CoinjoinPrison';
import * as middleware from '../middleware';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { Round } from '../coordinator';
import { ROUND_SELECTION_REGISTRATION_OFFSET, ROUND_SELECTION_MAX_OUTPUTS } from '../../constants';
import { RoundPhase, SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import { getInputSize, getOutputSize } from '../../utils/coordinatorUtils';
import * as middleware from '../middleware';

export type CoinjoinRoundGenerator = (
...args: ConstructorParameters<typeof CoinjoinRound>
30 changes: 15 additions & 15 deletions packages/coinjoin/src/client/round/transactionSigning.ts
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
import { arrayShuffle, getWeakRandomInt } from '@trezor/utils';

import * as coordinator from '../coordinator';
import * as middleware from '../middleware';
import {
getRoundEvents,
compareOutpoint,
getRoundParams,
getAffiliateRequest,
scheduleDelay,
} from '../../utils/roundUtils';
import { TX_SIGNING_DELAY } from '../../constants';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import { CoinjoinTransactionData } from '../../types';
import {
getAddressFromScriptPubKey,
mergePubkeys,
prefixScriptPubKey,
readOutpoint,
sortInputs,
sortOutputs,
readOutpoint,
prefixScriptPubKey,
getAddressFromScriptPubKey,
} from '../../utils/coordinatorUtils';
import {
compareOutpoint,
getAffiliateRequest,
getRoundEvents,
getRoundParams,
scheduleDelay,
} from '../../utils/roundUtils';
import type { Account } from '../Account';
import type { Alice } from '../Alice';
import type { CoinjoinRound, CoinjoinRoundOptions } from '../CoinjoinRound';
import { CoinjoinTransactionData } from '../../types';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../enums';
import { TX_SIGNING_DELAY } from '../../constants';
import * as coordinator from '../coordinator';
import * as middleware from '../middleware';

const getTransactionData = (
round: CoinjoinRound,
12 changes: 6 additions & 6 deletions packages/coinjoin/src/types/backend.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
import type { Network } from '@trezor/utxo-lib';
import type {
Address,
Utxo,
Transaction,
AccountAddresses,
AccountInfo as AccountInfoBase,
Address,
EnhancedVinVout,
Transaction,
Utxo,
} from '@trezor/blockchain-link-types';
import type {
Transaction as BlockbookTransaction,
VinVout,
FilterResponse,
VinVout,
} from '@trezor/blockchain-link-types/src/blockbook';
import type { Network } from '@trezor/utxo-lib';

import type { CoinjoinBackendClient } from '../backend/CoinjoinBackendClient';
import type { MempoolController } from '../backend/CoinjoinMempoolController';
import type { FilterController } from '../backend/CoinjoinFilterController';
import type { MempoolController } from '../backend/CoinjoinMempoolController';

export type { BlockbookTransaction, VinVout, EnhancedVinVout };
export type { Address, Utxo, Transaction, AccountAddresses };
2 changes: 1 addition & 1 deletion packages/coinjoin/src/types/client.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { SessionPhase, WabiSabiProtocolErrorCode } from '../enums';
import { Round } from './coordinator';
import { CoinjoinRequestEvent, CoinjoinRoundEvent } from './round';
import { LogEvent } from './logger';
import { CoinjoinRequestEvent, CoinjoinRoundEvent } from './round';

export interface CoinjoinStatusEvent {
rounds: Round[];
2 changes: 1 addition & 1 deletion packages/coinjoin/src/types/coordinator.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { RoundPhase, EndRoundState } from '../enums';
import { AFFILIATION_ID } from '../constants';
import { EndRoundState, RoundPhase } from '../enums';

export type AffiliationId = keyof typeof AFFILIATION_ID;

2 changes: 1 addition & 1 deletion packages/coinjoin/src/types/round.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { AccountAddress } from './account';
import { CoinjoinAffiliateRequest } from './coordinator';
import { RawLiquidityClue } from './middleware';
import { RoundPhase, EndRoundState } from '../enums';
import { EndRoundState, RoundPhase } from '../enums';

export interface SerializedAlice {
accountKey: string;
8 changes: 4 additions & 4 deletions packages/coinjoin/src/utils/coordinatorUtils.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import { bufferUtils } from '@trezor/utils';
import {
payments,
Network,
bufferutils as bUtils,
address as baddress,
script as bscript,
bufferutils as bUtils,
Network,
payments,
} from '@trezor/utxo-lib';

import {
AllowedScriptTypes,
CoinjoinOutputAddedEvent,
CoinjoinInput,
CoinjoinOutput,
CoinjoinOutputAddedEvent,
} from '../types/coordinator';

// WabiSabi coordinator is using custom format of address scriptPubKey
10 changes: 5 additions & 5 deletions packages/coinjoin/src/utils/roundUtils.ts
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
import { bufferutils, Transaction, Network } from '@trezor/utxo-lib';
import { getWeakRandomNumberInRange } from '@trezor/utils';
import { Network, Transaction, bufferutils } from '@trezor/utxo-lib';

import {
COORDINATOR_FEE_RATE_FALLBACK,
MAX_ALLOWED_AMOUNT_FALLBACK,
MIN_ALLOWED_AMOUNT_FALLBACK,
PLEBS_DONT_PAY_THRESHOLD_FALLBACK,
ROUND_REGISTRATION_END_OFFSET,
ROUND_MAXIMUM_REQUEST_DELAY,
ROUND_REGISTRATION_END_OFFSET,
} from '../constants';
import { RoundPhase } from '../enums';
import { CoinjoinTransactionData } from '../types';
import {
Round,
CoinjoinStateEvent,
CoinjoinRoundParameters,
CoinjoinStatus,
CoinjoinState,
CoinjoinStateEvent,
CoinjoinStatus,
Round,
} from '../types/coordinator';
import { Credentials } from '../types/middleware';

Original file line number Diff line number Diff line change
@@ -2,9 +2,9 @@ import { networks } from '@trezor/utxo-lib';

import { CoinjoinAddressController } from '../../src/backend/CoinjoinAddressController';
import {
SEGWIT_XPUB,
SEGWIT_RECEIVE_ADDRESSES,
SEGWIT_CHANGE_ADDRESSES,
SEGWIT_RECEIVE_ADDRESSES,
SEGWIT_XPUB,
} from '../fixtures/methods.fixture';

const getAddress = ({ address }: { address: string }) => address;
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { CoinjoinFilterController } from '../../src/backend/CoinjoinFilterController';
import { MockBlockFilter, mockFilterSequence } from '../fixtures/filters.fixture';
import { COINJOIN_BACKEND_SETTINGS } from '../fixtures/config.fixture';
import { MockBlockFilter, mockFilterSequence } from '../fixtures/filters.fixture';
import { MockFilterClient } from '../mocks/MockFilterClient';

const FILTER_COUNT = 16;
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { networks } from '@trezor/utxo-lib';

import { AccountAddress } from '../../src/types/backend';
import { CoinjoinMempoolController } from '../../src/backend/CoinjoinMempoolController';
import { MockMempoolClient } from '../mocks/MockMempoolClient';
import { AccountAddress } from '../../src/types/backend';
import {
BLOCKS,
SEGWIT_CHANGE_ADDRESSES,
SEGWIT_RECEIVE_ADDRESSES,
} from '../fixtures/methods.fixture';
import { MockMempoolClient } from '../mocks/MockMempoolClient';

const TXS = BLOCKS.flatMap(block => block.txs); // There is 6 of them
const ADDRESS = SEGWIT_RECEIVE_ADDRESSES[1];
4 changes: 2 additions & 2 deletions packages/coinjoin/tests/backend/backendUtils.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { deriveAddresses as deriveAddressesOriginal, networks } from '@trezor/utxo-lib';

import { deriveAddresses, isTaprootTx, doesTxContainAddress } from '../../src/backend/backendUtils';
import { SEGWIT_XPUB, SEGWIT_RECEIVE_ADDRESSES } from '../fixtures/methods.fixture';
import { deriveAddresses, doesTxContainAddress, isTaprootTx } from '../../src/backend/backendUtils';
import { SEGWIT_RECEIVE_ADDRESSES, SEGWIT_XPUB } from '../fixtures/methods.fixture';

const PARAMS = [SEGWIT_XPUB, 'receive', 0, 10] as const;
const ADDRESSES = deriveAddressesOriginal(...PARAMS);
12 changes: 6 additions & 6 deletions packages/coinjoin/tests/backend/methods.test.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import { arrayDistinct } from '@trezor/utils';
import { networks } from '@trezor/utxo-lib';

import { DISCOVERY_LOOKOUT } from '../../src/constants';
import { scanAccount } from '../../src/backend/scanAccount';
import { getAccountInfo } from '../../src/backend/getAccountInfo';
import { CoinjoinFilterController } from '../../src/backend/CoinjoinFilterController';
import { CoinjoinMempoolController } from '../../src/backend/CoinjoinMempoolController';
import * as FIXTURES from '../fixtures/methods.fixture';
import { COINJOIN_BACKEND_SETTINGS } from '../fixtures/config.fixture';
import { MockBackendClient } from '../mocks/MockBackendClient';
import { getAccountInfo } from '../../src/backend/getAccountInfo';
import { scanAccount } from '../../src/backend/scanAccount';
import { DISCOVERY_LOOKOUT } from '../../src/constants';
import type {
BlockFilterResponse,
ScanAccountProgress,
Transaction,
} from '../../src/types/backend';
import { COINJOIN_BACKEND_SETTINGS } from '../fixtures/config.fixture';
import * as FIXTURES from '../fixtures/methods.fixture';
import { MockBackendClient } from '../mocks/MockBackendClient';

const EMPTY_CHECKPOINT = {
blockHash: FIXTURES.BASE_HASH,
2 changes: 1 addition & 1 deletion packages/coinjoin/tests/client/CoinjoinClient.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { CoinjoinClient } from '../../src';
import { CoinjoinPrison } from '../../src/client/CoinjoinPrison';
import { createServer } from '../mocks/server';
import { AFFILIATE_INFO, DEFAULT_ROUND, FEE_RATE_MEDIANS } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

describe(`CoinjoinClient`, () => {
let server: Awaited<ReturnType<typeof createServer>>;
6 changes: 3 additions & 3 deletions packages/coinjoin/tests/client/CoinjoinRound.test.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import * as trezorUtils from '@trezor/utils';

import { createServer } from '../mocks/server';
import { DEFAULT_ROUND, createCoinjoinRound } from '../fixtures/round.fixture';
import { createInput } from '../fixtures/input.fixture';
import * as CONSTANTS from '../../src/constants';
import { createInput } from '../fixtures/input.fixture';
import { DEFAULT_ROUND, createCoinjoinRound } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

// mock random delay function
jest.mock('@trezor/utils', () => {
2 changes: 1 addition & 1 deletion packages/coinjoin/tests/client/Status.test.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { Status } from '../../src/client/Status';
import * as http from '../../src/client/coordinatorRequest';
import { STATUS_TIMEOUT } from '../../src/constants';
import { createServer } from '../mocks/server';
import {
AFFILIATE_INFO,
DEFAULT_ROUND,
STATUS_EVENT,
createCoinjoinRound,
} from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

// using fakeTimers and async callbacks
const fastForward = (time: number) => jest.advanceTimersByTimeAsync(time);
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import {
connectionConfirmation,
confirmationInterval,
connectionConfirmation,
} from '../../src/client/round/connectionConfirmation';
import { createServer } from '../mocks/server';
import { createInput } from '../fixtures/input.fixture';
import { createCoinjoinRound } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

let server: Awaited<ReturnType<typeof createServer>>;

2 changes: 1 addition & 1 deletion packages/coinjoin/tests/client/endedRound.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { networks } from '@trezor/utxo-lib';

import { RoundPhase, EndRoundState, WabiSabiProtocolErrorCode } from '../../src/enums';
import { ended } from '../../src/client/round/endedRound';
import { EndRoundState, RoundPhase, WabiSabiProtocolErrorCode } from '../../src/enums';
import { createInput } from '../fixtures/input.fixture';
import { createCoinjoinRound } from '../fixtures/round.fixture';

2 changes: 1 addition & 1 deletion packages/coinjoin/tests/client/inputRegistration.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { inputRegistration } from '../../src/client/round/inputRegistration';
import { createServer } from '../mocks/server';
import { createInput } from '../fixtures/input.fixture';
import { createCoinjoinRound } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

// mock random delay function
jest.mock('@trezor/utils', () => {
4 changes: 2 additions & 2 deletions packages/coinjoin/tests/client/outputDecomposition.test.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { outputDecomposition } from '../../src/client/round/outputDecomposition';
import { createServer } from '../mocks/server';
import { createInput } from '../fixtures/input.fixture';
import { outputDecomposition as fixtures } from '../fixtures/outputDecomposition.fixture';
import { createCoinjoinRound, INPUT_ADDED_EVENT } from '../fixtures/round.fixture';
import { INPUT_ADDED_EVENT, createCoinjoinRound } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

let server: Awaited<ReturnType<typeof createServer>>;

4 changes: 2 additions & 2 deletions packages/coinjoin/tests/client/outputRegistration.test.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { outputRegistration } from '../../src/client/round/outputRegistration';
import * as decomposition from '../../src/client/round/outputDecomposition';
import { createServer } from '../mocks/server';
import { outputRegistration } from '../../src/client/round/outputRegistration';
import { createInput } from '../fixtures/input.fixture';
import { createCoinjoinRound } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

// mock random delay function
jest.mock('@trezor/utils', () => {
14 changes: 7 additions & 7 deletions packages/coinjoin/tests/client/selectRound.test.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import { Alice } from '../../src/client/Alice';
import { ROUND_SELECTION_MAX_OUTPUTS } from '../../src/constants';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../src/enums';
import { CoinjoinRound } from '../../src/client/CoinjoinRound';
import { CoinjoinPrison } from '../../src/client/CoinjoinPrison';
import { CoinjoinRound } from '../../src/client/CoinjoinRound';
import {
getRoundCandidates,
getAccountCandidates,
selectInputsForRound,
selectRound,
AliceGenerator,
CoinjoinRoundGenerator,
getAccountCandidates,
getRoundCandidates,
getUnregisteredAccounts,
selectInputsForRound,
selectRound,
} from '../../src/client/round/selectRound';
import { ROUND_SELECTION_MAX_OUTPUTS } from '../../src/constants';
import { SessionPhase, WabiSabiProtocolErrorCode } from '../../src/enums';
import {
DEFAULT_ROUND,
ROUND_CREATION_EVENT,
4 changes: 2 additions & 2 deletions packages/coinjoin/tests/client/transactionSigning.test.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { networks } from '@trezor/utxo-lib';
import { getWeakRandomNumberInRange } from '@trezor/utils';
import { networks } from '@trezor/utxo-lib';

import { transactionSigning } from '../../src/client/round/transactionSigning';
import { createServer } from '../mocks/server';
import { createInput } from '../fixtures/input.fixture';
import { createCoinjoinRound } from '../fixtures/round.fixture';
import { createServer } from '../mocks/server';

// mock random delay function
jest.mock('@trezor/utils', () => {
4 changes: 2 additions & 2 deletions packages/coinjoin/tests/fixtures/round.fixture.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { CoinjoinRound } from '../../src/client/CoinjoinRound';
import { CoinjoinPrison } from '../../src/client/CoinjoinPrison';
import { Round, AllowedScriptTypes } from '../../src/types/coordinator';
import { CoinjoinRound } from '../../src/client/CoinjoinRound';
import { ROUND_SELECTION_REGISTRATION_OFFSET } from '../../src/constants';
import { AllowedScriptTypes, Round } from '../../src/types/coordinator';

export const ROUND_CREATION_EVENT = {
Type: 'RoundCreated' as const,
4 changes: 2 additions & 2 deletions packages/coinjoin/tests/mocks/server.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import * as net from 'net';
import * as http from 'http';
import * as net from 'net';

import { DEFAULT_ROUND, FEE_RATE_MEDIANS, AFFILIATE_INFO } from '../fixtures/round.fixture';
import { CoinjoinClientEvents } from '../../src/types/client';
import { Logger } from '../../src/types/logger';
import { AFFILIATE_INFO, DEFAULT_ROUND, FEE_RATE_MEDIANS } from '../fixtures/round.fixture';

// Mock coordinator and middleware responses

2 changes: 1 addition & 1 deletion packages/coinjoin/tests/tools/anonymity-test.ts
Original file line number Diff line number Diff line change
@@ -3,9 +3,9 @@
import fs from 'fs';
import http from 'http';

import { getAccountInfo, getAccountInfoParams } from './discovery';
import { getAnonymityScores } from '../../src/client/analyzeTransactions';
import { getCoinjoinNetwork } from '../../src/utils/settingsUtils';
import { getAccountInfo, getAccountInfoParams } from './discovery';

const [network, descriptor] = process.argv.slice(2);

2 changes: 1 addition & 1 deletion packages/coinjoin/tests/tools/benchmark-test.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/* eslint-disable import/no-extraneous-dependencies */
/* eslint-disable no-console */

import net from 'net';
import http from 'http';
import https from 'https';
import net from 'net';
import fetch from 'node-fetch';
import { SocksProxyAgent } from 'socks-proxy-agent';
import WebSocket from 'ws';
2 changes: 1 addition & 1 deletion packages/coinjoin/tests/utils/coordinatorUtils.test.ts
Original file line number Diff line number Diff line change
@@ -2,8 +2,8 @@ import { networks } from '@trezor/utxo-lib';

import {
getScriptPubKeyFromAddress,
sortOutputs,
mergePubkeys,
sortOutputs,
} from '../../src/utils/coordinatorUtils';

describe('coordinatorUtils', () => {
10 changes: 5 additions & 5 deletions packages/coinjoin/tests/utils/roundUtils.test.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { getWeakRandomNumberInRange } from '@trezor/utils';

import { ROUND_REGISTRATION_END_OFFSET } from '../../src/constants';
import {
getCommitmentData,
readTimeSpan,
estimatePhaseDeadline,
transformStatus,
getRoundParams,
getAffiliateRequest,
getCommitmentData,
getRoundParams,
readTimeSpan,
scheduleDelay,
transformStatus,
} from '../../src/utils/roundUtils';
import { ROUND_REGISTRATION_END_OFFSET } from '../../src/constants';
import { DEFAULT_ROUND, STATUS_EVENT, STATUS_TRANSFORMED } from '../fixtures/round.fixture';

// mock random delay function
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import styled from 'styled-components';

import {
borders,
Elevation,
borders,
mapElevationToBackground,
mapElevationToBorder,
spacingsPx,
} from '@trezor/theme';

import { ElevationUp, useElevation } from '../ElevationContext/ElevationContext';
import { Text } from '../typography/Text/Text';
import { Tooltip } from '../Tooltip/Tooltip';
import { Text } from '../typography/Text/Text';

const Content = styled.div`
margin: ${spacingsPx.xxs};
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { Meta, StoryObj } from '@storybook/react';

import {
allowedAssetLogoFrameProps,
allowedAssetLogoSizes,
AssetLogo as AssetLogoComponent,
AssetLogoProps,
allowedAssetLogoFrameProps,
allowedAssetLogoSizes,
} from './AssetLogo';
import { getFramePropsStory } from '../../utils/frameProps';

4 changes: 2 additions & 2 deletions packages/components/src/components/AssetLogo/AssetLogo.tsx
Original file line number Diff line number Diff line change
@@ -2,16 +2,16 @@ import { useEffect, useState } from 'react';

import styled from 'styled-components';

import { borders, Elevation, mapElevationToBackground, mapElevationToBorder } from '@trezor/theme';
import { getAssetLogoUrl } from '@trezor/asset-utils';
import { Elevation, borders, mapElevationToBackground, mapElevationToBorder } from '@trezor/theme';

import { AssetInitials } from './AssetInitials';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { AssetInitials } from './AssetInitials';
import { TransientProps } from '../../utils/transientProps';
import { ElevationUp, useElevation } from '../ElevationContext/ElevationContext';

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import React, { useRef, useEffect, forwardRef, useState, ChangeEvent, useCallback } from 'react';
import React, { ChangeEvent, forwardRef, useCallback, useEffect, useRef, useState } from 'react';

import styled from 'styled-components';

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import styled from 'styled-components';
import { Meta } from '@storybook/react';
import styled from 'styled-components';

import { AutoScalingInput as Input } from './AutoScalingInput';

6 changes: 3 additions & 3 deletions packages/components/src/components/Badge/Badge.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import React from 'react';

import styled, { css, DefaultTheme, useTheme } from 'styled-components';
import styled, { DefaultTheme, css, useTheme } from 'styled-components';

import { borders, Color, CSSColor, spacings, spacingsPx, typography } from '@trezor/theme';
import { CSSColor, Color, borders, spacings, spacingsPx, typography } from '@trezor/theme';

import { focusStyleTransition, getFocusShadowStyle } from '../../utils/utils';
import type { UISize, UIVariant } from '../../config/types';
import {
FrameProps,
@@ -13,6 +12,7 @@ import {
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { focusStyleTransition, getFocusShadowStyle } from '../../utils/utils';
import { Icon, IconName } from '../Icon/Icon';

export const badgeSizes = ['medium', 'small', 'tiny'] as const satisfies UISize[];
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { Meta, StoryObj } from '@storybook/react';
import styled from 'styled-components';

import { allowedBannerFrameProps } from './Banner';
import {
Banner as BannerComponent,
BannerProps,
variables,
Row,
iconVerticalAlignments,
variables,
} from '../../index';
import { allowedBannerFrameProps } from './Banner';
import { getFramePropsStory } from '../../utils/frameProps';

const Wrapper = styled.div`
26 changes: 13 additions & 13 deletions packages/components/src/components/Banner/Banner.tsx
Original file line number Diff line number Diff line change
@@ -2,34 +2,34 @@ import { ReactNode } from 'react';

import styled, { css, useTheme } from 'styled-components';

import { Elevation, borders, spacingsPx, typography, spacings } from '@trezor/theme';
import { Elevation, borders, spacings, spacingsPx, typography } from '@trezor/theme';

import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { BannerContext } from './BannerContext';
import { BannerButton } from './BannerButton';
import { BannerVariant } from './types';
import { DEFAULT_VARIANT } from './consts';
import { BannerContext } from './BannerContext';
import { BannerIconButton } from './BannerIconButton';
import { DEFAULT_VARIANT } from './consts';
import { BannerVariant } from './types';
import {
mapVariantToBackgroundColor,
mapVariantToIcon,
mapVariantToIconColor,
mapVariantToTextColor,
} from './utils';
import { Icon, IconName, IconSize } from '../Icon/Icon';
import { variables } from '../../config';
import { uiVerticalAlignments } from '../../config/types';
import { SCREEN_SIZE } from '../../config/variables';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { useMediaQuery } from '../../utils/useMediaQuery';
import { useElevation } from '../ElevationContext/ElevationContext';
import { Column, FlexAlignItems, Row } from '../Flex/Flex';
import { Icon, IconName, IconSize } from '../Icon/Icon';
import { Spinner } from '../loaders/Spinner/Spinner';
import { variables } from '../../config';
import { uiVerticalAlignments } from '../../config/types';

export const allowedBannerFrameProps = ['margin'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedBannerFrameProps)[number]>;
4 changes: 2 additions & 2 deletions packages/components/src/components/Banner/BannerButton.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Button, ButtonProps } from '../buttons/Button/Button';
import { useBannerContext, BannerContext } from './BannerContext';
import { BannerContext, useBannerContext } from './BannerContext';
import { DEFAULT_VARIANT } from './consts';
import { Button, ButtonProps } from '../buttons/Button/Button';

export const BannerButton = ({ children, ...rest }: ButtonProps) => {
const { variant } = useBannerContext();
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { IconButton, IconButtonProps } from '../buttons/IconButton/IconButton';
import { useBannerContext, BannerContext } from './BannerContext';
import { BannerContext, useBannerContext } from './BannerContext';
import { DEFAULT_VARIANT } from './consts';
import { IconButton, IconButtonProps } from '../buttons/IconButton/IconButton';

export const BannerIconButton = ({ icon, ...rest }: IconButtonProps) => {
const { variant } = useBannerContext();
2 changes: 1 addition & 1 deletion packages/components/src/components/Banner/utils.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { DefaultTheme } from 'styled-components';

import { Color, CSSColor, Elevation, mapElevationToBackgroundToken } from '@trezor/theme';
import { CSSColor, Color, Elevation, mapElevationToBackgroundToken } from '@trezor/theme';

import { BannerVariant } from './types';
import { IconName } from '../Icon/Icon';
Original file line number Diff line number Diff line change
@@ -5,8 +5,8 @@ import { Meta, StoryObj } from '@storybook/react';
import { spacings } from '@trezor/theme';

import { BulletList as BulletListComponent, allowedBulletListFrameProps } from './BulletList';
import { getFramePropsStory } from '../../utils/frameProps';
import { bulletSizes } from './types';
import { getFramePropsStory } from '../../utils/frameProps';

const meta: Meta = {
title: 'BulletList',
Original file line number Diff line number Diff line change
@@ -2,17 +2,17 @@ import { createContext, useContext } from 'react';

import styled from 'styled-components';

import { spacings, SpacingValues } from '@trezor/theme';
import { SpacingValues, spacings } from '@trezor/theme';

import { BulletListItem } from './BulletListItem';
import { BulletSize } from './types';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { BulletListItem } from './BulletListItem';
import { BulletSize } from './types';

export type { BulletListItemState } from './types';

Original file line number Diff line number Diff line change
@@ -3,10 +3,10 @@ import styled, { css, useTheme } from 'styled-components';
import { SpacingValues, borders, typography } from '@trezor/theme';

import { useBulletList } from './BulletList';
import { Text } from '../typography/Text/Text';
import { BulletListItemState, BulletSize } from './types';
import { mapSizeToDimension, mapStateToColor } from './utils';
import { IconCircle } from '../IconCircle/IconCircle';
import { BulletSize, BulletListItemState } from './types';
import { mapStateToColor, mapSizeToDimension } from './utils';
import { Text } from '../typography/Text/Text';

const Item = styled.li<{ $bulletGap: SpacingValues; $size: BulletSize }>`
display: grid;
2 changes: 1 addition & 1 deletion packages/components/src/components/Card/Card.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Meta, StoryObj } from '@storybook/react';

import { Card as CardComponent, allowedCardFrameProps } from './Card';
import { paddingTypes, fillTypes, cardVariants } from './types';
import { cardVariants, fillTypes, paddingTypes } from './types';
import { getFramePropsStory } from '../../utils/frameProps';

const meta: Meta = {
22 changes: 11 additions & 11 deletions packages/components/src/components/Card/Card.tsx
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
import { forwardRef, HTMLAttributes, ReactNode } from 'react';
import { HTMLAttributes, ReactNode, forwardRef } from 'react';

import styled, { css } from 'styled-components';

import { borders, Elevation, spacingsPx } from '@trezor/theme';
import { Elevation, borders, spacingsPx } from '@trezor/theme';

import { ElevationUp, useElevation } from '../ElevationContext/ElevationContext';
import { CardVariant, FillType, PaddingType } from './types';
import {
mapFillTypeToCSS,
mapPaddingTypeToLabelPadding,
mapPaddingTypeToPadding,
mapVariantToColor,
} from './utils';
import { AccessibilityProps, withAccessibilityProps } from '../../utils/accessibilityProps';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { AccessibilityProps, withAccessibilityProps } from '../../utils/accessibilityProps';
import { PaddingType, FillType, CardVariant } from './types';
import {
mapPaddingTypeToLabelPadding,
mapPaddingTypeToPadding,
mapFillTypeToCSS,
mapVariantToColor,
} from './utils';
import { ElevationUp, useElevation } from '../ElevationContext/ElevationContext';

export const allowedCardFrameProps = [
'margin',
10 changes: 5 additions & 5 deletions packages/components/src/components/Card/utils.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { css, DefaultTheme, RuleSet } from 'styled-components';
import { DefaultTheme, RuleSet, css } from 'styled-components';

import {
spacingsPx,
CSSColor,
Elevation,
SpacingPxValues,
mapElevationToBackground,
mapElevationToBorder,
SpacingPxValues,
CSSColor,
spacingsPx,
} from '@trezor/theme';

import { PaddingType, FillType, CardVariant } from './types';
import { CardVariant, FillType, PaddingType } from './types';

type PaddingMapArgs = {
$paddingType: PaddingType;
Original file line number Diff line number Diff line change
@@ -3,8 +3,8 @@ import { Meta, StoryObj } from '@storybook/react';
import { spacings } from '@trezor/theme';

import { Collapsible as CollapsibleComponent } from './Collapsible';
import { Button } from '../buttons/Button/Button';
import { Row } from '../Flex/Flex';
import { Button } from '../buttons/Button/Button';

const meta: Meta = {
title: 'Collapsible',
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ReactNode, createContext, useContext, useState, useId } from 'react';
import { ReactNode, createContext, useContext, useId, useState } from 'react';

import styled from 'styled-components';

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { ReactNode } from 'react';

import styled from 'styled-components';
import { motion } from 'framer-motion';
import styled from 'styled-components';

import { useCollapsible } from './Collapsible';
import { motionEasing } from '../../config/motion';
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ReactNode, MouseEvent } from 'react';
import { MouseEvent, ReactNode } from 'react';

import styled from 'styled-components';

Original file line number Diff line number Diff line change
@@ -4,9 +4,9 @@ import {
CollapsibleBox as CollapsibleBoxComponent,
allowedCollapsibleBoxFrameProps,
} from './CollapsibleBox';
import { paddingTypes, fillTypes, headingSizes } from './types';
import { getFramePropsStory } from '../../utils/frameProps';
import { fillTypes, headingSizes, paddingTypes } from './types';
import { variables } from '../../config';
import { getFramePropsStory } from '../../utils/frameProps';

const meta: Meta = {
title: 'CollapsibleBox',
Original file line number Diff line number Diff line change
@@ -1,21 +1,29 @@
import { useState, ReactNode } from 'react';
import { ReactNode, useState } from 'react';

import styled, { css } from 'styled-components';

import {
spacingsPx,
borders,
Elevation,
borders,
mapElevationToBackground,
mapElevationToBorder,
spacings,
spacingsPx,
} from '@trezor/theme';

import { FillType, HeadingSize, PaddingType } from './types';
import {
mapPaddingTypeToContentPadding,
mapPaddingTypeToHeaderPadding,
mapSizeToHeadingTypography,
mapSizeToIconSize,
mapSizeToSubheadingTypography,
} from './utils';
import { motionEasing } from '../../config/motion';
import { Collapsible } from '../Collapsible/Collapsible';
import { Column, Row } from '../Flex/Flex';
import { Icon, IconName } from '../Icon/Icon';
import { Row, Column } from '../Flex/Flex';
import { Text } from '../typography/Text/Text';
import { Collapsible } from '../Collapsible/Collapsible';
import { motionEasing } from '../../config/motion';
import { ElevationUp, useElevation } from './../ElevationContext/ElevationContext';
import {
FrameProps,
@@ -24,14 +32,6 @@ import {
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { PaddingType, FillType, HeadingSize } from './types';
import {
mapPaddingTypeToHeaderPadding,
mapPaddingTypeToContentPadding,
mapSizeToHeadingTypography,
mapSizeToSubheadingTypography,
mapSizeToIconSize,
} from './utils';

export const allowedCollapsibleBoxFrameProps = ['margin'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedCollapsibleBoxFrameProps)[number]>;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { spacingsPx, TypographyStyle } from '@trezor/theme';
import { TypographyStyle, spacingsPx } from '@trezor/theme';

import { HeadingSize, PaddingType } from './types';
import { IconSize } from '../Icon/Icon';
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { Meta, StoryObj } from '@storybook/react';

import { Icon, iconVariants } from '../Icon/Icon';
import {
allowedComponentWithSubIconFrameProps,
ComponentWithSubIcon as ComponentWithSubIconComponent,
ComponentWithSubIconProps,
allowedComponentWithSubIconFrameProps,
} from './ComponentWithSubIcon';
import { getFramePropsStory } from '../../utils/frameProps';
import { Icon, iconVariants } from '../Icon/Icon';

const meta: Meta = {
title: 'ComponentWithSubIcon',
Original file line number Diff line number Diff line change
@@ -4,20 +4,20 @@ import styled, { useTheme } from 'styled-components';

import { borders, spacingsPx } from '@trezor/theme';

import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import {
ExclusiveColorOrVariant,
getColorForIconVariant,
getIconSize,
Icon,
IconProps,
getColorForIconVariant,
getIconSize,
} from '../Icon/Icon';
import { TransientProps } from '../../utils/transientProps';
import {
FramePropsKeys,
FrameProps,
withFrameProps,
pickAndPrepareFrameProps,
} from '../../utils/frameProps';

export const allowedComponentWithSubIconFrameProps = ['margin'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedComponentWithSubIconFrameProps)[number]>;
6 changes: 3 additions & 3 deletions packages/components/src/components/DataAnalytics.tsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { Fragment, useState, ReactNode } from 'react';
import { Fragment, ReactNode, useState } from 'react';
import { FormattedMessage } from 'react-intl';

import styled from 'styled-components';

import { spacingsPx } from '@trezor/theme';

import { variables } from '../config';
import { Button } from './buttons/Button/Button';
import { CollapsibleBox } from './CollapsibleBox/CollapsibleBox';
import { Card } from './Card/Card';
import { CollapsibleBox } from './CollapsibleBox/CollapsibleBox';
import { Button } from './buttons/Button/Button';
import { Switch } from './form/Switch/Switch';

const Wrapper = styled.div`
2 changes: 1 addition & 1 deletion packages/components/src/components/Divider/Divider.tsx
Original file line number Diff line number Diff line change
@@ -2,14 +2,14 @@ import styled, { css } from 'styled-components';

import { Color, Elevation, mapElevationToBorder, spacings } from '@trezor/theme';

import { useElevation } from '../ElevationContext/ElevationContext';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { useElevation } from '../ElevationContext/ElevationContext';

export const allowedDividerFrameProps = [
'margin',
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import React from 'react';

import styled from 'styled-components';
import { Meta, StoryObj } from '@storybook/react';
import styled from 'styled-components';

import {
allowedDropdownFrameProps,
Dropdown as DropdownComponent,
DropdownProps,
allowedDropdownFrameProps,
} from './Dropdown';
import { getFramePropsStory } from '../../utils/frameProps';

6 changes: 3 additions & 3 deletions packages/components/src/components/Dropdown/Dropdown.tsx
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import {
useState,
useRef,
forwardRef,
useImperativeHandle,
cloneElement,
ReactElement,
MouseEvent,
useEffect,
useImperativeHandle,
useRef,
useState,
} from 'react';

import styled from 'styled-components';
Original file line number Diff line number Diff line change
@@ -11,15 +11,15 @@ import {
spacingsPx,
} from '@trezor/theme';

import { Card } from '../Card/Card';
import { Modal } from '../modals/Modal/Modal';
import { Textarea } from '../form/Textarea/Textarea';
import {
useElevation,
ElevationContext as ElevationContextComponent,
ElevationDown,
ElevationUp,
useElevation,
} from './ElevationContext';
import { Card } from '../Card/Card';
import { Textarea } from '../form/Textarea/Textarea';
import { Modal } from '../modals/Modal/Modal';

const UiBox = styled.div<{ $elevation: Elevation }>`
background-color: ${mapElevationToBackground};
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import styled from 'styled-components';
import { Meta, StoryFn } from '@storybook/react';
import styled from 'styled-components';

import { Flag, FlagType } from './Flag';
import { FLAGS } from './flags';
6 changes: 3 additions & 3 deletions packages/components/src/components/Flex/Flex.stories.tsx
Original file line number Diff line number Diff line change
@@ -4,13 +4,13 @@ import styled from 'styled-components';
import { spacings } from '@trezor/theme';

import {
Column as ColumnComponent,
FlexProps,
Row as RowComponent,
allowedFlexFrameProps,
flexAlignItems,
flexJustifyContent,
flexWrap,
Row as RowComponent,
Column as ColumnComponent,
allowedFlexFrameProps,
} from './Flex';
import { getFramePropsStory } from '../../utils/frameProps';

6 changes: 3 additions & 3 deletions packages/components/src/components/Flex/Flex.tsx
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import React from 'react';

import styled, { css, DefaultTheme } from 'styled-components';
import styled, { DefaultTheme, css } from 'styled-components';

import { Elevation, mapElevationToBorder, SpacingValues } from '@trezor/theme';
import { Elevation, SpacingValues, mapElevationToBorder } from '@trezor/theme';

import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { makePropsTransient, TransientProps } from '../../utils/transientProps';
import { TransientProps, makePropsTransient } from '../../utils/transientProps';
import { useElevation } from '../ElevationContext/ElevationContext';

export const allowedFlexFrameProps = [
2 changes: 1 addition & 1 deletion packages/components/src/components/Grid/Grid.stories.tsx
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ import styled from 'styled-components';

import { spacings } from '@trezor/theme';

import { GridProps, Grid as GridComponent, allowedGridFrameProps } from './Grid';
import { Grid as GridComponent, GridProps, allowedGridFrameProps } from './Grid';
import { getFramePropsStory } from '../../utils/frameProps';

const Container = styled.div`
2 changes: 1 addition & 1 deletion packages/components/src/components/Grid/Grid.tsx
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ import styled from 'styled-components';
import { SpacingValues } from '@trezor/theme';

import { FrameProps, FramePropsKeys, withFrameProps } from '../../utils/frameProps';
import { makePropsTransient, TransientProps } from '../../utils/transientProps';
import { TransientProps, makePropsTransient } from '../../utils/transientProps';

export const allowedGridFrameProps: FramePropsKeys[] = ['margin', 'width', 'height'];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedGridFrameProps)[number]>;
Original file line number Diff line number Diff line change
@@ -10,8 +10,8 @@ import {
typography,
} from '@trezor/theme';

import { ElevationDown, useElevation } from '../ElevationContext/ElevationContext';
import { Keys, keyboardKeys } from './keyboardKeys';
import { ElevationDown, useElevation } from '../ElevationContext/ElevationContext';

export const Container = styled.div<{ $elevation: Elevation; $isActive: boolean }>`
display: flex;
6 changes: 3 additions & 3 deletions packages/components/src/components/Icon/Icon.stories.tsx
Original file line number Diff line number Diff line change
@@ -2,16 +2,16 @@ import { Meta, StoryObj } from '@storybook/react';

import { IconName, icons } from '@suite-common/icons/src/icons';
import {
icons as iconsDeprecated,
IconName as IconNameDeprecated,
icons as iconsDeprecated,
} from '@suite-common/icons-deprecated';

import {
allowedIconFrameProps,
Icon as IconComponent,
IconProps,
iconVariants,
allowedIconFrameProps,
iconSizes,
iconVariants,
} from './Icon';
import { getFramePropsStory } from '../../utils/frameProps';

10 changes: 5 additions & 5 deletions packages/components/src/components/Icon/Icon.tsx
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
import { MouseEvent, Ref, forwardRef } from 'react';
import { ReactSVG } from 'react-svg';
import { forwardRef, MouseEvent, Ref } from 'react';

import styled, { css, DefaultTheme } from 'styled-components';
import styled, { DefaultTheme, css } from 'styled-components';

import { IconName as IconNameNew, icons } from '@suite-common/icons/src/icons';
import {
icons as iconsDeprecated,
IconName as IconNameDeprecated,
icons as iconsDeprecated,
} from '@suite-common/icons-deprecated';
import { icons, IconName as IconNameNew } from '@suite-common/icons/src/icons';
import { CSSColor, Color } from '@trezor/theme';

import { UIVariant } from '../../config/types';
import { TransientProps } from '../../utils/transientProps';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';

export const iconVariants = [
'primary',
12 changes: 6 additions & 6 deletions packages/components/src/components/Icon/icons.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import React, { useState } from 'react';

import styled, { useTheme } from 'styled-components';
import { Meta, StoryObj } from '@storybook/react';
import styled, { useTheme } from 'styled-components';

import { typography } from '@trezor/theme';
import { icons, IconName } from '@suite-common/icons/src/icons';
import { IconName, icons } from '@suite-common/icons/src/icons';
import {
icons as iconsDeprecated,
IconName as IconNameDeprecated,
icons as iconsDeprecated,
} from '@suite-common/icons-deprecated';
import { typography } from '@trezor/theme';

import { Icon, IconProps, allowedIconFrameProps, iconVariants, iconSizes } from './Icon';
import { Icon, IconProps, allowedIconFrameProps, iconSizes, iconVariants } from './Icon';
import { getFramePropsStory } from '../../utils/frameProps';
import { Input } from '../form/Input/Input';
import { Checkbox } from '../form/Checkbox/Checkbox';
import { Input } from '../form/Input/Input';
import { Text } from '../typography/Text/Text';

const CopiedText = styled.div`
Original file line number Diff line number Diff line change
@@ -2,14 +2,14 @@ import React from 'react';

import { Meta, StoryObj } from '@storybook/react';

import { icons, IconName } from '@suite-common/icons/src/icons';
import { IconName, icons } from '@suite-common/icons/src/icons';

import {
IconCircle as IconCircleComponent,
IconCircleProps,
allowedIconCircleFrameProps,
} from './IconCircle';
import { iconCircleVariants, iconCirclePaddingTypes } from './types';
import { iconCirclePaddingTypes, iconCircleVariants } from './types';
import { getFramePropsStory } from '../../utils/frameProps';

const meta: Meta = {
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import styled, { css } from 'styled-components';

import { Icon, IconName, IconSize, getIconSize } from '../Icon/Icon';
import { TransientProps } from '../../utils/transientProps';
import { IconCircleVariant, IconCirclePaddingType } from './types';
import { IconCirclePaddingType, IconCircleVariant } from './types';
import {
mapPaddingTypeToDimensions,
mapVariantToIconBackground,
mapVariantToIconBorderColor,
mapPaddingTypeToDimensions,
} from './utils';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { Icon, IconName, IconSize, getIconSize } from '../Icon/Icon';

export const allowedIconCircleFrameProps = ['margin'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedIconCircleFrameProps)[number]>;
2 changes: 1 addition & 1 deletion packages/components/src/components/IconCircle/types.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { UIVariant, UISize } from '../../config/types';
import { UISize, UIVariant } from '../../config/types';

export const iconCircleVariants = [
'primary',
4 changes: 2 additions & 2 deletions packages/components/src/components/IconCircle/utils.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { DefaultTheme } from 'styled-components';

import { Color, CSSColor } from '@trezor/theme';
import { CSSColor, Color } from '@trezor/theme';

import { IconCircleVariant, IconCirclePaddingType } from './types';
import { IconCirclePaddingType, IconCircleVariant } from './types';

type VariantMapArgs = {
theme: DefaultTheme;
4 changes: 2 additions & 2 deletions packages/components/src/components/Image/Image.tsx
Original file line number Diff line number Diff line change
@@ -2,15 +2,15 @@ import { ImgHTMLAttributes } from 'react';

import styled from 'styled-components';

import { PNG_IMAGES, PngImage, SVG_IMAGES, SvgImage } from './images';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { PNG_IMAGES, SVG_IMAGES, PngImage, SvgImage } from './images';
import { TransientProps } from '../../utils/transientProps';
import { resolveStaticPath } from '../../utils/resolveStaticPath';
import { TransientProps } from '../../utils/transientProps';

export const allowedImageFrameProps = [
'margin',
Original file line number Diff line number Diff line change
@@ -9,11 +9,11 @@ import {
allowedInfoItemFrameProps,
allowedInfoItemTextProps,
} from './InfoItem';
import { infoItemVerticalAlignments, infoItemVariants } from './types';
import { flexDirection } from '../Flex/Flex';
import { infoItemVariants, infoItemVerticalAlignments } from './types';
import { variables } from '../../config';
import { getFramePropsStory } from '../../utils/frameProps';
import { flexDirection } from '../Flex/Flex';
import { getTextPropsStory } from '../typography/utils';
import { variables } from '../../config';

const meta: Meta = {
title: 'InfoItem',
22 changes: 11 additions & 11 deletions packages/components/src/components/InfoItem/InfoItem.tsx
Original file line number Diff line number Diff line change
@@ -2,26 +2,26 @@ import { ReactNode } from 'react';

import styled from 'styled-components';

import { spacings, SpacingValues } from '@trezor/theme';
import { SpacingValues, spacings } from '@trezor/theme';

import { InfoItemVariant, InfoItemVerticalAlignment } from './types';
import {
mapTypographyStyleToIconGap,
mapTypographyStyleToIconSize,
mapTypographyStyleToLabelGap,
mapVerticalAlignmentToAlignItems,
} from './utils';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TextPropsKeys, TextProps } from '../typography/utils';
import { TransientProps } from '../../utils/transientProps';
import { FlexDirection, Flex, Row } from '../Flex/Flex';
import { IconName, Icon } from '../Icon/Icon';
import { Flex, FlexDirection, Row } from '../Flex/Flex';
import { Icon, IconName } from '../Icon/Icon';
import { Text } from '../typography/Text/Text';
import { InfoItemVerticalAlignment, InfoItemVariant } from './types';
import {
mapVerticalAlignmentToAlignItems,
mapTypographyStyleToIconSize,
mapTypographyStyleToIconGap,
mapTypographyStyleToLabelGap,
} from './utils';
import { TextProps, TextPropsKeys } from '../typography/utils';

export const allowedInfoItemTextProps = ['typographyStyle'] as const satisfies TextPropsKeys[];
type AllowedTextProps = Pick<TextProps, (typeof allowedInfoItemTextProps)[number]>;
2 changes: 1 addition & 1 deletion packages/components/src/components/InfoItem/types.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { UIVerticalAlignment, UIVariant } from '../../config/types';
import { UIVariant, UIVerticalAlignment } from '../../config/types';

export const infoItemVerticalAlignments = ['top', 'center', 'bottom'] as const;
export type InfoItemVerticalAlignment = Extract<
4 changes: 2 additions & 2 deletions packages/components/src/components/InfoItem/utils.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { spacings, SpacingValues, TypographyStyle } from '@trezor/theme';
import { SpacingValues, TypographyStyle, spacings } from '@trezor/theme';

import { InfoItemVerticalAlignment } from './types';
import { FlexAlignItems } from '../Flex/Flex';
import { IconSize } from '../Icon/Icon';
import { InfoItemVerticalAlignment } from './types';

export const mapVerticalAlignmentToAlignItems = (
verticalAlignment: InfoItemVerticalAlignment,
Original file line number Diff line number Diff line change
@@ -2,13 +2,13 @@ import { Meta, StoryObj } from '@storybook/react';

import {
InfoSegments as InfoSegmentsComponent,
InfoSegmentsProps,
allowedInfoSegmentsFrameProps,
allowedInfoSegmentsTextProps,
InfoSegmentsProps,
} from './InfoSegments';
import { getFramePropsStory } from '../../utils/frameProps';
import { getTextPropsStory } from '../typography/utils';
import { textVariants } from '../typography/Text/Text';
import { getTextPropsStory } from '../typography/utils';

const meta: Meta = {
title: 'InfoSegments',
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { ReactNode, Children, useId, Fragment } from 'react';
import { Children, Fragment, ReactNode, useId } from 'react';

import { spacings } from '@trezor/theme';

import { FrameProps, FramePropsKeys } from '../../utils/frameProps';
import { TextPropsKeys, TextProps } from '../typography/utils';
import { Text, TextVariant } from '../typography/Text/Text';
import { Row } from '../Flex/Flex';
import { Text, TextVariant } from '../typography/Text/Text';
import { TextProps, TextPropsKeys } from '../typography/utils';

export const allowedInfoSegmentsTextProps = ['typographyStyle'] as const satisfies TextPropsKeys[];
type AllowedTextProps = Pick<TextProps, (typeof allowedInfoSegmentsTextProps)[number]>;
2 changes: 1 addition & 1 deletion packages/components/src/components/List/List.stories.tsx
Original file line number Diff line number Diff line change
@@ -4,7 +4,6 @@ import { Meta, StoryObj } from '@storybook/react';

import { spacings } from '@trezor/theme';

import { Icon, IconProps } from '../Icon/Icon';
import {
List as ListComponent,
allowedListFrameProps,
@@ -13,6 +12,7 @@ import {
listVariants,
} from './List';
import { getFramePropsStory } from '../../utils/frameProps';
import { Icon, IconProps } from '../Icon/Icon';
import { getTextPropsStory } from '../typography/utils';

const meta: Meta = {
14 changes: 7 additions & 7 deletions packages/components/src/components/List/List.tsx
Original file line number Diff line number Diff line change
@@ -2,24 +2,24 @@ import { createContext, useContext } from 'react';

import styled from 'styled-components';

import { spacings, SpacingValues } from '@trezor/theme';
import { SpacingValues, spacings } from '@trezor/theme';

import { ListItem } from './ListItem';
import { uiVerticalAlignments } from '../../config/types';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps, makePropsTransient } from '../../utils/transientProps';
import { Text, textVariants } from '../typography/Text/Text';
import {
TextPropsKeys,
withTextProps,
TextProps,
TextPropsKeys,
pickAndPrepareTextProps,
withTextProps,
} from '../typography/utils';
import { makePropsTransient, TransientProps } from '../../utils/transientProps';
import { uiVerticalAlignments } from '../../config/types';
import { ListItem } from './ListItem';
import { Text, textVariants } from '../typography/Text/Text';

export const allowedListFrameProps = [
'margin',
2 changes: 1 addition & 1 deletion packages/components/src/components/List/ListItem.tsx
Original file line number Diff line number Diff line change
@@ -2,8 +2,8 @@ import styled from 'styled-components';

import { SpacingValues } from '@trezor/theme';

import { BulletVerticalAlignment, useList } from './List';
import { FlexAlignItems } from '../Flex/Flex';
import { useList, BulletVerticalAlignment } from './List';

type MapArgs = {
$bulletAlignment: BulletVerticalAlignment;
6 changes: 3 additions & 3 deletions packages/components/src/components/Menu/Menu.tsx
Original file line number Diff line number Diff line change
@@ -3,13 +3,13 @@ import React, { forwardRef, useEffect, useState } from 'react';
import styled, { css, keyframes, useTheme } from 'styled-components';

import {
Elevation,
borders,
mapElevationToBackground,
nextElevation,
spacings,
spacingsPx,
typography,
Elevation,
mapElevationToBackground,
nextElevation,
} from '@trezor/theme';

import { menuStyle } from './menuStyle';
2 changes: 1 addition & 1 deletion packages/components/src/components/Menu/menuStyle.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { css, keyframes } from 'styled-components';

import { spacingsPx, borders, typography, zIndices } from '@trezor/theme';
import { borders, spacingsPx, typography, zIndices } from '@trezor/theme';

export const DROPDOWN_MENU = keyframes`
0% {
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { Meta, StoryObj } from '@storybook/react';
import { action } from '@storybook/addon-actions';
import { Meta, StoryObj } from '@storybook/react';
import { ThemeProvider } from 'styled-components';

import { newModalSizes, newModalVariants } from './types';
import {
allowedNewModalFrameProps,
NewModal as ModalComponent,
NewModalProps,
variables,
allowedNewModalFrameProps,
intermediaryTheme,
variables,
} from '../../index';
import { newModalVariants, newModalSizes } from './types';
import { getFramePropsStory } from '../../utils/frameProps';

const Buttons = () => (
24 changes: 12 additions & 12 deletions packages/components/src/components/NewModal/NewModal.tsx
Original file line number Diff line number Diff line change
@@ -4,28 +4,20 @@ import { useEvent } from 'react-use';
import styled from 'styled-components';

import {
borders,
Elevation,
borders,
mapElevationToBackground,
negativeSpacings,
prevElevation,
spacings,
negativeSpacings,
spacingsPx,
} from '@trezor/theme';

import { IconButton } from '../buttons/IconButton/IconButton';
import { Text } from '../typography/Text/Text';
import { H3 } from '../typography/Heading/Heading';
import { ElevationContext, ElevationUp, useElevation } from '../ElevationContext/ElevationContext';
import { useScrollShadow } from '../../utils/useScrollShadow';
import { IconCircle } from '../IconCircle/IconCircle';
import { IconName } from '../Icon/Icon';
import { Box } from '../Box/Box';
import { NewModalBackdrop } from './NewModalBackdrop';
import { NewModalButton } from './NewModalButton';
import { NewModalContext } from './NewModalContext';
import { NewModalBackdrop } from './NewModalBackdrop';
import { NewModalProvider } from './NewModalProvider';
import { NewModalSize, NewModalAlignment, NewModalVariant } from './types';
import { NewModalAlignment, NewModalSize, NewModalVariant } from './types';
import { mapModalSizeToWidth } from './utils';
import {
FrameProps,
@@ -34,6 +26,14 @@ import {
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { useScrollShadow } from '../../utils/useScrollShadow';
import { Box } from '../Box/Box';
import { ElevationContext, ElevationUp, useElevation } from '../ElevationContext/ElevationContext';
import { IconName } from '../Icon/Icon';
import { IconCircle } from '../IconCircle/IconCircle';
import { IconButton } from '../buttons/IconButton/IconButton';
import { H3 } from '../typography/Heading/Heading';
import { Text } from '../typography/Text/Text';

export const allowedNewModalFrameProps = ['height'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedNewModalFrameProps)[number]>;
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { ReactNode } from 'react';
import FocusLock from 'react-focus-lock';
import { createPortal } from 'react-dom';
import FocusLock from 'react-focus-lock';

import styled from 'styled-components';

import { zIndices, spacings } from '@trezor/theme';
import { spacings, zIndices } from '@trezor/theme';

import { useModalTarget } from './NewModalProvider';
import { NewModalAlignment } from './types';
import { mapAlignmentToAlignItems, mapAlignmentToJustifyContent } from './utils';
import { useModalTarget } from './NewModalProvider';

export type NewModalBackdropProps = {
onClick?: () => void;
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { NewModalContext, useNewModalContext } from './NewModalContext';
import { Button, ButtonProps } from '../buttons/Button/Button';
import { useNewModalContext, NewModalContext } from './NewModalContext';

export const NewModalButton = ({ children, ...rest }: ButtonProps) => {
const { variant } = useNewModalContext();
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import {
useContext,
useRef,
createContext,
RefObject,
ReactNode,
RefObject,
createContext,
useContext,
useEffect,
useRef,
useState,
} from 'react';

2 changes: 1 addition & 1 deletion packages/components/src/components/NewModal/types.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { UIVariant, UISize, UIHorizontalAlignment, UIVerticalAlignment } from '../../config/types';
import { UIHorizontalAlignment, UISize, UIVariant, UIVerticalAlignment } from '../../config/types';

export const newModalVariants = ['primary', 'warning', 'destructive', 'info'] as const;
export type NewModalVariant = Extract<UIVariant, (typeof newModalVariants)[number]>;
4 changes: 2 additions & 2 deletions packages/components/src/components/NewModal/utils.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { NewModalSize, NewModalAlignment } from './types';
import { UIVerticalAlignment, UIHorizontalAlignment } from '../../config/types';
import { NewModalAlignment, NewModalSize } from './types';
import { UIHorizontalAlignment, UIVerticalAlignment } from '../../config/types';

export const mapModalSizeToWidth = (size: NewModalSize) => {
const widthMap: Record<NewModalSize, number> = {
6 changes: 3 additions & 3 deletions packages/components/src/components/Note/Note.tsx
Original file line number Diff line number Diff line change
@@ -2,10 +2,10 @@ import { ReactNode } from 'react';

import { spacings } from '@trezor/theme';

import { Paragraph } from '../typography/Paragraph/Paragraph';
import { Icon, IconName } from '../Icon/Icon';
import { Row } from '../Flex/Flex';
import { FrameProps, FramePropsKeys } from '../../utils/frameProps';
import { Row } from '../Flex/Flex';
import { Icon, IconName } from '../Icon/Icon';
import { Paragraph } from '../typography/Paragraph/Paragraph';

export const allowedNoteFrameProps = ['margin', 'gap'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedNoteFrameProps)[number]>;
6 changes: 3 additions & 3 deletions packages/components/src/components/RadioCard/RadioCard.tsx
Original file line number Diff line number Diff line change
@@ -2,17 +2,17 @@ import { ReactNode } from 'react';

import styled, { css } from 'styled-components';

import { palette, borders, spacingsPx } from '@trezor/theme';
import { borders, palette, spacingsPx } from '@trezor/theme';

import { Icon } from '../Icon/Icon';
import { Box } from '../Box/Box';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { Box } from '../Box/Box';
import { Icon } from '../Icon/Icon';

export const allowedRadioCardFrameProps = [
'margin',
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import styled from 'styled-components';
import { Meta, StoryObj } from '@storybook/react';
import styled from 'styled-components';

import { ResizableBoxProps, ResizableBox as ResizableBoxComponent } from './ResizableBox';
import { ResizableBox as ResizableBoxComponent, ResizableBoxProps } from './ResizableBox';

const Container = styled.div`
position: relative;
Original file line number Diff line number Diff line change
@@ -2,8 +2,8 @@ import { useCallback, useEffect, useRef, useState } from 'react';

import styled, { css } from 'styled-components';

import { createCooldown } from '@trezor/utils';
import { ZIndexValues, zIndices } from '@trezor/theme';
import { createCooldown } from '@trezor/utils';

import { getSafeWindowSize } from '../../utils/getSafeWindowSize';

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import styled from 'styled-components';
import { Meta, StoryObj } from '@storybook/react';
import styled from 'styled-components';

import { ResizableBox } from './ResizableBox';

Original file line number Diff line number Diff line change
@@ -6,10 +6,10 @@ import { spacings } from '@trezor/theme';

import { SubTabs as SubTabsComponent, SubTabsProps, allowedSubTabsFrameProps } from './SubTabs';
import { subtabsSizes } from './types';
import { variables } from '../../config';
import { getFramePropsStory } from '../../utils/frameProps';
import { Column } from '../Flex/Flex';
import { IconName } from '../Icon/Icon';
import { getFramePropsStory } from '../../utils/frameProps';
import { variables } from '../../config';

const meta: Meta = {
title: 'SubTabs',
8 changes: 4 additions & 4 deletions packages/components/src/components/SubTabs/SubTabs.tsx
Original file line number Diff line number Diff line change
@@ -2,19 +2,19 @@ import { ReactNode } from 'react';

import styled from 'styled-components';

import { spacings } from '@trezor/theme';
import { Row } from '@trezor/components';
import { spacings } from '@trezor/theme';

import { SubTabsContext } from './SubTabsContext';
import { SubTabsItem } from './SubTabsItem';
import { SubTabsSize } from './types';
import {
FrameProps,
FramePropsKeys,
pickAndPrepareFrameProps,
withFrameProps,
} from '../../utils/frameProps';
import { TransientProps } from '../../utils/transientProps';
import { SubTabsContext } from './SubTabsContext';
import { SubTabsItem } from './SubTabsItem';
import { SubTabsSize } from './types';

export const allowedSubTabsFrameProps = ['margin'] as const satisfies FramePropsKeys[];
type AllowedFrameProps = Pick<FrameProps, (typeof allowedSubTabsFrameProps)[number]>;
10 changes: 5 additions & 5 deletions packages/components/src/components/SubTabs/SubTabsItem.tsx
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import styled, { css } from 'styled-components';

import { borders, spacings, mapElevationToBackground, Elevation } from '@trezor/theme';
import { Elevation, borders, mapElevationToBackground, spacings } from '@trezor/theme';

import { Row } from '../Flex/Flex';
import { Text } from '../typography/Text/Text';
import { Icon, IconName } from '../Icon/Icon';
import { useSubTabsContext } from './SubTabsContext';
import { mapSizeToTypography, mapSizeToIconSize } from './utils';
import { mapSizeToIconSize, mapSizeToTypography } from './utils';
import { useElevation } from '../ElevationContext/ElevationContext';
import { Row } from '../Flex/Flex';
import { Icon, IconName } from '../Icon/Icon';
import { Text } from '../typography/Text/Text';

const Item = styled.div<{ $isActive: boolean; $elevation: Elevation }>`
border-radius: ${borders.radii.full};
Loading