+
+
Welcome to the TEIA tokens claim page!
+
Here you can claim your Teia DAO tokens.
+
+
+
-
-
Welcome to the TEIA tokens claim page!
-
Here you can claim your Teia DAO tokens.
-
-
By owning TEIA tokens, you are part of the Teia DAO LLC and eligible
to put forward and vote on DAO proposals for Teia. Teia DAO tokens,
@@ -72,6 +73,7 @@ export const Claim = () => {
Confirm you have read the disclaimer by checking the box at
the bottom of this page to get access to the claim button.
+
Click on the "Claim TEIA tokens" button at the bottom of
this page to initiate the token claim process and confirm the
@@ -176,6 +178,7 @@ export const Claim = () => {
+
{
{acceptLegalDisclaimer && (
<>
+
Claim your TEIA tokens!
@@ -204,13 +208,14 @@ export const Claim = () => {
+
Troubleshooting
Here are some of the most common solutions if the token claim
- process fails
+ process fails.
@@ -220,7 +225,7 @@ export const Claim = () => {
wallet. The transaction cost for the claim process is about
0.1-0.2 tez.
- Clear your browser cache
+ Clear your browser cache.
Switch the rpc node in the{' '}
config menu,
diff --git a/src/pages/dao/index.jsx b/src/pages/dao/index.jsx
index e8b3fd16d..a58404063 100644
--- a/src/pages/dao/index.jsx
+++ b/src/pages/dao/index.jsx
@@ -3,11 +3,11 @@ import { DAO_GOVERNANCE_CONTRACT } from '@constants'
import { useUserStore } from '@context/userStore'
import { Page } from '@atoms/layout'
import { Loading } from '@atoms/loading'
-import { Tabs } from '@atoms/tab/Tabs'
+import { Tabs } from '@atoms/tab'
import {
- useDaoTokenBalance,
useStorage,
useDaoRepresentatives,
+ useDaoTokenBalance,
} from '@data/swr'
import styles from '@style'
@@ -29,37 +29,38 @@ const TABS = [
export const DAO = () => {
// Get all the required DAO information
- const daoStorage = useStorage(DAO_GOVERNANCE_CONTRACT)
- const representatives = useDaoRepresentatives(daoStorage)
+ const [daoStorage] = useStorage(DAO_GOVERNANCE_CONTRACT)
+ const [representatives] = useDaoRepresentatives(daoStorage)
// Get all the required user information
const userAddress = useUserStore((st) => st.address)
const userCommunity = representatives?.[userAddress]
- const userTokenBalance = useDaoTokenBalance(userAddress)
+ const [userTokenBalance] = useDaoTokenBalance(userAddress)
return (
-
-
Teia DAO
-
+
+
Teia DAO
- {!daoStorage || !representatives ? (
-
- ) : (
- <>
- {
- if (userTokenBalance === 0 && !userCommunity && tab.private) {
- return null
- }
+ {!daoStorage || !representatives ? (
+
+ ) : (
+ <>
+ {
+ if (userTokenBalance === 0 && !userCommunity && tab.private) {
+ return null
+ }
- return tab
- }}
- />
-
- >
- )}
+ return tab
+ }}
+ />
+
+
+ >
+ )}
+
)
}
diff --git a/src/pages/dao/index.module.scss b/src/pages/dao/index.module.scss
index 2bde7b637..1cd9c2bc3 100644
--- a/src/pages/dao/index.module.scss
+++ b/src/pages/dao/index.module.scss
@@ -1,28 +1,19 @@
@import '@styles/mixins.scss';
-@import '@styles/variables.scss';
.container {
- padding-top: 12px;
padding-bottom: 60px;
width: 100%;
-
- @include respond-to('desktop') {
- margin: 0;
- }
}
.headline {
text-align: center;
- margin-bottom: 1em;
+ margin-bottom: 1em 0;
+
> p {
margin: 1em 0;
}
}
-.section_title {
- margin-bottom: 1em;
-}
-
.section {
margin: 1em 0;
@@ -57,3 +48,7 @@
margin-bottom: 30px;
}
}
+
+.section_title {
+ margin-bottom: 1em;
+}
diff --git a/src/pages/dao/tabs/Parameters.jsx b/src/pages/dao/tabs/Parameters.jsx
index bb36dee1a..67b3b69ef 100644
--- a/src/pages/dao/tabs/Parameters.jsx
+++ b/src/pages/dao/tabs/Parameters.jsx
@@ -4,16 +4,16 @@ import { Loading } from '@atoms/loading'
import { Line } from '@atoms/line'
import { TeiaUserLink, TezosAddressLink } from '@atoms/link'
import {
- useBalance,
- useDaoTokenBalance,
useStorage,
useDaoGovernanceParameters,
useDaoProposals,
useDaoRepresentatives,
+ useDaoMemberCount,
+ useBalance,
+ useDaoTokenBalance,
useDaoUserVotes,
useDaoCommunityVotes,
useDaoUsersAliases,
- useDaoMemberCount,
} from '@data/swr'
import styles from '@style'
@@ -42,7 +42,7 @@ export const DaoParameters = () => {
)
// Display the loading page information until all data is available
- if (!daoStorage || !governanceParameters || !representatives || !proposals) {
+ if (!governanceParameters || !proposals || !representatives) {
return
}
@@ -55,14 +55,6 @@ export const DaoParameters = () => {
? DAO_TOKEN_DECIMALS
: Math.pow(DAO_TOKEN_DECIMALS, 0.5)
- // Invert the representatives map and sort the community keys
- const communities = {}
- const communitiesList = Object.values(representatives).sort()
- communitiesList.forEach((key) => (communities[key] = ''))
- Object.entries(representatives).forEach(
- ([representative, community]) => (communities[community] = representative)
- )
-
// Calculate the number of times that the user has voted
const numberOfTimesVoted = userVotes ? Object.keys(userVotes).length : 0
const numberOfTimesVotedAsRepresentative = userCommunityVotes
@@ -70,14 +62,15 @@ export const DaoParameters = () => {
: 0
return (
-
+ <>
{userAddress && (
<>
User information
+
- - Address: {}
- {userCommunity && - Teia Community: {userCommunity}
}
+ - Address: {}
+ {userCommunity && - Representative for {userCommunity}.
}
-
DAO token balance: {Math.round(userTokenBalance * 10) / 10} TEIA
@@ -100,11 +93,12 @@ export const DaoParameters = () => {
)}
- General information
+ DAO information
+
- - DAO members: {daoMemberCount}
+ - Members: {daoMemberCount}
-
- DAO Treasury balance: {Math.round(daoBalance)} tez and{' '}
+ Treasury balance: {Math.round(daoBalance)} tez and{' '}
{Math.round(daoTokenBalance * 10) / 10} TEIA tokens
- Total number of proposals: {Object.keys(proposals).length}
@@ -136,16 +130,19 @@ export const DaoParameters = () => {
Community representatives
+
- {Object.entries(communities).map(([community, representative]) => (
- -
- {community}:{' '}
-
-
- ))}
+ {Object.entries(representatives).map(
+ ([representative, community]) => (
+ -
+ {`${community}: `}
+
+
+ )
+ )}
@@ -155,6 +152,7 @@ export const DaoParameters = () => {
Current DAO governance parameters
+
-
Vote method:{' '}
@@ -203,30 +201,33 @@ export const DaoParameters = () => {
Smart contracts
+
-
DAO governance:{' '}
-
+
-
- DAO token:
+ DAO token:
-
- DAO treasury:
+ DAO treasury:{' '}
+
-
- DAO guardians:
+ DAO guardians:{' '}
+
-
DAO administrator:{' '}
-
+
-
Community representatives:{' '}
-
+
-
+ >
)
}
diff --git a/src/pages/dao/tabs/Proposals.jsx b/src/pages/dao/tabs/Proposals.jsx
index 6f4bf2bf8..c79c87501 100644
--- a/src/pages/dao/tabs/Proposals.jsx
+++ b/src/pages/dao/tabs/Proposals.jsx
@@ -130,32 +130,29 @@ export function DaoProposals() {
)
return (
-
-
- Teia DAO proposals
-
-
-
-
-
-
+
+ Teia DAO proposals
+
+
+
+
+
)
}
diff --git a/src/pages/dao/tabs/Submit.jsx b/src/pages/dao/tabs/Submit.jsx
index cf9028e08..8168720d3 100644
--- a/src/pages/dao/tabs/Submit.jsx
+++ b/src/pages/dao/tabs/Submit.jsx
@@ -54,43 +54,40 @@ export function SubmitDaoProposals() {
currentGovernanceParameters.escrow_amount / DAO_TOKEN_DECIMALS
return (
-
-
- Submit a new DAO proposal
-
- {userTokenBalance === 0 ||
- userTokenBalance < minimumTokensToCreateProposals ? (
- userTokenBalance === 0 ? (
- Only DAO members can create proposals.
- ) : (
-
- A minimum of {minimumTokensToCreateProposals} TEIA tokens are
- needed to create proposals.
-
- )
- ) : (
- <>
-
+
+ Submit a new DAO proposal
-
- >
- )}
-
-
+ {userTokenBalance === 0 ||
+ userTokenBalance < minimumTokensToCreateProposals ? (
+ userTokenBalance === 0 ? (
+ Only DAO members can create proposals.
+ ) : (
+
+ A minimum of {minimumTokensToCreateProposals} TEIA tokens are needed
+ to create proposals.
+
+ )
+ ) : (
+ <>
+
+
+
+ >
+ )}
+
)
}
diff --git a/src/pages/dao/tabs/index.module.scss b/src/pages/dao/tabs/index.module.scss
index 83b375083..27decfc94 100644
--- a/src/pages/dao/tabs/index.module.scss
+++ b/src/pages/dao/tabs/index.module.scss
@@ -1,31 +1,9 @@
@import '@styles/mixins.scss';
@import '@styles/variables.scss';
-.container {
- padding-top: 12px;
- padding-bottom: 60px;
- width: 100%;
-
- @include respond-to('desktop') {
- margin: 0;
- }
-}
-
-.section_title {
- margin-bottom: 1em;
-}
-
.section {
margin: 1em 0;
- b {
- font-weight: bold;
- }
-
- i {
- font-style: italic;
- }
-
a {
text-decoration: underline;
}
@@ -34,27 +12,21 @@
margin: 1em 0;
}
- li {
- margin-left: 1.5em;
- margin-top: 0.8em;
- }
-
- li:before {
- content: attr(counter) '.';
- position: absolute;
- margin-left: -1.5em;
- }
-
@include respond-to('desktop') {
margin-bottom: 30px;
}
}
-.selector {
+.section_title {
margin-bottom: 1em;
}
.parameters_list {
+ li {
+ margin-left: 1.5em;
+ margin-top: 0.8em;
+ }
+
li:before {
content: '';
}