@@ -4,6 +4,7 @@ import React, { useEffect, useState } from 'react';
44import { useSession } from "next-auth/react"
55import Table , { tableDataT } from '@/components/common/table/Table' ;
66import table_data from './table_data.json' ;
7+ import { useRouter } from "next/router" ;
78import moment from 'moment' ;
89import { ToastContainer , toast } from 'react-toastify' ;
910import 'react-toastify/dist/ReactToastify.css' ;
@@ -16,25 +17,26 @@ function APIKeys() {
1617 const [ tableLoading ] = useState ( false ) ;
1718 const [ captionText , setCaptionText ] = useState ( '' ) ;
1819 const { data : sessions } = useSession ( )
19- const { id_token, sub } = sessions ?. user as { id_token : string ; sub : string } || { } ;
20+ const { id_token, sub, idToken } = sessions ?. user as { id_token : string ; idToken : string ; sub : string } || { } ;
21+ const router = useRouter ( ) ;
2022
21- useEffect ( ( ) => {
22- const fetchData = async ( ) => {
23- if ( ! sub ) return ;
24- try {
25- const { data } = await fetchAPIKeyList ( id_token , sub ) ;
26- if ( Array . isArray ( data . data . apiKeys ) ) {
27- const newRows = data . data . apiKeys . map ( ( item :any ) => ( {
28- keys : item . value ,
29- created : moment ( item . createdDate ) . format ( 'MM/DD/yyyy' ) ,
30- } ) ) ;
31- setApiKeysTable ( ( prevState ) => ( { ...prevState , rows : newRows } ) ) ;
32- }
33- } catch ( error ) {
34- console . error ( error ) ;
23+ const fetchData = async ( ) => {
24+ if ( ! sub ) return ;
25+ try {
26+ const { data } = await fetchAPIKeyList ( id_token || idToken , sub ) ;
27+ if ( Array . isArray ( data . data . apiKeys ) ) {
28+ const newRows = data . data . apiKeys . map ( ( item :any ) => ( {
29+ keys : item . value ,
30+ created : moment ( item . createdDate ) . format ( 'MM/DD/yyyy' ) ,
31+ } ) ) ;
32+ setApiKeysTable ( ( prevState ) => ( { ...prevState , rows : newRows } ) ) ;
3533 }
36- } ;
34+ } catch ( error ) {
35+ console . error ( error ) ;
36+ }
37+ } ;
3738
39+ useEffect ( ( ) => {
3840 fetchData ( ) ;
3941 } , [ sub ] ) ;
4042
@@ -43,8 +45,11 @@ function APIKeys() {
4345 } , [ apiKeysTable ] ) ;
4446
4547 const handleCreateApiKey = ( ) => {
46- createAPIKey ( id_token , toast ) ;
48+ createAPIKey ( id_token || idToken , toast ) . then ( ( ) => {
49+ fetchData ( ) ;
50+ } ) ;
4751 }
52+ const apiPlanUrl = "https://adityaagarwal.notion.site/Products-Services-c3633ff3f9ea4aeeb1892ae1303439ba#4b87ad9fa7a346548e1c7cd71803821d"
4853
4954 return (
5055 < div className = "" >
@@ -66,10 +71,11 @@ function APIKeys() {
6671 </ button >
6772 < button
6873 className = "text-sm border border-dark-200 text-md gap-2 inline-flex tracking-[1.25px] pt-[9px] pb-[9px] px-4 uppercase rounded bg-white"
74+ onClick = { ( ) => router . push ( apiPlanUrl ) }
6975 style = { { display : 'flex' , flexDirection : 'row' , alignItems : 'center' , justifyContent : 'center' } }
7076 >
7177 < img className = "-translate-y-[1px]" src = "/images/api.svg" alt = "" />
72- < span > Check Api Plan </ span >
78+ < span > CHECK API PLANS </ span >
7379 </ button >
7480 </ div >
7581 </ div >
0 commit comments