From 0460c11d9e18e20ce9bf22b14e25347efe9f16fa Mon Sep 17 00:00:00 2001 From: Sacha Al Himdani Date: Tue, 30 Sep 2025 16:26:16 +0200 Subject: [PATCH] Fix trust center v2 display Signed-off-by: Sacha Al Himdani --- .../src/components/OrganizationSidebar.tsx | 6 ------ apps/trust/src/components/VendorRow.tsx | 18 ++++++++++-------- apps/trust/src/pages/OverviewPage.tsx | 6 +++--- ...phql.ts => OverviewPageFragment.graphql.ts} | 16 ++++++++-------- apps/trust/src/queries/TrustGraph.ts | 2 +- .../__generated__/TrustGraphQuery.graphql.ts | 12 ++++++------ 6 files changed, 28 insertions(+), 32 deletions(-) rename apps/trust/src/pages/__generated__/{OverviewFragment.graphql.ts => OverviewPageFragment.graphql.ts} (92%) diff --git a/apps/trust/src/components/OrganizationSidebar.tsx b/apps/trust/src/components/OrganizationSidebar.tsx index 4d8cffa60..0c5751382 100644 --- a/apps/trust/src/components/OrganizationSidebar.tsx +++ b/apps/trust/src/components/OrganizationSidebar.tsx @@ -85,12 +85,6 @@ export function OrganizationSidebar({ {trustCenter.audits.edges.map((audit) => ( ))} - {trustCenter.audits.edges.map((audit) => ( - - ))} - {trustCenter.audits.edges.map((audit) => ( - - ))} diff --git a/apps/trust/src/components/VendorRow.tsx b/apps/trust/src/components/VendorRow.tsx index e24564c30..ce231f6a4 100644 --- a/apps/trust/src/components/VendorRow.tsx +++ b/apps/trust/src/components/VendorRow.tsx @@ -39,14 +39,16 @@ export function VendorRow(props: { vendor: VendorRowFragment$key }) { {vendor.privacyPolicyUrl.split("//").at(-1)} )} -
- - - {vendor.countries - .map((country) => getCountryName(__, country)) - .join(", ")} - -
+ {vendor.countries.length > 0 && ( +
+ + + {vendor.countries + .map((country) => getCountryName(__, country)) + .join(", ")} + +
+ )} ); diff --git a/apps/trust/src/pages/OverviewPage.tsx b/apps/trust/src/pages/OverviewPage.tsx index b0beeb572..b6aa8287b 100644 --- a/apps/trust/src/pages/OverviewPage.tsx +++ b/apps/trust/src/pages/OverviewPage.tsx @@ -1,6 +1,6 @@ import { useFragment } from "react-relay"; import { graphql } from "relay-runtime"; -import type { OverviewFragment$key } from "./__generated__/OverviewFragment.graphql"; +import type { OverviewPageFragment$key } from "./__generated__/OverviewPageFragment.graphql"; import { Link, useOutletContext } from "react-router"; import { groupBy, objectEntries, sprintf } from "@probo/helpers"; import type { TrustGraphQuery$data } from "/queries/__generated__/TrustGraphQuery.graphql"; @@ -15,7 +15,7 @@ import { RowHeader } from "/components/RowHeader.tsx"; import { Rows } from "/components/Rows.tsx"; const overviewFragment = graphql` - fragment OverviewFragment on TrustCenter { + fragment OverviewPageFragment on TrustCenter { references(first: 14) { edges { node { @@ -48,7 +48,7 @@ const overviewFragment = graphql` export function OverviewPage() { const { trustCenter } = useOutletContext<{ - trustCenter: OverviewFragment$key & + trustCenter: OverviewPageFragment$key & TrustGraphQuery$data["trustCenterBySlug"]; }>(); const { __ } = useTranslate(); diff --git a/apps/trust/src/pages/__generated__/OverviewFragment.graphql.ts b/apps/trust/src/pages/__generated__/OverviewPageFragment.graphql.ts similarity index 92% rename from apps/trust/src/pages/__generated__/OverviewFragment.graphql.ts rename to apps/trust/src/pages/__generated__/OverviewPageFragment.graphql.ts index 2299db14a..aa03066c3 100644 --- a/apps/trust/src/pages/__generated__/OverviewFragment.graphql.ts +++ b/apps/trust/src/pages/__generated__/OverviewPageFragment.graphql.ts @@ -1,5 +1,5 @@ /** - * @generated SignedSource<<0767a7e9f6fb3f0464027b92a5239521>> + * @generated SignedSource<<9f96c62a3e185fed5c07415cf6fa85d1>> * @lightSyntaxTransform * @nogrep */ @@ -11,7 +11,7 @@ import { ReaderFragment } from 'relay-runtime'; export type DocumentType = "ISMS" | "OTHER" | "POLICY"; import { FragmentRefs } from "relay-runtime"; -export type OverviewFragment$data = { +export type OverviewPageFragment$data = { readonly documents: { readonly edges: ReadonlyArray<{ readonly node: { @@ -39,11 +39,11 @@ export type OverviewFragment$data = { }; }>; }; - readonly " $fragmentType": "OverviewFragment"; + readonly " $fragmentType": "OverviewPageFragment"; }; -export type OverviewFragment$key = { - readonly " $data"?: OverviewFragment$data; - readonly " $fragmentSpreads": FragmentRefs<"OverviewFragment">; +export type OverviewPageFragment$key = { + readonly " $data"?: OverviewPageFragment$data; + readonly " $fragmentSpreads": FragmentRefs<"OverviewPageFragment">; }; const node: ReaderFragment = (function(){ @@ -58,7 +58,7 @@ return { "argumentDefinitions": [], "kind": "Fragment", "metadata": null, - "name": "OverviewFragment", + "name": "OverviewPageFragment", "selections": [ { "alias": null, @@ -224,6 +224,6 @@ return { }; })(); -(node as any).hash = "2f42031d2017248051c8dfea72b4e502"; +(node as any).hash = "df15ec9b9040d1f4314e04085a932ecb"; export default node; diff --git a/apps/trust/src/queries/TrustGraph.ts b/apps/trust/src/queries/TrustGraph.ts index 2bfed290e..0bec4408b 100644 --- a/apps/trust/src/queries/TrustGraph.ts +++ b/apps/trust/src/queries/TrustGraph.ts @@ -17,7 +17,7 @@ export const trustGraphQuery = graphql` email headquarterAddress } - ...OverviewFragment + ...OverviewPageFragment audits(first: 50) { edges { node { diff --git a/apps/trust/src/queries/__generated__/TrustGraphQuery.graphql.ts b/apps/trust/src/queries/__generated__/TrustGraphQuery.graphql.ts index c54756d38..1851f4878 100644 --- a/apps/trust/src/queries/__generated__/TrustGraphQuery.graphql.ts +++ b/apps/trust/src/queries/__generated__/TrustGraphQuery.graphql.ts @@ -1,5 +1,5 @@ /** - * @generated SignedSource<<669a97d59bae0528905d34c18586ce11>> + * @generated SignedSource<<25d09fc2d93d9fbbcde08bd8a8d48214>> * @lightSyntaxTransform * @nogrep */ @@ -37,7 +37,7 @@ export type TrustGraphQuery$data = { readonly websiteUrl: string | null | undefined; }; readonly slug: string; - readonly " $fragmentSpreads": FragmentRefs<"OverviewFragment">; + readonly " $fragmentSpreads": FragmentRefs<"OverviewPageFragment">; } | null | undefined; }; export type TrustGraphQuery = { @@ -192,7 +192,7 @@ return { { "args": null, "kind": "FragmentSpread", - "name": "OverviewFragment" + "name": "OverviewPageFragment" }, { "alias": null, @@ -510,16 +510,16 @@ return { ] }, "params": { - "cacheID": "00f2723e0dac553f037af3570903fb51", + "cacheID": "3303b20452c558a107492263e7fc0c61", "id": null, "metadata": {}, "name": "TrustGraphQuery", "operationKind": "query", - "text": "query TrustGraphQuery(\n $slug: String!\n) {\n trustCenterBySlug(slug: $slug) {\n id\n slug\n isUserAuthenticated\n hasAcceptedNonDisclosureAgreement\n ndaFileName\n ndaFileUrl\n organization {\n name\n description\n websiteUrl\n logoUrl\n email\n headquarterAddress\n id\n }\n ...OverviewFragment\n audits(first: 50) {\n edges {\n node {\n id\n ...AuditRowFragment\n }\n }\n }\n }\n}\n\nfragment AuditRowFragment on Audit {\n report {\n id\n filename\n }\n framework {\n id\n name\n }\n}\n\nfragment DocumentRowFragment on Document {\n id\n title\n}\n\nfragment OverviewFragment on TrustCenter {\n references(first: 14) {\n edges {\n node {\n id\n name\n logoUrl\n websiteUrl\n }\n }\n }\n vendors(first: 3) {\n edges {\n node {\n id\n ...VendorRowFragment\n }\n }\n }\n documents(first: 5) {\n edges {\n node {\n id\n ...DocumentRowFragment\n documentType\n }\n }\n }\n}\n\nfragment VendorRowFragment on Vendor {\n id\n name\n category\n websiteUrl\n privacyPolicyUrl\n countries\n}\n" + "text": "query TrustGraphQuery(\n $slug: String!\n) {\n trustCenterBySlug(slug: $slug) {\n id\n slug\n isUserAuthenticated\n hasAcceptedNonDisclosureAgreement\n ndaFileName\n ndaFileUrl\n organization {\n name\n description\n websiteUrl\n logoUrl\n email\n headquarterAddress\n id\n }\n ...OverviewPageFragment\n audits(first: 50) {\n edges {\n node {\n id\n ...AuditRowFragment\n }\n }\n }\n }\n}\n\nfragment AuditRowFragment on Audit {\n report {\n id\n filename\n }\n framework {\n id\n name\n }\n}\n\nfragment DocumentRowFragment on Document {\n id\n title\n}\n\nfragment OverviewPageFragment on TrustCenter {\n references(first: 14) {\n edges {\n node {\n id\n name\n logoUrl\n websiteUrl\n }\n }\n }\n vendors(first: 3) {\n edges {\n node {\n id\n ...VendorRowFragment\n }\n }\n }\n documents(first: 5) {\n edges {\n node {\n id\n ...DocumentRowFragment\n documentType\n }\n }\n }\n}\n\nfragment VendorRowFragment on Vendor {\n id\n name\n category\n websiteUrl\n privacyPolicyUrl\n countries\n}\n" } }; })(); -(node as any).hash = "192a8d21a41871de201009a2dae65870"; +(node as any).hash = "fd44a0d5fcda45aaa0fe02b3051643c0"; export default node;