본문 바로가기
프로그래밍/Portfolio Log

[Portfolio Log] NFT 가구점 16

by YuminK 2024. 1. 8.

 

연락처, 북마크, 네트워크, 계정 등에 대한 storage 처리를 추가했다. Chrome Extension Local storage로 개발을 하기에는 빌드가 너무 오래 걸려서, 인터페이스 함수를 만들고 config 값에 따라 처리를 분기했다. (웹 스토리지와 익스텐션 스토리지를 분기하여 사용) 아마 익스텐션 설정으로 빌드하면 크롬 익스텐션 로컬 스토리지를 이용하게 될 것이다. 

또한 계정 생성/임포트시 니모닉 정보로 계정을 생성하는 코드를 작성했다. 이 부분 역시 로컬 스토리지를 연동해놓아서 정상적으로 동작한다. 니모닉 정보는 따로 저장하지 않는다. 중간에 계정을 생성하는 부분은 미리 10개 계정에 대한 정보를 미리 생성하고 로컬에 저장하는 식으로 처리한다. (아마 메타마스크도 이런 식으로 처리하지 않았을까 생각한다.)

 

네트워크 변경에 대해 rpcUrl 정보로 provider를 설정하여 토큰 정보를 받아온다. 또한 해당 토큰을 USD로 출력하는 부분도 작업되어 있다. 토큰 전송처리를 위한 가스비 계산 + 트랜잭션 처리까지 진행한 상태이다. 

 

다음 작업으로는 블럭, 트랜잭션 정보를 바탕으로 Activity 부분을 관리하는 것이다. 이미 어느 부분에서 정보를 뽑아야 하는지는 정리를 해두었다. 활동은 계정 별로 관리하여 정보를 찾아올 수 있는 핵심 정보(트랜잭션 해시, 블록 넘버)를 저장하고 활동 탭에서 불러올 생각을 하고 있다.

이름: send
0x999c657605fbd94423cdee42a56a6d9713014fbb08992444d51514f0bc9bb1c6
transactionHash(transactionId 처리, 블록익스플로어에서 보기에서 사용)

상태 정보(status)
From, to(from, to)

시간 정보 
nounce, value
Gas limit => gas
Gas used => gasUsed

baseFee gwei => 네트워크 base fee
블록 정보에 base fee가 있다. Number로 찾아올 수 있음.

PriorityFee gwei=> maxPriorityPerGas
TotalGasFee => gasPrice * gasUsed  (달러변환)
Max fee per gas -> maxFeePerGas (달러 변환)
total은 TotalGasFee + value 값 (달러 변환)

 

 

활동 부분 이후에는 dapp에서 던진 트랜잭션 이벤트에 대해 사이닝 처리를 하여 트랜잭션 수락/거절 하는 부분을 작업할 것이다. 이 부분도 예전에 간단하게 테스트를 해봤던 부분이라 금방 될 것이다. 이후에는 아직 미구현된 메타버스 부분 작업해서 백엔드와 연동하면 마무리되겠지. 아무튼 꾸준히 작업해보자. 

댓글