Skip to content

Commit

Permalink
replace mutliversx npm libraries
Browse files Browse the repository at this point in the history
  • Loading branch information
juliancwirko committed Jan 14, 2023
1 parent 72141ab commit 5a4035d
Show file tree
Hide file tree
Showing 23 changed files with 2,576 additions and 2,092 deletions.
4 changes: 2 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ NEXT_PUBLIC_MULTIVERSX_CHAIN = devnet
# You have three options:
#
# 1. By commenting this out the dapp will use the default
# MultiversX api endpoint (e.g. https://devnet-api.elrond.com)
# MultiversX api endpoint (e.g. https://devnet-api.multiversx.com)
#
# Note: MULTIVERSX_PRIVATE_API must be removed/commented out.
#
Expand All @@ -39,7 +39,7 @@ NEXT_PUBLIC_DAPP_HOST = http://localhost:3000
# This can be either a custom api endpoint or the default MultiversX api endpoint.
# You will have to delete this or comment this out, if you don't wanna
# mask / proxy your MultiversX api endpoint.
MULTIVERSX_PRIVATE_API = https://devnet-api.elrond.com
MULTIVERSX_PRIVATE_API = https://devnet-api.multiversx.com

# Only this host will be allowed to consume the API (optional)
# It will work only inside the Dapp, no one will be able to use the endpoint, even in browser
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
### [4.2.0](https://github.com/xdevguild/nextjs-dapp-template/releases/tag/v4.2.0) (2023-01-14)
- rebrand to multiversx (continuation)
- npm packages are replaced
- public api/explorer endpoints are replaced
- update dependencies

### [4.1.0](https://github.com/xdevguild/nextjs-dapp-template/releases/tag/v4.1.0) (2022-12-17)
- added `ProtectedPageWrapper` component - client side only 'gate keeper', check README.md for more info
- fix for the `useApiCall` hook
Expand Down
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

