Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .env.sample
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
VITE_APP_ENV=YOUR_APP_ENV ( local, dev, staging, prod )
VITE_APP_DYNAMIC_ENV_ID=YOUR_DYNAMIC_ENV_ID
VITE_APP_BACKEND_URL=http://localhost:3000
VITE_DEV_MODE="localhost"
VITE_DEV_MODE="localhost"
VITE_APP_RPC_URL=YOUR_RPC_URL
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,7 @@
"@fortawesome/react-fontawesome": "^0.2.2",
"@metamask/sdk": "^0.32.0",
"@noble/hashes": "^1.0.0",
"@pushchain/devnet": "^1.0.14",
"@pushprotocol/push-chain": "0.1.7",
"@pushchain/devnet": "1.0.16",
"@radix-ui/react-dialog": "^1.1.1",
"@radix-ui/react-dropdown-menu": "^2.1.1",
"@radix-ui/react-switch": "^1.1.0",
Expand Down
4 changes: 3 additions & 1 deletion src/config/config-dev.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import { ENV } from "@pushchain/devnet/src/lib/constants";

export const config = {
/**
* APP INFO
*/
APP_NAME: "Push Devnet Wallet",
NODE_ENV: "dev",
APP_ENV: "dev",
APP_ENV: ENV.DEVNET,
/**
* CHAIN INFO
*/
Expand Down
4 changes: 3 additions & 1 deletion src/config/config-local.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import { ENV } from "@pushchain/devnet/src/lib/constants";

export const config = {
/**
* APP INFO
*/
APP_NAME: 'Push Local Wallet',
NODE_ENV: 'local',
APP_ENV: 'local',
APP_ENV: ENV.LOCAL,
/**
* CHAIN INFO
*/
Expand Down
4 changes: 3 additions & 1 deletion src/config/config-prod.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import { ENV } from "@pushchain/devnet/src/lib/constants";

export const config = {
/**
* APP INFO
*/
APP_NAME: 'Push Wallet',
NODE_ENV: 'prod',
APP_ENV: 'prod',
APP_ENV: ENV.MAINNET,

/**
* CHAIN INFO
Expand Down
4 changes: 3 additions & 1 deletion src/config/config-staging.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import { ENV } from "@pushchain/devnet/src/lib/constants";

export const config = {
/**
* APP INFO
*/
APP_NAME: 'Push Testnet Wallet',
NODE_ENV: 'staging',
APP_ENV: 'staging',
APP_ENV: ENV.TESTNET,

/**
* CHAIN INFO
Expand Down
4 changes: 3 additions & 1 deletion src/config/config.types.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
import { ENV } from "@pushchain/devnet/src/lib/constants"

export interface Config {
// App-specific Configuration
APP_NAME: string
NODE_ENV: string
APP_ENV: string
APP_ENV: ENV

// Chain Information
ALLOWED_NETWORKS: number[]
Expand Down
1 change: 0 additions & 1 deletion src/modules/wallet/Wallet.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,6 @@ const Wallet: FC<WalletProps> = () => {

// Only single or no share is found directly ask user if they want to create a new wallet or go back
const hasAnyShare = share1 || share2 || share3;
console.log("Has any share >>", hasAnyShare);

if (hasAnyShare) {
setShowReconstructionErrorModal(true);
Expand Down
31 changes: 18 additions & 13 deletions src/modules/wallet/components/WalletActivityList.tsx
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { FC, useCallback, useEffect, useRef, useState } from "react";

import { Box, Text, Spinner } from "../../../blocks";
import { Tx as PushTx } from "@pushprotocol/push-chain";
import config from "../../../config";
import { ENV } from "../../../constants";
import { BlockType } from "@pushprotocol/push-chain/src/lib/block/block.types";
import { WalletActivityListItem } from "./WalletActivityListItem";
import { PushChain } from "@pushchain/devnet";
import { ORDER } from '@pushchain/devnet/src/lib/constants'
import { BlockType } from "@pushchain/devnet/src/lib/block/block.types";
import config from "../../../config";

export type WalletActivityListProps = {
address: string;
Expand All @@ -24,14 +24,19 @@ const WalletActivityList: FC<WalletActivityListProps> = ({ address }) => {
if (isLoading) return;
setIsLoading(true);
try {
const pushTx = await PushTx.initialize(config.APP_ENV as ENV);
const response = await pushTx.get(
Math.floor(Date.now()),
"DESC",
20,
pageNumber,
address || null
);
const pushChain = await PushChain.initialize(null, {
network: config.APP_ENV,
rpcUrl: import.meta.env.VITE_APP_RPC_URL,
});

const universalAccount = PushChain.utils.account.toUniversal(address)

const response = await pushChain.tx.get(universalAccount, {
startTime: Math.floor(Date.now()),
order: ORDER.DESC,
page: pageNumber,
limit: 20,
})

const transactions = response.blocks
.map((tx) => tx.transactions)
Expand Down Expand Up @@ -86,7 +91,7 @@ const WalletActivityList: FC<WalletActivityListProps> = ({ address }) => {
>
{activities.map((transaction, index) => (
<WalletActivityListItem
key={`${transaction.txnHash}-${index}`}
key={`${transaction.hash}-${index}`}
transaction={transaction}
address={address}
/>
Expand Down
27 changes: 17 additions & 10 deletions src/modules/wallet/components/WalletActivityListItem.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,15 @@ import { Box, DefaultChainMonotone, ExternalLinkIcon, InternalLink, PushMonotone
import { css } from 'styled-components';
import { convertCaipToObject, formatWalletCategory, getFixedTime } from '../Wallet.utils';
import { centerMaskWalletAddress, CHAIN_LOGO } from '../../../common';
import { TxResponse } from '@pushchain/devnet/src/lib/tx/tx.types';
import { FC } from 'react';

const WalletActivityListItem = ({
type WalletActivityListItemProps = {
transaction: TxResponse
address: string
}

const WalletActivityListItem: FC<WalletActivityListItemProps> = ({
transaction,
address
}) => {
Expand All @@ -20,18 +27,18 @@ const WalletActivityListItem = ({
}
}

function fetchChainFromAddress(transaction) {
function fetchChainFromAddress(transaction: TxResponse) {

let displayAddress = '';
let additionalRecipients = 0;
if (address === transaction.sender) {
if (address === transaction.from) {
// Address is the sender
const recipients = transaction.recipients.recipients;
displayAddress = recipients[0]?.address; // Show first recipient
const recipients = transaction.recipients;
displayAddress = recipients[0]; // Show first recipient
additionalRecipients = recipients.length - 1; // Count additional recipients
} else if (transaction.recipients.recipients.some(recipient => recipient.address === address)) {
} else if (transaction.recipients.some(recipient => recipient === address)) {
// Address is in recipients
displayAddress = transaction.sender; // Show sender address
displayAddress = transaction.from; // Show sender address

}

Expand Down Expand Up @@ -95,19 +102,19 @@ const WalletActivityListItem = ({
width="32px"
height="32px"
>
{address === transaction.sender ? <ExternalLinkIcon size={16} color="icon-primary" /> : transaction.recipients.recipients.some(recipient => recipient.address === address) && <InternalLink size={16} color="icon-primary" />}
{address === transaction.from ? <ExternalLinkIcon size={16} color="icon-primary" /> : transaction.recipients.some(recipient => recipient === address) && <InternalLink size={16} color="icon-primary" />}

</Box>
<Box display="flex" flexDirection="column" gap='spacing-xxxs'>
<Text variant="bm-regular">
{address === transaction.sender ? 'Send' : transaction.recipients.recipients.some(recipient => recipient.address === address) ? 'Receive' : null}
{address === transaction.from ? 'Send' : transaction.recipients.some(recipient => recipient === address) ? 'Receive' : null}
</Text>
{fetchChainFromAddress(transaction)}
</Box>
</Box>
<Box display="flex" flexDirection="column" gap="spacing-xxxs">
<Text variant="bes-regular">{formatWalletCategory(transaction.category)}</Text>
<Text variant="c-semibold" color='text-tertiary'>{getFixedTime(transaction.ts)}</Text>
<Text variant="c-semibold" color='text-tertiary'>{getFixedTime(transaction.timestamp)}</Text>
</Box>

</Box>
Expand Down
1 change: 0 additions & 1 deletion src/queries/hooks/index.ts

This file was deleted.

31 changes: 0 additions & 31 deletions src/queries/hooks/useGetUserTransactions.ts

This file was deleted.

3 changes: 0 additions & 3 deletions src/queries/index.ts

This file was deleted.

7 changes: 0 additions & 7 deletions src/queries/models/getUserTransactionsModelCreator.ts

This file was deleted.

1 change: 0 additions & 1 deletion src/queries/models/index.ts

This file was deleted.

1 change: 0 additions & 1 deletion src/queries/queryKeys.ts

This file was deleted.

21 changes: 0 additions & 21 deletions src/queries/services/getUserTransactions.ts

This file was deleted.

1 change: 0 additions & 1 deletion src/queries/services/index.ts

This file was deleted.

Loading