Skip to content

Commit d65e4b4

Browse files
committed
reafactor(non-null): remove non-null assertion from the transaction mappers
1 parent a874ce9 commit d65e4b4

File tree

3 files changed

+23
-24
lines changed

3 files changed

+23
-24
lines changed

src/features/transaction-wizard/mappers/as-algosdk-transactions.ts

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ export const asMethodCallParams = async (transaction: BuildMethodCallTransaction
123123
)
124124

125125
return {
126-
sender: transaction.sender.resolvedAddress!,
126+
sender: transaction.sender.resolvedAddress,
127127
appId: BigInt(transaction.applicationId),
128128
method: transaction.methodDefinition.abiMethod,
129129
args: args,
@@ -158,7 +158,7 @@ const asMethodCallTransactions = async (transaction: BuildMethodCallTransactionR
158158

159159
export const asAppCallTransactionParams = (transaction: BuildAppCallTransactionResult): AppCallParams => {
160160
return {
161-
sender: transaction.sender.resolvedAddress!,
161+
sender: transaction.sender.resolvedAddress,
162162
appId: BigInt(transaction.applicationId),
163163
args: transaction.args.map((arg) => base64ToBytes(arg)),
164164
onComplete: transaction.onComplete,
@@ -181,7 +181,7 @@ const asAppCallTransaction = async (transaction: BuildAppCallTransactionResult):
181181

182182
export const asApplicationCreateTransactionParams = (transaction: BuildApplicationCreateTransactionResult): AppCreateParams => {
183183
return {
184-
sender: transaction.sender.resolvedAddress!,
184+
sender: transaction.sender.resolvedAddress,
185185
args: transaction.args.map((arg) => base64ToBytes(arg)),
186186
onComplete: transaction.onComplete,
187187
approvalProgram: base64ToBytes(transaction.approvalProgram),
@@ -206,7 +206,7 @@ const asApplicationCreateTransaction = async (transaction: BuildApplicationCreat
206206

207207
export const asApplicationUpdateTransactionParams = (transaction: BuildApplicationUpdateTransactionResult): AppUpdateParams => {
208208
return {
209-
sender: transaction.sender.resolvedAddress!,
209+
sender: transaction.sender.resolvedAddress,
210210
appId: BigInt(transaction.applicationId),
211211
args: transaction.args.map((arg) => base64ToBytes(arg)),
212212
approvalProgram: base64ToBytes(transaction.approvalProgram),
@@ -239,8 +239,8 @@ export const asAssetTransferTransactionParams = (
239239
amount = BigInt(convertedAmount.toString())
240240
}
241241
return {
242-
sender: transaction.sender.resolvedAddress!,
243-
receiver: 'receiver' in transaction ? transaction.receiver.resolvedAddress : transaction.sender.resolvedAddress!,
242+
sender: transaction.sender.resolvedAddress,
243+
receiver: 'receiver' in transaction ? transaction.receiver.resolvedAddress : transaction.sender.resolvedAddress,
244244
clawbackTarget: 'clawbackTarget' in transaction ? transaction.clawbackTarget.resolvedAddress : undefined,
245245
closeAssetTo: 'closeRemainderTo' in transaction ? transaction.closeRemainderTo.resolvedAddress : undefined,
246246
assetId: BigInt(transaction.asset.id),
@@ -259,7 +259,7 @@ const asAssetTransferTransaction = async (
259259
): Promise<algosdk.Transaction> => {
260260
if (
261261
transaction.type === BuildableTransactionType.AssetClawback &&
262-
(!transaction.asset.clawback || transaction.sender.resolvedAddress! !== transaction.asset.clawback)
262+
(!transaction.asset.clawback || transaction.sender.resolvedAddress !== transaction.asset.clawback)
263263
) {
264264
throw new Error('Invalid clawback transaction')
265265
}
@@ -270,7 +270,7 @@ const asAssetTransferTransaction = async (
270270

271271
export const asAssetCreateTransactionParams = (transaction: BuildAssetCreateTransactionResult): AssetCreateParams => {
272272
return {
273-
sender: transaction.sender.resolvedAddress!,
273+
sender: transaction.sender.resolvedAddress,
274274
total: transaction.total,
275275
decimals: transaction.decimals,
276276
assetName: transaction.assetName,
@@ -294,7 +294,7 @@ const asAssetCreateTransaction = async (transaction: BuildAssetCreateTransaction
294294

295295
const asAssetReconfigureTransactionParams = (transaction: BuildAssetReconfigureTransactionResult): AssetConfigParams => {
296296
return {
297-
sender: transaction.sender.resolvedAddress!,
297+
sender: transaction.sender.resolvedAddress,
298298
assetId: BigInt(transaction.asset.id),
299299
manager: transaction.manager ? transaction.manager.resolvedAddress : undefined,
300300
reserve: transaction.reserve ? transaction.reserve.resolvedAddress : undefined,
@@ -312,7 +312,7 @@ const asAssetReconfigureTransaction = async (transaction: BuildAssetReconfigureT
312312

313313
const asAssetDestroyTransactionParams = (transaction: BuildAssetDestroyTransactionResult): AssetDestroyParams => {
314314
return {
315-
sender: transaction.sender.resolvedAddress!,
315+
sender: transaction.sender.resolvedAddress,
316316
assetId: BigInt(transaction.asset.id),
317317
}
318318
}
@@ -338,7 +338,7 @@ export const asAssetConfigTransactionParams = (
338338

339339
export const asAssetFreezeTransactionParams = (transaction: BuildAssetFreezeTransactionResult): AssetFreezeParams => {
340340
return {
341-
sender: transaction.sender.resolvedAddress!,
341+
sender: transaction.sender.resolvedAddress,
342342
assetId: BigInt(transaction.asset.id),
343343
account: transaction.freezeTarget.resolvedAddress,
344344
frozen: transaction.frozen,
@@ -348,7 +348,7 @@ export const asAssetFreezeTransactionParams = (transaction: BuildAssetFreezeTran
348348
}
349349
}
350350
const asAssetFreezeTransaction = async (transaction: BuildAssetFreezeTransactionResult): Promise<algosdk.Transaction> => {
351-
if (!transaction.asset.freeze || transaction.sender.resolvedAddress! !== transaction.asset.freeze) {
351+
if (!transaction.asset.freeze || transaction.sender.resolvedAddress !== transaction.asset.freeze) {
352352
throw new Error('Invalid freeze transaction')
353353
}
354354

@@ -365,7 +365,7 @@ export const asKeyRegistrationTransactionParams = (
365365
invariant(transaction.stateProofKey, 'State proof key is required')
366366

367367
return {
368-
sender: transaction.sender.resolvedAddress!,
368+
sender: transaction.sender.resolvedAddress,
369369
voteKey: Uint8Array.from(Buffer.from(transaction.voteKey, 'base64')),
370370
selectionKey: Uint8Array.from(Buffer.from(transaction.selectionKey, 'base64')),
371371
stateProofKey: Uint8Array.from(Buffer.from(transaction.stateProofKey, 'base64')),
@@ -379,7 +379,7 @@ export const asKeyRegistrationTransactionParams = (
379379
}
380380

381381
return {
382-
sender: transaction.sender.resolvedAddress!,
382+
sender: transaction.sender.resolvedAddress,
383383
}
384384
}
385385

src/features/transaction-wizard/mappers/as-description-list-items.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ const asAssetTransferTransaction = (
142142
},
143143
{
144144
dt: 'Sender',
145-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
145+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
146146
},
147147
{
148148
dt: 'Receiver',
@@ -194,7 +194,7 @@ const asAssetConfigTransaction = (
194194
...('decimals' in params && params.decimals !== undefined ? [{ dt: 'Decimals', dd: params.decimals }] : []),
195195
{
196196
dt: transaction.type === BuildableTransactionType.AssetCreate ? 'Creator' : 'Sender',
197-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
197+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
198198
},
199199
...('manager' in params && params.manager
200200
? [
@@ -249,7 +249,7 @@ const asAssetFreezeTransaction = (transaction: BuildAssetFreezeTransactionResult
249249
},
250250
{
251251
dt: 'Sender',
252-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
252+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
253253
},
254254
...('account' in params && params.account
255255
? [
@@ -275,7 +275,7 @@ const asKeyRegistrationTransaction = (transaction: BuildKeyRegistrationTransacti
275275
return [
276276
{
277277
dt: 'Sender',
278-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
278+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
279279
},
280280
{
281281
dt: 'Registration',
@@ -387,7 +387,7 @@ const asAppCallTransaction = (transaction: BuildAppCallTransactionResult): Descr
387387
},
388388
{
389389
dt: 'Sender',
390-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
390+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
391391
},
392392
...(transaction.extraProgramPages !== undefined
393393
? [
@@ -440,7 +440,7 @@ const asMethodCallTransaction = (
440440
},
441441
{
442442
dt: 'Sender',
443-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
443+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
444444
},
445445
...(transaction.extraProgramPages !== undefined
446446
? [
@@ -700,7 +700,7 @@ const asApplicationCreateTransaction = (transaction: BuildApplicationCreateTrans
700700
},
701701
{
702702
dt: 'Sender',
703-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
703+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
704704
},
705705
{
706706
dt: 'Approval program',
@@ -763,7 +763,7 @@ const asApplicationUpdateTransaction = (transaction: BuildApplicationUpdateTrans
763763
},
764764
{
765765
dt: 'Sender',
766-
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={String(params.sender)} />,
766+
dd: <TransactionSenderLink autoPopulated={transaction.sender.autoPopulated} address={params.sender} />,
767767
},
768768
{
769769
dt: 'Approval program',

src/features/transaction-wizard/utils/resolve-sender-address.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { OptionalSenderFieldSchema } from '@/features/forms/components/address-form-item'
21
import {
32
TESTNET_FEE_SINK_ADDRESS,
43
MAINNET_FEE_SINK_ADDRESS,
@@ -11,7 +10,7 @@ import { settingsStore } from '@/features/settings/data'
1110
import { betanetId, mainnetId, testnetId, fnetId, localnetId } from '@/features/network/data'
1211
import { algorandClient } from '@/features/common/data/algo-client'
1312

14-
export default async function resolveSenderAddress(data: OptionalSenderFieldSchema): Promise<TransactionSender> {
13+
export default async function resolveSenderAddress(data?: { value?: string; resolvedAddress?: string }): Promise<TransactionSender> {
1514
const { id: networkId } = settingsStore.get(networkConfigAtom)
1615

1716
const val = data?.value ?? ''

0 commit comments

Comments
 (0)