mirror of
https://github.com/supabase/supabase.git
synced 2026-06-18 21:54:18 +08:00
Edit: Can be merged, mgmt api deployed Dashboard addition to frontend for access to the ISO 27001 certificate. View for Team customers: <img width="1737" height="1151" alt="image" src="https://github.com/user-attachments/assets/cd62d24f-8b6e-4600-9ded-943a170cd124" /> Resolves SEC-799 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * ISO 27001 certificate added to Documents with a Download action, confirmation modal, new-tab open on success, and error toast on failure. * Users without billing permission see a no-permission view; users missing entitlement see an “Upgrade to Team” prompt. * **Refactor** * Upgrade-to-Team flows for SOC2 and related upgrade UI standardized to use the shared upgrade component. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
85 lines
2.4 KiB
TypeScript
85 lines
2.4 KiB
TypeScript
import { Fragment } from 'react'
|
|
|
|
import { CustomDocument } from './CustomDocument'
|
|
import { DPA } from './DPA'
|
|
import { HIPAA } from './HIPAA'
|
|
import { ISO27001 } from './ISO27001'
|
|
import { SecurityQuestionnaire } from './SecurityQuestionnaire'
|
|
import { SOC2 } from './SOC2'
|
|
import { TIA } from './TIA'
|
|
import { SupportLink } from '@/components/interfaces/Support/SupportLink'
|
|
import {
|
|
ScaffoldContainer,
|
|
ScaffoldDivider,
|
|
ScaffoldSection,
|
|
ScaffoldSectionDetail,
|
|
} from '@/components/layouts/Scaffold'
|
|
import { InlineLinkClassName } from '@/components/ui/InlineLink'
|
|
import { useCustomContent } from '@/hooks/custom-content/useCustomContent'
|
|
|
|
export const Documents = () => {
|
|
const { organizationLegalDocuments } = useCustomContent(['organization:legal_documents'])
|
|
|
|
if (Array.isArray(organizationLegalDocuments)) {
|
|
return organizationLegalDocuments.map((doc, idx) => {
|
|
return (
|
|
<Fragment key={doc.id}>
|
|
<CustomDocument doc={doc} />
|
|
{idx !== organizationLegalDocuments.length - 1 && <ScaffoldDivider />}
|
|
</Fragment>
|
|
)
|
|
})
|
|
}
|
|
|
|
return (
|
|
<>
|
|
<ScaffoldContainer id="dpa" className="px-6 xl:px-10">
|
|
<DPA />
|
|
</ScaffoldContainer>
|
|
|
|
<ScaffoldDivider />
|
|
|
|
<ScaffoldContainer id="tia" className="px-6 xl:px-10">
|
|
<TIA />
|
|
</ScaffoldContainer>
|
|
|
|
<ScaffoldDivider />
|
|
|
|
<ScaffoldContainer id="soc2" className="px-6 xl:px-10">
|
|
<SOC2 />
|
|
</ScaffoldContainer>
|
|
|
|
<ScaffoldDivider />
|
|
|
|
<ScaffoldContainer id="iso27001" className="px-6 xl:px-10">
|
|
<ISO27001 />
|
|
</ScaffoldContainer>
|
|
|
|
<ScaffoldDivider />
|
|
|
|
<ScaffoldContainer id="hipaa" className="px-6 xl:px-10">
|
|
<HIPAA />
|
|
</ScaffoldContainer>
|
|
|
|
<ScaffoldDivider />
|
|
|
|
<ScaffoldContainer id="security-questionnaire" className="px-6 xl:px-10">
|
|
<SecurityQuestionnaire />
|
|
</ScaffoldContainer>
|
|
|
|
<ScaffoldDivider />
|
|
|
|
<ScaffoldContainer className="px-6 xl:px-10">
|
|
<ScaffoldSection className="py-12">
|
|
<ScaffoldSectionDetail className="col-span-full">
|
|
<p className="text-sm text-foreground-light m-0">
|
|
<SupportLink className={InlineLinkClassName}>Submit a support request</SupportLink> if
|
|
you require additional documents for financial or tax reasons, such as a W-9 form.
|
|
</p>
|
|
</ScaffoldSectionDetail>
|
|
</ScaffoldSection>
|
|
</ScaffoldContainer>
|
|
</>
|
|
)
|
|
}
|