"use client"; import React, { useState, useEffect } from "react"; import { useRouter } from "next/navigation"; import { Card } from "antd"; import { AppstoreOutlined, ContainerOutlined, DesktopOutlined, MailOutlined, MenuFoldOutlined, MenuUnfoldOutlined, PieChartOutlined, UserOutlined, } from "@ant-design/icons"; import type { MenuProps } from "antd"; import { Button, Menu, List, Divider, Typography, Avatar, Skeleton, } from "antd"; interface DataType { gender?: string; name: { title?: string; first?: string; last?: string; }; email?: string; picture: { large?: string; medium?: string; thumbnail?: string; }; nat?: string; loading: boolean; } const count = 3; const fakeDataUrl = `https://randomuser.me/api/?results=${count}&inc=name,gender,email,nat,picture&noinfo`; type MenuItem = Required["items"][number]; const data = [ "Ackee Blockchain is a team of auditors and white hat hackers who perform security audits and assessments for Ethereum and Solana.", "Global blockchain services company and Initial Coin Offering solutions provider", "AutoMinter is a decentralized no-code NFT collection generation platform.", "BANKEX will create smart contracts of any complexity for your projects in the Solidity language.", "Securing the DeFi ecosystem", ]; const items: MenuItem[] = [ { key: "1", icon: , label: "Wallet Info" }, { key: "2", icon: , label: "Option 2" }, { key: "3", icon: , label: "Contracts" }, { key: "sub1", label: "Navigation One", icon: , // children: [ // { key: "5", label: "Option 5" }, // { key: "6", label: "Option 6" }, // ], }, { key: "sub2", label: "Navigation Two", icon: , children: [ { key: "9", label: "Option 9" }, { key: "10", label: "Option 10" }, { key: "sub3", label: "Submenu", children: [ { key: "11", label: "Option 11" }, { key: "12", label: "Option 12" }, ], }, ], }, ]; const { Title } = Typography; export function OrgProfile() { const [collapsed, setCollapsed] = useState(true); const [initLoading, setInitLoading] = useState(true); const [loading, setLoading] = useState(false); const [dataEmployees, setData] = useState([]); const [list, setList] = useState([]); const router = useRouter(); const onNextPageHandler = () => { router.push("/organization/employees"); }; const onMultisigPageHandler = () => { router.push("/organization/multiSig"); }; useEffect(() => { fetch(fakeDataUrl) .then((res) => res.json()) .then((res) => { setInitLoading(false); setData(res.results); setList(res.results); }); }, []); const onLoadMore = () => { setLoading(true); setList( dataEmployees.concat( [...new Array(count)].map(() => ({ loading: true, name: {}, picture: {}, })) ) ); fetch(fakeDataUrl) .then((res) => res.json()) .then((res) => { const newData = dataEmployees.concat(res.results); setData(newData); setList(newData); setLoading(false); // Resetting window's offsetTop so as to display react-virtualized demo underfloor. // In real scene, you can using public method of react-virtualized: // https://stackoverflow.com/questions/46700726/how-to-use-public-method-updateposition-of-react-virtualized window.dispatchEvent(new Event("resize")); }); }; const loadMore = !initLoading && !loading ? (
) : null; return (
Dashboard

Address

Phone

Description

Recent Activities ( {item} )} />
Employee List ( edit, more, ]} > } />} title={{item.name?.last}} description="1Lbcfr7sAHTD9CgdQo3HTMTkV8LK4ZnX71" />
wallet address
)} />
); }