diff --git a/src/constants/api.js b/src/constants/api.js
index 527b4f7..5931f6b 100644
--- a/src/constants/api.js
+++ b/src/constants/api.js
@@ -4,6 +4,6 @@ const base_url = server_url + '/api/v1';
module.exports = {
REGISTER: base_url + '/vendors/register',
NFT: server_url + '/nft',
- VENDORS: base_url + '/vendors/',
+ VENDORS: base_url + '/vendors',
SERVER_URL: server_url
};
diff --git a/src/modules/assets/index.js b/src/modules/assets/index.js
index d87ee71..86a2a63 100644
--- a/src/modules/assets/index.js
+++ b/src/modules/assets/index.js
@@ -11,7 +11,7 @@ export default function Asset() {
useEffect(() => {
async function listNfts() {
const nftList = await DataService.listNft();
- setNfts(nftList);
+ setNfts(nftList || []);
}
listNfts();
diff --git a/src/modules/setup/index.js b/src/modules/setup/index.js
index a489f92..f3b687d 100644
--- a/src/modules/setup/index.js
+++ b/src/modules/setup/index.js
@@ -2,7 +2,7 @@ import React, { useState, useEffect, useCallback } from 'react';
import { Link, useHistory } from 'react-router-dom';
import { IoWalletOutline } from 'react-icons/io5';
import { FaGoogleDrive, FaKey } from 'react-icons/fa';
-
+import PackageJson from '../../../package.json';
import PasscodeModal from '../global/SetPasscodeModal';
import DataService from '../../services/db';
@@ -124,6 +124,10 @@ export default function Main() {
)}
+
+
+ Version: {PackageJson.version}
+
>
);
diff --git a/src/modules/syncDb/index.js b/src/modules/syncDb/index.js
index 90adf8a..5e3d8b2 100644
--- a/src/modules/syncDb/index.js
+++ b/src/modules/syncDb/index.js
@@ -38,8 +38,9 @@ function SyncDb() {
setLoadingMsg({ percent: 80, message: 'Syncing Profile details...' });
if (!wallet) return;
const vendorProfile = await getVendorByWallet(wallet?.address);
- const { name, phone, organization, address, email, photo, govt_id_image } = vendorProfile;
- await DataService.saveProfile({ name, phone, organization, address, email });
+ const { name, phone, address, email, photo, govt_id_image } = vendorProfile;
+
+ await DataService.saveProfile({ name, phone, address, email });
photo && photo.length && (await DataService.saveProfileImage(photo[0]));
govt_id_image && (await DataService.saveProfileIdCard(govt_id_image));
setLoadingMsg({ percent: 100, message: 'Succesfully synced...', showHome: true });
diff --git a/src/services/db.js b/src/services/db.js
index ec17474..6a3097e 100644
--- a/src/services/db.js
+++ b/src/services/db.js
@@ -52,6 +52,7 @@ const DataService = {
saveHasBackedUp(hasBackedUp) {
return this.save('hasBackedUp', hasBackedUp);
},
+
async initAppData() {
let network = await this.getNetwork();
let address = await this.getAddress();
@@ -70,10 +71,14 @@ const DataService = {
setSynchronizing(val) {
return this.save('synchronizing', val);
},
+
async clearAll() {
await db.data.clear();
await db.assets.clear();
await db.documents.clear();
+ await db.nfts.clear();
+ await db.transactions.clear();
+ await db.agencies.clear();
},
saveNetwork(network) {
@@ -131,8 +136,8 @@ const DataService = {
return db.agencies.get(address);
},
- async updateAgency(key, data) {
- return db.agencies.update(key, data);
+ async updateAgency(agencyAddress, data) {
+ return db.agencies.update(agencyAddress, data);
},
listAgencies() {
@@ -155,7 +160,25 @@ const DataService = {
listTx(type) {
if (!type) return db.transactions.orderBy('timestamp').reverse().toArray();
- return db.transactions.get({ type }).orderBy('timestamp').reverse();
+ return db.transactions.where({ type: type }).reverse().sortBy('timestamp');
+
+ // return db.transactions.get({ type }).orderBy('timestamp').reverse();
+ },
+
+ async addNft(nft) {
+ const { tokenId } = nft;
+ const storedNft = await this.getNft(tokenId);
+ if (!storedNft) return db.nfts.put({ ...nft, amount: nft.amount ? nft.amount : 1 });
+ storedNft.amount++;
+ return db.nfts.put(storedNft);
+ },
+
+ getNft(id) {
+ return db.nfts.get(parseInt(id));
+ },
+
+ listNft() {
+ return db.nfts?.toArray();
},
async saveDocuments(docs) {
@@ -181,13 +204,18 @@ const DataService = {
async getAssetBySymbol(symbol, network) {
if (!network) return db.assets.get({ symbol });
- if (symbol.toUpperCase() === 'ETH') return db.assets.get({ symbol });
return db.assets.filter(a => a.symbol === symbol && a.network && a.network.name === network).first();
},
async addDefaultAsset(symbol, name) {
let asset = await this.getAsset('default');
if (!asset) return db.assets.add({ address: 'default', symbol, name, decimal: 18, balance: 0 });
+ asset = {
+ ...asset,
+ symbol,
+ name
+ };
+ return this.updateAsset(asset.address, asset);
},
async addMultiAssets(assets) {
diff --git a/src/services/index.js b/src/services/index.js
index f8206c6..9fb4f07 100644
--- a/src/services/index.js
+++ b/src/services/index.js
@@ -42,8 +42,8 @@ export const getDefautAgency = async () => {
address: appData.agency.contracts.rahat,
adminAddress: appData.agency.contracts.rahat_admin,
network: appData.networkUrl,
- erc20Address: appData.agency.contracts.rahat_erc20,
- erc1155Address: appData.agency.contracts.rahat_erc1155,
+ tokenAddress: appData.agency.contracts.rahat_erc20,
+ nftAddress: appData.agency.contracts.rahat_erc1155,
name: appData.agency.name,
email: appData.agency.email,
isApproved: false