1- import React , { useCallback , useRef , useState } from 'react'
1+ import React , { useCallback , useRef , useState } from 'react'
22import styles from './index.module.css' ;
33import Link from '@docusaurus/Link' ;
4- import { useColorMode } from '@docusaurus/theme-common' ;
4+ import { useColorMode } from '@docusaurus/theme-common' ;
55import Button from '../button' ;
66
77const Graphics = {
8- apis ( { color = "#5559F2" } ) {
8+ apis ( { color = "#5559F2" } ) {
99 return (
1010 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
1111 < path
@@ -18,7 +18,7 @@ const Graphics = {
1818 </ svg >
1919 )
2020 } ,
21- docs ( { color = "#5559F2" } ) {
21+ docs ( { color = "#5559F2" } ) {
2222 return (
2323 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
2424 < path
@@ -31,7 +31,7 @@ const Graphics = {
3131 </ svg >
3232 )
3333 } ,
34- getStarted ( { color = "#767AF5" } ) {
34+ getStarted ( { color = "#767AF5" } ) {
3535 return (
3636 < svg xmlns = "http://www.w3.org/2000/svg" width = { 201 } height = { 201 } fill = "none" >
3737 < path
@@ -44,7 +44,7 @@ const Graphics = {
4444 </ svg >
4545 )
4646 } ,
47- resources ( { color = "#5559F2" } ) {
47+ resources ( { color = "#5559F2" } ) {
4848 return (
4949 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
5050 < path
@@ -57,7 +57,7 @@ const Graphics = {
5757 </ svg >
5858 )
5959 } ,
60- tutorials ( { color = "#5559F2" } ) {
60+ tutorials ( { color = "#5559F2" } ) {
6161 return (
6262 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
6363 < path
@@ -77,7 +77,7 @@ const Graphics = {
7777 </ svg >
7878 )
7979 } ,
80- walletSdkSwift ( { color = "#5559F2" } ) {
80+ walletSdkSwift ( { color = "#5559F2" } ) {
8181 return (
8282 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
8383 < path
@@ -90,7 +90,7 @@ const Graphics = {
9090 </ svg >
9191 )
9292 } ,
93- walletSdkKmm ( { color = "#5559F2" } ) {
93+ walletSdkKmm ( { color = "#5559F2" } ) {
9494 return (
9595 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
9696 < path
@@ -103,7 +103,7 @@ const Graphics = {
103103 </ svg >
104104 )
105105 } ,
106- walletSdkTS ( { color = "#5559F2" } ) {
106+ walletSdkTS ( { color = "#5559F2" } ) {
107107 return (
108108 < svg xmlns = "http://www.w3.org/2000/svg" width = { 51 } height = { 51 } fill = "none" >
109109 < path
@@ -161,8 +161,8 @@ function ResourceLink() {
161161 return (
162162 < div className = { styles . resource__link } >
163163 < svg width = { 32 } height = { 22 } fill = "none" xmlns = "http://www.w3.org/2000/svg" >
164- < path className = { styles . resource__link__svg__0 } d = "M3.33789 5.99976C5.06694 3.01075 8.29866 0.999756 12.0001 0.999756C17.5229 0.999756 22.0001 5.47691 22.0001 10.9998C22.0001 16.5226 17.5229 20.9998 12.0001 20.9998C8.29866 20.9998 5.06694 18.9888 3.33789 15.9998" stroke = "#667085" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
165- < path className = { styles . resource__link__svg__1 } d = "M11 14.9998L15 10.9998M15 10.9998L11 6.99976M15 10.9998H1" stroke = "#667085" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
164+ < path className = { styles . resource__link__svg__0 } d = "M3.33789 5.99976C5.06694 3.01075 8.29866 0.999756 12.0001 0.999756C17.5229 0.999756 22.0001 5.47691 22.0001 10.9998C22.0001 16.5226 17.5229 20.9998 12.0001 20.9998C8.29866 20.9998 5.06694 18.9888 3.33789 15.9998" stroke = "#667085" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
165+ < path className = { styles . resource__link__svg__1 } d = "M11 14.9998L15 10.9998M15 10.9998L11 6.99976M15 10.9998H1" stroke = "#667085" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
166166 </ svg >
167167 </ div >
168168 )
@@ -172,10 +172,10 @@ function Resource(props) {
172172 const ref = useRef ( null ) ;
173173 const lightRef = useRef ( null )
174174 const backgroundRef = useRef ( null ) ;
175- const { colorMode} = useColorMode ( ) ;
175+ const { colorMode } = useColorMode ( ) ;
176176
177177 const handleMouseMove = useCallback ( ( event ) => {
178- const { clientX, clientY, currentTarget} = event ;
178+ const { clientX, clientY, currentTarget } = event ;
179179 const {
180180 height : targetHeight ,
181181 width : targetWidth ,
@@ -188,16 +188,16 @@ function Resource(props) {
188188 const mouseY = ( clientY - offsetY ) ;
189189 const x = ( ( mouseX - centerX ) * .06 ) ;
190190 const y = ( ( mouseY - centerY ) * .06 ) ;
191- ref . current . animate ( { transform : `rotateX(${ x } deg) rotateY(${ y } deg)` } , { fill : "forwards" } )
191+ ref . current . animate ( { transform : `rotateX(${ x } deg) rotateY(${ y } deg)` } , { fill : "forwards" } )
192192 lightRef . current . animate ( {
193193 top : `${ mouseY } px` ,
194194 left : `${ mouseX } px` ,
195- } , { fill : "forwards" , duration : 500 } )
195+ } , { fill : "forwards" , duration : 500 } )
196196 } , [ ref , lightRef ] )
197197
198198 const handleMouseLeave = useCallback ( ( event ) => {
199199 event . preventDefault ( )
200- ref . current . animate ( { transform : `rotateX(${ 0 } deg) rotateY(${ 0 } deg)` } , { fill : "forwards" , duration : 1000 } )
200+ ref . current . animate ( { transform : `rotateX(${ 0 } deg) rotateY(${ 0 } deg)` } , { fill : "forwards" , duration : 1000 } )
201201
202202 } , [ backgroundRef ] )
203203
@@ -209,16 +209,27 @@ function Resource(props) {
209209 onMouseMove = { handleMouseMove }
210210 >
211211 < Link href = { props . linkTo } className = { `${ styles . resource } ` } >
212- < props . Svg color = { colorMode === 'dark' ? "#767AF5" : "#5559F2" } />
212+ < props . Svg color = { colorMode === 'dark' ? "#767AF5" : "#5559F2" } />
213213 < h3 > { props . title } </ h3 >
214214 < p > { props . content } </ p >
215- < ResourceLink linkTo = { props . linkTo } />
216- < div className = { styles . resource__light } ref = { lightRef } />
215+ < ResourceLink linkTo = { props . linkTo } />
216+ < div className = { styles . resource__light } ref = { lightRef } />
217217 </ Link >
218218 </ div >
219219 ) ;
220220}
221221
222+ export function FutureOfIdentity ( ) {
223+ return (
224+ < >
225+ < div className = { styles . project__description } >
226+ < h5 > Build the Future of Digital Identity</ h5 >
227+ < p > Hyperledger Identus is an open-source platform for building secure, standards-based digital identity solutions. With complete DID and verifiable credential functionality, it gives developers everything they need to create and integrate self-sovereign identity into apps and workflows - bridging trust between users, organizations, and systems.</ p >
228+ </ div >
229+ </ >
230+ ) ;
231+ }
232+
222233export default function HomeResources ( ) {
223234 return (
224235 < >
@@ -232,10 +243,11 @@ export default function HomeResources() {
232243 < div className = { styles . home__resources } >
233244 {
234245 RESOURCES . map ( ( resource , index ) => (
235- < Resource { ...resource } key = { index } />
246+ < Resource { ...resource } key = { index } />
236247 ) )
237248 }
238249 </ div >
239250 </ >
240251 ) ;
241252}
253+
0 commit comments