diff --git a/src/commonComponents/Dashboard.tsx b/src/commonComponents/Dashboard.tsx new file mode 100644 index 000000000..4fb595b45 --- /dev/null +++ b/src/commonComponents/Dashboard.tsx @@ -0,0 +1,74 @@ +import React from 'react'; +import { Card } from 'flowbite-react'; +import BackButton from '../commonComponents/backbutton'; +import BreadCrumbs from '../components/BreadCrumbs' + +const Dashboard = ({ title, options, backButtonPath }) => { + return ( +
+
+ +
+
+

+ {title} +

+ +
+
+

+ Select the appropriate action +

+
+ {options.map((option) => ( + option.path && (window.location.href = option.path)} + > +
+
+
+ {option.heading} +
+

+ {option.description} +

+
+
+
+ ))} +
+
+
+ ); +}; + +export default Dashboard; diff --git a/src/components/Issuance/IssueDashboard.tsx b/src/components/Issuance/IssueDashboard.tsx index 43a106176..73cb90224 100644 --- a/src/components/Issuance/IssueDashboard.tsx +++ b/src/components/Issuance/IssueDashboard.tsx @@ -1,10 +1,7 @@ -import '../../common/global.css'; -import { Card } from 'flowbite-react'; -import BreadCrumbs from '../BreadCrumbs'; +import Dashboard from '../../commonComponents/Dashboard'; import { pathRoutes } from '../../config/pathRoutes'; -import BackButton from '../../commonComponents/backbutton'; -const IssueDashboard = () => { +const IssuanceDashboard = () => { const options = [ { heading: 'Connection', @@ -23,53 +20,14 @@ const IssueDashboard = () => { path: pathRoutes.organizations.Issuance.bulkIssuance, }, ]; + return ( -
-
- -
-
-

- Issue Credential -

- -
-
-

- Select the appropriate action for issuing credential(s){' '} -

-
- {options.map((option) => ( - (window.location.href = option?.path)} - > -
-
-
- {option.heading} -
-

- {option.description} -

-
-
-
- ))} -
-
-
+ ); }; -export default IssueDashboard; +export default IssuanceDashboard; diff --git a/src/components/Verification/Verification.tsx b/src/components/Verification/Verification.tsx index 7f85f7af6..cbd759c93 100644 --- a/src/components/Verification/Verification.tsx +++ b/src/components/Verification/Verification.tsx @@ -365,7 +365,7 @@ const VerificationCred = () => {
- +

Verification diff --git a/src/components/Verification/VerificationCredentialList.tsx b/src/components/Verification/VerificationCredentialList.tsx index a87872cb4..92d778785 100644 --- a/src/components/Verification/VerificationCredentialList.tsx +++ b/src/components/Verification/VerificationCredentialList.tsx @@ -324,7 +324,7 @@ const VerificationCredentialList = () => { }, [listAPIParameter]); const schemeSelection = () => { - window.location.href = pathRoutes.organizations.verification.schema; + window.location.href = pathRoutes.organizations.verification.requestProof; }; const refreshPage = () => { diff --git a/src/components/Verification/VerificationDashboard.tsx b/src/components/Verification/VerificationDashboard.tsx new file mode 100644 index 000000000..c98cbf7cf --- /dev/null +++ b/src/components/Verification/VerificationDashboard.tsx @@ -0,0 +1,33 @@ +import { pathRoutes } from '../../config/pathRoutes'; +import Dashboard from '../../commonComponents/Dashboard'; + +const VerificationDashboard = () => { + const options = [ + { + heading: 'Connection', + description: 'Verify credential(s) by selecting existing connections', + path: pathRoutes.organizations.verification.schema, + }, + { + heading: 'Email', + description: 'Verify credential(s) by entering email ID for specific user', + path: null, + }, + { + heading: 'Bulk', + description: 'Verify credential(s) in bulk by uploading .csv file records', + path: null, + }, + ]; + + return ( + + ); +}; + +export default VerificationDashboard; + diff --git a/src/config/pathRoutes.ts b/src/config/pathRoutes.ts index 932ea78a1..d61332156 100644 --- a/src/config/pathRoutes.ts +++ b/src/config/pathRoutes.ts @@ -48,11 +48,15 @@ export const pathRoutes = { emailHistory: '/organizations/credentials/issue/email/history', }, verification: { - schema: '/organizations/verification/schemas', - credDef: '/organizations/verification/schemas/cred-defs', - connections: '/organizations/verification/schemas/cred-defs/connections', + requestProof: '/organizations/verification/verify-credentials', + email: '/organizations/verification/verify-credentials/email/schemas', + schema: '/organizations/verification/verify-credentials/schemas', + credDef: '/organizations/verification/verify-credentials/schemas/cred-defs', + attributes: '/organizations/verification/verify-credentials/schemas/cred-defs/attributes', + emailCredDef: '/organizations/verification/verify-credentials/email/schemas/cred-defs', + connections: '/organizations/verification/verify-credentials/schemas/cred-defs/connections', verify: - '/organizations/verification/schemas/cred-defs/connections/verification', + '/organizations/verification/verify-credentials/schemas/cred-defs/connections/verification', }, }, ecosystem: { @@ -78,9 +82,9 @@ export const pathRoutes = { schemas: '/organizations/schemas', }, verification: { - credDef: '/organizations/verification/schemas/cred-defs', - schemas: '/organizations/verification/schemas', - verification: '/organizations/verification/schemas/cred-defs/connections', + credDef: '/organizations/verification/verify-credentials/schemas/cred-defs', + schemas: '/organizations/verification/verify-credentials/schemas', + verification: '/organizations/verification/verify-credentials/schemas/cred-defs/connections', }, issuance: { credDef: '/organizations/credentials/issue/schemas/cred-defs', diff --git a/src/pages/organizations/verification/schemas/cred-defs/index.astro b/src/pages/organizations/verification/verify-credentials/email/index.astro similarity index 63% rename from src/pages/organizations/verification/schemas/cred-defs/index.astro rename to src/pages/organizations/verification/verify-credentials/email/index.astro index dfd5a9641..9a5e5ed8b 100644 --- a/src/pages/organizations/verification/schemas/cred-defs/index.astro +++ b/src/pages/organizations/verification/verify-credentials/email/index.astro @@ -1,11 +1,8 @@ --- -import { useEffect } from 'react'; -import { getFromLocalStorage } from '../../../../../api/Auth'; import LayoutSidebar from '../../../../../app/LayoutSidebar.astro'; -import CredDefSelection from '../../../../../components/Verification/CredDefSelection'; -import { storageKeys } from '../../../../../config/CommonConstant'; -import { checkUserSession } from '../../../../../utils/check-session'; +// import EmailVerification from '../../../../../components/Verification/EmailVerification'; import { pathRoutes } from '../../../../../config/pathRoutes'; +import { checkUserSession } from '../../../../../utils/check-session'; const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); const route: string = pathRoutes.auth.sinIn @@ -15,5 +12,5 @@ if (!response.authorized) { --- - + diff --git a/src/pages/organizations/verification/verify-credentials/email/schemas/cred-defs/attributes/index.astro b/src/pages/organizations/verification/verify-credentials/email/schemas/cred-defs/attributes/index.astro new file mode 100644 index 000000000..a930a1119 --- /dev/null +++ b/src/pages/organizations/verification/verify-credentials/email/schemas/cred-defs/attributes/index.astro @@ -0,0 +1,16 @@ +--- +import LayoutSidebar from "../../../../../../../../app/LayoutSidebar.astro"; +// import EmailCredDefSelection from "../../../../../../../../components/Verification/EmailCredDefSelection"; +import { pathRoutes } from "../../../../../../../../config/pathRoutes"; +import { checkUserSession } from "../../../../../../../../utils/check-session"; + +const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); +const route: string = pathRoutes.auth.sinIn +if (!response.authorized) { + return Astro.redirect(response.redirect); +} +--- + + + + diff --git a/src/pages/organizations/verification/verify-credentials/email/schemas/cred-defs/index.astro b/src/pages/organizations/verification/verify-credentials/email/schemas/cred-defs/index.astro new file mode 100644 index 000000000..9fabbb4d5 --- /dev/null +++ b/src/pages/organizations/verification/verify-credentials/email/schemas/cred-defs/index.astro @@ -0,0 +1,18 @@ +--- +import LayoutSidebar from "../../../../../../../app/LayoutSidebar.astro"; +import CredDefSelection from "../../../../../../../components/Verification/CredDefSelection"; +// import EmailCredDefSelection from "../../../../../../../components/Verification/EmailCredDefSelection"; +import { pathRoutes } from "../../../../../../../config/pathRoutes"; +import { checkUserSession } from "../../../../../../../utils/check-session"; + + +const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); +const route: string = pathRoutes.auth.sinIn +if (!response.authorized) { + return Astro.redirect(response.redirect); +} +--- + + + + diff --git a/src/pages/organizations/verification/schemas/cred-defs/connections/index.astro b/src/pages/organizations/verification/verify-credentials/email/schemas/index.astro similarity index 68% rename from src/pages/organizations/verification/schemas/cred-defs/connections/index.astro rename to src/pages/organizations/verification/verify-credentials/email/schemas/index.astro index 9001938f0..8acd29c88 100644 --- a/src/pages/organizations/verification/schemas/cred-defs/connections/index.astro +++ b/src/pages/organizations/verification/verify-credentials/email/schemas/index.astro @@ -1,6 +1,7 @@ --- import LayoutSidebar from "../../../../../../app/LayoutSidebar.astro"; -import Connections from "../../../../../../components/Verification/Connections"; +// import EmailSchemaSelection from "../../../../../../components/Verification/EmailSchemaSelection"; +import SchemaSelection from "../../../../../../components/Verification/SchemaSelection"; import { pathRoutes } from "../../../../../../config/pathRoutes"; import { checkUserSession } from "../../../../../../utils/check-session"; @@ -12,5 +13,5 @@ if (!response.authorized) { --- - + diff --git a/src/pages/organizations/verification/schemas/index.astro b/src/pages/organizations/verification/verify-credentials/index.astro similarity index 69% rename from src/pages/organizations/verification/schemas/index.astro rename to src/pages/organizations/verification/verify-credentials/index.astro index 9e3978aec..51eacdcf4 100644 --- a/src/pages/organizations/verification/schemas/index.astro +++ b/src/pages/organizations/verification/verify-credentials/index.astro @@ -1,8 +1,9 @@ --- import LayoutSidebar from '../../../../app/LayoutSidebar.astro'; -import SchemaSelection from '../../../../components/Verification/SchemaSelection' import { pathRoutes } from '../../../../config/pathRoutes'; import { checkUserSession } from '../../../../utils/check-session'; +import IssueDashboard from '../../../../components/Issuance/IssueDashboard' +import VerificationDashboard from '../../../../components/Verification/VerificationDashboard'; const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); const route: string = pathRoutes.auth.sinIn @@ -12,5 +13,5 @@ if (!response.authorized) { --- - + diff --git a/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/connections/index.astro b/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/connections/index.astro new file mode 100644 index 000000000..ee0e4fe77 --- /dev/null +++ b/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/connections/index.astro @@ -0,0 +1,17 @@ +--- +import LayoutSidebar from "../../../../../../../app/LayoutSidebar.astro"; +import Connections from "../../../../../../../components/Verification/Connections"; +import { pathRoutes } from "../../../../../../../config/pathRoutes"; +import { checkUserSession } from "../../../../../../../utils/check-session"; + + +const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); +const route: string = pathRoutes.auth.sinIn +if (!response.authorized) { + return Astro.redirect(response.redirect); +} +--- + + + + diff --git a/src/pages/organizations/verification/schemas/cred-defs/connections/verification.astro b/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/connections/verification.astro similarity index 51% rename from src/pages/organizations/verification/schemas/cred-defs/connections/verification.astro rename to src/pages/organizations/verification/verify-credentials/schemas/cred-defs/connections/verification.astro index 1bc2faf61..28de35046 100644 --- a/src/pages/organizations/verification/schemas/cred-defs/connections/verification.astro +++ b/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/connections/verification.astro @@ -1,8 +1,9 @@ --- -import LayoutSidebar from "../../../../../../app/LayoutSidebar.astro"; -import VerificationCred from "../../../../../../components/Verification/Verification"; -import { pathRoutes } from "../../../../../../config/pathRoutes"; -import { checkUserSession } from "../../../../../../utils/check-session"; +import LayoutSidebar from "../../../../../../../app/LayoutSidebar.astro"; +import VerificationCred from "../../../../../../../components/Verification/Verification"; +import { pathRoutes } from "../../../../../../../config/pathRoutes"; +import { checkUserSession } from "../../../../../../../utils/check-session"; + const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); const route: string = pathRoutes.auth.sinIn diff --git a/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/index.astro b/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/index.astro new file mode 100644 index 000000000..c5bc7bfd1 --- /dev/null +++ b/src/pages/organizations/verification/verify-credentials/schemas/cred-defs/index.astro @@ -0,0 +1,16 @@ +--- +import { checkUserSession } from '../../../../../../utils/check-session'; +import { pathRoutes } from '../../../../../../config/pathRoutes'; +import LayoutSidebar from '../../../../../../app/LayoutSidebar.astro'; +import CredDefSelection from '../../../../../../components/Verification/CredDefSelection'; + +const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); +const route: string = pathRoutes.auth.sinIn +if (!response.authorized) { + return Astro.redirect(response.redirect); +} +--- + + + + diff --git a/src/pages/organizations/verification/verify-credentials/schemas/index.astro b/src/pages/organizations/verification/verify-credentials/schemas/index.astro new file mode 100644 index 000000000..e6f7659ea --- /dev/null +++ b/src/pages/organizations/verification/verify-credentials/schemas/index.astro @@ -0,0 +1,17 @@ +--- +import LayoutSidebar from "../../../../../app/LayoutSidebar.astro"; +import SchemaSelection from "../../../../../components/Verification/SchemaSelection"; +import { pathRoutes } from "../../../../../config/pathRoutes"; +import { checkUserSession } from "../../../../../utils/check-session"; + + +const response = await checkUserSession({cookies: Astro.cookies, currentPath: Astro.url.pathname}); +const route: string = pathRoutes.auth.sinIn +if (!response.authorized) { + return Astro.redirect(response.redirect); +} +--- + + + +