Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
frontend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
vicotor
frontend
Commits
403f79c0
Commit
403f79c0
authored
Apr 05, 2023
by
tom
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add screens transition
parent
ad970afd
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
70 additions
and
24 deletions
+70
-24
VerifiedAddresses.tsx
ui/pages/VerifiedAddresses.tsx
+32
-3
TokenInfoForm.tsx
ui/tokenInfo/TokenInfoForm.tsx
+12
-0
TokenInstanceContent.tsx
ui/tokenInstance/TokenInstanceContent.tsx
+14
-4
VerifiedAddressesTable.tsx
ui/verifiedAddresses/VerifiedAddressesTable.tsx
+3
-3
VerifiedAddressesTableItem.tsx
ui/verifiedAddresses/VerifiedAddressesTableItem.tsx
+9
-14
No files found.
ui/pages/VerifiedAddresses.tsx
View file @
403f79c0
...
@@ -11,18 +11,27 @@ import Page from 'ui/shared/Page/Page';
...
@@ -11,18 +11,27 @@ import Page from 'ui/shared/Page/Page';
import
PageTitle
from
'
ui/shared/Page/PageTitle
'
;
import
PageTitle
from
'
ui/shared/Page/PageTitle
'
;
import
SkeletonListAccount
from
'
ui/shared/skeletons/SkeletonListAccount
'
;
import
SkeletonListAccount
from
'
ui/shared/skeletons/SkeletonListAccount
'
;
import
SkeletonTable
from
'
ui/shared/skeletons/SkeletonTable
'
;
import
SkeletonTable
from
'
ui/shared/skeletons/SkeletonTable
'
;
import
TokenInfoForm
from
'
ui/tokenInfo/TokenInfoForm
'
;
import
VerifiedAddressesTable
from
'
ui/verifiedAddresses/VerifiedAddressesTable
'
;
import
VerifiedAddressesTable
from
'
ui/verifiedAddresses/VerifiedAddressesTable
'
;
const
VerifiedAddresses
=
()
=>
{
const
VerifiedAddresses
=
()
=>
{
useRedirectForInvalidAuthToken
();
useRedirectForInvalidAuthToken
();
const
[
submissionId
,
setSubmissionId
]
=
React
.
useState
<
number
>
();
const
modalProps
=
useDisclosure
();
const
modalProps
=
useDisclosure
();
const
{
data
,
isLoading
,
isError
}
=
useApiQuery
(
'
verified_addresses
'
,
{
const
{
data
,
isLoading
,
isError
}
=
useApiQuery
(
'
verified_addresses
'
,
{
pathParams
:
{
chainId
:
appConfig
.
network
.
id
},
pathParams
:
{
chainId
:
appConfig
.
network
.
id
},
});
});
const
handleGoBack
=
React
.
useCallback
(()
=>
{
setSubmissionId
(
undefined
);
},
[]);
const
handleItemAdd
=
React
.
useCallback
(()
=>
{
setSubmissionId
(
NaN
);
},
[]);
const
handleItemEdit
=
React
.
useCallback
(()
=>
{},
[]);
const
handleItemEdit
=
React
.
useCallback
(()
=>
{},
[]);
const
handleItemDelete
=
React
.
useCallback
(()
=>
{},
[]);
const
addButton
=
(
const
addButton
=
(
<
Button
size=
"lg"
onClick=
{
modalProps
.
onOpen
}
marginTop=
{
8
}
>
<
Button
size=
"lg"
onClick=
{
modalProps
.
onOpen
}
marginTop=
{
8
}
>
...
@@ -43,14 +52,34 @@ const VerifiedAddresses = () => {
...
@@ -43,14 +52,34 @@ const VerifiedAddresses = () => {
</>
</>
);
);
const
backLink
=
React
.
useMemo
(()
=>
{
if
(
submissionId
===
undefined
)
{
return
;
}
return
{
label
:
'
Back to my verified addresses
'
,
onClick
:
handleGoBack
,
};
},
[
handleGoBack
,
submissionId
]);
if
(
submissionId
!==
undefined
)
{
return
(
<
Page
>
<
PageTitle
text=
"Token info application form"
backLink=
{
backLink
}
/>
<
TokenInfoForm
id=
{
submissionId
}
/>
</
Page
>
);
}
const
content
=
data
?.
verifiedAddresses
?
(
const
content
=
data
?.
verifiedAddresses
?
(
<>
<>
<
Show
below=
"lg"
key=
"content-mobile"
ssr=
{
false
}
>
<
Show
below=
"lg"
key=
"content-mobile"
ssr=
{
false
}
>
mobile view
<
div
>
mobile view
</
div
>
{
addButton
}
{
addButton
}
</
Show
>
</
Show
>
<
Hide
below=
"lg"
key=
"content-desktop"
ssr=
{
false
}
>
<
Hide
below=
"lg"
key=
"content-desktop"
ssr=
{
false
}
>
<
VerifiedAddressesTable
data=
{
data
.
verifiedAddresses
}
onItemEdit=
{
handleItemEdit
}
onItem
Delete=
{
handleItemDelete
}
/>
<
VerifiedAddressesTable
data=
{
data
.
verifiedAddresses
}
onItemEdit=
{
handleItemEdit
}
onItem
Add=
{
handleItemAdd
}
/>
{
addButton
}
{
addButton
}
</
Hide
>
</
Hide
>
</>
</>
...
...
ui/tokenInfo/TokenInfoForm.tsx
0 → 100644
View file @
403f79c0
import
{
Box
}
from
'
@chakra-ui/react
'
;
import
React
from
'
react
'
;
interface
Props
{
id
:
number
;
}
const
TokenInfoForm
=
({
id
}:
Props
)
=>
{
return
<
Box
>
TokenInfoForm for
{
id
}
</
Box
>;
};
export
default
TokenInfoForm
;
ui/tokenInstance/TokenInstanceContent.tsx
View file @
403f79c0
...
@@ -32,8 +32,6 @@ const TokenInstanceContent = () => {
...
@@ -32,8 +32,6 @@ const TokenInstanceContent = () => {
const
id
=
router
.
query
.
id
?.
toString
();
const
id
=
router
.
query
.
id
?.
toString
();
const
tab
=
router
.
query
.
tab
?.
toString
();
const
tab
=
router
.
query
.
tab
?.
toString
();
const
hasGoBackLink
=
appProps
.
referrer
&&
appProps
.
referrer
.
includes
(
`/token/
${
hash
}
`
)
&&
!
appProps
.
referrer
.
includes
(
'
instance
'
);
const
scrollRef
=
React
.
useRef
<
HTMLDivElement
>
(
null
);
const
scrollRef
=
React
.
useRef
<
HTMLDivElement
>
(
null
);
const
tokenInstanceQuery
=
useApiQuery
(
'
token_instance
'
,
{
const
tokenInstanceQuery
=
useApiQuery
(
'
token_instance
'
,
{
...
@@ -50,6 +48,19 @@ const TokenInstanceContent = () => {
...
@@ -50,6 +48,19 @@ const TokenInstanceContent = () => {
},
},
});
});
const
backLink
=
React
.
useMemo
(()
=>
{
const
hasGoBackLink
=
appProps
.
referrer
&&
appProps
.
referrer
.
includes
(
`/token/
${
hash
}
`
)
&&
!
appProps
.
referrer
.
includes
(
'
instance
'
);
if
(
!
hasGoBackLink
)
{
return
;
}
return
{
label
:
'
Back to token page
'
,
url
:
appProps
.
referrer
,
};
},
[
appProps
.
referrer
,
hash
]);
const
tabs
:
Array
<
RoutedTab
>
=
[
const
tabs
:
Array
<
RoutedTab
>
=
[
{
id
:
'
token_transfers
'
,
title
:
'
Token transfers
'
,
component
:
<
TokenTransfer
transfersQuery=
{
transfersQuery
}
tokenId=
{
id
}
/>
},
{
id
:
'
token_transfers
'
,
title
:
'
Token transfers
'
,
component
:
<
TokenTransfer
transfersQuery=
{
transfersQuery
}
tokenId=
{
id
}
/>
},
// there is no api for this tab yet
// there is no api for this tab yet
...
@@ -104,8 +115,7 @@ const TokenInstanceContent = () => {
...
@@ -104,8 +115,7 @@ const TokenInstanceContent = () => {
<
TextAd
mb=
{
6
}
/>
<
TextAd
mb=
{
6
}
/>
<
PageTitle
<
PageTitle
text=
{
`${ tokenInstanceQuery.data.token.name || 'Unnamed token' } #${ tokenInstanceQuery.data.id }`
}
text=
{
`${ tokenInstanceQuery.data.token.name || 'Unnamed token' } #${ tokenInstanceQuery.data.id }`
}
backLinkUrl=
{
hasGoBackLink
?
appProps
.
referrer
:
undefined
}
backLink=
{
backLink
}
backLinkLabel=
"Back to token page"
additionalsLeft=
{
nftShieldIcon
}
additionalsLeft=
{
nftShieldIcon
}
additionalsRight=
{
tokenTag
}
additionalsRight=
{
tokenTag
}
/>
/>
...
...
ui/verifiedAddresses/VerifiedAddressesTable.tsx
View file @
403f79c0
...
@@ -7,11 +7,11 @@ import VerifiedAddressesTableItem from './VerifiedAddressesTableItem';
...
@@ -7,11 +7,11 @@ import VerifiedAddressesTableItem from './VerifiedAddressesTableItem';
interface
Props
{
interface
Props
{
data
:
Array
<
VerifiedAddress
>
;
data
:
Array
<
VerifiedAddress
>
;
onItemAdd
:
(
address
:
string
)
=>
void
;
onItemEdit
:
(
item
:
VerifiedAddress
)
=>
void
;
onItemEdit
:
(
item
:
VerifiedAddress
)
=>
void
;
onItemDelete
:
(
item
:
VerifiedAddress
)
=>
void
;
}
}
const
VerifiedAddressesTable
=
({
data
,
onItemEdit
,
onItem
Delete
}:
Props
)
=>
{
const
VerifiedAddressesTable
=
({
data
,
onItemEdit
,
onItem
Add
}:
Props
)
=>
{
return
(
return
(
<
Table
variant=
"simple"
>
<
Table
variant=
"simple"
>
<
Thead
>
<
Thead
>
...
@@ -27,8 +27,8 @@ const VerifiedAddressesTable = ({ data, onItemEdit, onItemDelete }: Props) => {
...
@@ -27,8 +27,8 @@ const VerifiedAddressesTable = ({ data, onItemEdit, onItemDelete }: Props) => {
<
VerifiedAddressesTableItem
<
VerifiedAddressesTableItem
key=
{
item
.
contractAddress
}
key=
{
item
.
contractAddress
}
item=
{
item
}
item=
{
item
}
onAdd=
{
onItemAdd
}
onEdit=
{
onItemEdit
}
onEdit=
{
onItemEdit
}
onDelete=
{
onItemDelete
}
/>
/>
))
}
))
}
</
Tbody
>
</
Tbody
>
...
...
ui/verifiedAddresses/VerifiedAddressesTableItem.tsx
View file @
403f79c0
import
{
Td
,
Tr
}
from
'
@chakra-ui/react
'
;
import
{
Td
,
Tr
,
Link
}
from
'
@chakra-ui/react
'
;
import
React
from
'
react
'
;
import
React
from
'
react
'
;
import
type
{
VerifiedAddress
}
from
'
types/api/account
'
;
import
type
{
VerifiedAddress
}
from
'
types/api/account
'
;
import
AddressSnippet
from
'
ui/shared/AddressSnippet
'
;
import
AddressSnippet
from
'
ui/shared/AddressSnippet
'
;
import
TableItemActionButtons
from
'
ui/shared/TableItemActionButtons
'
;
interface
Props
{
interface
Props
{
item
:
VerifiedAddress
;
item
:
VerifiedAddress
;
onAdd
:
(
address
:
string
)
=>
void
;
onEdit
:
(
item
:
VerifiedAddress
)
=>
void
;
onEdit
:
(
item
:
VerifiedAddress
)
=>
void
;
onDelete
:
(
item
:
VerifiedAddress
)
=>
void
;
}
}
const
VerifiedAddressesTableItem
=
({
item
,
on
Edit
,
onDelete
}:
Props
)
=>
{
const
VerifiedAddressesTableItem
=
({
item
,
on
Add
}:
Props
)
=>
{
const
handleEditClick
=
React
.
useCallback
(()
=>
{
const
handleAddClick
=
React
.
useCallback
(()
=>
{
onEdit
(
item
);
onAdd
(
item
.
contractAddress
);
},
[
item
,
onEdit
]);
},
[
item
,
onAdd
]);
const
handleDeleteClick
=
React
.
useCallback
(()
=>
{
onDelete
(
item
);
},
[
item
,
onDelete
]);
return
(
return
(
<
Tr
>
<
Tr
>
<
Td
>
<
Td
>
<
AddressSnippet
address=
{
{
hash
:
item
.
contractAddress
,
is_contract
:
true
,
implementation_name
:
null
}
}
/>
<
AddressSnippet
address=
{
{
hash
:
item
.
contractAddress
,
is_contract
:
true
,
implementation_name
:
null
}
}
/>
</
Td
>
</
Td
>
<
Td
>
Add details
</
Td
>
<
Td
></
Td
>
<
Td
>
<
Td
>
<
TableItemActionButtons
onDeleteClick=
{
handleDeleteClick
}
onEditClick=
{
handleEditClick
}
/
>
<
Link
onClick=
{
handleAddClick
}
>
Add details
</
Link
>
</
Td
>
</
Td
>
<
Td
></
Td
>
<
Td
></
Td
>
</
Tr
>
</
Tr
>
);
);
};
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment