Add SAML support

Signed-off-by: Bryan Frimin <bryan@getprobo.com>
This commit is contained in:
Bryan Frimin
2025-10-29 18:42:12 +01:00
parent 3018a3e691
commit 2766f8e423
97 changed files with 14824 additions and 2812 deletions

View File

@@ -10,8 +10,6 @@ export const organizationViewQuery = graphql`
id
name
...SettingsPageFragment
...SettingsPageMembershipsFragment
...SettingsPageInvitationsFragment
}
}
}

View File

@@ -0,0 +1,205 @@
import { graphql } from "relay-runtime";
import { useMutationWithToasts } from "../useMutationWithToasts";
import type { SAMLConfigurationGraphCreateMutation } from "./__generated__/SAMLConfigurationGraphCreateMutation.graphql";
import type { SAMLConfigurationGraphUpdateMutation } from "./__generated__/SAMLConfigurationGraphUpdateMutation.graphql";
import type { SAMLConfigurationGraphDeleteMutation } from "./__generated__/SAMLConfigurationGraphDeleteMutation.graphql";
import type { SAMLConfigurationGraphEnableMutation } from "./__generated__/SAMLConfigurationGraphEnableMutation.graphql";
import type { SAMLConfigurationGraphDisableMutation } from "./__generated__/SAMLConfigurationGraphDisableMutation.graphql";
import type { SAMLConfigurationGraphInitiateDomainVerificationMutation } from "./__generated__/SAMLConfigurationGraphInitiateDomainVerificationMutation.graphql";
import type { SAMLConfigurationGraphVerifyDomainMutation } from "./__generated__/SAMLConfigurationGraphVerifyDomainMutation.graphql";
const createSAMLConfigurationMutation = graphql`
mutation SAMLConfigurationGraphCreateMutation(
$input: CreateSAMLConfigurationInput!
) {
createSAMLConfiguration(input: $input) {
samlConfiguration {
id
enabled
emailDomain
enforcementPolicy
spEntityId
spAcsUrl
spMetadataUrl
testLoginUrl
idpEntityId
idpSsoUrl
idpCertificate
idpMetadataUrl
attributeEmail
attributeFirstname
attributeLastname
attributeRole
defaultRole
autoSignupEnabled
createdAt
updatedAt
}
}
}
`;
const updateSAMLConfigurationMutation = graphql`
mutation SAMLConfigurationGraphUpdateMutation(
$input: UpdateSAMLConfigurationInput!
) {
updateSAMLConfiguration(input: $input) {
samlConfiguration {
id
enabled
emailDomain
enforcementPolicy
spEntityId
spAcsUrl
spMetadataUrl
testLoginUrl
idpEntityId
idpSsoUrl
idpCertificate
idpMetadataUrl
attributeEmail
attributeFirstname
attributeLastname
attributeRole
defaultRole
autoSignupEnabled
createdAt
updatedAt
}
}
}
`;
const deleteSAMLConfigurationMutation = graphql`
mutation SAMLConfigurationGraphDeleteMutation(
$input: DeleteSAMLConfigurationInput!
) {
deleteSAMLConfiguration(input: $input) {
deletedSAMLConfigurationId
}
}
`;
const enableSAMLMutation = graphql`
mutation SAMLConfigurationGraphEnableMutation($input: EnableSAMLInput!) {
enableSAML(input: $input) {
samlConfiguration {
id
enabled
}
}
}
`;
const disableSAMLMutation = graphql`
mutation SAMLConfigurationGraphDisableMutation($input: DisableSAMLInput!) {
disableSAML(input: $input) {
samlConfiguration {
id
enabled
}
}
}
`;
const initiateDomainVerificationMutation = graphql`
mutation SAMLConfigurationGraphInitiateDomainVerificationMutation(
$input: InitiateDomainVerificationInput!
) {
initiateDomainVerification(input: $input) {
samlConfiguration {
id
emailDomain
domainVerified
domainVerificationToken
domainVerifiedAt
}
dnsRecord
}
}
`;
const verifyDomainMutation = graphql`
mutation SAMLConfigurationGraphVerifyDomainMutation(
$input: VerifyDomainInput!
) {
verifyDomain(input: $input) {
samlConfiguration {
id
domainVerified
domainVerifiedAt
}
verified
}
}
`;
export function useCreateSAMLConfigurationMutation() {
return useMutationWithToasts<SAMLConfigurationGraphCreateMutation>(
createSAMLConfigurationMutation,
{
successMessage: "SAML configuration created successfully.",
errorMessage: "Failed to create SAML configuration. Please try again.",
}
);
}
export function useUpdateSAMLConfigurationMutation() {
return useMutationWithToasts<SAMLConfigurationGraphUpdateMutation>(
updateSAMLConfigurationMutation,
{
successMessage: "SAML configuration updated successfully.",
errorMessage: "Failed to update SAML configuration. Please try again.",
}
);
}
export function useDeleteSAMLConfigurationMutation() {
return useMutationWithToasts<SAMLConfigurationGraphDeleteMutation>(
deleteSAMLConfigurationMutation,
{
successMessage: "SAML configuration deleted successfully.",
errorMessage: "Failed to delete SAML configuration. Please try again.",
}
);
}
export function useEnableSAMLMutation() {
return useMutationWithToasts<SAMLConfigurationGraphEnableMutation>(
enableSAMLMutation,
{
successMessage: "SAML enabled successfully.",
errorMessage: "Failed to enable SAML. Please try again.",
}
);
}
export function useDisableSAMLMutation() {
return useMutationWithToasts<SAMLConfigurationGraphDisableMutation>(
disableSAMLMutation,
{
successMessage: "SAML disabled successfully.",
errorMessage: "Failed to disable SAML. Please try again.",
}
);
}
export function useInitiateDomainVerificationMutation() {
return useMutationWithToasts<SAMLConfigurationGraphInitiateDomainVerificationMutation>(
initiateDomainVerificationMutation,
{
successMessage: "Domain verification initiated. Please add the DNS record.",
errorMessage: "Failed to initiate domain verification. Please try again.",
}
);
}
export function useVerifyDomainMutation() {
return useMutationWithToasts<SAMLConfigurationGraphVerifyDomainMutation>(
verifyDomainMutation,
{
successMessage: "Domain verified successfully!",
errorMessage: "Domain verification failed. Please ensure the DNS record is properly configured.",
}
);
}

View File

@@ -1,5 +1,5 @@
/**
* @generated SignedSource<<e961390ac138b066af89b5b02169d66e>>
* @generated SignedSource<<220f85396d6d4c5c04f730d07aaa42e1>>
* @lightSyntaxTransform
* @nogrep
*/
@@ -17,7 +17,7 @@ export type OrganizationGraph_ViewQuery$data = {
readonly node: {
readonly id?: string;
readonly name?: string;
readonly " $fragmentSpreads": FragmentRefs<"SettingsPageFragment" | "SettingsPageInvitationsFragment" | "SettingsPageMembershipsFragment">;
readonly " $fragmentSpreads": FragmentRefs<"SettingsPageFragment">;
};
};
export type OrganizationGraph_ViewQuery = {
@@ -82,52 +82,50 @@ v7 = {
"name": "updatedAt",
"storageKey": null
},
v8 = {
"kind": "Literal",
"name": "first",
"value": 20
},
v9 = {
"kind": "Literal",
"name": "orderBy",
"value": {
"direction": "ASC",
"field": "CREATED_AT"
v8 = [
{
"kind": "Literal",
"name": "first",
"value": 20
},
{
"kind": "Literal",
"name": "orderBy",
"value": {
"direction": "ASC",
"field": "CREATED_AT"
}
}
},
v10 = [
(v8/*: any*/),
(v9/*: any*/)
],
v11 = {
v9 = {
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "totalCount",
"storageKey": null
},
v12 = {
v10 = {
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "fullName",
"storageKey": null
},
v13 = {
v11 = {
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "role",
"storageKey": null
},
v14 = {
v12 = {
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "cursor",
"storageKey": null
},
v15 = {
v13 = {
"alias": null,
"args": null,
"concreteType": "PageInfo",
@@ -166,7 +164,7 @@ v15 = {
],
"storageKey": null
},
v16 = {
v14 = {
"kind": "ClientExtension",
"selections": [
{
@@ -178,19 +176,8 @@ v16 = {
}
]
},
v17 = [
{
"kind": "Literal",
"name": "filter",
"value": {
"statuses": [
"PENDING",
"EXPIRED"
]
}
},
(v8/*: any*/),
(v9/*: any*/)
v15 = [
"orderBy"
];
return {
"fragment": {
@@ -216,16 +203,6 @@ return {
"args": null,
"kind": "FragmentSpread",
"name": "SettingsPageFragment"
},
{
"args": null,
"kind": "FragmentSpread",
"name": "SettingsPageMembershipsFragment"
},
{
"args": null,
"kind": "FragmentSpread",
"name": "SettingsPageInvitationsFragment"
}
],
"type": "Organization",
@@ -294,6 +271,146 @@ return {
"name": "headquarterAddress",
"storageKey": null
},
(v6/*: any*/),
(v7/*: any*/),
{
"alias": null,
"args": (v8/*: any*/),
"concreteType": "MembershipConnection",
"kind": "LinkedField",
"name": "memberships",
"plural": false,
"selections": [
(v9/*: any*/),
{
"alias": null,
"args": null,
"concreteType": "MembershipEdge",
"kind": "LinkedField",
"name": "edges",
"plural": true,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "Membership",
"kind": "LinkedField",
"name": "node",
"plural": false,
"selections": [
(v2/*: any*/),
(v10/*: any*/),
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "emailAddress",
"storageKey": null
},
(v11/*: any*/),
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "authMethod",
"storageKey": null
},
(v6/*: any*/),
(v4/*: any*/)
],
"storageKey": null
},
(v12/*: any*/)
],
"storageKey": null
},
(v13/*: any*/),
(v14/*: any*/)
],
"storageKey": "memberships(first:20,orderBy:{\"direction\":\"ASC\",\"field\":\"CREATED_AT\"})"
},
{
"alias": null,
"args": (v8/*: any*/),
"filters": (v15/*: any*/),
"handle": "connection",
"key": "MembersSettingsTabMemberships_memberships",
"kind": "LinkedHandle",
"name": "memberships"
},
{
"alias": null,
"args": (v8/*: any*/),
"concreteType": "InvitationConnection",
"kind": "LinkedField",
"name": "invitations",
"plural": false,
"selections": [
(v9/*: any*/),
{
"alias": null,
"args": null,
"concreteType": "InvitationEdge",
"kind": "LinkedField",
"name": "edges",
"plural": true,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "Invitation",
"kind": "LinkedField",
"name": "node",
"plural": false,
"selections": [
(v2/*: any*/),
(v10/*: any*/),
(v5/*: any*/),
(v11/*: any*/),
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "status",
"storageKey": null
},
(v6/*: any*/),
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "expiresAt",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "acceptedAt",
"storageKey": null
},
(v4/*: any*/)
],
"storageKey": null
},
(v12/*: any*/)
],
"storageKey": null
},
(v13/*: any*/),
(v14/*: any*/)
],
"storageKey": "invitations(first:20,orderBy:{\"direction\":\"ASC\",\"field\":\"CREATED_AT\"})"
},
{
"alias": null,
"args": (v8/*: any*/),
"filters": (v15/*: any*/),
"handle": "connection",
"key": "MembersSettingsTabInvitations_invitations",
"kind": "LinkedHandle",
"name": "invitations"
},
{
"alias": null,
"args": null,
@@ -369,143 +486,157 @@ return {
],
"storageKey": null
},
(v6/*: any*/),
(v7/*: any*/),
{
"alias": null,
"args": (v10/*: any*/),
"concreteType": "MembershipConnection",
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "memberships",
"plural": false,
"name": "samlConfigurations",
"plural": true,
"selections": [
(v11/*: any*/),
(v2/*: any*/),
{
"alias": null,
"args": null,
"concreteType": "MembershipEdge",
"kind": "LinkedField",
"name": "edges",
"plural": true,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "Membership",
"kind": "LinkedField",
"name": "node",
"plural": false,
"selections": [
(v2/*: any*/),
(v12/*: any*/),
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "emailAddress",
"storageKey": null
},
(v13/*: any*/),
(v6/*: any*/),
(v4/*: any*/)
],
"storageKey": null
},
(v14/*: any*/)
],
"kind": "ScalarField",
"name": "enabled",
"storageKey": null
},
(v15/*: any*/),
(v16/*: any*/)
],
"storageKey": "memberships(first:20,orderBy:{\"direction\":\"ASC\",\"field\":\"CREATED_AT\"})"
},
{
"alias": null,
"args": (v10/*: any*/),
"filters": [
"orderBy"
],
"handle": "connection",
"key": "SettingsPageMemberships_memberships",
"kind": "LinkedHandle",
"name": "memberships"
},
{
"alias": null,
"args": (v17/*: any*/),
"concreteType": "InvitationConnection",
"kind": "LinkedField",
"name": "invitations",
"plural": false,
"selections": [
(v11/*: any*/),
{
"alias": null,
"args": null,
"concreteType": "InvitationEdge",
"kind": "LinkedField",
"name": "edges",
"plural": true,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "Invitation",
"kind": "LinkedField",
"name": "node",
"plural": false,
"selections": [
(v2/*: any*/),
(v5/*: any*/),
(v12/*: any*/),
(v13/*: any*/),
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "status",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "expiresAt",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "acceptedAt",
"storageKey": null
},
(v6/*: any*/),
(v4/*: any*/)
],
"storageKey": null
},
(v14/*: any*/)
],
"kind": "ScalarField",
"name": "emailDomain",
"storageKey": null
},
(v15/*: any*/),
(v16/*: any*/)
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enforcementPolicy",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerified",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerificationToken",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerifiedAt",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spEntityId",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spAcsUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spMetadataUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "testLoginUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpEntityId",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpSsoUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpCertificate",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpMetadataUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeEmail",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeFirstname",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeLastname",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeRole",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "defaultRole",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "autoSignupEnabled",
"storageKey": null
}
],
"storageKey": "invitations(filter:{\"statuses\":[\"PENDING\",\"EXPIRED\"]},first:20,orderBy:{\"direction\":\"ASC\",\"field\":\"CREATED_AT\"})"
},
{
"alias": null,
"args": (v17/*: any*/),
"filters": [
"orderBy",
"filter"
],
"handle": "connection",
"key": "SettingsPageInvitations_invitations",
"kind": "LinkedHandle",
"name": "invitations"
"storageKey": null
}
],
"type": "Organization",
@@ -517,16 +648,16 @@ return {
]
},
"params": {
"cacheID": "3d38000d9d2105ef8ae3d56edf31b372",
"cacheID": "782dc2328cea4f0c350427bda92a5615",
"id": null,
"metadata": {},
"name": "OrganizationGraph_ViewQuery",
"operationKind": "query",
"text": "query OrganizationGraph_ViewQuery(\n $organizationId: ID!\n) {\n node(id: $organizationId) {\n __typename\n ... on Organization {\n id\n name\n ...SettingsPageFragment\n ...SettingsPageMembershipsFragment\n ...SettingsPageInvitationsFragment\n }\n id\n }\n}\n\nfragment SettingsPageFragment on Organization {\n id\n name\n logoUrl\n horizontalLogoUrl\n description\n websiteUrl\n email\n headquarterAddress\n customDomain {\n id\n domain\n sslStatus\n dnsRecords {\n type\n name\n value\n ttl\n purpose\n }\n createdAt\n updatedAt\n sslExpiresAt\n }\n createdAt\n updatedAt\n}\n\nfragment SettingsPageInvitationsFragment on Organization {\n invitations(first: 20, orderBy: {direction: ASC, field: CREATED_AT}, filter: {statuses: [PENDING, EXPIRED]}) {\n totalCount\n edges {\n node {\n id\n email\n fullName\n role\n status\n expiresAt\n acceptedAt\n createdAt\n __typename\n }\n cursor\n }\n pageInfo {\n endCursor\n hasNextPage\n hasPreviousPage\n startCursor\n }\n }\n id\n}\n\nfragment SettingsPageMembershipsFragment on Organization {\n memberships(first: 20, orderBy: {direction: ASC, field: CREATED_AT}) {\n totalCount\n edges {\n node {\n id\n fullName\n emailAddress\n role\n createdAt\n __typename\n }\n cursor\n }\n pageInfo {\n endCursor\n hasNextPage\n hasPreviousPage\n startCursor\n }\n }\n id\n}\n"
"text": "query OrganizationGraph_ViewQuery(\n $organizationId: ID!\n) {\n node(id: $organizationId) {\n __typename\n ... on Organization {\n id\n name\n ...SettingsPageFragment\n }\n id\n }\n}\n\nfragment DomainSettingsTabFragment on Organization {\n id\n customDomain {\n id\n domain\n sslStatus\n dnsRecords {\n type\n name\n value\n ttl\n purpose\n }\n createdAt\n updatedAt\n sslExpiresAt\n }\n}\n\nfragment GeneralSettingsTabFragment on Organization {\n id\n name\n logoUrl\n horizontalLogoUrl\n description\n websiteUrl\n email\n headquarterAddress\n createdAt\n updatedAt\n}\n\nfragment MembersSettingsTabInvitationsFragment on Organization {\n invitations(first: 20, orderBy: {direction: ASC, field: CREATED_AT}) {\n totalCount\n edges {\n node {\n id\n fullName\n email\n role\n status\n createdAt\n expiresAt\n acceptedAt\n __typename\n }\n cursor\n }\n pageInfo {\n endCursor\n hasNextPage\n hasPreviousPage\n startCursor\n }\n }\n id\n}\n\nfragment MembersSettingsTabMembershipsFragment on Organization {\n memberships(first: 20, orderBy: {direction: ASC, field: CREATED_AT}) {\n totalCount\n edges {\n node {\n id\n fullName\n emailAddress\n role\n authMethod\n createdAt\n __typename\n }\n cursor\n }\n pageInfo {\n endCursor\n hasNextPage\n hasPreviousPage\n startCursor\n }\n }\n id\n}\n\nfragment SAMLSettingsTabFragment on Organization {\n id\n name\n samlConfigurations {\n id\n enabled\n emailDomain\n enforcementPolicy\n domainVerified\n domainVerificationToken\n domainVerifiedAt\n spEntityId\n spAcsUrl\n spMetadataUrl\n testLoginUrl\n idpEntityId\n idpSsoUrl\n idpCertificate\n idpMetadataUrl\n attributeEmail\n attributeFirstname\n attributeLastname\n attributeRole\n defaultRole\n autoSignupEnabled\n }\n}\n\nfragment SettingsPageFragment on Organization {\n id\n name\n ...GeneralSettingsTabFragment\n ...MembersSettingsTabMembershipsFragment\n ...MembersSettingsTabInvitationsFragment\n ...DomainSettingsTabFragment\n ...SAMLSettingsTabFragment\n}\n"
}
};
})();
(node as any).hash = "fda1489f2b80fd3d0b3962574bd7dfe3";
(node as any).hash = "196e8c1fc9c2e0b3c76c8b338ed5c7f7";
export default node;

View File

@@ -0,0 +1,273 @@
/**
* @generated SignedSource<<9232c5fa755e56b6a1ecdcdd51ad83db>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type SAMLEnforcementPolicy = "OFF" | "OPTIONAL" | "REQUIRED";
export type CreateSAMLConfigurationInput = {
attributeEmail?: string | null | undefined;
attributeFirstname?: string | null | undefined;
attributeLastname?: string | null | undefined;
attributeRole?: string | null | undefined;
autoSignupEnabled?: boolean | null | undefined;
defaultRole?: string | null | undefined;
emailDomain: string;
enforcementPolicy: SAMLEnforcementPolicy;
idpCertificate?: string | null | undefined;
idpEntityId?: string | null | undefined;
idpMetadataUrl?: string | null | undefined;
idpMetadataXml?: string | null | undefined;
idpSsoUrl?: string | null | undefined;
organizationId: string;
spCertificate?: string | null | undefined;
spPrivateKey?: string | null | undefined;
};
export type SAMLConfigurationGraphCreateMutation$variables = {
input: CreateSAMLConfigurationInput;
};
export type SAMLConfigurationGraphCreateMutation$data = {
readonly createSAMLConfiguration: {
readonly samlConfiguration: {
readonly attributeEmail: string;
readonly attributeFirstname: string;
readonly attributeLastname: string;
readonly attributeRole: string;
readonly autoSignupEnabled: boolean;
readonly createdAt: any;
readonly defaultRole: string;
readonly emailDomain: string;
readonly enabled: boolean;
readonly enforcementPolicy: SAMLEnforcementPolicy;
readonly id: string;
readonly idpCertificate: string;
readonly idpEntityId: string;
readonly idpMetadataUrl: string | null | undefined;
readonly idpSsoUrl: string;
readonly spAcsUrl: string;
readonly spEntityId: string;
readonly spMetadataUrl: string;
readonly testLoginUrl: string;
readonly updatedAt: any;
};
};
};
export type SAMLConfigurationGraphCreateMutation = {
response: SAMLConfigurationGraphCreateMutation$data;
variables: SAMLConfigurationGraphCreateMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "CreateSAMLConfigurationPayload",
"kind": "LinkedField",
"name": "createSAMLConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "samlConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "id",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enabled",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "emailDomain",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enforcementPolicy",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spEntityId",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spAcsUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spMetadataUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "testLoginUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpEntityId",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpSsoUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpCertificate",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpMetadataUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeEmail",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeFirstname",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeLastname",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeRole",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "defaultRole",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "autoSignupEnabled",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "createdAt",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "updatedAt",
"storageKey": null
}
],
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphCreateMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphCreateMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "71d5f80565cc8bc4cef0382c315b8cb1",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphCreateMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphCreateMutation(\n $input: CreateSAMLConfigurationInput!\n) {\n createSAMLConfiguration(input: $input) {\n samlConfiguration {\n id\n enabled\n emailDomain\n enforcementPolicy\n spEntityId\n spAcsUrl\n spMetadataUrl\n testLoginUrl\n idpEntityId\n idpSsoUrl\n idpCertificate\n idpMetadataUrl\n attributeEmail\n attributeFirstname\n attributeLastname\n attributeRole\n defaultRole\n autoSignupEnabled\n createdAt\n updatedAt\n }\n }\n}\n"
}
};
})();
(node as any).hash = "04237f5ad3588264149310798d6137f2";
export default node;

View File

@@ -0,0 +1,92 @@
/**
* @generated SignedSource<<55ce4f4205b3eb01954423a75e6e9369>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type DeleteSAMLConfigurationInput = {
id: string;
};
export type SAMLConfigurationGraphDeleteMutation$variables = {
input: DeleteSAMLConfigurationInput;
};
export type SAMLConfigurationGraphDeleteMutation$data = {
readonly deleteSAMLConfiguration: {
readonly deletedSAMLConfigurationId: string;
};
};
export type SAMLConfigurationGraphDeleteMutation = {
response: SAMLConfigurationGraphDeleteMutation$data;
variables: SAMLConfigurationGraphDeleteMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "DeleteSAMLConfigurationPayload",
"kind": "LinkedField",
"name": "deleteSAMLConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "deletedSAMLConfigurationId",
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphDeleteMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphDeleteMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "be1192099e1b3d0765a358de10685870",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphDeleteMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphDeleteMutation(\n $input: DeleteSAMLConfigurationInput!\n) {\n deleteSAMLConfiguration(input: $input) {\n deletedSAMLConfigurationId\n }\n}\n"
}
};
})();
(node as any).hash = "869072f879524c5c2acbc684f536bfe5";
export default node;

View File

@@ -0,0 +1,113 @@
/**
* @generated SignedSource<<2101e8d4c307eb6c37e83c625ca7801f>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type DisableSAMLInput = {
id: string;
};
export type SAMLConfigurationGraphDisableMutation$variables = {
input: DisableSAMLInput;
};
export type SAMLConfigurationGraphDisableMutation$data = {
readonly disableSAML: {
readonly samlConfiguration: {
readonly enabled: boolean;
readonly id: string;
};
};
};
export type SAMLConfigurationGraphDisableMutation = {
response: SAMLConfigurationGraphDisableMutation$data;
variables: SAMLConfigurationGraphDisableMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "DisableSAMLPayload",
"kind": "LinkedField",
"name": "disableSAML",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "samlConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "id",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enabled",
"storageKey": null
}
],
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphDisableMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphDisableMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "dbed05d465035d865dfd1f6473f88401",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphDisableMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphDisableMutation(\n $input: DisableSAMLInput!\n) {\n disableSAML(input: $input) {\n samlConfiguration {\n id\n enabled\n }\n }\n}\n"
}
};
})();
(node as any).hash = "6492fd7729c72ca805ef8f99d1399081";
export default node;

View File

@@ -0,0 +1,113 @@
/**
* @generated SignedSource<<8bcd8aad334a74db810b3d4c17fbb6ac>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type EnableSAMLInput = {
id: string;
};
export type SAMLConfigurationGraphEnableMutation$variables = {
input: EnableSAMLInput;
};
export type SAMLConfigurationGraphEnableMutation$data = {
readonly enableSAML: {
readonly samlConfiguration: {
readonly enabled: boolean;
readonly id: string;
};
};
};
export type SAMLConfigurationGraphEnableMutation = {
response: SAMLConfigurationGraphEnableMutation$data;
variables: SAMLConfigurationGraphEnableMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "EnableSAMLPayload",
"kind": "LinkedField",
"name": "enableSAML",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "samlConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "id",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enabled",
"storageKey": null
}
],
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphEnableMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphEnableMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "2bd2356d146a9fa5f5a5f5480d310bc9",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphEnableMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphEnableMutation(\n $input: EnableSAMLInput!\n) {\n enableSAML(input: $input) {\n samlConfiguration {\n id\n enabled\n }\n }\n}\n"
}
};
})();
(node as any).hash = "1627602d91776f718f1913011bdce786";
export default node;

View File

@@ -0,0 +1,146 @@
/**
* @generated SignedSource<<55d58c6ee7e4dcd7ffe7e172aea932d5>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type InitiateDomainVerificationInput = {
emailDomain: string;
organizationId: string;
};
export type SAMLConfigurationGraphInitiateDomainVerificationMutation$variables = {
input: InitiateDomainVerificationInput;
};
export type SAMLConfigurationGraphInitiateDomainVerificationMutation$data = {
readonly initiateDomainVerification: {
readonly dnsRecord: string;
readonly samlConfiguration: {
readonly domainVerificationToken: string | null | undefined;
readonly domainVerified: boolean;
readonly domainVerifiedAt: any | null | undefined;
readonly emailDomain: string;
readonly id: string;
};
};
};
export type SAMLConfigurationGraphInitiateDomainVerificationMutation = {
response: SAMLConfigurationGraphInitiateDomainVerificationMutation$data;
variables: SAMLConfigurationGraphInitiateDomainVerificationMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "InitiateDomainVerificationPayload",
"kind": "LinkedField",
"name": "initiateDomainVerification",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "samlConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "id",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "emailDomain",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerified",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerificationToken",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerifiedAt",
"storageKey": null
}
],
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "dnsRecord",
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphInitiateDomainVerificationMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphInitiateDomainVerificationMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "61453ca7fb2c7ff2fe8b657f6cfb7497",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphInitiateDomainVerificationMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphInitiateDomainVerificationMutation(\n $input: InitiateDomainVerificationInput!\n) {\n initiateDomainVerification(input: $input) {\n samlConfiguration {\n id\n emailDomain\n domainVerified\n domainVerificationToken\n domainVerifiedAt\n }\n dnsRecord\n }\n}\n"
}
};
})();
(node as any).hash = "5424f4fd94618327ae64292d31349e73";
export default node;

View File

@@ -0,0 +1,272 @@
/**
* @generated SignedSource<<694befcb248cbb23e66b9555626f223b>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type SAMLEnforcementPolicy = "OFF" | "OPTIONAL" | "REQUIRED";
export type UpdateSAMLConfigurationInput = {
attributeEmail?: string | null | undefined;
attributeFirstname?: string | null | undefined;
attributeLastname?: string | null | undefined;
attributeRole?: string | null | undefined;
autoSignupEnabled?: boolean | null | undefined;
defaultRole?: string | null | undefined;
enabled?: boolean | null | undefined;
enforcementPolicy?: SAMLEnforcementPolicy | null | undefined;
id: string;
idpCertificate?: string | null | undefined;
idpEntityId?: string | null | undefined;
idpMetadataUrl?: string | null | undefined;
idpSsoUrl?: string | null | undefined;
spCertificate?: string | null | undefined;
spPrivateKey?: string | null | undefined;
};
export type SAMLConfigurationGraphUpdateMutation$variables = {
input: UpdateSAMLConfigurationInput;
};
export type SAMLConfigurationGraphUpdateMutation$data = {
readonly updateSAMLConfiguration: {
readonly samlConfiguration: {
readonly attributeEmail: string;
readonly attributeFirstname: string;
readonly attributeLastname: string;
readonly attributeRole: string;
readonly autoSignupEnabled: boolean;
readonly createdAt: any;
readonly defaultRole: string;
readonly emailDomain: string;
readonly enabled: boolean;
readonly enforcementPolicy: SAMLEnforcementPolicy;
readonly id: string;
readonly idpCertificate: string;
readonly idpEntityId: string;
readonly idpMetadataUrl: string | null | undefined;
readonly idpSsoUrl: string;
readonly spAcsUrl: string;
readonly spEntityId: string;
readonly spMetadataUrl: string;
readonly testLoginUrl: string;
readonly updatedAt: any;
};
};
};
export type SAMLConfigurationGraphUpdateMutation = {
response: SAMLConfigurationGraphUpdateMutation$data;
variables: SAMLConfigurationGraphUpdateMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "UpdateSAMLConfigurationPayload",
"kind": "LinkedField",
"name": "updateSAMLConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "samlConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "id",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enabled",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "emailDomain",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "enforcementPolicy",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spEntityId",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spAcsUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "spMetadataUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "testLoginUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpEntityId",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpSsoUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpCertificate",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "idpMetadataUrl",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeEmail",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeFirstname",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeLastname",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "attributeRole",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "defaultRole",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "autoSignupEnabled",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "createdAt",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "updatedAt",
"storageKey": null
}
],
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphUpdateMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphUpdateMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "c9e4055888055b109aa71b665c9544ca",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphUpdateMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphUpdateMutation(\n $input: UpdateSAMLConfigurationInput!\n) {\n updateSAMLConfiguration(input: $input) {\n samlConfiguration {\n id\n enabled\n emailDomain\n enforcementPolicy\n spEntityId\n spAcsUrl\n spMetadataUrl\n testLoginUrl\n idpEntityId\n idpSsoUrl\n idpCertificate\n idpMetadataUrl\n attributeEmail\n attributeFirstname\n attributeLastname\n attributeRole\n defaultRole\n autoSignupEnabled\n createdAt\n updatedAt\n }\n }\n}\n"
}
};
})();
(node as any).hash = "d572af05811d6a05cdd4446fe175894d";
export default node;

View File

@@ -0,0 +1,129 @@
/**
* @generated SignedSource<<8baf2363740e7eb47e7654f2f55c09df>>
* @lightSyntaxTransform
* @nogrep
*/
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ConcreteRequest } from 'relay-runtime';
export type VerifyDomainInput = {
id: string;
};
export type SAMLConfigurationGraphVerifyDomainMutation$variables = {
input: VerifyDomainInput;
};
export type SAMLConfigurationGraphVerifyDomainMutation$data = {
readonly verifyDomain: {
readonly samlConfiguration: {
readonly domainVerified: boolean;
readonly domainVerifiedAt: any | null | undefined;
readonly id: string;
};
readonly verified: boolean;
};
};
export type SAMLConfigurationGraphVerifyDomainMutation = {
response: SAMLConfigurationGraphVerifyDomainMutation$data;
variables: SAMLConfigurationGraphVerifyDomainMutation$variables;
};
const node: ConcreteRequest = (function(){
var v0 = [
{
"defaultValue": null,
"kind": "LocalArgument",
"name": "input"
}
],
v1 = [
{
"alias": null,
"args": [
{
"kind": "Variable",
"name": "input",
"variableName": "input"
}
],
"concreteType": "VerifyDomainPayload",
"kind": "LinkedField",
"name": "verifyDomain",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"concreteType": "SAMLConfiguration",
"kind": "LinkedField",
"name": "samlConfiguration",
"plural": false,
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "id",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerified",
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "domainVerifiedAt",
"storageKey": null
}
],
"storageKey": null
},
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "verified",
"storageKey": null
}
],
"storageKey": null
}
];
return {
"fragment": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Fragment",
"metadata": null,
"name": "SAMLConfigurationGraphVerifyDomainMutation",
"selections": (v1/*: any*/),
"type": "Mutation",
"abstractKey": null
},
"kind": "Request",
"operation": {
"argumentDefinitions": (v0/*: any*/),
"kind": "Operation",
"name": "SAMLConfigurationGraphVerifyDomainMutation",
"selections": (v1/*: any*/)
},
"params": {
"cacheID": "1f241529f518d2f0701d9c4f7a731d6b",
"id": null,
"metadata": {},
"name": "SAMLConfigurationGraphVerifyDomainMutation",
"operationKind": "mutation",
"text": "mutation SAMLConfigurationGraphVerifyDomainMutation(\n $input: VerifyDomainInput!\n) {\n verifyDomain(input: $input) {\n samlConfiguration {\n id\n domainVerified\n domainVerifiedAt\n }\n verified\n }\n}\n"
}
};
})();
(node as any).hash = "ea3f1fe691b0c36ff7e54663479f7e7c";
export default node;