- [multiversx-nextjs-dapp.netlify.com](https://multiversx-nextjs-dapp.netlify.com)

Nextjs alternative to the [dapp-core](https://github.com/ElrondNetwork/dapp-core).
Nextjs alternative to the [sdk-dapp](https://github.com/multiversx/mx-sdk-dapp).
Based on [Elven Tools Dapp](https://www.elven.tools/docs/minter-dapp-introduction.html), (It is developed simultaneously, and at some stages, it will have more core functionality)

The Dapp is built using Nextjs and a couple of helpful tools.
Expand Down Expand Up @@ -58,7 +58,7 @@ const NextJSDappTemplate = ({ Component, pageProps }: AppProps) => {

#### LoginModalButton

The component provides the `Connect` button with the modal, which will contain another three buttons for four different authentication possibilities (Maiar Mobile App, Maiar Defi Wallet - browser extension, Elrond Web Wallet). You should be able to use it in any place on the website.
The component provides the `Connect` button with the modal, which will contain another three buttons for four different authentication possibilities (Maiar Mobile App, Maiar Defi Wallet - browser extension, MultiversX Web Wallet). You should be able to use it in any place on the website.

```jsx
import { LoginModalButton } from '../tools/LoginModalButton';
Expand Down Expand Up @@ -164,7 +164,7 @@ const {
**Example** with `SCQueryType.COMPLEX`. This type uses `/vm-values/query`, ABI and ResultParser. The ABI JSON contents are required here. You can copy abi.json and import it in the same place you use useScQuery. Put the abi JSON file wherever you like in the codebase. I chose the `config` directory. See the example below:

```jsx
import { TypedOutcomeBundle } from '@elrondnetwork/erdjs';
import { TypedOutcomeBundle } from '@multiversx/sdk-core';
import abiJSON from '../config/abi.json';

const { data } = useScQuery<TypedOutcomeBundle>({
Expand Down Expand Up @@ -289,7 +289,7 @@ NEXT_PUBLIC_MULTIVERSX_CHAIN = devnet
# You have three options:
#
# 1. By commenting this out the dapp will use the default
# MultiversX api endpoint (e.g. https://devnet-api.elrond.com)
# MultiversX api endpoint (e.g. https://devnet-api.multiversx.com)
#
# Note: MULTIVERSX_PRIVATE_API needs to be removed/commented out.
#
Expand All @@ -316,7 +316,7 @@ NEXT_PUBLIC_DAPP_HOST = http://localhost:3000
# This can be either a custom api endpoint or the default MultiversX api endpoint.
# You will have to delete this or comment this out, if you don't wanna
# mask / proxy your MultiversX api endpoint.
MULTIVERSX_PRIVATE_API = https://devnet-api.elrond.com
MULTIVERSX_PRIVATE_API = https://devnet-api.multiversx.com

# Only this host will be allowed to consume the API (optional)
# It will work only inside the Dapp, no one will be able to use the endpoint, even in browser
Expand Down Expand Up @@ -381,12 +381,12 @@ The same dapp, but with Tailwind instead Chakra UI:
If you would like to test other templates check:

- [erd-next-starter](https://github.com/Elrond-Giants/erd-next-starter)
- [dapp-template](https://github.com/ElrondNetwork/dapp-template)
- [dapp-template]https://github.com/multiversx/mx-template-dapp)

Dapps using the template (send the links if you used it, use issues here on GitHub):

- [Elven Tools Dapp](https://dapp-demo.elven.tools/)
- [MultiversX ESDT Faucet Dapp](https://devnet-elrond-esdt-faucet.netlify.app/)
- [MultiversX ESDT Faucet Dapp](https://devnet-multiversx-esdt-faucet.netlify.app/)

Compact MultiversX SDK for browsers (no build steps required)

Expand Down
2 changes: 1 addition & 1 deletion components/demo/GetUserDataDemo.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { TokenPayment } from '@elrondnetwork/erdjs';
import { TokenPayment } from '@multiversx/sdk-core';
import { Text, Link } from '@chakra-ui/react';
import { shortenHash } from '../../utils/shortenHash';
import { useAccount } from '../../hooks/auth/useAccount';
Expand Down
2 changes: 1 addition & 1 deletion components/demo/SimpleEGLDTxDemo.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Link, Text } from '@chakra-ui/react';
import { TransactionPayload } from '@elrondnetwork/erdjs';
import { TransactionPayload } from '@multiversx/sdk-core';
import { useTransaction } from '../../hooks/core/useTransaction';
import { useCallback } from 'react';
import { ActionButton } from '../tools/ActionButton';
Expand Down
2 changes: 1 addition & 1 deletion components/demo/SimpleNftMintDemo.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Link, Text } from '@chakra-ui/react';
import { U32Value, ContractFunction } from '@elrondnetwork/erdjs';
import { U32Value, ContractFunction } from '@multiversx/sdk-core';
import { useScTransaction } from '../../hooks/core/useScTransaction';
import { useCallback } from 'react';
import { ActionButton } from '../tools/ActionButton';
Expand Down
6 changes: 3 additions & 3 deletions components/tools/LoginComponent.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -44,19 +44,19 @@ export const LoginComponent = memo(() => {
isFullWidth
onClick={handleLogin(LoginMethodsEnum.wallet)}
>
Elrond Web Wallet
MultiversX Web Wallet
</ActionButton>
<ActionButton
isFullWidth
onClick={handleLogin(LoginMethodsEnum.extension)}
>
Maiar Browser Extension
MultiversX Browser Extension
</ActionButton>
<ActionButton
isFullWidth
onClick={handleLogin(LoginMethodsEnum.walletconnect)}
>
Maiar Mobile App
xPortal Mobile App
</ActionButton>
<ActionButton isFullWidth onClick={handleLedgerAccountsList}>
Ledger
Expand Down
33 changes: 30 additions & 3 deletions components/ui/Footer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,37 @@ export const Footer = () => {
>
{'xDevGuild'}
</Text>
<Text ml={2} mr={2}>
{' '}
|{' '}
<Text fontWeight="hairline"> | </Text>
<Text
as="a"
color="dappTemplate.color3.base"
href="https://github.com/ElvenTools"
target="_blank"
rel="noopener noreferrer nofollow"
>
{'Elven Tools'}
</Text>
<Text fontWeight="hairline"> | </Text>
<Text
as="a"
color="dappTemplate.color3.base"
href="https://github.com/juliancwirko/elven.js"
target="_blank"
rel="noopener noreferrer nofollow"
>
{'Elven.js'}
</Text>
<Text fontWeight="hairline"> | </Text>
<Text
as="a"
color="dappTemplate.color3.base"
href="https://github.com/xdevguild/buildo-begins"
target="_blank"
rel="noopener noreferrer nofollow"
>
{'Buildo Begins'}
</Text>
<Text fontWeight="hairline"> | </Text>
<Text
as="a"
color="dappTemplate.color3.base"
Expand Down
24 changes: 12 additions & 12 deletions config/network.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ export const networkConfig: Record<string, NetworkType> = {
decimals: '4',
gasPerDataByte: '1500',
walletConnectDeepLink:
'https://maiar.page.link/?apn=com.elrond.maiar.wallet&isi=1519405832&ibi=com.elrond.maiar.wallet&link=https://maiar.com/',
'https://maiar.page.link/?apn=com.elrond.maiar.wallet&isi=1519405832&ibi=com.elrond.maiar.wallet&link=https://xportal.com/',
walletConnectBridgeAddresses: ['https://bridge.walletconnect.org'],
walletAddress: 'https://devnet-wallet.elrond.com',
walletAddress: 'https://devnet-wallet.multiversx.com',
apiAddress:
process.env.NEXT_PUBLIC_MULTIVERSX_API || 'https://devnet-api.elrond.com',
explorerAddress: 'https://devnet-explorer.elrond.com',
process.env.NEXT_PUBLIC_MULTIVERSX_API || 'https://devnet-api.multiversx.com',
explorerAddress: 'https://devnet-explorer.multiversx.com',
apiTimeout: '4000',
},

Expand All @@ -38,13 +38,13 @@ export const networkConfig: Record<string, NetworkType> = {
decimals: '4',
gasPerDataByte: '1500',
walletConnectDeepLink:
'https://maiar.page.link/?apn=com.elrond.maiar.wallet&isi=1519405832&ibi=com.elrond.maiar.wallet&link=https://maiar.com/',
'https://maiar.page.link/?apn=com.elrond.maiar.wallet&isi=1519405832&ibi=com.elrond.maiar.wallet&link=https://xportal.com/',
walletConnectBridgeAddresses: ['https://bridge.walletconnect.org'],
walletAddress: 'https://testnet-wallet.elrond.com',
walletAddress: 'https://testnet-wallet.multiversx.com',
apiAddress:
process.env.NEXT_PUBLIC_MULTIVERSX_API ||
'https://testnet-api.elrond.com',
explorerAddress: 'https://testnet-explorer.elrond.com',
'https://testnet-api.multiversx.com',
explorerAddress: 'https://testnet-explorer.multiversx.com',
apiTimeout: '4000',
},

Expand All @@ -57,12 +57,12 @@ export const networkConfig: Record<string, NetworkType> = {
decimals: '4',
gasPerDataByte: '1500',
walletConnectDeepLink:
'https://maiar.page.link/?apn=com.elrond.maiar.wallet&isi=1519405832&ibi=com.elrond.maiar.wallet&link=https://maiar.com/',
'https://maiar.page.link/?apn=com.elrond.maiar.wallet&isi=1519405832&ibi=com.elrond.maiar.wallet&link=https://xportal.com/',
walletConnectBridgeAddresses: ['https://bridge.walletconnect.org'],
walletAddress: 'https://wallet.elrond.com',
walletAddress: 'https://wallet.multiversx.com',
apiAddress:
process.env.NEXT_PUBLIC_MULTIVERSX_API || 'https://api.elrond.com',
explorerAddress: 'https://explorer.elrond.com',
process.env.NEXT_PUBLIC_MULTIVERSX_API || 'https://api.multiversx.com',
explorerAddress: 'https://explorer.multiversx.com',
apiTimeout: '4000',
},
};
Expand Down
6 changes: 3 additions & 3 deletions hooks/auth/useExtensionLogin.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Address, Account } from '@elrondnetwork/erdjs';
import { ExtensionProvider } from '@elrondnetwork/erdjs-extension-provider';
import { Address, Account } from '@multiversx/sdk-core';
import { ExtensionProvider } from '@multiversx/sdk-extension-provider';
import { LoginMethodsEnum } from '../../types/enums';
import { optionalRedirect } from '../../utils/optionalRedirect';
import {
Expand All @@ -12,7 +12,7 @@ import { getNewLoginExpiresTimestamp } from '../../utils/expiresAt';
import { useLogout } from './useLogout';
import { Login } from '../../types/account';
import { useLoggingIn } from './useLoggingIn';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { errorParse } from '../../utils/errorParse';

export const useExtensionLogin = (params?: Login) => {
Expand Down
6 changes: 3 additions & 3 deletions hooks/auth/useLedgerLogin.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Address, Account } from '@elrondnetwork/erdjs';
import { HWProvider } from '@elrondnetwork/erdjs-hw-provider';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
import { Address, Account } from '@multiversx/sdk-core';
import { HWProvider } from '@multiversx/sdk-hw-provider';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { LoginMethodsEnum } from '../../types/enums';
import { optionalRedirect } from '../../utils/optionalRedirect';
import {
Expand Down
6 changes: 3 additions & 3 deletions hooks/auth/useMobileAppLogin.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable react-hooks/exhaustive-deps */
import { Account, Address } from '@elrondnetwork/erdjs';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
import { WalletConnectProvider } from '@elrondnetwork/erdjs-wallet-connect-provider';
import { Account, Address } from '@multiversx/sdk-core';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { WalletConnectProvider } from '@multiversx/sdk-wallet-connect-provider';
import { useState, useRef } from 'react';
import { getActiveNetworkConfiguration } from '../../config/network';
import { LoginMethodsEnum } from '../../types/enums';
Expand Down
12 changes: 6 additions & 6 deletions hooks/auth/useNetworkSync.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ import {
setLoginInfoState,
} from '../../store/auth';
import * as network from '../../store/network';
import { Address, Account } from '@elrondnetwork/erdjs';
import { WalletProvider } from '@elrondnetwork/erdjs-web-wallet-provider';
import { WalletConnectProvider } from '@elrondnetwork/erdjs-wallet-connect-provider';
import { ExtensionProvider } from '@elrondnetwork/erdjs-extension-provider';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
import { HWProvider } from '@elrondnetwork/erdjs-hw-provider';
import { Address, Account } from '@multiversx/sdk-core';
import { WalletProvider } from '@multiversx/sdk-web-wallet-provider';
import { WalletConnectProvider } from '@multiversx/sdk-wallet-connect-provider';
import { ExtensionProvider } from '@multiversx/sdk-extension-provider';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { HWProvider } from '@multiversx/sdk-hw-provider';
import {
DAPP_INIT_ROUTE,
getActiveNetworkConfiguration,
Expand Down
2 changes: 1 addition & 1 deletion hooks/auth/useWebWalletLogin.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { WalletProvider } from '@elrondnetwork/erdjs-web-wallet-provider';
import { WalletProvider } from '@multiversx/sdk-web-wallet-provider';
import { LoginMethodsEnum } from '../../types/enums';
import { getNewLoginExpiresTimestamp } from '../../utils/expiresAt';
import {
Expand Down
12 changes: 6 additions & 6 deletions hooks/core/common-helpers/sendTxOperations.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
// Tools used internally by sent transactions hooks
import { Account, TransactionWatcher, Transaction } from '@elrondnetwork/erdjs';
import { ExtensionProvider } from '@elrondnetwork/erdjs-extension-provider';
import { WalletConnectProvider } from '@elrondnetwork/erdjs-wallet-connect-provider';
import { HWProvider } from '@elrondnetwork/erdjs-hw-provider';
import { Account, TransactionWatcher, Transaction } from '@multiversx/sdk-core';
import { ExtensionProvider } from '@multiversx/sdk-extension-provider';
import { WalletConnectProvider } from '@multiversx/sdk-wallet-connect-provider';
import { HWProvider } from '@multiversx/sdk-hw-provider';
import { Dispatch, SetStateAction } from 'react';
import { setAccountState, LoginInfoState } from '../../../store/auth';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { LoginMethodsEnum } from '../../../types/enums';
import { WalletProvider } from '@elrondnetwork/erdjs-web-wallet-provider';
import { WalletProvider } from '@multiversx/sdk-web-wallet-provider';
import { DappProvider } from '../../../types/network';
import { errorParse } from '../../../utils/errorParse';

Expand Down
6 changes: 3 additions & 3 deletions hooks/core/common-helpers/useWebWalletTxSend.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ import { useEffect, Dispatch, SetStateAction } from 'react';
import {
WALLET_PROVIDER_CALLBACK_PARAM,
WALLET_PROVIDER_CALLBACK_PARAM_TX_SIGNED,
} from '@elrondnetwork/erdjs-web-wallet-provider';
import { Transaction } from '@elrondnetwork/erdjs';
} from '@multiversx/sdk-web-wallet-provider';
import { Transaction } from '@multiversx/sdk-core';
import { useSnapshot } from 'valtio';
import { getParamFromUrl } from '../../../utils/getParamFromUrl';
import { getNetworkState } from '../../../store/network';
import { DappProvider } from '../../../types/network';
import { accountState } from '../../../store/auth';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { postSendTxOperations, TransactionCb } from './sendTxOperations';
import { errorParse } from '../../../utils/errorParse';

Expand Down
4 changes: 2 additions & 2 deletions hooks/core/useScQuery.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import {
SmartContract,
Address,
AbiRegistry,
} from '@elrondnetwork/erdjs';
import { ContractQueryResponse } from '@elrondnetwork/erdjs-network-providers';
} from '@multiversx/sdk-core';
import { ContractQueryResponse } from '@multiversx/sdk-network-providers';
import useSwrMutation from 'swr/mutation';
import { apiCall } from '../../utils/apiCall';

Expand Down
4 changes: 2 additions & 2 deletions hooks/core/useScTransaction.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import {
TypedValue,
TokenPayment,
ContractCallPayloadBuilder,
} from '@elrondnetwork/erdjs';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
} from '@multiversx/sdk-core';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { useSnapshot } from 'valtio';
import { accountState, loginInfoState } from '../../store/auth';
import { getNetworkState } from '../../store/network';
Expand Down
4 changes: 2 additions & 2 deletions hooks/core/useTransaction.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import {
ITransactionPayload,
IGasLimit,
TokenPayment,
} from '@elrondnetwork/erdjs';
import { ApiNetworkProvider } from '@elrondnetwork/erdjs-network-providers';
} from '@multiversx/sdk-core';
import { ApiNetworkProvider } from '@multiversx/sdk-network-providers';
import { useSnapshot } from 'valtio';
import { accountState, loginInfoState } from '../../store/auth';
import { getNetworkState } from '../../store/network';
Expand Down
Loading

0 comments on commit 5a4035d

Please sign in to comment.