Skip to content

Commit

Permalink
code review, pass config instead of logger
Browse files Browse the repository at this point in the history
  • Loading branch information
krzysu committed Jan 15, 2024
1 parent 087438d commit 7d72f8c
Show file tree
Hide file tree
Showing 44 changed files with 156 additions and 128 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,10 @@ import {
AnyTransactionRequest,
IPaidTransactionGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import {
Amount,
ChainType,
Data,
EvmAddress,
ILogger,
LoggerLevel,
} from '@lens-protocol/shared-kernel';
import { Amount, ChainType, Data, EvmAddress } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../config';
import { ITransactionRequest } from '../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../wallet/adapters/IProviderFactory';
import { Eip1559GasPriceEstimator, TransactionExecutionSpeed } from './Eip1559GasPriceEstimator';
Expand All @@ -36,7 +30,7 @@ export type ContractCallDetails = {
export abstract class AbstractContractCallGateway<TRequest extends AnyTransactionRequest>
implements IPaidTransactionGateway<TRequest>
{
constructor(readonly logger: ILogger, private readonly providerFactory: IProviderFactory) {}
constructor(readonly config: LensConfig, private readonly providerFactory: IProviderFactory) {}

async createUnsignedTransaction(
request: TRequest,
Expand All @@ -48,12 +42,13 @@ export abstract class AbstractContractCallGateway<TRequest extends AnyTransactio

const { contractAddress, encodedData } = await this.createEncodedData(request);

// skip gas estimation if debug mode is enabled
if (this.logger.level === LoggerLevel.Debug) {
// skip gas limit if debug mode is enabled
if (this.config.debug) {
const transactionRequest = {
to: contractAddress,
from: wallet.address,
data: encodedData,
type: 2, // EIP-1559
};

return new UnsignedContractCallTransaction(request, transactionRequest);
Expand Down
7 changes: 4 additions & 3 deletions packages/react/src/transactions/adapters/OpenActionGateway.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,10 @@ import {
IPaidTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../config';
import { UnsignedProtocolCall } from '../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from './AbstractContractCallGateway';
Expand All @@ -51,12 +52,12 @@ export class OpenActionGateway
IPaidTransactionGateway<OpenActionRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<OpenActionRequest>,
providerFactory: IProviderFactory,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ import {
TokenAllowanceLimit,
TokenAllowanceRequest,
} from '@lens-protocol/domain/use-cases/transactions';
import { ILogger } from '@lens-protocol/shared-kernel';
import { BigNumber, constants, providers, utils } from 'ethers';
import { mock } from 'jest-mock-extended';

import { LensConfig } from '../../../config';
import { mockIProviderFactory } from '../../../wallet/adapters/__helpers__/mocks';
import { UnsignedContractCallTransaction } from '../AbstractContractCallGateway';
import { ApproveTransactionGateway } from '../ApproveTransactionGateway';
Expand All @@ -23,13 +23,13 @@ function setupApproveTransactionGateway({
request: TokenAllowanceRequest;
provider: providers.JsonRpcProvider;
}) {
const logger = mock<ILogger>();
const config = mock<LensConfig>();
const providerFactory = mockIProviderFactory({
chainType: request.amount.asset.chainType,
provider,
});

return new ApproveTransactionGateway(logger, providerFactory);
return new ApproveTransactionGateway(config, providerFactory);
}

describe(`Given an instance of the ${ApproveTransactionGateway.name}`, () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,12 @@ import {
BroadcastingError,
BroadcastingErrorReason,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger } from '@lens-protocol/shared-kernel';
import { ChainType, Data } from '@lens-protocol/shared-kernel';
import { mockEvmAddress } from '@lens-protocol/shared-kernel/mocks';
import { providers } from 'ethers';
import { mock } from 'jest-mock-extended';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { mockIProviderFactory } from '../../../wallet/adapters/__helpers__/mocks';
import { UnsignedContractCallTransaction } from '../AbstractContractCallGateway';
Expand All @@ -53,15 +54,15 @@ function setupTestScenario({
apolloClient: SafeApolloClient;
provider?: providers.JsonRpcProvider;
}) {
const logger = mock<ILogger>();
const config = mock<LensConfig>();
const transactionFactory = mockITransactionFactory();

const providerFactory = mockIProviderFactory({
chainType: ChainType.POLYGON,
provider,
});

const gateway = new OpenActionGateway(logger, apolloClient, transactionFactory, providerFactory);
const gateway = new OpenActionGateway(config, apolloClient, transactionFactory, providerFactory);

return { gateway };
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,10 @@ import {
IDelegatedTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -34,12 +35,12 @@ export class BlockProfilesGateway
ISignedOnChainGateway<BlockProfilesRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<BlockProfilesRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,10 @@ import {
IPaidTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand Down Expand Up @@ -63,12 +64,12 @@ export class FollowProfileGateway
IPaidTransactionGateway<FollowRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<FreeFollowRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,10 @@ import {
IDelegatedTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -34,12 +35,12 @@ export class LinkHandleGateway
ISignedOnChainGateway<LinkHandleRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<LinkHandleRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,10 @@ import {
IPaidTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -36,12 +37,12 @@ export class ProfileMetadataGateway
IPaidTransactionGateway<SetProfileMetadataRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<SetProfileMetadataRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,10 @@ import {
IDelegatedTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import {
ChainType,
Data,
ILogger,
PromiseResult,
failure,
success,
} from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, failure, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -41,12 +35,12 @@ export class UnblockProfilesGateway
ISignedOnChainGateway<UnblockProfilesRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<UnblockProfilesRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import {
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -32,11 +33,12 @@ export class UnfollowProfileGateway
implements IDelegatedTransactionGateway<UnfollowRequest>, ISignedOnChainGateway<UnfollowRequest>
{
constructor(
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<UnfollowRequest>,
) {
super(providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,10 @@ import {
IDelegatedTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -34,12 +35,12 @@ export class UnlinkHandleGateway
ISignedOnChainGateway<UnlinkHandleRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<UnlinkHandleRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,10 @@ import {
IPaidTransactionGateway,
ISignedOnChainGateway,
} from '@lens-protocol/domain/use-cases/transactions';
import { ChainType, Data, ILogger, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { ChainType, Data, PromiseResult, success } from '@lens-protocol/shared-kernel';
import { v4 } from 'uuid';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand Down Expand Up @@ -64,12 +65,12 @@ export class UpdateFollowPolicyGateway
IPaidTransactionGateway<UpdateFollowPolicyRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private readonly apolloClient: SafeApolloClient,
private readonly transactionFactory: ITransactionFactory<UpdateFollowPolicyRequest>,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createDelegatedTransaction(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ import { lensHub } from '@lens-protocol/blockchain-bindings';
import { Nonce } from '@lens-protocol/domain/entities';
import { UpdateProfileManagersRequest } from '@lens-protocol/domain/use-cases/profile';
import { ISignedOnChainGateway } from '@lens-protocol/domain/use-cases/transactions';
import { Data, ILogger } from '@lens-protocol/shared-kernel';
import { Data } from '@lens-protocol/shared-kernel';

import { LensConfig } from '../../../config';
import { UnsignedProtocolCall } from '../../../wallet/adapters/ConcreteWallet';
import { IProviderFactory } from '../../../wallet/adapters/IProviderFactory';
import { AbstractContractCallGateway, ContractCallDetails } from '../AbstractContractCallGateway';
Expand All @@ -22,11 +23,11 @@ export class UpdateProfileManagersGateway
implements ISignedOnChainGateway<UpdateProfileManagersRequest>
{
constructor(
logger: ILogger,
config: LensConfig,
providerFactory: IProviderFactory,
private apolloClient: SafeApolloClient,
) {
super(logger, providerFactory);
super(config, providerFactory);
}

async createUnsignedProtocolCall(
Expand Down
Loading

0 comments on commit 7d72f8c

Please sign in to comment.