diff --git a/graphql/codegen/.gitignore b/graphql/codegen/.gitignore index 258e38780..6a8e05037 100644 --- a/graphql/codegen/.gitignore +++ b/graphql/codegen/.gitignore @@ -5,6 +5,9 @@ dist/ output-rq output-orm/ +examples/output/generated-sdk/ +examples/output/generated-orm/ + # Dependencies node_modules/ diff --git a/graphql/codegen/examples/download-schema.ts b/graphql/codegen/examples/download-schema.ts deleted file mode 100644 index a7ce1fbc7..000000000 --- a/graphql/codegen/examples/download-schema.ts +++ /dev/null @@ -1,77 +0,0 @@ -#!/usr/bin/env tsx -/** - * Download GraphQL schema via introspection and save to local file. - * - * Usage: - * pnpm -C packages/graphql-sdk exec tsx examples/download-schema.ts - * pnpm -C packages/graphql-sdk exec tsx examples/download-schema.ts --endpoint=http://custom.endpoint/graphql - */ - -import { writeFileSync } from 'node:fs'; -import { join, dirname } from 'node:path'; -import { fileURLToPath } from 'node:url'; -import { buildClientSchema, printSchema, getIntrospectionQuery } from 'graphql'; -import { - DB_GRAPHQL_ENDPOINT, - SCHEMA_FILE, - executeGraphQL, -} from './test.config'; - -const __dirname = dirname(fileURLToPath(import.meta.url)); - -async function downloadSchema(endpoint: string): Promise { - console.log(`Fetching schema from: ${endpoint}`); - - const introspectionQuery = getIntrospectionQuery(); - const result = await executeGraphQL<{ __schema: unknown }>( - endpoint, - introspectionQuery - ); - - if (result.errors?.length) { - throw new Error( - `Introspection failed: ${result.errors.map((e) => e.message).join(', ')}` - ); - } - - if (!result.data?.__schema) { - throw new Error('Introspection returned no schema'); - } - - // Build client schema from introspection result - const clientSchema = buildClientSchema( - result.data as ReturnType extends string - ? // eslint-disable-next-line @typescript-eslint/no-explicit-any - any - : never - ); - - // Print to SDL - return printSchema(clientSchema); -} - -async function main() { - // Parse CLI args - const args = process.argv.slice(2); - let endpoint = DB_GRAPHQL_ENDPOINT; - - for (const arg of args) { - if (arg.startsWith('--endpoint=')) { - endpoint = arg.slice('--endpoint='.length); - } - } - - try { - const sdl = await downloadSchema(endpoint); - const outputPath = join(__dirname, SCHEMA_FILE); - - writeFileSync(outputPath, sdl, 'utf-8'); - console.log(`Schema written to: ${outputPath}`); - console.log(`Lines: ${sdl.split('\n').length}`); - } catch (error) { - console.error('Failed to download schema:', error); - process.exit(1); - } -} - -main(); diff --git a/graphql/codegen/examples/orm-sdk.ts b/graphql/codegen/examples/orm-sdk.ts new file mode 100644 index 000000000..d36de4fe8 --- /dev/null +++ b/graphql/codegen/examples/orm-sdk.ts @@ -0,0 +1,240 @@ +/** + * ORM SDK Example - Prisma-like API for GraphQL + * Run: pnpm exec tsx examples/orm-sdk.ts + */ +import { + createClient, + GraphQLRequestError, +} from '../examples/output/generated-orm'; + +const ENDPOINT = 'http://api.localhost:3000/graphql'; +let db = createClient({ endpoint: ENDPOINT }); + +const section = (title: string) => + console.log(`\n${'─'.repeat(50)}\n${title}\n${'─'.repeat(50)}`); + +async function main() { + console.log('ORM SDK Demo\n'); + + // ───────────────────────────────────────────────────────────────────────────── + // 1. Login & Auth + // ───────────────────────────────────────────────────────────────────────────── + section('1. Login Mutation'); + const loginResult = await db.mutation + .login( + { input: { email: 'admin@gmail.com', password: 'password1111!@#$' } }, + { select: { apiToken: { select: { accessToken: true } } } } + ) + .execute(); + + const token = loginResult.data?.login?.apiToken?.accessToken; + if (token) { + db = createClient({ + endpoint: ENDPOINT, + headers: { Authorization: `Bearer ${token}` }, + }); + console.log('✓ Logged in, token:', token.slice(0, 30) + '...'); + } + + // ───────────────────────────────────────────────────────────────────────────── + // 2. findMany with pagination & ordering + // ───────────────────────────────────────────────────────────────────────────── + section('2. findMany - List with Pagination'); + const users = await db.user + .findMany({ + select: { id: true, username: true, displayName: true }, + first: 3, + orderBy: ['USERNAME_ASC'], + where: { + username: { notStartsWithInsensitive: 'admin' }, + }, + }) + .execute(); + console.log( + 'Users:', + users.data?.users?.nodes?.map((u) => u.username) + ); + console.log( + 'Total:', + users.data?.users?.totalCount, + '| HasNext:', + users.data?.users?.pageInfo.hasNextPage + ); + + // ───────────────────────────────────────────────────────────────────────────── + // 3. Complex Filters (PostGraphile Filter Plugin) + // ───────────────────────────────────────────────────────────────────────────── + section('3. PostGraphile Filters'); + + // String filters + const stringFilters = await db.user + .findMany({ + select: { id: true, username: true }, + first: 5, + where: { username: { includesInsensitive: 'seed' } }, + }) + .execute(); + console.log( + 'includesInsensitive "seed":', + stringFilters.data?.users?.nodes?.map((u) => u.username) + ); + + // AND/OR/NOT composition + const composed = await db.user + .findMany({ + select: { id: true, username: true, type: true }, + first: 5, + where: { + and: [ + { username: { isNull: false } }, + { or: [{ type: { equalTo: 0 } }, { type: { greaterThan: 5 } }] }, + ], + }, + }) + .execute(); + console.log( + 'AND/OR filter:', + composed.data?.users?.nodes?.map((u) => ({ u: u.username, t: u.type })) + ); + + // ───────────────────────────────────────────────────────────────────────────── + // 4. Relation Selection (Nested Objects) + // ───────────────────────────────────────────────────────────────────────────── + section('4. Relations & Nested Selection'); + const tables = await db.table + .findMany({ + select: { + name: true, + category: true, + database: { select: { schemaName: true } }, + }, + first: 3, + orderBy: ['NAME_ASC'], + }) + .execute(); + console.log( + 'Tables with DB:', + tables.data?.tables?.nodes?.map( + (t) => `${t.name} (${t.database?.schemaName})` + ) + ); + + // ───────────────────────────────────────────────────────────────────────────── + // 5. Foreign Key & Datetime Filters + // ───────────────────────────────────────────────────────────────────────────── + section('5. Foreign Key & Datetime Filters'); + const dbId = tables.data?.tables?.nodes?.[0]?.database?.schemaName; + if (dbId) { + const dbResult = await db.database + .findMany({ + select: { id: true }, + first: 1, + where: { schemaName: { equalTo: dbId } }, + }) + .execute(); + const databaseId = dbResult.data?.databases?.nodes?.[0]?.id; + if (databaseId) { + const filtered = await db.table + .findMany({ + select: { name: true }, + first: 5, + where: { databaseId: { equalTo: databaseId } }, + }) + .execute(); + console.log( + 'Tables in DB:', + filtered.data?.tables?.nodes?.map((t) => t.name) + ); + } + } + + const thirtyDaysAgo = new Date( + Date.now() - 30 * 24 * 60 * 60 * 1000 + ).toISOString(); + const recentDbs = await db.database + .findMany({ + select: { schemaName: true, createdAt: true }, + first: 3, + where: { createdAt: { greaterThan: thirtyDaysAgo } }, + orderBy: ['CREATED_AT_DESC'], + }) + .execute(); + console.log( + 'Recent DBs:', + recentDbs.data?.databases?.nodes?.map((d) => d.schemaName) + ); + + // ───────────────────────────────────────────────────────────────────────────── + // 6. Custom Queries + // ───────────────────────────────────────────────────────────────────────────── + section('6. Custom Queries'); + const currentUser = await db.query + .getCurrentUser({ + select: { id: true, username: true, displayName: true }, + }) + .execute(); + console.log('Current user:', currentUser.data?.getCurrentUser?.username); + + // ───────────────────────────────────────────────────────────────────────────── + // 7. Error Handling: execute(), unwrap(), unwrapOr() + // ───────────────────────────────────────────────────────────────────────────── + section('7. Error Handling'); + + // execute() - discriminated union { ok, data, errors } + const result = await db.user + .findMany({ select: { id: true }, first: 1 }) + .execute(); + console.log( + 'execute():', + result.ok + ? `ok, ${result.data.users?.nodes?.length} users` + : `error: ${result.errors[0]?.message}` + ); + + // unwrap() - throws on error + try { + const data = await db.database + .findMany({ select: { id: true }, first: 1 }) + .unwrap(); + console.log('unwrap():', data.databases?.nodes?.length, 'databases'); + } catch (e) { + if (e instanceof GraphQLRequestError) + console.log('unwrap() error:', e.message); + } + + // unwrapOr() - returns default on error + const defaultData = { + users: { + nodes: [] as { id: string }[], + totalCount: 0, + pageInfo: { hasNextPage: false, hasPreviousPage: false }, + }, + }; + const safeData = await db.user + .findMany({ select: { id: true }, first: 1 }) + .unwrapOr(defaultData); + console.log('unwrapOr():', safeData.users?.nodes?.length ?? 0, 'users'); + + // ───────────────────────────────────────────────────────────────────────────── + // 8. toGraphQL() - Inspect generated queries + // ───────────────────────────────────────────────────────────────────────────── + section('8. toGraphQL() - Query Inspection'); + const query = db.user.findMany({ + select: { + id: true, + username: true, + userProfile: { select: { displayName: true } }, + }, + first: 5, + where: { username: { isNull: false } }, + orderBy: ['USERNAME_ASC'], + }); + console.log('Generated GraphQL:\n', query.toGraphQL()); + + console.log('\n✓ All demos completed!'); +} + +main().catch((e) => { + console.error('Failed:', e); + process.exit(1); +}); diff --git a/graphql/codegen/examples/output/.gitkeep b/graphql/codegen/examples/output/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/graphql/codegen/examples/react-query-sdk.ts b/graphql/codegen/examples/react-query-sdk.ts new file mode 100644 index 000000000..48c66780d --- /dev/null +++ b/graphql/codegen/examples/react-query-sdk.ts @@ -0,0 +1,230 @@ +/** + * React Query SDK Example + * Run: pnpm exec tsx examples/react-query-sdk.ts + */ +import { + configure, + setHeader, + execute, + executeWithErrors, + GraphQLClientError, +} from '../examples/output/generated-sdk/client'; +import { + usersQueryDocument, + type UsersQueryResult, + type UsersQueryVariables, +} from '../examples/output/generated-sdk/queries/useUsersQuery'; +import { + userQueryDocument, + type UserQueryResult, + type UserQueryVariables, +} from '../examples/output/generated-sdk/queries/useUserQuery'; +import { + databasesQueryDocument, + type DatabasesQueryResult, + type DatabasesQueryVariables, +} from '../examples/output/generated-sdk/queries/useDatabasesQuery'; +import { + tablesQueryDocument, + type TablesQueryResult, + type TablesQueryVariables, +} from '../examples/output/generated-sdk/queries/useTablesQuery'; +import { + getCurrentUserQueryDocument, + type GetCurrentUserQueryResult, +} from '../examples/output/generated-sdk/queries/useGetCurrentUserQuery'; +import { + userByUsernameQueryDocument, + type UserByUsernameQueryResult, + type UserByUsernameQueryVariables, +} from '../examples/output/generated-sdk/queries/useUserByUsernameQuery'; +import { + loginMutationDocument, + type LoginMutationResult, + type LoginMutationVariables, +} from '../examples/output/generated-sdk/mutations/useLoginMutation'; +import type { + UserFilter, + TableFilter, +} from '../examples/output/generated-sdk/schema-types'; + +const ENDPOINT = 'http://api.localhost:3000/graphql'; +const section = (title: string) => + console.log(`\n${'─'.repeat(50)}\n${title}\n${'─'.repeat(50)}`); + +async function main() { + console.log('React Query SDK Demo\n'); + + // ───────────────────────────────────────────────────────────────────────────── + // 1. Configuration + // ───────────────────────────────────────────────────────────────────────────── + section('1. Configuration'); + configure({ + endpoint: ENDPOINT, + headers: { 'Content-Type': 'application/json' }, + }); + console.log('✓ Client configured'); + + // ───────────────────────────────────────────────────────────────────────────── + // 2. Login Mutation + // ───────────────────────────────────────────────────────────────────────────── + section('2. Login Mutation'); + try { + const loginResult = await execute< + LoginMutationResult, + LoginMutationVariables + >(loginMutationDocument, { + input: { email: 'admin@gmail.com', password: 'password1111!@#$' }, + }); + const token = loginResult.login?.apiToken?.accessToken; + if (token) { + // Use setHeader() to update auth without re-configuring + setHeader('Authorization', `Bearer ${token}`); + console.log('✓ Logged in, token:', token.slice(0, 30) + '...'); + } + } catch (e) { + if (e instanceof GraphQLClientError) + console.log('Login failed:', e.errors[0]?.message); + else throw e; + } + + // ───────────────────────────────────────────────────────────────────────────── + // 3. List Query with Pagination + // ───────────────────────────────────────────────────────────────────────────── + section('3. List Query with Pagination'); + const { data, errors } = await executeWithErrors< + UsersQueryResult, + UsersQueryVariables + >(usersQueryDocument, { first: 5, orderBy: ['USERNAME_ASC'] }); + console.log( + 'Users:', + data?.users?.nodes?.map((u) => u.username) + ); + console.log( + 'Total:', + data?.users?.totalCount, + '| HasNext:', + data?.users?.pageInfo.hasNextPage + ); + + // ───────────────────────────────────────────────────────────────────────────── + // 4. PostGraphile Filters + // ───────────────────────────────────────────────────────────────────────────── + section('4. PostGraphile Filters'); + + // String filter + const filter1: UserFilter = { username: { includesInsensitive: 'seed' } }; + const r1 = await executeWithErrors( + usersQueryDocument, + { first: 5, filter: filter1 } + ); + console.log( + 'includesInsensitive "seed":', + r1.data?.users?.nodes?.map((u) => u.username) + ); + + // AND/OR/NOT composition + const filter2: UserFilter = { + and: [ + { username: { isNull: false } }, + { or: [{ type: { equalTo: 0 } }, { type: { greaterThan: 5 } }] }, + ], + }; + const r2 = await executeWithErrors( + usersQueryDocument, + { first: 5, filter: filter2 } + ); + console.log( + 'AND/OR filter:', + r2.data?.users?.nodes?.map((u) => ({ u: u.username, t: u.type })) + ); + + // ───────────────────────────────────────────────────────────────────────────── + // 5. Single Item & Unique Constraint Queries + // ───────────────────────────────────────────────────────────────────────────── + section('5. Single Item & Unique Constraint Queries'); + const userId = data?.users?.nodes?.[0]?.id; + if (userId) { + const { data: userData } = await executeWithErrors< + UserQueryResult, + UserQueryVariables + >(userQueryDocument, { id: userId }); + console.log('User by ID:', userData?.user?.username); + } + + const { data: byUsername } = await executeWithErrors< + UserByUsernameQueryResult, + UserByUsernameQueryVariables + >(userByUsernameQueryDocument, { username: 'seeder' }); + console.log('User by username:', byUsername?.userByUsername?.displayName); + + // ───────────────────────────────────────────────────────────────────────────── + // 6. Custom Queries + // ───────────────────────────────────────────────────────────────────────────── + section('6. Custom Queries'); + const { data: currentUser } = + await executeWithErrors( + getCurrentUserQueryDocument + ); + console.log('Current user:', currentUser?.getCurrentUser?.username); + + // ───────────────────────────────────────────────────────────────────────────── + // 7. Relation Queries (Foreign Key Filter) + // ───────────────────────────────────────────────────────────────────────────── + section('7. Relation Queries'); + const { data: dbData } = await executeWithErrors< + DatabasesQueryResult, + DatabasesQueryVariables + >(databasesQueryDocument, { first: 1 }); + const databaseId = dbData?.databases?.nodes?.[0]?.id; + if (databaseId) { + const tableFilter: TableFilter = { databaseId: { equalTo: databaseId } }; + const { data: tablesData } = await executeWithErrors< + TablesQueryResult, + TablesQueryVariables + >(tablesQueryDocument, { + first: 5, + filter: tableFilter, + orderBy: ['NAME_ASC'], + }); + console.log( + 'Tables in DB:', + tablesData?.tables?.nodes?.map((t) => t.name) + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // 8. Error Handling + // ───────────────────────────────────────────────────────────────────────────── + section('8. Error Handling'); + + // executeWithErrors - graceful, returns { data, errors } + const { data: d1, errors: e1 } = await executeWithErrors< + UserQueryResult, + UserQueryVariables + >(userQueryDocument, { id: '00000000-0000-0000-0000-000000000000' }); + console.log( + 'executeWithErrors:', + d1?.user ?? 'null', + '| errors:', + e1?.[0]?.message ?? 'none' + ); + + // execute - throws on error + try { + await execute( + loginMutationDocument, + { input: { email: 'invalid@x.com', password: 'wrong' } } + ); + } catch (e) { + if (e instanceof GraphQLClientError) + console.log('execute() caught:', e.message); + } + + console.log('\n✓ All demos completed!'); +} + +main().catch((e) => { + console.error('Failed:', e); + process.exit(1); +}); diff --git a/graphql/codegen/examples/test-orm.ts b/graphql/codegen/examples/test-orm.ts deleted file mode 100644 index 70af01ed3..000000000 --- a/graphql/codegen/examples/test-orm.ts +++ /dev/null @@ -1,325 +0,0 @@ -/** - * Test script for ORM client. - * - * This file exercises the ORM client with TypeScript autocomplete. - * Run with: pnpm -C packages/graphql-sdk exec tsx examples/test-orm.ts - */ - -import { createClient, GraphQLRequestError } from '../output-orm'; -import { DB_GRAPHQL_ENDPOINT, SEED_USER, login } from './test.config'; - -// Create client instance (will be reconfigured after login) -let db = createClient({ endpoint: DB_GRAPHQL_ENDPOINT }); - -// ============================================================================ -// Test Functions -// ============================================================================ - -async function testLogin() { - console.log('========================================'); - console.log('ORM: Login mutation test'); - console.log('========================================'); - - const loginQuery = db.mutation.login( - { input: { email: SEED_USER.email, password: SEED_USER.password } }, - { - select: { - apiToken: { - select: { - totpEnabled: true, - accessToken: true, - expiresAt: true, - } - } - }, - } - ); - - console.log('Generated mutation:'); - console.log(loginQuery.toGraphQL()); - - const result = await loginQuery.execute(); - - if (result.errors) { - console.log('Login errors:', result.errors); - return null; - } - - const token = result.data?.login?.apiToken?.accessToken; - console.log('Login success, token:', token ? `${token.slice(0, 20)}...` : 'null'); - return token; -} - -async function testUsers() { - console.log('========================================'); - console.log('ORM: Users findMany'); - console.log('========================================'); - - const result = await db.user - .findMany({ - select: { id: true, username: true, displayName: true }, - first: 5, - }) - .execute(); - - if (result.errors) { - console.log('Users errors:', result.errors); - } else { - console.log('Total users:', result.data?.users?.totalCount ?? 0); - console.log( - 'Users:', - result.data?.users?.nodes?.map((u) => ({ - username: u.username, - displayName: u.displayName, - })) ?? [] - ); - } -} - -async function testProducts() { - console.log('========================================'); - console.log('ORM: Products findMany'); - console.log('========================================'); - - const result = await db.product - .findMany({ - select: { id: true, name: true, price: true }, - first: 5, - }) - .execute(); - - if (result.errors) { - console.log('Products errors:', result.errors); - } else { - console.log('Total products:', result.data?.products?.totalCount ?? 0); - console.log( - 'Products:', - result.data?.products?.nodes?.slice(0, 3).map((p) => ({ - name: p.name, - price: p.price, - })) ?? [] - ); - } -} - -async function testCategories() { - console.log('========================================'); - console.log('ORM: Categories findMany'); - console.log('========================================'); - - const result = await db.category - .findMany({ - select: { id: true, name: true, slug: true }, - first: 10, - }) - .execute(); - - if (result.errors) { - console.log('Categories errors:', result.errors); - } else { - console.log('Total categories:', result.data?.categories?.totalCount ?? 0); - console.log( - 'Categories:', - result.data?.categories?.nodes?.map((c) => c.name) ?? [] - ); - } -} - -async function testCurrentUser() { - console.log('========================================'); - console.log('ORM: currentUser query'); - console.log('========================================'); - - const result = await db.query - .currentUser({ - select: { id: true, username: true, displayName: true }, - }) - .execute(); - - if (result.errors) { - console.log('currentUser errors:', result.errors); - } else if (result.data?.currentUser) { - console.log('Current user:', { - id: result.data.currentUser.id, - username: result.data.currentUser.username, - displayName: result.data.currentUser.displayName, - }); - } else { - console.log('Current user: Not logged in (null)'); - } -} - -async function testRelations() { - console.log('========================================'); - console.log('ORM: Relations selection'); - console.log('========================================'); - - const ordersQuery = db.order.findMany({ - select: { - id: true, - orderNumber: true, - status: true, - // belongsTo relation - customer: { - select: { id: true, username: true }, - }, - // hasMany relation - orderItems: { - select: { id: true, quantity: true }, - first: 3, - }, - }, - first: 2, - }); - - console.log('Generated query:'); - console.log(ordersQuery.toGraphQL()); - - const result = await ordersQuery.execute(); - - if (result.errors) { - console.log('Orders errors:', result.errors); - } else { - console.log( - 'Orders:', - JSON.stringify(result.data?.orders?.nodes ?? [], null, 2) - ); - } -} - -async function testTypeInference() { - console.log('========================================'); - console.log('ORM: Type inference'); - console.log('========================================'); - - const result = await db.user - .findMany({ - select: { id: true, username: true }, // Only these fields - }) - .execute(); - - if (result.data?.users?.nodes?.[0]) { - const user = result.data.users.nodes[0]; - // TypeScript narrows type to only selected fields - console.log('User ID:', user.id); - console.log('Username:', user.username); - // user.displayName would be a TypeScript error (not selected) - } -} - -async function testErrorHandling() { - console.log('========================================'); - console.log('ORM: Error handling'); - console.log('========================================'); - - // Test discriminated union - const result = await db.user - .findMany({ select: { id: true }, first: 1 }) - .execute(); - - if (result.ok) { - console.log('Success (ok=true):', result.data.users?.nodes?.length, 'users'); - } else { - console.log('Error (ok=false):', result.errors[0]?.message); - } - - // Test unwrap - try { - const data = await db.product - .findMany({ select: { id: true }, first: 1 }) - .unwrap(); - console.log('unwrap() success:', data.products?.nodes?.length, 'products'); - } catch (error) { - if (error instanceof GraphQLRequestError) { - console.log('unwrap() caught:', error.message); - } else { - throw error; - } - } - - // Test unwrapOr - const dataOrDefault = await db.category - .findMany({ select: { id: true }, first: 1 }) - .unwrapOr({ - categories: { - nodes: [], - totalCount: 0, - pageInfo: { hasNextPage: false, hasPreviousPage: false }, - }, - }); - console.log( - 'unwrapOr() result:', - dataOrDefault.categories?.nodes?.length ?? 0, - 'categories' - ); -} - -// ============================================================================ -// Main -// ============================================================================ - -async function main() { - console.log('========================================'); - console.log('ORM Client Test Script'); - console.log(`Endpoint: ${DB_GRAPHQL_ENDPOINT}`); - console.log('========================================\n'); - - // Step 1: Login using shared config helper - console.log('Logging in via config helper...'); - try { - const token = await login(DB_GRAPHQL_ENDPOINT, SEED_USER); - console.log('Login successful\n'); - - // Reconfigure client with auth - db = createClient({ - endpoint: DB_GRAPHQL_ENDPOINT, - headers: { Authorization: `Bearer ${token}` }, - }); - } catch (error) { - console.warn( - 'Config login failed, trying ORM login:', - error instanceof Error ? error.message : error - ); - - // Fallback: try ORM login mutation - const ormToken = await testLogin(); - if (ormToken) { - db = createClient({ - endpoint: DB_GRAPHQL_ENDPOINT, - headers: { Authorization: `Bearer ${ormToken}` }, - }); - } - console.log(''); - } - - // Step 2: Run tests - await testUsers(); - console.log(''); - - await testCurrentUser(); - console.log(''); - - await testProducts(); - console.log(''); - - await testCategories(); - console.log(''); - - await testRelations(); - console.log(''); - - await testTypeInference(); - console.log(''); - - await testErrorHandling(); - console.log(''); - - console.log('========================================'); - console.log('All tests completed'); - console.log('========================================'); -} - -main().catch((error) => { - console.error('test-orm failed:', error); - process.exit(1); -}); diff --git a/graphql/codegen/examples/test-rq.ts b/graphql/codegen/examples/test-rq.ts deleted file mode 100644 index 9660d1915..000000000 --- a/graphql/codegen/examples/test-rq.ts +++ /dev/null @@ -1,207 +0,0 @@ -/** - * Test script for React Query mode (non-React manual usage). - * - * This file demonstrates the NEW convenience helpers that eliminate manual generic assembly. - * Run with: pnpm -C packages/graphql-sdk exec tsx examples/test-rq.ts - */ - -import { QueryClient } from '@tanstack/react-query'; -import { configure } from '../output-rq/client'; - -// NEW: Import the standalone fetch functions - no generics needed! -import { - fetchUsersQuery, - prefetchUsersQuery, - usersQueryKey, -} from '../output-rq/queries/useUsersQuery'; -import { fetchCurrentUserQuery } from '../output-rq/queries/useCurrentUserQuery'; -import { fetchProductsQuery } from '../output-rq/queries/useProductsQuery'; -import { fetchCategoriesQuery } from '../output-rq/queries/useCategoriesQuery'; - -import { DB_GRAPHQL_ENDPOINT, SEED_USER, login } from './test.config'; - -const queryClient = new QueryClient(); - -// ============================================================================ -// Test Functions - Demonstrating NEW DX -// ============================================================================ - -async function testFetchUsers() { - console.log('========================================'); - console.log('NEW DX: fetchUsersQuery (no generics!)'); - console.log('========================================'); - - // OLD WAY (verbose, requires generics): - // const data = await execute( - // usersQueryDocument, - // { first: 5, orderBy: ['CREATED_AT_DESC'] } - // ); - - // NEW WAY (clean, type-safe, no generics needed): - const data = await fetchUsersQuery({ - first: 5, - orderBy: ['CREATED_AT_DESC'], - }); - - console.log('Total users:', data.users.totalCount); - console.log( - 'First user:', - data.users.nodes[0] - ? { id: data.users.nodes[0].id, username: data.users.nodes[0].username } - : 'none' - ); -} - -async function testPrefetchUsers() { - console.log('========================================'); - console.log('NEW DX: prefetchUsersQuery (SSR-ready)'); - console.log('========================================'); - - // Prefetch for SSR or cache warming - also no generics! - await prefetchUsersQuery(queryClient, { first: 10 }); - - // Data is now in cache, can access via query key - const cachedData = queryClient.getQueryData(usersQueryKey({ first: 10 })); - console.log('Prefetched and cached:', cachedData ? 'yes' : 'no'); -} - -async function testFetchCurrentUser() { - console.log('========================================'); - console.log('NEW DX: fetchCurrentUserQuery'); - console.log('========================================'); - - try { - const data = await fetchCurrentUserQuery(); - - if (data.currentUser) { - console.log('Current user:', { - id: data.currentUser.id, - username: data.currentUser.username, - displayName: data.currentUser.displayName, - }); - } else { - console.log('Current user: Not logged in (null)'); - } - } catch (error) { - // Some schemas may not have full currentUser permissions - console.log( - 'currentUser query failed (permission issue):', - error instanceof Error ? error.message : error - ); - } -} - -async function testFetchProducts() { - console.log('========================================'); - console.log('NEW DX: fetchProductsQuery'); - console.log('========================================'); - - const data = await fetchProductsQuery({ - first: 5, - orderBy: ['NAME_ASC'], - }); - - console.log('Total products:', data.products.totalCount); - console.log( - 'Products:', - data.products.nodes.slice(0, 3).map((p) => ({ name: p.name, price: p.price })) - ); -} - -async function testFetchCategories() { - console.log('========================================'); - console.log('NEW DX: fetchCategoriesQuery'); - console.log('========================================'); - - const data = await fetchCategoriesQuery({ first: 10 }); - - console.log('Total categories:', data.categories.totalCount); - console.log( - 'Categories:', - data.categories.nodes.map((c) => c.name) - ); -} - -async function testWithQueryClient() { - console.log('========================================'); - console.log('With QueryClient.fetchQuery'); - console.log('========================================'); - - // Can still use QueryClient if needed - helpers work great with it too - const data = await queryClient.fetchQuery({ - queryKey: usersQueryKey({ first: 1 }), - queryFn: () => fetchUsersQuery({ first: 1 }), - }); - - console.log( - 'QueryClient result:', - data.users.nodes[0] - ? { id: data.users.nodes[0].id } - : 'none' - ); -} - -// ============================================================================ -// Main -// ============================================================================ - -async function main() { - console.log('========================================'); - console.log('React Query Test Script - NEW DX Demo'); - console.log(`Endpoint: ${DB_GRAPHQL_ENDPOINT}`); - console.log('========================================\n'); - - // Configure client with endpoint - configure({ endpoint: DB_GRAPHQL_ENDPOINT }); - - // Login to get auth token - console.log('Logging in...'); - try { - const token = await login(DB_GRAPHQL_ENDPOINT, SEED_USER); - console.log('Login successful, token obtained\n'); - - // Reconfigure with auth header - configure({ - endpoint: DB_GRAPHQL_ENDPOINT, - headers: { Authorization: `Bearer ${token}` }, - }); - } catch (error) { - console.warn( - 'Login failed (continuing without auth):', - error instanceof Error ? error.message : error - ); - console.log(''); - } - - // Run tests demonstrating NEW DX - await testFetchUsers(); - console.log(''); - - await testPrefetchUsers(); - console.log(''); - - await testFetchCurrentUser(); - console.log(''); - - await testFetchProducts(); - console.log(''); - - await testFetchCategories(); - console.log(''); - - await testWithQueryClient(); - console.log(''); - - console.log('========================================'); - console.log('All tests completed!'); - console.log(''); - console.log('KEY IMPROVEMENT:'); - console.log(' Before: execute(usersQueryDocument, vars)'); - console.log(' After: fetchUsersQuery(vars)'); - console.log('========================================'); -} - -main().catch((error) => { - console.error('test-rq failed:', error); - process.exit(1); -}); diff --git a/graphql/codegen/examples/test.config.ts b/graphql/codegen/examples/test.config.ts deleted file mode 100644 index afe6a8a1f..000000000 --- a/graphql/codegen/examples/test.config.ts +++ /dev/null @@ -1,215 +0,0 @@ -/** - * Shared test configuration for example scripts. - * - * Endpoints should point to a seeded database created via: - * pnpm --filter admin seed:schema-builder --email= --password= - * - * After seeding, update DB_GRAPHQL_ENDPOINT with the output endpoint URL. - */ - -// ============================================================================ -// Endpoint Configuration -// ============================================================================ - -/** - * GraphQL endpoint for the seeded application database. - * Update this after running the seed script. - */ -export const DB_GRAPHQL_ENDPOINT = - 'http://public-8d3a1ec3.localhost:3000/graphql'; - -// ============================================================================ -// Seed User Credentials -// ============================================================================ - -/** - * Credentials for the seeded admin user. - * These match SEED_USER_EMAIL and SEED_USER_PASSWORD in seed-schema-builder.ts - */ -export const SEED_USER = { - email: 'seeder@gmail.com', - password: 'password1111!@#$', -} as const; - -/** - * Alternative seed user for direct endpoint seeding. - */ -export const SEED_USER_ALT = { - email: 'seederalt@gmail.com', - password: 'password1111!@#$', -} as const; - -// ============================================================================ -// File Paths -// ============================================================================ - -/** - * Path for downloaded schema file (relative to examples/). - */ -export const SCHEMA_FILE = 'test.graphql'; - -// ============================================================================ -// Helper Functions -// ============================================================================ - -/** - * Login mutation document for obtaining auth token. - */ -export const LOGIN_MUTATION = ` - mutation Login($input: LoginInput!) { - login(input: $input) { - apiToken { - accessToken - accessTokenExpiresAt - } - } - } -`; - -/** - * Execute a GraphQL request against an endpoint. - */ -export async function executeGraphQL>( - endpoint: string, - query: string, - variables?: V, - headers?: Record -): Promise<{ data?: T; errors?: Array<{ message: string }> }> { - const response = await fetch(endpoint, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - ...headers, - }, - body: JSON.stringify({ query, variables }), - }); - - return response.json() as Promise<{ - data?: T; - errors?: Array<{ message: string }>; - }>; -} - -/** - * Login and return the access token. - */ -export async function login( - endpoint: string = DB_GRAPHQL_ENDPOINT, - credentials: { email: string; password: string } = SEED_USER -): Promise { - const result = await executeGraphQL<{ - login: { - apiToken: { accessToken: string; accessTokenExpiresAt: string } | null; - }; - }>(endpoint, LOGIN_MUTATION, { input: credentials }); - - if (result.errors?.length) { - throw new Error(`Login failed: ${result.errors[0].message}`); - } - - const token = result.data?.login?.apiToken?.accessToken; - if (!token) { - throw new Error('Login failed: No access token returned'); - } - - return token; -} - -/** - * Introspection query for schema download. - */ -export const INTROSPECTION_QUERY = ` - query IntrospectionQuery { - __schema { - queryType { name } - mutationType { name } - subscriptionType { name } - types { - ...FullType - } - directives { - name - description - locations - args { - ...InputValue - } - } - } - } - - fragment FullType on __Type { - kind - name - description - fields(includeDeprecated: true) { - name - description - args { - ...InputValue - } - type { - ...TypeRef - } - isDeprecated - deprecationReason - } - inputFields { - ...InputValue - } - interfaces { - ...TypeRef - } - enumValues(includeDeprecated: true) { - name - description - isDeprecated - deprecationReason - } - possibleTypes { - ...TypeRef - } - } - - fragment InputValue on __InputValue { - name - description - type { - ...TypeRef - } - defaultValue - } - - fragment TypeRef on __Type { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - } - } - } - } - } - } - } - } -`; diff --git a/graphql/codegen/examples/test.graphql b/graphql/codegen/examples/test.graphql deleted file mode 100644 index ac3a3fdae..000000000 --- a/graphql/codegen/examples/test.graphql +++ /dev/null @@ -1,21744 +0,0 @@ -"""The root query type which gives access points into the data universe.""" -type Query { - """ - Exposes the root query type nested one level down. This is helpful for Relay 1 - which can only query top level fields if they are in a particular form. - """ - query: Query! - - """Reads and enables pagination through a set of `Category`.""" - categories( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Category`.""" - orderBy: [CategoriesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: CategoryCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: CategoryFilter - ): CategoriesConnection - - """Reads and enables pagination through a set of `CryptoAddress`.""" - cryptoAddresses( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `CryptoAddress`.""" - orderBy: [CryptoAddressesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: CryptoAddressCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: CryptoAddressFilter - ): CryptoAddressesConnection - - """Reads and enables pagination through a set of `Email`.""" - emails( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Email`.""" - orderBy: [EmailsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: EmailCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: EmailFilter - ): EmailsConnection - - """Reads and enables pagination through a set of `OrderItem`.""" - orderItems( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderItemCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderItemFilter - ): OrderItemsConnection - - """Reads and enables pagination through a set of `Order`.""" - orders( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Order`.""" - orderBy: [OrdersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderFilter - ): OrdersConnection - - """Reads and enables pagination through a set of `PhoneNumber`.""" - phoneNumbers( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `PhoneNumber`.""" - orderBy: [PhoneNumbersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: PhoneNumberCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: PhoneNumberFilter - ): PhoneNumbersConnection - - """Reads and enables pagination through a set of `Product`.""" - products( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): ProductsConnection - - """Reads and enables pagination through a set of `Review`.""" - reviews( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ReviewCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ReviewFilter - ): ReviewsConnection - - """Reads and enables pagination through a set of `RoleType`.""" - roleTypes( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `RoleType`.""" - orderBy: [RoleTypesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: RoleTypeCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: RoleTypeFilter - ): RoleTypesConnection - - """Reads and enables pagination through a set of `User`.""" - users( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UsersConnection - - """Reads and enables pagination through a set of `AppAdminGrant`.""" - appAdminGrants( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAdminGrantFilter - ): AppAdminGrantsConnection - - """Reads and enables pagination through a set of `AppGrant`.""" - appGrants( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppGrantFilter - ): AppGrantsConnection - - """Reads and enables pagination through a set of `AppMembershipDefault`.""" - appMembershipDefaults( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppMembershipDefault`.""" - orderBy: [AppMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppMembershipDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppMembershipDefaultFilter - ): AppMembershipDefaultsConnection - - """Reads and enables pagination through a set of `AppMembership`.""" - appMemberships( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppMembership`.""" - orderBy: [AppMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppMembershipCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppMembershipFilter - ): AppMembershipsConnection - - """Reads and enables pagination through a set of `AppOwnerGrant`.""" - appOwnerGrants( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppOwnerGrantFilter - ): AppOwnerGrantsConnection - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrants( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrants( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection - - """Reads and enables pagination through a set of `MembershipMember`.""" - membershipMembers( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMember`.""" - orderBy: [MembershipMembersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMemberCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMemberFilter - ): MembershipMembersConnection - - """ - Reads and enables pagination through a set of `MembershipMembershipDefault`. - """ - membershipMembershipDefaults( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMembershipDefault`.""" - orderBy: [MembershipMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMembershipDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMembershipDefaultFilter - ): MembershipMembershipDefaultsConnection - - """Reads and enables pagination through a set of `MembershipMembership`.""" - membershipMemberships( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMembership`.""" - orderBy: [MembershipMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMembershipCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMembershipFilter - ): MembershipMembershipsConnection - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrants( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection - - """Reads and enables pagination through a set of `MembershipType`.""" - membershipTypes( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipType`.""" - orderBy: [MembershipTypesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipTypeCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipTypeFilter - ): MembershipTypesConnection - - """Reads and enables pagination through a set of `AppPermissionDefault`.""" - appPermissionDefaults( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppPermissionDefault`.""" - orderBy: [AppPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppPermissionDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppPermissionDefaultFilter - ): AppPermissionDefaultsConnection - - """Reads and enables pagination through a set of `AppPermission`.""" - appPermissions( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppPermission`.""" - orderBy: [AppPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppPermissionCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppPermissionFilter - ): AppPermissionsConnection - - """ - Reads and enables pagination through a set of `MembershipPermissionDefault`. - """ - membershipPermissionDefaults( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipPermissionDefault`.""" - orderBy: [MembershipPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipPermissionDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipPermissionDefaultFilter - ): MembershipPermissionDefaultsConnection - - """Reads and enables pagination through a set of `MembershipPermission`.""" - membershipPermissions( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipPermission`.""" - orderBy: [MembershipPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipPermissionCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipPermissionFilter - ): MembershipPermissionsConnection - - """Reads and enables pagination through a set of `AppLimitDefault`.""" - appLimitDefaults( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppLimitDefault`.""" - orderBy: [AppLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppLimitDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLimitDefaultFilter - ): AppLimitDefaultsConnection - - """Reads and enables pagination through a set of `AppLimit`.""" - appLimits( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppLimit`.""" - orderBy: [AppLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLimitFilter - ): AppLimitsConnection - - """ - Reads and enables pagination through a set of `MembershipLimitDefault`. - """ - membershipLimitDefaults( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipLimitDefault`.""" - orderBy: [MembershipLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipLimitDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipLimitDefaultFilter - ): MembershipLimitDefaultsConnection - - """Reads and enables pagination through a set of `MembershipLimit`.""" - membershipLimits( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipLimitFilter - ): MembershipLimitsConnection - - """Reads and enables pagination through a set of `AppAchievement`.""" - appAchievements( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAchievement`.""" - orderBy: [AppAchievementsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAchievementCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAchievementFilter - ): AppAchievementsConnection - - """Reads and enables pagination through a set of `AppLevelRequirement`.""" - appLevelRequirements( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppLevelRequirement`.""" - orderBy: [AppLevelRequirementsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppLevelRequirementCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLevelRequirementFilter - ): AppLevelRequirementsConnection - - """Reads and enables pagination through a set of `AppLevel`.""" - appLevels( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppLevel`.""" - orderBy: [AppLevelsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppLevelCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLevelFilter - ): AppLevelsConnection - - """Reads and enables pagination through a set of `AppStep`.""" - appSteps( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppStep`.""" - orderBy: [AppStepsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppStepCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppStepFilter - ): AppStepsConnection - - """Reads and enables pagination through a set of `ClaimedInvite`.""" - claimedInvites( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ClaimedInviteFilter - ): ClaimedInvitesConnection - - """Reads and enables pagination through a set of `Invite`.""" - invites( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Invite`.""" - orderBy: [InvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: InviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: InviteFilter - ): InvitesConnection - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvites( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvites( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection - - """Reads and enables pagination through a set of `AuditLog`.""" - auditLogs( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AuditLog`.""" - orderBy: [AuditLogsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AuditLogCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AuditLogFilter - ): AuditLogsConnection - category(id: UUID!): Category - cryptoAddress(id: UUID!): CryptoAddress - cryptoAddressByAddress(address: String!): CryptoAddress - email(id: UUID!): Email - emailByEmail(email: String!): Email - orderItem(id: UUID!): OrderItem - order(id: UUID!): Order - phoneNumber(id: UUID!): PhoneNumber - phoneNumberByNumber(number: String!): PhoneNumber - product(id: UUID!): Product - review(id: UUID!): Review - roleType(id: Int!): RoleType - roleTypeByName(name: String!): RoleType - user(id: UUID!): User - userByUsername(username: String!): User - appAdminGrant(id: UUID!): AppAdminGrant - appGrant(id: UUID!): AppGrant - appMembershipDefault(id: UUID!): AppMembershipDefault - appMembership(id: UUID!): AppMembership - appMembershipByActorId(actorId: UUID!): AppMembership - appOwnerGrant(id: UUID!): AppOwnerGrant - membershipAdminGrant(id: UUID!): MembershipAdminGrant - membershipGrant(id: UUID!): MembershipGrant - membershipMember(id: UUID!): MembershipMember - membershipMemberByActorIdAndEntityId(actorId: UUID!, entityId: UUID!): MembershipMember - membershipMembershipDefault(id: UUID!): MembershipMembershipDefault - membershipMembershipDefaultByEntityId(entityId: UUID!): MembershipMembershipDefault - membershipMembership(id: UUID!): MembershipMembership - membershipMembershipByActorIdAndEntityId(actorId: UUID!, entityId: UUID!): MembershipMembership - membershipOwnerGrant(id: UUID!): MembershipOwnerGrant - membershipType(id: Int!): MembershipType - membershipTypeByName(name: String!): MembershipType - appPermissionDefault(id: UUID!): AppPermissionDefault - appPermission(id: UUID!): AppPermission - appPermissionByName(name: String!): AppPermission - appPermissionByBitnum(bitnum: Int!): AppPermission - membershipPermissionDefault(id: UUID!): MembershipPermissionDefault - membershipPermission(id: UUID!): MembershipPermission - membershipPermissionByName(name: String!): MembershipPermission - membershipPermissionByBitnum(bitnum: Int!): MembershipPermission - appLimitDefault(id: UUID!): AppLimitDefault - appLimitDefaultByName(name: String!): AppLimitDefault - appLimit(id: UUID!): AppLimit - appLimitByNameAndActorId(name: String!, actorId: UUID!): AppLimit - membershipLimitDefault(id: UUID!): MembershipLimitDefault - membershipLimitDefaultByName(name: String!): MembershipLimitDefault - membershipLimit(id: UUID!): MembershipLimit - membershipLimitByNameAndActorIdAndEntityId(name: String!, actorId: UUID!, entityId: UUID!): MembershipLimit - appAchievement(id: UUID!): AppAchievement - appAchievementByActorIdAndName(actorId: UUID!, name: String!): AppAchievement - appLevelRequirement(id: UUID!): AppLevelRequirement - appLevelRequirementByNameAndLevel(name: String!, level: String!): AppLevelRequirement - appLevel(id: UUID!): AppLevel - appLevelByName(name: String!): AppLevel - appStep(id: UUID!): AppStep - claimedInvite(id: UUID!): ClaimedInvite - invite(id: UUID!): Invite - inviteByEmailAndSenderId(email: String!, senderId: UUID!): Invite - inviteByInviteToken(inviteToken: String!): Invite - membershipClaimedInvite(id: UUID!): MembershipClaimedInvite - membershipInvite(id: UUID!): MembershipInvite - membershipInviteByEmailAndSenderIdAndEntityId(email: String!, senderId: UUID!, entityId: UUID!): MembershipInvite - membershipInviteByInviteToken(inviteToken: String!): MembershipInvite - auditLog(id: UUID!): AuditLog - - """Reads and enables pagination through a set of `AppPermission`.""" - appPermissionsGetByMask( - mask: BitString - - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppPermissionFilter - ): AppPermissionsConnection - appPermissionsGetMask(ids: [UUID]): BitString - appPermissionsGetMaskByNames(names: [String]): BitString - appPermissionsGetPaddedMask(mask: BitString): BitString - - """Reads and enables pagination through a set of `MembershipPermission`.""" - membershipPermissionsGetByMask( - mask: BitString - - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipPermissionFilter - ): MembershipPermissionsConnection - membershipPermissionsGetMask(ids: [UUID]): BitString - membershipPermissionsGetMaskByNames(names: [String]): BitString - membershipPermissionsGetPaddedMask(mask: BitString): BitString - stepsAchieved(vlevel: String, vroleId: UUID): Boolean - - """Reads and enables pagination through a set of `AppLevelRequirement`.""" - stepsRequired( - vlevel: String - vroleId: UUID - - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLevelRequirementFilter - ): AppLevelRequirementsConnection - currentIpAddress: InternetAddress - currentUser: User - currentUserAgent: String - currentUserId: UUID - _meta: Metaschema -} - -"""A connection to a list of `Category` values.""" -type CategoriesConnection { - """A list of `Category` objects.""" - nodes: [Category!]! - - """ - A list of edges which contains the `Category` and cursor to aid in pagination. - """ - edges: [CategoriesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Category` you could get from the connection.""" - totalCount: Int! -} - -type Category { - id: UUID! - name: String! - description: String - slug: String! - imageUrl: String - isActive: Boolean - sortOrder: Int - createdAt: Datetime - - """Reads and enables pagination through a set of `Product`.""" - products( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): ProductsConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByProductCategoryIdAndSellerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): CategoryUsersByProductCategoryIdAndSellerIdManyToManyConnection! -} - -""" -A universally unique identifier as defined by [RFC 4122](https://tools.ietf.org/html/rfc4122). -""" -scalar UUID - -""" -A point in time as described by the [ISO -8601](https://en.wikipedia.org/wiki/ISO_8601) standard. May or may not include a timezone. -""" -scalar Datetime - -"""A connection to a list of `Product` values.""" -type ProductsConnection { - """A list of `Product` objects.""" - nodes: [Product!]! - - """ - A list of edges which contains the `Product` and cursor to aid in pagination. - """ - edges: [ProductsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Product` you could get from the connection.""" - totalCount: Int! -} - -type Product { - id: UUID! - name: String! - description: String - price: BigFloat! - compareAtPrice: BigFloat - sku: String - inventoryQuantity: Int - weight: BigFloat - dimensions: String - isActive: Boolean - isFeatured: Boolean - tags: String - imageUrls: String - createdAt: Datetime - updatedAt: Datetime - sellerId: UUID! - categoryId: UUID - - """Reads a single `User` that is related to this `Product`.""" - seller: User - - """Reads a single `Category` that is related to this `Product`.""" - category: Category - - """Reads and enables pagination through a set of `OrderItem`.""" - orderItems( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderItemCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderItemFilter - ): OrderItemsConnection! - - """Reads and enables pagination through a set of `Review`.""" - reviews( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ReviewCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ReviewFilter - ): ReviewsConnection! - - """Reads and enables pagination through a set of `Order`.""" - ordersByOrderItemProductIdAndOrderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Order`.""" - orderBy: [OrdersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderFilter - ): ProductOrdersByOrderItemProductIdAndOrderIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByReviewProductIdAndUserId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): ProductUsersByReviewProductIdAndUserIdManyToManyConnection! -} - -""" -A floating point number that requires more precision than IEEE 754 binary 64 -""" -scalar BigFloat - -type User { - id: UUID! - username: String - displayName: String - profilePicture: JSON - searchTsv: FullText - type: Int! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `RoleType` that is related to this `User`.""" - roleTypeByType: RoleType - - """Reads and enables pagination through a set of `AppLimit`.""" - appLimitsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppLimit`.""" - orderBy: [AppLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLimitFilter - ): AppLimitsConnection! - - """Reads a single `AppMembership` that is related to this `User`.""" - appMembershipByActorId: AppMembership - - """Reads and enables pagination through a set of `AppAdminGrant`.""" - appAdminGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAdminGrantFilter - ): AppAdminGrantsConnection! - - """Reads and enables pagination through a set of `AppAdminGrant`.""" - appAdminGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAdminGrantFilter - ): AppAdminGrantsConnection! - - """Reads and enables pagination through a set of `AppOwnerGrant`.""" - appOwnerGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppOwnerGrantFilter - ): AppOwnerGrantsConnection! - - """Reads and enables pagination through a set of `AppOwnerGrant`.""" - appOwnerGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppOwnerGrantFilter - ): AppOwnerGrantsConnection! - - """Reads and enables pagination through a set of `AppGrant`.""" - appGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppGrantFilter - ): AppGrantsConnection! - - """Reads and enables pagination through a set of `AppGrant`.""" - appGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppGrantFilter - ): AppGrantsConnection! - - """Reads and enables pagination through a set of `AppStep`.""" - appStepsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppStep`.""" - orderBy: [AppStepsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppStepCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppStepFilter - ): AppStepsConnection! - - """Reads and enables pagination through a set of `AppAchievement`.""" - appAchievementsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAchievement`.""" - orderBy: [AppAchievementsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAchievementCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAchievementFilter - ): AppAchievementsConnection! - - """Reads and enables pagination through a set of `AppLevel`.""" - appLevelsByOwnerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppLevel`.""" - orderBy: [AppLevelsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppLevelCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppLevelFilter - ): AppLevelsConnection! - - """ - Reads and enables pagination through a set of `MembershipPermissionDefault`. - """ - membershipPermissionDefaultsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipPermissionDefault`.""" - orderBy: [MembershipPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipPermissionDefaultCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipPermissionDefaultFilter - ): MembershipPermissionDefaultsConnection! - - """Reads and enables pagination through a set of `MembershipLimit`.""" - membershipLimitsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipLimitFilter - ): MembershipLimitsConnection! - - """Reads and enables pagination through a set of `MembershipLimit`.""" - membershipLimitsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipLimitFilter - ): MembershipLimitsConnection! - - """Reads and enables pagination through a set of `MembershipMembership`.""" - membershipMembershipsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMembership`.""" - orderBy: [MembershipMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMembershipCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMembershipFilter - ): MembershipMembershipsConnection! - - """Reads and enables pagination through a set of `MembershipMembership`.""" - membershipMembershipsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMembership`.""" - orderBy: [MembershipMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMembershipCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMembershipFilter - ): MembershipMembershipsConnection! - - """ - Reads a single `MembershipMembershipDefault` that is related to this `User`. - """ - membershipMembershipDefaultByEntityId: MembershipMembershipDefault - - """Reads and enables pagination through a set of `MembershipMember`.""" - membershipMembersByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMember`.""" - orderBy: [MembershipMembersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMemberCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMemberFilter - ): MembershipMembersConnection! - - """Reads and enables pagination through a set of `MembershipMember`.""" - membershipMembersByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipMember`.""" - orderBy: [MembershipMembersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipMemberCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipMemberFilter - ): MembershipMembersConnection! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! - - """Reads and enables pagination through a set of `Email`.""" - emailsByOwnerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Email`.""" - orderBy: [EmailsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: EmailCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: EmailFilter - ): EmailsConnection! - - """Reads and enables pagination through a set of `PhoneNumber`.""" - phoneNumbersByOwnerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `PhoneNumber`.""" - orderBy: [PhoneNumbersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: PhoneNumberCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: PhoneNumberFilter - ): PhoneNumbersConnection! - - """Reads and enables pagination through a set of `CryptoAddress`.""" - cryptoAddressesByOwnerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `CryptoAddress`.""" - orderBy: [CryptoAddressesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: CryptoAddressCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: CryptoAddressFilter - ): CryptoAddressesConnection! - - """Reads and enables pagination through a set of `Invite`.""" - invitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Invite`.""" - orderBy: [InvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: InviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: InviteFilter - ): InvitesConnection! - - """Reads and enables pagination through a set of `ClaimedInvite`.""" - claimedInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ClaimedInviteFilter - ): ClaimedInvitesConnection! - - """Reads and enables pagination through a set of `ClaimedInvite`.""" - claimedInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ClaimedInviteFilter - ): ClaimedInvitesConnection! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! - - """Reads and enables pagination through a set of `AuditLog`.""" - auditLogsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AuditLog`.""" - orderBy: [AuditLogsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AuditLogCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AuditLogFilter - ): AuditLogsConnection! - - """Reads and enables pagination through a set of `Product`.""" - productsBySellerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): ProductsConnection! - - """Reads and enables pagination through a set of `Order`.""" - ordersByCustomerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Order`.""" - orderBy: [OrdersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderFilter - ): OrdersConnection! - - """Reads and enables pagination through a set of `Review`.""" - reviews( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ReviewCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ReviewFilter - ): ReviewsConnection! - - """Full-text search ranking when filtered by `searchTsv`.""" - searchTsvRank: Float - - """Reads and enables pagination through a set of `User`.""" - usersByAppAdminGrantActorIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByAppAdminGrantActorIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByAppAdminGrantGrantorIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByAppAdminGrantGrantorIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByAppOwnerGrantActorIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByAppOwnerGrantActorIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByAppOwnerGrantGrantorIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByAppOwnerGrantGrantorIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByAppGrantActorIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByAppGrantActorIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByAppGrantGrantorIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByAppGrantGrantorIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipLimitActorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipLimitActorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipLimitEntityIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipLimitEntityIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipMembershipActorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipMembershipActorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipMembershipEntityIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipMembershipEntityIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipMemberActorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipMemberActorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipMemberEntityIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipMemberEntityIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipAdminGrantActorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipAdminGrantActorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipAdminGrantActorIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipAdminGrantActorIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipAdminGrantEntityIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipAdminGrantEntityIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipAdminGrantEntityIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipAdminGrantEntityIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipAdminGrantGrantorIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipAdminGrantGrantorIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipAdminGrantGrantorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipAdminGrantGrantorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipOwnerGrantActorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipOwnerGrantActorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipOwnerGrantActorIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipOwnerGrantActorIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipOwnerGrantEntityIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipOwnerGrantEntityIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipOwnerGrantEntityIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipOwnerGrantEntityIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipOwnerGrantGrantorIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipOwnerGrantGrantorIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipOwnerGrantGrantorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipOwnerGrantGrantorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipGrantActorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipGrantActorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipGrantActorIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipGrantActorIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipGrantEntityIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipGrantEntityIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipGrantEntityIdAndGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipGrantEntityIdAndGrantorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipGrantGrantorIdAndActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipGrantGrantorIdAndActorIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipGrantGrantorIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipGrantGrantorIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByClaimedInviteSenderIdAndReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByClaimedInviteSenderIdAndReceiverIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByClaimedInviteReceiverIdAndSenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByClaimedInviteReceiverIdAndSenderIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipInviteSenderIdAndReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipInviteSenderIdAndReceiverIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipInviteSenderIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipInviteSenderIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipInviteReceiverIdAndSenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipInviteReceiverIdAndSenderIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipInviteReceiverIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipInviteReceiverIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipInviteEntityIdAndSenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipInviteEntityIdAndSenderIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipInviteEntityIdAndReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipInviteEntityIdAndReceiverIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipClaimedInviteSenderIdAndReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipClaimedInviteSenderIdAndReceiverIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipClaimedInviteSenderIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipClaimedInviteSenderIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipClaimedInviteReceiverIdAndSenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipClaimedInviteReceiverIdAndSenderIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipClaimedInviteReceiverIdAndEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipClaimedInviteReceiverIdAndEntityIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipClaimedInviteEntityIdAndSenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipClaimedInviteEntityIdAndSenderIdManyToManyConnection! - - """Reads and enables pagination through a set of `User`.""" - usersByMembershipClaimedInviteEntityIdAndReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UserUsersByMembershipClaimedInviteEntityIdAndReceiverIdManyToManyConnection! - - """Reads and enables pagination through a set of `Category`.""" - categoriesByProductSellerIdAndCategoryId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Category`.""" - orderBy: [CategoriesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: CategoryCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: CategoryFilter - ): UserCategoriesByProductSellerIdAndCategoryIdManyToManyConnection! - - """Reads and enables pagination through a set of `Product`.""" - productsByReviewUserIdAndProductId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): UserProductsByReviewUserIdAndProductIdManyToManyConnection! -} - -""" -The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). -""" -scalar JSON - -scalar FullText - -type RoleType { - id: Int! - name: String! - - """Reads and enables pagination through a set of `User`.""" - usersByType( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: UserCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: UserFilter - ): UsersConnection! -} - -"""A connection to a list of `User` values.""" -type UsersConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User` and cursor to aid in pagination. - """ - edges: [UsersEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection.""" -type UsersEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! -} - -"""A location in a connection that can be used for resuming pagination.""" -scalar Cursor - -"""Information about pagination in a connection.""" -type PageInfo { - """When paginating forwards, are there more items?""" - hasNextPage: Boolean! - - """When paginating backwards, are there more items?""" - hasPreviousPage: Boolean! - - """When paginating backwards, the cursor to continue.""" - startCursor: Cursor - - """When paginating forwards, the cursor to continue.""" - endCursor: Cursor -} - -"""Methods to use when ordering `User`.""" -enum UsersOrderBy { - NATURAL - ID_ASC - ID_DESC - USERNAME_ASC - USERNAME_DESC - DISPLAY_NAME_ASC - DISPLAY_NAME_DESC - PROFILE_PICTURE_ASC - PROFILE_PICTURE_DESC - SEARCH_TSV_ASC - SEARCH_TSV_DESC - TYPE_ASC - TYPE_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC - SEARCH_TSV_RANK_ASC - SEARCH_TSV_RANK_DESC -} - -""" -A condition to be used against `User` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input UserCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `username` field.""" - username: String - - """Checks for equality with the object’s `displayName` field.""" - displayName: String - - """Checks for equality with the object’s `profilePicture` field.""" - profilePicture: JSON - - """Checks for equality with the object’s `searchTsv` field.""" - searchTsv: FullText - - """Checks for equality with the object’s `type` field.""" - type: Int - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - tsvSearchTsv: String -} - -""" -A filter to be used against `User` object types. All fields are combined with a logical ‘and.’ -""" -input UserFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `username` field.""" - username: StringFilter - - """Filter by the object’s `displayName` field.""" - displayName: StringFilter - - """Filter by the object’s `profilePicture` field.""" - profilePicture: JSONFilter - - """Filter by the object’s `searchTsv` field.""" - searchTsv: FullTextFilter - - """Filter by the object’s `type` field.""" - type: IntFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [UserFilter!] - - """Checks for any expressions in this list.""" - or: [UserFilter!] - - """Negates the expression.""" - not: UserFilter -} - -""" -A filter to be used against UUID fields. All fields are combined with a logical ‘and.’ -""" -input UUIDFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: UUID - - """Not equal to the specified value.""" - notEqualTo: UUID - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: UUID - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: UUID - - """Included in the specified list.""" - in: [UUID!] - - """Not included in the specified list.""" - notIn: [UUID!] - - """Less than the specified value.""" - lessThan: UUID - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: UUID - - """Greater than the specified value.""" - greaterThan: UUID - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: UUID -} - -""" -A filter to be used against String fields. All fields are combined with a logical ‘and.’ -""" -input StringFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: String - - """Not equal to the specified value.""" - notEqualTo: String - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: String - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: String - - """Included in the specified list.""" - in: [String!] - - """Not included in the specified list.""" - notIn: [String!] - - """Less than the specified value.""" - lessThan: String - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: String - - """Greater than the specified value.""" - greaterThan: String - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: String - - """Contains the specified string (case-sensitive).""" - includes: String - - """Does not contain the specified string (case-sensitive).""" - notIncludes: String - - """Contains the specified string (case-insensitive).""" - includesInsensitive: String - - """Does not contain the specified string (case-insensitive).""" - notIncludesInsensitive: String - - """Starts with the specified string (case-sensitive).""" - startsWith: String - - """Does not start with the specified string (case-sensitive).""" - notStartsWith: String - - """Starts with the specified string (case-insensitive).""" - startsWithInsensitive: String - - """Does not start with the specified string (case-insensitive).""" - notStartsWithInsensitive: String - - """Ends with the specified string (case-sensitive).""" - endsWith: String - - """Does not end with the specified string (case-sensitive).""" - notEndsWith: String - - """Ends with the specified string (case-insensitive).""" - endsWithInsensitive: String - - """Does not end with the specified string (case-insensitive).""" - notEndsWithInsensitive: String - - """ - Matches the specified pattern (case-sensitive). An underscore (_) matches any single character; a percent sign (%) matches any sequence of zero or more characters. - """ - like: String - - """ - Does not match the specified pattern (case-sensitive). An underscore (_) matches any single character; a percent sign (%) matches any sequence of zero or more characters. - """ - notLike: String - - """ - Matches the specified pattern (case-insensitive). An underscore (_) matches any single character; a percent sign (%) matches any sequence of zero or more characters. - """ - likeInsensitive: String - - """ - Does not match the specified pattern (case-insensitive). An underscore (_) matches any single character; a percent sign (%) matches any sequence of zero or more characters. - """ - notLikeInsensitive: String - - """Equal to the specified value (case-insensitive).""" - equalToInsensitive: String - - """Not equal to the specified value (case-insensitive).""" - notEqualToInsensitive: String - - """ - Not equal to the specified value, treating null like an ordinary value (case-insensitive). - """ - distinctFromInsensitive: String - - """ - Equal to the specified value, treating null like an ordinary value (case-insensitive). - """ - notDistinctFromInsensitive: String - - """Included in the specified list (case-insensitive).""" - inInsensitive: [String!] - - """Not included in the specified list (case-insensitive).""" - notInInsensitive: [String!] - - """Less than the specified value (case-insensitive).""" - lessThanInsensitive: String - - """Less than or equal to the specified value (case-insensitive).""" - lessThanOrEqualToInsensitive: String - - """Greater than the specified value (case-insensitive).""" - greaterThanInsensitive: String - - """Greater than or equal to the specified value (case-insensitive).""" - greaterThanOrEqualToInsensitive: String -} - -""" -A filter to be used against JSON fields. All fields are combined with a logical ‘and.’ -""" -input JSONFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: JSON - - """Not equal to the specified value.""" - notEqualTo: JSON - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: JSON - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: JSON - - """Included in the specified list.""" - in: [JSON!] - - """Not included in the specified list.""" - notIn: [JSON!] - - """Less than the specified value.""" - lessThan: JSON - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: JSON - - """Greater than the specified value.""" - greaterThan: JSON - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: JSON - - """Contains the specified JSON.""" - contains: JSON - - """Contains the specified key.""" - containsKey: String - - """Contains all of the specified keys.""" - containsAllKeys: [String!] - - """Contains any of the specified keys.""" - containsAnyKeys: [String!] - - """Contained by the specified JSON.""" - containedBy: JSON -} - -""" -A filter to be used against FullText fields. All fields are combined with a logical ‘and.’ -""" -input FullTextFilter { - """Performs a full text search on the field.""" - matches: String -} - -""" -A filter to be used against Int fields. All fields are combined with a logical ‘and.’ -""" -input IntFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: Int - - """Not equal to the specified value.""" - notEqualTo: Int - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: Int - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: Int - - """Included in the specified list.""" - in: [Int!] - - """Not included in the specified list.""" - notIn: [Int!] - - """Less than the specified value.""" - lessThan: Int - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: Int - - """Greater than the specified value.""" - greaterThan: Int - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: Int -} - -""" -A filter to be used against Datetime fields. All fields are combined with a logical ‘and.’ -""" -input DatetimeFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: Datetime - - """Not equal to the specified value.""" - notEqualTo: Datetime - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: Datetime - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: Datetime - - """Included in the specified list.""" - in: [Datetime!] - - """Not included in the specified list.""" - notIn: [Datetime!] - - """Less than the specified value.""" - lessThan: Datetime - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: Datetime - - """Greater than the specified value.""" - greaterThan: Datetime - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: Datetime -} - -"""A connection to a list of `AppLimit` values.""" -type AppLimitsConnection { - """A list of `AppLimit` objects.""" - nodes: [AppLimit!]! - - """ - A list of edges which contains the `AppLimit` and cursor to aid in pagination. - """ - edges: [AppLimitsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppLimit` you could get from the connection.""" - totalCount: Int! -} - -type AppLimit { - id: UUID! - name: String - actorId: UUID! - num: Int - max: Int - - """Reads a single `User` that is related to this `AppLimit`.""" - actor: User -} - -"""A `AppLimit` edge in the connection.""" -type AppLimitsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppLimit` at the end of the edge.""" - node: AppLimit! -} - -"""Methods to use when ordering `AppLimit`.""" -enum AppLimitsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - NUM_ASC - NUM_DESC - MAX_ASC - MAX_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppLimit` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input AppLimitCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `num` field.""" - num: Int - - """Checks for equality with the object’s `max` field.""" - max: Int -} - -""" -A filter to be used against `AppLimit` object types. All fields are combined with a logical ‘and.’ -""" -input AppLimitFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `num` field.""" - num: IntFilter - - """Filter by the object’s `max` field.""" - max: IntFilter - - """Checks for all expressions in this list.""" - and: [AppLimitFilter!] - - """Checks for any expressions in this list.""" - or: [AppLimitFilter!] - - """Negates the expression.""" - not: AppLimitFilter -} - -type AppMembership { - id: UUID! - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean! - isBanned: Boolean! - isDisabled: Boolean! - isVerified: Boolean! - isActive: Boolean! - isOwner: Boolean! - isAdmin: Boolean! - permissions: BitString! - granted: BitString! - actorId: UUID! - - """Reads a single `User` that is related to this `AppMembership`.""" - actor: User -} - -"""A string representing a series of binary bits""" -scalar BitString - -"""A connection to a list of `AppAdminGrant` values.""" -type AppAdminGrantsConnection { - """A list of `AppAdminGrant` objects.""" - nodes: [AppAdminGrant!]! - - """ - A list of edges which contains the `AppAdminGrant` and cursor to aid in pagination. - """ - edges: [AppAdminGrantsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppAdminGrant` you could get from the connection.""" - totalCount: Int! -} - -type AppAdminGrant { - id: UUID! - isGrant: Boolean! - actorId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - grantor: User -} - -"""A `AppAdminGrant` edge in the connection.""" -type AppAdminGrantsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppAdminGrant` at the end of the edge.""" - node: AppAdminGrant! -} - -"""Methods to use when ordering `AppAdminGrant`.""" -enum AppAdminGrantsOrderBy { - NATURAL - ID_ASC - ID_DESC - IS_GRANT_ASC - IS_GRANT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - GRANTOR_ID_ASC - GRANTOR_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppAdminGrant` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input AppAdminGrantCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `isGrant` field.""" - isGrant: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `grantorId` field.""" - grantorId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppAdminGrant` object types. All fields are combined with a logical ‘and.’ -""" -input AppAdminGrantFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `isGrant` field.""" - isGrant: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `grantorId` field.""" - grantorId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppAdminGrantFilter!] - - """Checks for any expressions in this list.""" - or: [AppAdminGrantFilter!] - - """Negates the expression.""" - not: AppAdminGrantFilter -} - -""" -A filter to be used against Boolean fields. All fields are combined with a logical ‘and.’ -""" -input BooleanFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: Boolean - - """Not equal to the specified value.""" - notEqualTo: Boolean - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: Boolean - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: Boolean - - """Included in the specified list.""" - in: [Boolean!] - - """Not included in the specified list.""" - notIn: [Boolean!] - - """Less than the specified value.""" - lessThan: Boolean - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: Boolean - - """Greater than the specified value.""" - greaterThan: Boolean - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: Boolean -} - -"""A connection to a list of `AppOwnerGrant` values.""" -type AppOwnerGrantsConnection { - """A list of `AppOwnerGrant` objects.""" - nodes: [AppOwnerGrant!]! - - """ - A list of edges which contains the `AppOwnerGrant` and cursor to aid in pagination. - """ - edges: [AppOwnerGrantsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppOwnerGrant` you could get from the connection.""" - totalCount: Int! -} - -type AppOwnerGrant { - id: UUID! - isGrant: Boolean! - actorId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - grantor: User -} - -"""A `AppOwnerGrant` edge in the connection.""" -type AppOwnerGrantsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppOwnerGrant` at the end of the edge.""" - node: AppOwnerGrant! -} - -"""Methods to use when ordering `AppOwnerGrant`.""" -enum AppOwnerGrantsOrderBy { - NATURAL - ID_ASC - ID_DESC - IS_GRANT_ASC - IS_GRANT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - GRANTOR_ID_ASC - GRANTOR_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppOwnerGrant` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input AppOwnerGrantCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `isGrant` field.""" - isGrant: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `grantorId` field.""" - grantorId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppOwnerGrant` object types. All fields are combined with a logical ‘and.’ -""" -input AppOwnerGrantFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `isGrant` field.""" - isGrant: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `grantorId` field.""" - grantorId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppOwnerGrantFilter!] - - """Checks for any expressions in this list.""" - or: [AppOwnerGrantFilter!] - - """Negates the expression.""" - not: AppOwnerGrantFilter -} - -"""A connection to a list of `AppGrant` values.""" -type AppGrantsConnection { - """A list of `AppGrant` objects.""" - nodes: [AppGrant!]! - - """ - A list of edges which contains the `AppGrant` and cursor to aid in pagination. - """ - edges: [AppGrantsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppGrant` you could get from the connection.""" - totalCount: Int! -} - -type AppGrant { - id: UUID! - permissions: BitString! - isGrant: Boolean! - actorId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `AppGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppGrant`.""" - grantor: User -} - -"""A `AppGrant` edge in the connection.""" -type AppGrantsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppGrant` at the end of the edge.""" - node: AppGrant! -} - -"""Methods to use when ordering `AppGrant`.""" -enum AppGrantsOrderBy { - NATURAL - ID_ASC - ID_DESC - PERMISSIONS_ASC - PERMISSIONS_DESC - IS_GRANT_ASC - IS_GRANT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - GRANTOR_ID_ASC - GRANTOR_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppGrant` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input AppGrantCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `permissions` field.""" - permissions: BitString - - """Checks for equality with the object’s `isGrant` field.""" - isGrant: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `grantorId` field.""" - grantorId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppGrant` object types. All fields are combined with a logical ‘and.’ -""" -input AppGrantFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `permissions` field.""" - permissions: BitStringFilter - - """Filter by the object’s `isGrant` field.""" - isGrant: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `grantorId` field.""" - grantorId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppGrantFilter!] - - """Checks for any expressions in this list.""" - or: [AppGrantFilter!] - - """Negates the expression.""" - not: AppGrantFilter -} - -""" -A filter to be used against BitString fields. All fields are combined with a logical ‘and.’ -""" -input BitStringFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: BitString - - """Not equal to the specified value.""" - notEqualTo: BitString - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: BitString - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: BitString - - """Included in the specified list.""" - in: [BitString!] - - """Not included in the specified list.""" - notIn: [BitString!] - - """Less than the specified value.""" - lessThan: BitString - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: BitString - - """Greater than the specified value.""" - greaterThan: BitString - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: BitString -} - -"""A connection to a list of `AppStep` values.""" -type AppStepsConnection { - """A list of `AppStep` objects.""" - nodes: [AppStep!]! - - """ - A list of edges which contains the `AppStep` and cursor to aid in pagination. - """ - edges: [AppStepsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppStep` you could get from the connection.""" - totalCount: Int! -} - -""" -The user achieving a requirement for a level. Log table that has every single step ever taken. -""" -type AppStep { - id: UUID! - actorId: UUID! - name: String! - count: Int! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `AppStep`.""" - actor: User -} - -"""A `AppStep` edge in the connection.""" -type AppStepsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppStep` at the end of the edge.""" - node: AppStep! -} - -"""Methods to use when ordering `AppStep`.""" -enum AppStepsOrderBy { - NATURAL - ID_ASC - ID_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - NAME_ASC - NAME_DESC - COUNT_ASC - COUNT_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppStep` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input AppStepCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `count` field.""" - count: Int - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppStep` object types. All fields are combined with a logical ‘and.’ -""" -input AppStepFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `count` field.""" - count: IntFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppStepFilter!] - - """Checks for any expressions in this list.""" - or: [AppStepFilter!] - - """Negates the expression.""" - not: AppStepFilter -} - -"""A connection to a list of `AppAchievement` values.""" -type AppAchievementsConnection { - """A list of `AppAchievement` objects.""" - nodes: [AppAchievement!]! - - """ - A list of edges which contains the `AppAchievement` and cursor to aid in pagination. - """ - edges: [AppAchievementsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppAchievement` you could get from the connection.""" - totalCount: Int! -} - -""" -This table represents the users progress for particular level requirements, tallying the total count. This table is updated via triggers and should not be updated maually. -""" -type AppAchievement { - id: UUID! - actorId: UUID! - name: String! - count: Int! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `AppAchievement`.""" - actor: User -} - -"""A `AppAchievement` edge in the connection.""" -type AppAchievementsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppAchievement` at the end of the edge.""" - node: AppAchievement! -} - -"""Methods to use when ordering `AppAchievement`.""" -enum AppAchievementsOrderBy { - NATURAL - ID_ASC - ID_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - NAME_ASC - NAME_DESC - COUNT_ASC - COUNT_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppAchievement` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input AppAchievementCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `count` field.""" - count: Int - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppAchievement` object types. All fields are combined with a logical ‘and.’ -""" -input AppAchievementFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `count` field.""" - count: IntFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppAchievementFilter!] - - """Checks for any expressions in this list.""" - or: [AppAchievementFilter!] - - """Negates the expression.""" - not: AppAchievementFilter -} - -"""A connection to a list of `AppLevel` values.""" -type AppLevelsConnection { - """A list of `AppLevel` objects.""" - nodes: [AppLevel!]! - - """ - A list of edges which contains the `AppLevel` and cursor to aid in pagination. - """ - edges: [AppLevelsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppLevel` you could get from the connection.""" - totalCount: Int! -} - -"""Levels for achievement""" -type AppLevel { - id: UUID! - name: String! - description: String - image: JSON - ownerId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `AppLevel`.""" - owner: User -} - -"""A `AppLevel` edge in the connection.""" -type AppLevelsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppLevel` at the end of the edge.""" - node: AppLevel! -} - -"""Methods to use when ordering `AppLevel`.""" -enum AppLevelsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - IMAGE_ASC - IMAGE_DESC - OWNER_ID_ASC - OWNER_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppLevel` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input AppLevelCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `description` field.""" - description: String - - """Checks for equality with the object’s `image` field.""" - image: JSON - - """Checks for equality with the object’s `ownerId` field.""" - ownerId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppLevel` object types. All fields are combined with a logical ‘and.’ -""" -input AppLevelFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Filter by the object’s `image` field.""" - image: JSONFilter - - """Filter by the object’s `ownerId` field.""" - ownerId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppLevelFilter!] - - """Checks for any expressions in this list.""" - or: [AppLevelFilter!] - - """Negates the expression.""" - not: AppLevelFilter -} - -"""A connection to a list of `MembershipPermissionDefault` values.""" -type MembershipPermissionDefaultsConnection { - """A list of `MembershipPermissionDefault` objects.""" - nodes: [MembershipPermissionDefault!]! - - """ - A list of edges which contains the `MembershipPermissionDefault` and cursor to aid in pagination. - """ - edges: [MembershipPermissionDefaultsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipPermissionDefault` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipPermissionDefault { - id: UUID! - permissions: BitString! - entityId: UUID! - - """ - Reads a single `User` that is related to this `MembershipPermissionDefault`. - """ - entity: User -} - -"""A `MembershipPermissionDefault` edge in the connection.""" -type MembershipPermissionDefaultsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipPermissionDefault` at the end of the edge.""" - node: MembershipPermissionDefault! -} - -"""Methods to use when ordering `MembershipPermissionDefault`.""" -enum MembershipPermissionDefaultsOrderBy { - NATURAL - ID_ASC - ID_DESC - PERMISSIONS_ASC - PERMISSIONS_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipPermissionDefault` object types. All -fields are tested for equality and combined with a logical ‘and.’ -""" -input MembershipPermissionDefaultCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `permissions` field.""" - permissions: BitString - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID -} - -""" -A filter to be used against `MembershipPermissionDefault` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipPermissionDefaultFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `permissions` field.""" - permissions: BitStringFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [MembershipPermissionDefaultFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipPermissionDefaultFilter!] - - """Negates the expression.""" - not: MembershipPermissionDefaultFilter -} - -"""A connection to a list of `MembershipLimit` values.""" -type MembershipLimitsConnection { - """A list of `MembershipLimit` objects.""" - nodes: [MembershipLimit!]! - - """ - A list of edges which contains the `MembershipLimit` and cursor to aid in pagination. - """ - edges: [MembershipLimitsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipLimit` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipLimit { - id: UUID! - name: String - actorId: UUID! - num: Int - max: Int - entityId: UUID! - - """Reads a single `User` that is related to this `MembershipLimit`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipLimit`.""" - entity: User -} - -"""A `MembershipLimit` edge in the connection.""" -type MembershipLimitsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipLimit` at the end of the edge.""" - node: MembershipLimit! -} - -"""Methods to use when ordering `MembershipLimit`.""" -enum MembershipLimitsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - NUM_ASC - NUM_DESC - MAX_ASC - MAX_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipLimit` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input MembershipLimitCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `num` field.""" - num: Int - - """Checks for equality with the object’s `max` field.""" - max: Int - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID -} - -""" -A filter to be used against `MembershipLimit` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipLimitFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `num` field.""" - num: IntFilter - - """Filter by the object’s `max` field.""" - max: IntFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [MembershipLimitFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipLimitFilter!] - - """Negates the expression.""" - not: MembershipLimitFilter -} - -"""A connection to a list of `MembershipMembership` values.""" -type MembershipMembershipsConnection { - """A list of `MembershipMembership` objects.""" - nodes: [MembershipMembership!]! - - """ - A list of edges which contains the `MembershipMembership` and cursor to aid in pagination. - """ - edges: [MembershipMembershipsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipMembership` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipMembership { - id: UUID! - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean! - isBanned: Boolean! - isDisabled: Boolean! - isActive: Boolean! - isOwner: Boolean! - isAdmin: Boolean! - permissions: BitString! - granted: BitString! - actorId: UUID! - entityId: UUID! - - """Reads a single `User` that is related to this `MembershipMembership`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMembership`.""" - entity: User -} - -"""A `MembershipMembership` edge in the connection.""" -type MembershipMembershipsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipMembership` at the end of the edge.""" - node: MembershipMembership! -} - -"""Methods to use when ordering `MembershipMembership`.""" -enum MembershipMembershipsOrderBy { - NATURAL - ID_ASC - ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - CREATED_BY_ASC - CREATED_BY_DESC - UPDATED_BY_ASC - UPDATED_BY_DESC - IS_APPROVED_ASC - IS_APPROVED_DESC - IS_BANNED_ASC - IS_BANNED_DESC - IS_DISABLED_ASC - IS_DISABLED_DESC - IS_ACTIVE_ASC - IS_ACTIVE_DESC - IS_OWNER_ASC - IS_OWNER_DESC - IS_ADMIN_ASC - IS_ADMIN_DESC - PERMISSIONS_ASC - PERMISSIONS_DESC - GRANTED_ASC - GRANTED_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipMembership` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input MembershipMembershipCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `createdBy` field.""" - createdBy: UUID - - """Checks for equality with the object’s `updatedBy` field.""" - updatedBy: UUID - - """Checks for equality with the object’s `isApproved` field.""" - isApproved: Boolean - - """Checks for equality with the object’s `isBanned` field.""" - isBanned: Boolean - - """Checks for equality with the object’s `isDisabled` field.""" - isDisabled: Boolean - - """Checks for equality with the object’s `isActive` field.""" - isActive: Boolean - - """Checks for equality with the object’s `isOwner` field.""" - isOwner: Boolean - - """Checks for equality with the object’s `isAdmin` field.""" - isAdmin: Boolean - - """Checks for equality with the object’s `permissions` field.""" - permissions: BitString - - """Checks for equality with the object’s `granted` field.""" - granted: BitString - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID -} - -""" -A filter to be used against `MembershipMembership` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipMembershipFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `createdBy` field.""" - createdBy: UUIDFilter - - """Filter by the object’s `updatedBy` field.""" - updatedBy: UUIDFilter - - """Filter by the object’s `isApproved` field.""" - isApproved: BooleanFilter - - """Filter by the object’s `isBanned` field.""" - isBanned: BooleanFilter - - """Filter by the object’s `isDisabled` field.""" - isDisabled: BooleanFilter - - """Filter by the object’s `isActive` field.""" - isActive: BooleanFilter - - """Filter by the object’s `isOwner` field.""" - isOwner: BooleanFilter - - """Filter by the object’s `isAdmin` field.""" - isAdmin: BooleanFilter - - """Filter by the object’s `permissions` field.""" - permissions: BitStringFilter - - """Filter by the object’s `granted` field.""" - granted: BitStringFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [MembershipMembershipFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipMembershipFilter!] - - """Negates the expression.""" - not: MembershipMembershipFilter -} - -type MembershipMembershipDefault { - id: UUID! - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean! - entityId: UUID! - deleteMemberCascadeGroups: Boolean! - createGroupsCascadeMembers: Boolean! - - """ - Reads a single `User` that is related to this `MembershipMembershipDefault`. - """ - entity: User -} - -"""A connection to a list of `MembershipMember` values.""" -type MembershipMembersConnection { - """A list of `MembershipMember` objects.""" - nodes: [MembershipMember!]! - - """ - A list of edges which contains the `MembershipMember` and cursor to aid in pagination. - """ - edges: [MembershipMembersEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipMember` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipMember { - id: UUID! - isAdmin: Boolean! - actorId: UUID! - entityId: UUID! - - """Reads a single `User` that is related to this `MembershipMember`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMember`.""" - entity: User -} - -"""A `MembershipMember` edge in the connection.""" -type MembershipMembersEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipMember` at the end of the edge.""" - node: MembershipMember! -} - -"""Methods to use when ordering `MembershipMember`.""" -enum MembershipMembersOrderBy { - NATURAL - ID_ASC - ID_DESC - IS_ADMIN_ASC - IS_ADMIN_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipMember` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input MembershipMemberCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `isAdmin` field.""" - isAdmin: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID -} - -""" -A filter to be used against `MembershipMember` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipMemberFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `isAdmin` field.""" - isAdmin: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [MembershipMemberFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipMemberFilter!] - - """Negates the expression.""" - not: MembershipMemberFilter -} - -"""A connection to a list of `MembershipAdminGrant` values.""" -type MembershipAdminGrantsConnection { - """A list of `MembershipAdminGrant` objects.""" - nodes: [MembershipAdminGrant!]! - - """ - A list of edges which contains the `MembershipAdminGrant` and cursor to aid in pagination. - """ - edges: [MembershipAdminGrantsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipAdminGrant` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipAdminGrant { - id: UUID! - isGrant: Boolean! - actorId: UUID! - entityId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - grantor: User -} - -"""A `MembershipAdminGrant` edge in the connection.""" -type MembershipAdminGrantsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipAdminGrant` at the end of the edge.""" - node: MembershipAdminGrant! -} - -"""Methods to use when ordering `MembershipAdminGrant`.""" -enum MembershipAdminGrantsOrderBy { - NATURAL - ID_ASC - ID_DESC - IS_GRANT_ASC - IS_GRANT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - GRANTOR_ID_ASC - GRANTOR_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipAdminGrant` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input MembershipAdminGrantCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `isGrant` field.""" - isGrant: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID - - """Checks for equality with the object’s `grantorId` field.""" - grantorId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `MembershipAdminGrant` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipAdminGrantFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `isGrant` field.""" - isGrant: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Filter by the object’s `grantorId` field.""" - grantorId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [MembershipAdminGrantFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipAdminGrantFilter!] - - """Negates the expression.""" - not: MembershipAdminGrantFilter -} - -"""A connection to a list of `MembershipOwnerGrant` values.""" -type MembershipOwnerGrantsConnection { - """A list of `MembershipOwnerGrant` objects.""" - nodes: [MembershipOwnerGrant!]! - - """ - A list of edges which contains the `MembershipOwnerGrant` and cursor to aid in pagination. - """ - edges: [MembershipOwnerGrantsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipOwnerGrant` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipOwnerGrant { - id: UUID! - isGrant: Boolean! - actorId: UUID! - entityId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - grantor: User -} - -"""A `MembershipOwnerGrant` edge in the connection.""" -type MembershipOwnerGrantsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipOwnerGrant` at the end of the edge.""" - node: MembershipOwnerGrant! -} - -"""Methods to use when ordering `MembershipOwnerGrant`.""" -enum MembershipOwnerGrantsOrderBy { - NATURAL - ID_ASC - ID_DESC - IS_GRANT_ASC - IS_GRANT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - GRANTOR_ID_ASC - GRANTOR_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipOwnerGrant` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input MembershipOwnerGrantCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `isGrant` field.""" - isGrant: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID - - """Checks for equality with the object’s `grantorId` field.""" - grantorId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `MembershipOwnerGrant` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipOwnerGrantFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `isGrant` field.""" - isGrant: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Filter by the object’s `grantorId` field.""" - grantorId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [MembershipOwnerGrantFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipOwnerGrantFilter!] - - """Negates the expression.""" - not: MembershipOwnerGrantFilter -} - -"""A connection to a list of `MembershipGrant` values.""" -type MembershipGrantsConnection { - """A list of `MembershipGrant` objects.""" - nodes: [MembershipGrant!]! - - """ - A list of edges which contains the `MembershipGrant` and cursor to aid in pagination. - """ - edges: [MembershipGrantsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipGrant` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipGrant { - id: UUID! - permissions: BitString! - isGrant: Boolean! - actorId: UUID! - entityId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `MembershipGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - grantor: User -} - -"""A `MembershipGrant` edge in the connection.""" -type MembershipGrantsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipGrant` at the end of the edge.""" - node: MembershipGrant! -} - -"""Methods to use when ordering `MembershipGrant`.""" -enum MembershipGrantsOrderBy { - NATURAL - ID_ASC - ID_DESC - PERMISSIONS_ASC - PERMISSIONS_DESC - IS_GRANT_ASC - IS_GRANT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - GRANTOR_ID_ASC - GRANTOR_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipGrant` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input MembershipGrantCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `permissions` field.""" - permissions: BitString - - """Checks for equality with the object’s `isGrant` field.""" - isGrant: Boolean - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID - - """Checks for equality with the object’s `grantorId` field.""" - grantorId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `MembershipGrant` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipGrantFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `permissions` field.""" - permissions: BitStringFilter - - """Filter by the object’s `isGrant` field.""" - isGrant: BooleanFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Filter by the object’s `grantorId` field.""" - grantorId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [MembershipGrantFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipGrantFilter!] - - """Negates the expression.""" - not: MembershipGrantFilter -} - -"""A connection to a list of `Email` values.""" -type EmailsConnection { - """A list of `Email` objects.""" - nodes: [Email!]! - - """ - A list of edges which contains the `Email` and cursor to aid in pagination. - """ - edges: [EmailsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Email` you could get from the connection.""" - totalCount: Int! -} - -type Email { - id: UUID! - ownerId: UUID! - email: String! - isVerified: Boolean! - isPrimary: Boolean! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `Email`.""" - owner: User -} - -"""A `Email` edge in the connection.""" -type EmailsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Email` at the end of the edge.""" - node: Email! -} - -"""Methods to use when ordering `Email`.""" -enum EmailsOrderBy { - NATURAL - ID_ASC - ID_DESC - OWNER_ID_ASC - OWNER_ID_DESC - EMAIL_ASC - EMAIL_DESC - IS_VERIFIED_ASC - IS_VERIFIED_DESC - IS_PRIMARY_ASC - IS_PRIMARY_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `Email` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input EmailCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `ownerId` field.""" - ownerId: UUID - - """Checks for equality with the object’s `email` field.""" - email: String - - """Checks for equality with the object’s `isVerified` field.""" - isVerified: Boolean - - """Checks for equality with the object’s `isPrimary` field.""" - isPrimary: Boolean - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `Email` object types. All fields are combined with a logical ‘and.’ -""" -input EmailFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `ownerId` field.""" - ownerId: UUIDFilter - - """Filter by the object’s `email` field.""" - email: StringFilter - - """Filter by the object’s `isVerified` field.""" - isVerified: BooleanFilter - - """Filter by the object’s `isPrimary` field.""" - isPrimary: BooleanFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [EmailFilter!] - - """Checks for any expressions in this list.""" - or: [EmailFilter!] - - """Negates the expression.""" - not: EmailFilter -} - -"""A connection to a list of `PhoneNumber` values.""" -type PhoneNumbersConnection { - """A list of `PhoneNumber` objects.""" - nodes: [PhoneNumber!]! - - """ - A list of edges which contains the `PhoneNumber` and cursor to aid in pagination. - """ - edges: [PhoneNumbersEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `PhoneNumber` you could get from the connection.""" - totalCount: Int! -} - -type PhoneNumber { - id: UUID! - ownerId: UUID! - cc: String! - number: String! - isVerified: Boolean! - isPrimary: Boolean! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `PhoneNumber`.""" - owner: User -} - -"""A `PhoneNumber` edge in the connection.""" -type PhoneNumbersEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `PhoneNumber` at the end of the edge.""" - node: PhoneNumber! -} - -"""Methods to use when ordering `PhoneNumber`.""" -enum PhoneNumbersOrderBy { - NATURAL - ID_ASC - ID_DESC - OWNER_ID_ASC - OWNER_ID_DESC - CC_ASC - CC_DESC - NUMBER_ASC - NUMBER_DESC - IS_VERIFIED_ASC - IS_VERIFIED_DESC - IS_PRIMARY_ASC - IS_PRIMARY_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `PhoneNumber` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input PhoneNumberCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `ownerId` field.""" - ownerId: UUID - - """Checks for equality with the object’s `cc` field.""" - cc: String - - """Checks for equality with the object’s `number` field.""" - number: String - - """Checks for equality with the object’s `isVerified` field.""" - isVerified: Boolean - - """Checks for equality with the object’s `isPrimary` field.""" - isPrimary: Boolean - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `PhoneNumber` object types. All fields are combined with a logical ‘and.’ -""" -input PhoneNumberFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `ownerId` field.""" - ownerId: UUIDFilter - - """Filter by the object’s `cc` field.""" - cc: StringFilter - - """Filter by the object’s `number` field.""" - number: StringFilter - - """Filter by the object’s `isVerified` field.""" - isVerified: BooleanFilter - - """Filter by the object’s `isPrimary` field.""" - isPrimary: BooleanFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [PhoneNumberFilter!] - - """Checks for any expressions in this list.""" - or: [PhoneNumberFilter!] - - """Negates the expression.""" - not: PhoneNumberFilter -} - -"""A connection to a list of `CryptoAddress` values.""" -type CryptoAddressesConnection { - """A list of `CryptoAddress` objects.""" - nodes: [CryptoAddress!]! - - """ - A list of edges which contains the `CryptoAddress` and cursor to aid in pagination. - """ - edges: [CryptoAddressesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `CryptoAddress` you could get from the connection.""" - totalCount: Int! -} - -type CryptoAddress { - id: UUID! - ownerId: UUID! - address: String! - isVerified: Boolean! - isPrimary: Boolean! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `CryptoAddress`.""" - owner: User -} - -"""A `CryptoAddress` edge in the connection.""" -type CryptoAddressesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `CryptoAddress` at the end of the edge.""" - node: CryptoAddress! -} - -"""Methods to use when ordering `CryptoAddress`.""" -enum CryptoAddressesOrderBy { - NATURAL - ID_ASC - ID_DESC - OWNER_ID_ASC - OWNER_ID_DESC - ADDRESS_ASC - ADDRESS_DESC - IS_VERIFIED_ASC - IS_VERIFIED_DESC - IS_PRIMARY_ASC - IS_PRIMARY_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `CryptoAddress` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input CryptoAddressCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `ownerId` field.""" - ownerId: UUID - - """Checks for equality with the object’s `address` field.""" - address: String - - """Checks for equality with the object’s `isVerified` field.""" - isVerified: Boolean - - """Checks for equality with the object’s `isPrimary` field.""" - isPrimary: Boolean - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `CryptoAddress` object types. All fields are combined with a logical ‘and.’ -""" -input CryptoAddressFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `ownerId` field.""" - ownerId: UUIDFilter - - """Filter by the object’s `address` field.""" - address: StringFilter - - """Filter by the object’s `isVerified` field.""" - isVerified: BooleanFilter - - """Filter by the object’s `isPrimary` field.""" - isPrimary: BooleanFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [CryptoAddressFilter!] - - """Checks for any expressions in this list.""" - or: [CryptoAddressFilter!] - - """Negates the expression.""" - not: CryptoAddressFilter -} - -"""A connection to a list of `Invite` values.""" -type InvitesConnection { - """A list of `Invite` objects.""" - nodes: [Invite!]! - - """ - A list of edges which contains the `Invite` and cursor to aid in pagination. - """ - edges: [InvitesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Invite` you could get from the connection.""" - totalCount: Int! -} - -type Invite { - id: UUID! - email: String - senderId: UUID! - inviteToken: String! - inviteValid: Boolean! - inviteLimit: Int! - inviteCount: Int! - multiple: Boolean! - data: JSON - expiresAt: Datetime! - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `Invite`.""" - sender: User -} - -"""A `Invite` edge in the connection.""" -type InvitesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Invite` at the end of the edge.""" - node: Invite! -} - -"""Methods to use when ordering `Invite`.""" -enum InvitesOrderBy { - NATURAL - ID_ASC - ID_DESC - EMAIL_ASC - EMAIL_DESC - SENDER_ID_ASC - SENDER_ID_DESC - INVITE_TOKEN_ASC - INVITE_TOKEN_DESC - INVITE_VALID_ASC - INVITE_VALID_DESC - INVITE_LIMIT_ASC - INVITE_LIMIT_DESC - INVITE_COUNT_ASC - INVITE_COUNT_DESC - MULTIPLE_ASC - MULTIPLE_DESC - DATA_ASC - DATA_DESC - EXPIRES_AT_ASC - EXPIRES_AT_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `Invite` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input InviteCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `email` field.""" - email: String - - """Checks for equality with the object’s `senderId` field.""" - senderId: UUID - - """Checks for equality with the object’s `inviteToken` field.""" - inviteToken: String - - """Checks for equality with the object’s `inviteValid` field.""" - inviteValid: Boolean - - """Checks for equality with the object’s `inviteLimit` field.""" - inviteLimit: Int - - """Checks for equality with the object’s `inviteCount` field.""" - inviteCount: Int - - """Checks for equality with the object’s `multiple` field.""" - multiple: Boolean - - """Checks for equality with the object’s `data` field.""" - data: JSON - - """Checks for equality with the object’s `expiresAt` field.""" - expiresAt: Datetime - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `Invite` object types. All fields are combined with a logical ‘and.’ -""" -input InviteFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `email` field.""" - email: StringFilter - - """Filter by the object’s `senderId` field.""" - senderId: UUIDFilter - - """Filter by the object’s `inviteToken` field.""" - inviteToken: StringFilter - - """Filter by the object’s `inviteValid` field.""" - inviteValid: BooleanFilter - - """Filter by the object’s `inviteLimit` field.""" - inviteLimit: IntFilter - - """Filter by the object’s `inviteCount` field.""" - inviteCount: IntFilter - - """Filter by the object’s `multiple` field.""" - multiple: BooleanFilter - - """Filter by the object’s `expiresAt` field.""" - expiresAt: DatetimeFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [InviteFilter!] - - """Checks for any expressions in this list.""" - or: [InviteFilter!] - - """Negates the expression.""" - not: InviteFilter -} - -"""A connection to a list of `ClaimedInvite` values.""" -type ClaimedInvitesConnection { - """A list of `ClaimedInvite` objects.""" - nodes: [ClaimedInvite!]! - - """ - A list of edges which contains the `ClaimedInvite` and cursor to aid in pagination. - """ - edges: [ClaimedInvitesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `ClaimedInvite` you could get from the connection.""" - totalCount: Int! -} - -type ClaimedInvite { - id: UUID! - data: JSON - senderId: UUID - receiverId: UUID - createdAt: Datetime - updatedAt: Datetime - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - sender: User - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - receiver: User -} - -"""A `ClaimedInvite` edge in the connection.""" -type ClaimedInvitesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `ClaimedInvite` at the end of the edge.""" - node: ClaimedInvite! -} - -"""Methods to use when ordering `ClaimedInvite`.""" -enum ClaimedInvitesOrderBy { - NATURAL - ID_ASC - ID_DESC - DATA_ASC - DATA_DESC - SENDER_ID_ASC - SENDER_ID_DESC - RECEIVER_ID_ASC - RECEIVER_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `ClaimedInvite` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input ClaimedInviteCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `data` field.""" - data: JSON - - """Checks for equality with the object’s `senderId` field.""" - senderId: UUID - - """Checks for equality with the object’s `receiverId` field.""" - receiverId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `ClaimedInvite` object types. All fields are combined with a logical ‘and.’ -""" -input ClaimedInviteFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `senderId` field.""" - senderId: UUIDFilter - - """Filter by the object’s `receiverId` field.""" - receiverId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [ClaimedInviteFilter!] - - """Checks for any expressions in this list.""" - or: [ClaimedInviteFilter!] - - """Negates the expression.""" - not: ClaimedInviteFilter -} - -"""A connection to a list of `MembershipInvite` values.""" -type MembershipInvitesConnection { - """A list of `MembershipInvite` objects.""" - nodes: [MembershipInvite!]! - - """ - A list of edges which contains the `MembershipInvite` and cursor to aid in pagination. - """ - edges: [MembershipInvitesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipInvite` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipInvite { - id: UUID! - email: String - senderId: UUID! - receiverId: UUID - inviteToken: String! - inviteValid: Boolean! - inviteLimit: Int! - inviteCount: Int! - multiple: Boolean! - data: JSON - expiresAt: Datetime! - createdAt: Datetime - updatedAt: Datetime - entityId: UUID! - - """Reads a single `User` that is related to this `MembershipInvite`.""" - sender: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - receiver: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - entity: User -} - -"""A `MembershipInvite` edge in the connection.""" -type MembershipInvitesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipInvite` at the end of the edge.""" - node: MembershipInvite! -} - -"""Methods to use when ordering `MembershipInvite`.""" -enum MembershipInvitesOrderBy { - NATURAL - ID_ASC - ID_DESC - EMAIL_ASC - EMAIL_DESC - SENDER_ID_ASC - SENDER_ID_DESC - RECEIVER_ID_ASC - RECEIVER_ID_DESC - INVITE_TOKEN_ASC - INVITE_TOKEN_DESC - INVITE_VALID_ASC - INVITE_VALID_DESC - INVITE_LIMIT_ASC - INVITE_LIMIT_DESC - INVITE_COUNT_ASC - INVITE_COUNT_DESC - MULTIPLE_ASC - MULTIPLE_DESC - DATA_ASC - DATA_DESC - EXPIRES_AT_ASC - EXPIRES_AT_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipInvite` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input MembershipInviteCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `email` field.""" - email: String - - """Checks for equality with the object’s `senderId` field.""" - senderId: UUID - - """Checks for equality with the object’s `receiverId` field.""" - receiverId: UUID - - """Checks for equality with the object’s `inviteToken` field.""" - inviteToken: String - - """Checks for equality with the object’s `inviteValid` field.""" - inviteValid: Boolean - - """Checks for equality with the object’s `inviteLimit` field.""" - inviteLimit: Int - - """Checks for equality with the object’s `inviteCount` field.""" - inviteCount: Int - - """Checks for equality with the object’s `multiple` field.""" - multiple: Boolean - - """Checks for equality with the object’s `data` field.""" - data: JSON - - """Checks for equality with the object’s `expiresAt` field.""" - expiresAt: Datetime - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID -} - -""" -A filter to be used against `MembershipInvite` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipInviteFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `email` field.""" - email: StringFilter - - """Filter by the object’s `senderId` field.""" - senderId: UUIDFilter - - """Filter by the object’s `receiverId` field.""" - receiverId: UUIDFilter - - """Filter by the object’s `inviteToken` field.""" - inviteToken: StringFilter - - """Filter by the object’s `inviteValid` field.""" - inviteValid: BooleanFilter - - """Filter by the object’s `inviteLimit` field.""" - inviteLimit: IntFilter - - """Filter by the object’s `inviteCount` field.""" - inviteCount: IntFilter - - """Filter by the object’s `multiple` field.""" - multiple: BooleanFilter - - """Filter by the object’s `expiresAt` field.""" - expiresAt: DatetimeFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [MembershipInviteFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipInviteFilter!] - - """Negates the expression.""" - not: MembershipInviteFilter -} - -"""A connection to a list of `MembershipClaimedInvite` values.""" -type MembershipClaimedInvitesConnection { - """A list of `MembershipClaimedInvite` objects.""" - nodes: [MembershipClaimedInvite!]! - - """ - A list of edges which contains the `MembershipClaimedInvite` and cursor to aid in pagination. - """ - edges: [MembershipClaimedInvitesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipClaimedInvite` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipClaimedInvite { - id: UUID! - data: JSON - senderId: UUID - receiverId: UUID - createdAt: Datetime - updatedAt: Datetime - entityId: UUID! - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - sender: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - receiver: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - entity: User -} - -"""A `MembershipClaimedInvite` edge in the connection.""" -type MembershipClaimedInvitesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipClaimedInvite` at the end of the edge.""" - node: MembershipClaimedInvite! -} - -"""Methods to use when ordering `MembershipClaimedInvite`.""" -enum MembershipClaimedInvitesOrderBy { - NATURAL - ID_ASC - ID_DESC - DATA_ASC - DATA_DESC - SENDER_ID_ASC - SENDER_ID_DESC - RECEIVER_ID_ASC - RECEIVER_ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipClaimedInvite` object types. All -fields are tested for equality and combined with a logical ‘and.’ -""" -input MembershipClaimedInviteCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `data` field.""" - data: JSON - - """Checks for equality with the object’s `senderId` field.""" - senderId: UUID - - """Checks for equality with the object’s `receiverId` field.""" - receiverId: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID -} - -""" -A filter to be used against `MembershipClaimedInvite` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipClaimedInviteFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `senderId` field.""" - senderId: UUIDFilter - - """Filter by the object’s `receiverId` field.""" - receiverId: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [MembershipClaimedInviteFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipClaimedInviteFilter!] - - """Negates the expression.""" - not: MembershipClaimedInviteFilter -} - -"""A connection to a list of `AuditLog` values.""" -type AuditLogsConnection { - """A list of `AuditLog` objects.""" - nodes: [AuditLog!]! - - """ - A list of edges which contains the `AuditLog` and cursor to aid in pagination. - """ - edges: [AuditLogsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AuditLog` you could get from the connection.""" - totalCount: Int! -} - -type AuditLog { - id: UUID! - event: String! - actorId: UUID! - origin: String - userAgent: String - ipAddress: InternetAddress - success: Boolean! - createdAt: Datetime! - - """Reads a single `User` that is related to this `AuditLog`.""" - actor: User -} - -"""An IPv4 or IPv6 host address, and optionally its subnet.""" -scalar InternetAddress - -"""A `AuditLog` edge in the connection.""" -type AuditLogsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AuditLog` at the end of the edge.""" - node: AuditLog! -} - -"""Methods to use when ordering `AuditLog`.""" -enum AuditLogsOrderBy { - NATURAL - ID_ASC - ID_DESC - EVENT_ASC - EVENT_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - ORIGIN_ASC - ORIGIN_DESC - USER_AGENT_ASC - USER_AGENT_DESC - IP_ADDRESS_ASC - IP_ADDRESS_DESC - SUCCESS_ASC - SUCCESS_DESC - CREATED_AT_ASC - CREATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AuditLog` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input AuditLogCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `event` field.""" - event: String - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID - - """Checks for equality with the object’s `origin` field.""" - origin: String - - """Checks for equality with the object’s `userAgent` field.""" - userAgent: String - - """Checks for equality with the object’s `ipAddress` field.""" - ipAddress: InternetAddress - - """Checks for equality with the object’s `success` field.""" - success: Boolean - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime -} - -""" -A filter to be used against `AuditLog` object types. All fields are combined with a logical ‘and.’ -""" -input AuditLogFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `event` field.""" - event: StringFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Filter by the object’s `origin` field.""" - origin: StringFilter - - """Filter by the object’s `userAgent` field.""" - userAgent: StringFilter - - """Filter by the object’s `ipAddress` field.""" - ipAddress: InternetAddressFilter - - """Filter by the object’s `success` field.""" - success: BooleanFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AuditLogFilter!] - - """Checks for any expressions in this list.""" - or: [AuditLogFilter!] - - """Negates the expression.""" - not: AuditLogFilter -} - -""" -A filter to be used against InternetAddress fields. All fields are combined with a logical ‘and.’ -""" -input InternetAddressFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: InternetAddress - - """Not equal to the specified value.""" - notEqualTo: InternetAddress - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: InternetAddress - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: InternetAddress - - """Included in the specified list.""" - in: [InternetAddress!] - - """Not included in the specified list.""" - notIn: [InternetAddress!] - - """Less than the specified value.""" - lessThan: InternetAddress - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: InternetAddress - - """Greater than the specified value.""" - greaterThan: InternetAddress - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: InternetAddress - - """Contains the specified internet address.""" - contains: InternetAddress - - """Contains or equal to the specified internet address.""" - containsOrEqualTo: InternetAddress - - """Contained by the specified internet address.""" - containedBy: InternetAddress - - """Contained by or equal to the specified internet address.""" - containedByOrEqualTo: InternetAddress - - """Contains or contained by the specified internet address.""" - containsOrContainedBy: InternetAddress -} - -"""Methods to use when ordering `Product`.""" -enum ProductsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - PRICE_ASC - PRICE_DESC - COMPARE_AT_PRICE_ASC - COMPARE_AT_PRICE_DESC - SKU_ASC - SKU_DESC - INVENTORY_QUANTITY_ASC - INVENTORY_QUANTITY_DESC - WEIGHT_ASC - WEIGHT_DESC - DIMENSIONS_ASC - DIMENSIONS_DESC - IS_ACTIVE_ASC - IS_ACTIVE_DESC - IS_FEATURED_ASC - IS_FEATURED_DESC - TAGS_ASC - TAGS_DESC - IMAGE_URLS_ASC - IMAGE_URLS_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - SELLER_ID_ASC - SELLER_ID_DESC - CATEGORY_ID_ASC - CATEGORY_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `Product` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input ProductCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `description` field.""" - description: String - - """Checks for equality with the object’s `price` field.""" - price: BigFloat - - """Checks for equality with the object’s `compareAtPrice` field.""" - compareAtPrice: BigFloat - - """Checks for equality with the object’s `sku` field.""" - sku: String - - """Checks for equality with the object’s `inventoryQuantity` field.""" - inventoryQuantity: Int - - """Checks for equality with the object’s `weight` field.""" - weight: BigFloat - - """Checks for equality with the object’s `dimensions` field.""" - dimensions: String - - """Checks for equality with the object’s `isActive` field.""" - isActive: Boolean - - """Checks for equality with the object’s `isFeatured` field.""" - isFeatured: Boolean - - """Checks for equality with the object’s `tags` field.""" - tags: String - - """Checks for equality with the object’s `imageUrls` field.""" - imageUrls: String - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `sellerId` field.""" - sellerId: UUID - - """Checks for equality with the object’s `categoryId` field.""" - categoryId: UUID -} - -""" -A filter to be used against `Product` object types. All fields are combined with a logical ‘and.’ -""" -input ProductFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Filter by the object’s `price` field.""" - price: BigFloatFilter - - """Filter by the object’s `compareAtPrice` field.""" - compareAtPrice: BigFloatFilter - - """Filter by the object’s `sku` field.""" - sku: StringFilter - - """Filter by the object’s `inventoryQuantity` field.""" - inventoryQuantity: IntFilter - - """Filter by the object’s `weight` field.""" - weight: BigFloatFilter - - """Filter by the object’s `dimensions` field.""" - dimensions: StringFilter - - """Filter by the object’s `isActive` field.""" - isActive: BooleanFilter - - """Filter by the object’s `isFeatured` field.""" - isFeatured: BooleanFilter - - """Filter by the object’s `tags` field.""" - tags: StringFilter - - """Filter by the object’s `imageUrls` field.""" - imageUrls: StringFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `sellerId` field.""" - sellerId: UUIDFilter - - """Filter by the object’s `categoryId` field.""" - categoryId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [ProductFilter!] - - """Checks for any expressions in this list.""" - or: [ProductFilter!] - - """Negates the expression.""" - not: ProductFilter -} - -""" -A filter to be used against BigFloat fields. All fields are combined with a logical ‘and.’ -""" -input BigFloatFilter { - """ - Is null (if `true` is specified) or is not null (if `false` is specified). - """ - isNull: Boolean - - """Equal to the specified value.""" - equalTo: BigFloat - - """Not equal to the specified value.""" - notEqualTo: BigFloat - - """ - Not equal to the specified value, treating null like an ordinary value. - """ - distinctFrom: BigFloat - - """Equal to the specified value, treating null like an ordinary value.""" - notDistinctFrom: BigFloat - - """Included in the specified list.""" - in: [BigFloat!] - - """Not included in the specified list.""" - notIn: [BigFloat!] - - """Less than the specified value.""" - lessThan: BigFloat - - """Less than or equal to the specified value.""" - lessThanOrEqualTo: BigFloat - - """Greater than the specified value.""" - greaterThan: BigFloat - - """Greater than or equal to the specified value.""" - greaterThanOrEqualTo: BigFloat -} - -"""A connection to a list of `Order` values.""" -type OrdersConnection { - """A list of `Order` objects.""" - nodes: [Order!]! - - """ - A list of edges which contains the `Order` and cursor to aid in pagination. - """ - edges: [OrdersEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Order` you could get from the connection.""" - totalCount: Int! -} - -type Order { - id: UUID! - orderNumber: String! - status: String! - totalAmount: BigFloat! - shippingAmount: BigFloat - taxAmount: BigFloat - notes: String - shippedAt: Datetime - deliveredAt: Datetime - createdAt: Datetime - updatedAt: Datetime - customerId: UUID! - - """Reads a single `User` that is related to this `Order`.""" - customer: User - - """Reads and enables pagination through a set of `OrderItem`.""" - orderItems( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderItemCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderItemFilter - ): OrderItemsConnection! - - """Reads and enables pagination through a set of `Product`.""" - productsByOrderItemOrderIdAndProductId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): OrderProductsByOrderItemOrderIdAndProductIdManyToManyConnection! -} - -"""A connection to a list of `OrderItem` values.""" -type OrderItemsConnection { - """A list of `OrderItem` objects.""" - nodes: [OrderItem!]! - - """ - A list of edges which contains the `OrderItem` and cursor to aid in pagination. - """ - edges: [OrderItemsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `OrderItem` you could get from the connection.""" - totalCount: Int! -} - -type OrderItem { - id: UUID! - quantity: Int! - unitPrice: BigFloat! - totalPrice: BigFloat! - orderId: UUID! - productId: UUID! - - """Reads a single `Order` that is related to this `OrderItem`.""" - order: Order - - """Reads a single `Product` that is related to this `OrderItem`.""" - product: Product -} - -"""A `OrderItem` edge in the connection.""" -type OrderItemsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `OrderItem` at the end of the edge.""" - node: OrderItem! -} - -"""Methods to use when ordering `OrderItem`.""" -enum OrderItemsOrderBy { - NATURAL - ID_ASC - ID_DESC - QUANTITY_ASC - QUANTITY_DESC - UNIT_PRICE_ASC - UNIT_PRICE_DESC - TOTAL_PRICE_ASC - TOTAL_PRICE_DESC - ORDER_ID_ASC - ORDER_ID_DESC - PRODUCT_ID_ASC - PRODUCT_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `OrderItem` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input OrderItemCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `quantity` field.""" - quantity: Int - - """Checks for equality with the object’s `unitPrice` field.""" - unitPrice: BigFloat - - """Checks for equality with the object’s `totalPrice` field.""" - totalPrice: BigFloat - - """Checks for equality with the object’s `orderId` field.""" - orderId: UUID - - """Checks for equality with the object’s `productId` field.""" - productId: UUID -} - -""" -A filter to be used against `OrderItem` object types. All fields are combined with a logical ‘and.’ -""" -input OrderItemFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `quantity` field.""" - quantity: IntFilter - - """Filter by the object’s `unitPrice` field.""" - unitPrice: BigFloatFilter - - """Filter by the object’s `totalPrice` field.""" - totalPrice: BigFloatFilter - - """Filter by the object’s `orderId` field.""" - orderId: UUIDFilter - - """Filter by the object’s `productId` field.""" - productId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [OrderItemFilter!] - - """Checks for any expressions in this list.""" - or: [OrderItemFilter!] - - """Negates the expression.""" - not: OrderItemFilter -} - -""" -A connection to a list of `Product` values, with data from `OrderItem`. -""" -type OrderProductsByOrderItemOrderIdAndProductIdManyToManyConnection { - """A list of `Product` objects.""" - nodes: [Product!]! - - """ - A list of edges which contains the `Product`, info from the `OrderItem`, and the cursor to aid in pagination. - """ - edges: [OrderProductsByOrderItemOrderIdAndProductIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Product` you could get from the connection.""" - totalCount: Int! -} - -"""A `Product` edge in the connection, with data from `OrderItem`.""" -type OrderProductsByOrderItemOrderIdAndProductIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Product` at the end of the edge.""" - node: Product! - - """Reads and enables pagination through a set of `OrderItem`.""" - orderItems( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderItemCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderItemFilter - ): OrderItemsConnection! -} - -"""A `Order` edge in the connection.""" -type OrdersEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Order` at the end of the edge.""" - node: Order! -} - -"""Methods to use when ordering `Order`.""" -enum OrdersOrderBy { - NATURAL - ID_ASC - ID_DESC - ORDER_NUMBER_ASC - ORDER_NUMBER_DESC - STATUS_ASC - STATUS_DESC - TOTAL_AMOUNT_ASC - TOTAL_AMOUNT_DESC - SHIPPING_AMOUNT_ASC - SHIPPING_AMOUNT_DESC - TAX_AMOUNT_ASC - TAX_AMOUNT_DESC - NOTES_ASC - NOTES_DESC - SHIPPED_AT_ASC - SHIPPED_AT_DESC - DELIVERED_AT_ASC - DELIVERED_AT_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - CUSTOMER_ID_ASC - CUSTOMER_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `Order` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input OrderCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `orderNumber` field.""" - orderNumber: String - - """Checks for equality with the object’s `status` field.""" - status: String - - """Checks for equality with the object’s `totalAmount` field.""" - totalAmount: BigFloat - - """Checks for equality with the object’s `shippingAmount` field.""" - shippingAmount: BigFloat - - """Checks for equality with the object’s `taxAmount` field.""" - taxAmount: BigFloat - - """Checks for equality with the object’s `notes` field.""" - notes: String - - """Checks for equality with the object’s `shippedAt` field.""" - shippedAt: Datetime - - """Checks for equality with the object’s `deliveredAt` field.""" - deliveredAt: Datetime - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `customerId` field.""" - customerId: UUID -} - -""" -A filter to be used against `Order` object types. All fields are combined with a logical ‘and.’ -""" -input OrderFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `orderNumber` field.""" - orderNumber: StringFilter - - """Filter by the object’s `status` field.""" - status: StringFilter - - """Filter by the object’s `totalAmount` field.""" - totalAmount: BigFloatFilter - - """Filter by the object’s `shippingAmount` field.""" - shippingAmount: BigFloatFilter - - """Filter by the object’s `taxAmount` field.""" - taxAmount: BigFloatFilter - - """Filter by the object’s `notes` field.""" - notes: StringFilter - - """Filter by the object’s `shippedAt` field.""" - shippedAt: DatetimeFilter - - """Filter by the object’s `deliveredAt` field.""" - deliveredAt: DatetimeFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `customerId` field.""" - customerId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [OrderFilter!] - - """Checks for any expressions in this list.""" - or: [OrderFilter!] - - """Negates the expression.""" - not: OrderFilter -} - -"""A connection to a list of `Review` values.""" -type ReviewsConnection { - """A list of `Review` objects.""" - nodes: [Review!]! - - """ - A list of edges which contains the `Review` and cursor to aid in pagination. - """ - edges: [ReviewsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Review` you could get from the connection.""" - totalCount: Int! -} - -type Review { - id: UUID! - rating: Int! - title: String - comment: String - isVerifiedPurchase: Boolean - createdAt: Datetime - userId: UUID! - productId: UUID! - - """Reads a single `User` that is related to this `Review`.""" - user: User - - """Reads a single `Product` that is related to this `Review`.""" - product: Product -} - -"""A `Review` edge in the connection.""" -type ReviewsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Review` at the end of the edge.""" - node: Review! -} - -"""Methods to use when ordering `Review`.""" -enum ReviewsOrderBy { - NATURAL - ID_ASC - ID_DESC - RATING_ASC - RATING_DESC - TITLE_ASC - TITLE_DESC - COMMENT_ASC - COMMENT_DESC - IS_VERIFIED_PURCHASE_ASC - IS_VERIFIED_PURCHASE_DESC - CREATED_AT_ASC - CREATED_AT_DESC - USER_ID_ASC - USER_ID_DESC - PRODUCT_ID_ASC - PRODUCT_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `Review` object types. All fields are tested for equality and combined with a logical ‘and.’ -""" -input ReviewCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `rating` field.""" - rating: Int - - """Checks for equality with the object’s `title` field.""" - title: String - - """Checks for equality with the object’s `comment` field.""" - comment: String - - """Checks for equality with the object’s `isVerifiedPurchase` field.""" - isVerifiedPurchase: Boolean - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `userId` field.""" - userId: UUID - - """Checks for equality with the object’s `productId` field.""" - productId: UUID -} - -""" -A filter to be used against `Review` object types. All fields are combined with a logical ‘and.’ -""" -input ReviewFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `rating` field.""" - rating: IntFilter - - """Filter by the object’s `title` field.""" - title: StringFilter - - """Filter by the object’s `comment` field.""" - comment: StringFilter - - """Filter by the object’s `isVerifiedPurchase` field.""" - isVerifiedPurchase: BooleanFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `userId` field.""" - userId: UUIDFilter - - """Filter by the object’s `productId` field.""" - productId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [ReviewFilter!] - - """Checks for any expressions in this list.""" - or: [ReviewFilter!] - - """Negates the expression.""" - not: ReviewFilter -} - -""" -A connection to a list of `User` values, with data from `AppAdminGrant`. -""" -type UserUsersByAppAdminGrantActorIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `AppAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByAppAdminGrantActorIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `AppAdminGrant`.""" -type UserUsersByAppAdminGrantActorIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `AppAdminGrant`.""" - appAdminGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAdminGrantFilter - ): AppAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `AppAdminGrant`. -""" -type UserUsersByAppAdminGrantGrantorIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `AppAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByAppAdminGrantGrantorIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `AppAdminGrant`.""" -type UserUsersByAppAdminGrantGrantorIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `AppAdminGrant`.""" - appAdminGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppAdminGrantFilter - ): AppAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `AppOwnerGrant`. -""" -type UserUsersByAppOwnerGrantActorIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `AppOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByAppOwnerGrantActorIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `AppOwnerGrant`.""" -type UserUsersByAppOwnerGrantActorIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `AppOwnerGrant`.""" - appOwnerGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppOwnerGrantFilter - ): AppOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `AppOwnerGrant`. -""" -type UserUsersByAppOwnerGrantGrantorIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `AppOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByAppOwnerGrantGrantorIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `AppOwnerGrant`.""" -type UserUsersByAppOwnerGrantGrantorIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `AppOwnerGrant`.""" - appOwnerGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppOwnerGrantFilter - ): AppOwnerGrantsConnection! -} - -"""A connection to a list of `User` values, with data from `AppGrant`.""" -type UserUsersByAppGrantActorIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `AppGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByAppGrantActorIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `AppGrant`.""" -type UserUsersByAppGrantActorIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `AppGrant`.""" - appGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppGrantFilter - ): AppGrantsConnection! -} - -"""A connection to a list of `User` values, with data from `AppGrant`.""" -type UserUsersByAppGrantGrantorIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `AppGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByAppGrantGrantorIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `AppGrant`.""" -type UserUsersByAppGrantGrantorIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `AppGrant`.""" - appGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: AppGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: AppGrantFilter - ): AppGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipLimit`. -""" -type UserUsersByMembershipLimitActorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipLimit`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipLimitActorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipLimit`.""" -type UserUsersByMembershipLimitActorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipLimit`.""" - membershipLimitsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipLimitFilter - ): MembershipLimitsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipLimit`. -""" -type UserUsersByMembershipLimitEntityIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipLimit`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipLimitEntityIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipLimit`.""" -type UserUsersByMembershipLimitEntityIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipLimit`.""" - membershipLimitsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipLimitCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipLimitFilter - ): MembershipLimitsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipMembership`. -""" -type UserUsersByMembershipMembershipActorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipMembership`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipMembershipActorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipMembership`. -""" -type UserUsersByMembershipMembershipActorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - id: UUID! - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean! - isBanned: Boolean! - isDisabled: Boolean! - isActive: Boolean! - isOwner: Boolean! - isAdmin: Boolean! - permissions: BitString! - granted: BitString! -} - -""" -A connection to a list of `User` values, with data from `MembershipMembership`. -""" -type UserUsersByMembershipMembershipEntityIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipMembership`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipMembershipEntityIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipMembership`. -""" -type UserUsersByMembershipMembershipEntityIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - id: UUID! - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean! - isBanned: Boolean! - isDisabled: Boolean! - isActive: Boolean! - isOwner: Boolean! - isAdmin: Boolean! - permissions: BitString! - granted: BitString! -} - -""" -A connection to a list of `User` values, with data from `MembershipMember`. -""" -type UserUsersByMembershipMemberActorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipMember`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipMemberActorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipMember`.""" -type UserUsersByMembershipMemberActorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - id: UUID! - isAdmin: Boolean! -} - -""" -A connection to a list of `User` values, with data from `MembershipMember`. -""" -type UserUsersByMembershipMemberEntityIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipMember`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipMemberEntityIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipMember`.""" -type UserUsersByMembershipMemberEntityIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - id: UUID! - isAdmin: Boolean! -} - -""" -A connection to a list of `User` values, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantActorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipAdminGrantActorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantActorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantActorIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipAdminGrantActorIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantActorIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantEntityIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipAdminGrantEntityIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantEntityIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantEntityIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipAdminGrantEntityIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantEntityIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantGrantorIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipAdminGrantGrantorIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantGrantorIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantGrantorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipAdminGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipAdminGrantGrantorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipAdminGrant`. -""" -type UserUsersByMembershipAdminGrantGrantorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipAdminGrant`.""" - membershipAdminGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipAdminGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipAdminGrantFilter - ): MembershipAdminGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantActorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipOwnerGrantActorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantActorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantActorIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipOwnerGrantActorIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantActorIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantEntityIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipOwnerGrantEntityIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantEntityIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantEntityIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipOwnerGrantEntityIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantEntityIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantGrantorIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipOwnerGrantGrantorIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantGrantorIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantGrantorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipOwnerGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipOwnerGrantGrantorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipOwnerGrant`. -""" -type UserUsersByMembershipOwnerGrantGrantorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipOwnerGrant`.""" - membershipOwnerGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipOwnerGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipOwnerGrantFilter - ): MembershipOwnerGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipGrant`. -""" -type UserUsersByMembershipGrantActorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipGrantActorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipGrant`.""" -type UserUsersByMembershipGrantActorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipGrant`. -""" -type UserUsersByMembershipGrantActorIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipGrantActorIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipGrant`.""" -type UserUsersByMembershipGrantActorIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipGrant`. -""" -type UserUsersByMembershipGrantEntityIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipGrantEntityIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipGrant`.""" -type UserUsersByMembershipGrantEntityIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipGrant`. -""" -type UserUsersByMembershipGrantEntityIdAndGrantorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipGrantEntityIdAndGrantorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipGrant`.""" -type UserUsersByMembershipGrantEntityIdAndGrantorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByGrantorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipGrant`. -""" -type UserUsersByMembershipGrantGrantorIdAndActorIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipGrantGrantorIdAndActorIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipGrant`.""" -type UserUsersByMembershipGrantGrantorIdAndActorIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByActorId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipGrant`. -""" -type UserUsersByMembershipGrantGrantorIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipGrant`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipGrantGrantorIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipGrant`.""" -type UserUsersByMembershipGrantGrantorIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipGrant`.""" - membershipGrantsByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipGrantCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipGrantFilter - ): MembershipGrantsConnection! -} - -""" -A connection to a list of `User` values, with data from `ClaimedInvite`. -""" -type UserUsersByClaimedInviteSenderIdAndReceiverIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `ClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByClaimedInviteSenderIdAndReceiverIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `ClaimedInvite`.""" -type UserUsersByClaimedInviteSenderIdAndReceiverIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `ClaimedInvite`.""" - claimedInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ClaimedInviteFilter - ): ClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `ClaimedInvite`. -""" -type UserUsersByClaimedInviteReceiverIdAndSenderIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `ClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByClaimedInviteReceiverIdAndSenderIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `ClaimedInvite`.""" -type UserUsersByClaimedInviteReceiverIdAndSenderIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `ClaimedInvite`.""" - claimedInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ClaimedInviteFilter - ): ClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipInvite`. -""" -type UserUsersByMembershipInviteSenderIdAndReceiverIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipInviteSenderIdAndReceiverIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipInvite`.""" -type UserUsersByMembershipInviteSenderIdAndReceiverIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipInvite`. -""" -type UserUsersByMembershipInviteSenderIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipInviteSenderIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipInvite`.""" -type UserUsersByMembershipInviteSenderIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipInvite`. -""" -type UserUsersByMembershipInviteReceiverIdAndSenderIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipInviteReceiverIdAndSenderIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipInvite`.""" -type UserUsersByMembershipInviteReceiverIdAndSenderIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipInvite`. -""" -type UserUsersByMembershipInviteReceiverIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipInviteReceiverIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipInvite`.""" -type UserUsersByMembershipInviteReceiverIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipInvite`. -""" -type UserUsersByMembershipInviteEntityIdAndSenderIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipInviteEntityIdAndSenderIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipInvite`.""" -type UserUsersByMembershipInviteEntityIdAndSenderIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipInvite`. -""" -type UserUsersByMembershipInviteEntityIdAndReceiverIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipInviteEntityIdAndReceiverIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `MembershipInvite`.""" -type UserUsersByMembershipInviteEntityIdAndReceiverIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `MembershipInvite`.""" - membershipInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipInviteFilter - ): MembershipInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteSenderIdAndReceiverIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipClaimedInviteSenderIdAndReceiverIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteSenderIdAndReceiverIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteSenderIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipClaimedInviteSenderIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteSenderIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteReceiverIdAndSenderIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipClaimedInviteReceiverIdAndSenderIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteReceiverIdAndSenderIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteReceiverIdAndEntityIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipClaimedInviteReceiverIdAndEntityIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteReceiverIdAndEntityIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesByEntityId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteEntityIdAndSenderIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipClaimedInviteEntityIdAndSenderIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteEntityIdAndSenderIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesBySenderId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! -} - -""" -A connection to a list of `User` values, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteEntityIdAndReceiverIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `MembershipClaimedInvite`, and the cursor to aid in pagination. - """ - edges: [UserUsersByMembershipClaimedInviteEntityIdAndReceiverIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -""" -A `User` edge in the connection, with data from `MembershipClaimedInvite`. -""" -type UserUsersByMembershipClaimedInviteEntityIdAndReceiverIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """ - Reads and enables pagination through a set of `MembershipClaimedInvite`. - """ - membershipClaimedInvitesByReceiverId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: MembershipClaimedInviteCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: MembershipClaimedInviteFilter - ): MembershipClaimedInvitesConnection! -} - -"""A connection to a list of `Category` values, with data from `Product`.""" -type UserCategoriesByProductSellerIdAndCategoryIdManyToManyConnection { - """A list of `Category` objects.""" - nodes: [Category!]! - - """ - A list of edges which contains the `Category`, info from the `Product`, and the cursor to aid in pagination. - """ - edges: [UserCategoriesByProductSellerIdAndCategoryIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Category` you could get from the connection.""" - totalCount: Int! -} - -"""A `Category` edge in the connection, with data from `Product`.""" -type UserCategoriesByProductSellerIdAndCategoryIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Category` at the end of the edge.""" - node: Category! - - """Reads and enables pagination through a set of `Product`.""" - products( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): ProductsConnection! -} - -"""Methods to use when ordering `Category`.""" -enum CategoriesOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - SLUG_ASC - SLUG_DESC - IMAGE_URL_ASC - IMAGE_URL_DESC - IS_ACTIVE_ASC - IS_ACTIVE_DESC - SORT_ORDER_ASC - SORT_ORDER_DESC - CREATED_AT_ASC - CREATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `Category` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input CategoryCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `description` field.""" - description: String - - """Checks for equality with the object’s `slug` field.""" - slug: String - - """Checks for equality with the object’s `imageUrl` field.""" - imageUrl: String - - """Checks for equality with the object’s `isActive` field.""" - isActive: Boolean - - """Checks for equality with the object’s `sortOrder` field.""" - sortOrder: Int - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime -} - -""" -A filter to be used against `Category` object types. All fields are combined with a logical ‘and.’ -""" -input CategoryFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Filter by the object’s `slug` field.""" - slug: StringFilter - - """Filter by the object’s `imageUrl` field.""" - imageUrl: StringFilter - - """Filter by the object’s `isActive` field.""" - isActive: BooleanFilter - - """Filter by the object’s `sortOrder` field.""" - sortOrder: IntFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [CategoryFilter!] - - """Checks for any expressions in this list.""" - or: [CategoryFilter!] - - """Negates the expression.""" - not: CategoryFilter -} - -"""A connection to a list of `Product` values, with data from `Review`.""" -type UserProductsByReviewUserIdAndProductIdManyToManyConnection { - """A list of `Product` objects.""" - nodes: [Product!]! - - """ - A list of edges which contains the `Product`, info from the `Review`, and the cursor to aid in pagination. - """ - edges: [UserProductsByReviewUserIdAndProductIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Product` you could get from the connection.""" - totalCount: Int! -} - -"""A `Product` edge in the connection, with data from `Review`.""" -type UserProductsByReviewUserIdAndProductIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Product` at the end of the edge.""" - node: Product! - - """Reads and enables pagination through a set of `Review`.""" - reviews( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ReviewCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ReviewFilter - ): ReviewsConnection! -} - -"""A connection to a list of `Order` values, with data from `OrderItem`.""" -type ProductOrdersByOrderItemProductIdAndOrderIdManyToManyConnection { - """A list of `Order` objects.""" - nodes: [Order!]! - - """ - A list of edges which contains the `Order`, info from the `OrderItem`, and the cursor to aid in pagination. - """ - edges: [ProductOrdersByOrderItemProductIdAndOrderIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `Order` you could get from the connection.""" - totalCount: Int! -} - -"""A `Order` edge in the connection, with data from `OrderItem`.""" -type ProductOrdersByOrderItemProductIdAndOrderIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Order` at the end of the edge.""" - node: Order! - - """Reads and enables pagination through a set of `OrderItem`.""" - orderItems( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: OrderItemCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: OrderItemFilter - ): OrderItemsConnection! -} - -"""A connection to a list of `User` values, with data from `Review`.""" -type ProductUsersByReviewProductIdAndUserIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `Review`, and the cursor to aid in pagination. - """ - edges: [ProductUsersByReviewProductIdAndUserIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `Review`.""" -type ProductUsersByReviewProductIdAndUserIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `Review`.""" - reviews( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ReviewCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ReviewFilter - ): ReviewsConnection! -} - -"""A `Product` edge in the connection.""" -type ProductsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Product` at the end of the edge.""" - node: Product! -} - -"""A connection to a list of `User` values, with data from `Product`.""" -type CategoryUsersByProductCategoryIdAndSellerIdManyToManyConnection { - """A list of `User` objects.""" - nodes: [User!]! - - """ - A list of edges which contains the `User`, info from the `Product`, and the cursor to aid in pagination. - """ - edges: [CategoryUsersByProductCategoryIdAndSellerIdManyToManyEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `User` you could get from the connection.""" - totalCount: Int! -} - -"""A `User` edge in the connection, with data from `Product`.""" -type CategoryUsersByProductCategoryIdAndSellerIdManyToManyEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `User` at the end of the edge.""" - node: User! - - """Reads and enables pagination through a set of `Product`.""" - productsBySellerId( - """Only read the first `n` values of the set.""" - first: Int - - """Only read the last `n` values of the set.""" - last: Int - - """ - Skip the first `n` values from our `after` cursor, an alternative to cursor - based pagination. May not be used with `last`. - """ - offset: Int - - """Read all values in the set before (above) this cursor.""" - before: Cursor - - """Read all values in the set after (below) this cursor.""" - after: Cursor - - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - - """ - A condition to be used in determining which values should be returned by the collection. - """ - condition: ProductCondition - - """ - A filter to be used in determining which values should be returned by the collection. - """ - filter: ProductFilter - ): ProductsConnection! -} - -"""A `Category` edge in the connection.""" -type CategoriesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `Category` at the end of the edge.""" - node: Category! -} - -"""A connection to a list of `RoleType` values.""" -type RoleTypesConnection { - """A list of `RoleType` objects.""" - nodes: [RoleType!]! - - """ - A list of edges which contains the `RoleType` and cursor to aid in pagination. - """ - edges: [RoleTypesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `RoleType` you could get from the connection.""" - totalCount: Int! -} - -"""A `RoleType` edge in the connection.""" -type RoleTypesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `RoleType` at the end of the edge.""" - node: RoleType! -} - -"""Methods to use when ordering `RoleType`.""" -enum RoleTypesOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `RoleType` object types. All fields are tested -for equality and combined with a logical ‘and.’ -""" -input RoleTypeCondition { - """Checks for equality with the object’s `id` field.""" - id: Int - - """Checks for equality with the object’s `name` field.""" - name: String -} - -""" -A filter to be used against `RoleType` object types. All fields are combined with a logical ‘and.’ -""" -input RoleTypeFilter { - """Filter by the object’s `id` field.""" - id: IntFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Checks for all expressions in this list.""" - and: [RoleTypeFilter!] - - """Checks for any expressions in this list.""" - or: [RoleTypeFilter!] - - """Negates the expression.""" - not: RoleTypeFilter -} - -"""A connection to a list of `AppMembershipDefault` values.""" -type AppMembershipDefaultsConnection { - """A list of `AppMembershipDefault` objects.""" - nodes: [AppMembershipDefault!]! - - """ - A list of edges which contains the `AppMembershipDefault` and cursor to aid in pagination. - """ - edges: [AppMembershipDefaultsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `AppMembershipDefault` you could get from the connection. - """ - totalCount: Int! -} - -type AppMembershipDefault { - id: UUID! - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean! - isVerified: Boolean! -} - -"""A `AppMembershipDefault` edge in the connection.""" -type AppMembershipDefaultsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppMembershipDefault` at the end of the edge.""" - node: AppMembershipDefault! -} - -"""Methods to use when ordering `AppMembershipDefault`.""" -enum AppMembershipDefaultsOrderBy { - NATURAL - ID_ASC - ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - CREATED_BY_ASC - CREATED_BY_DESC - UPDATED_BY_ASC - UPDATED_BY_DESC - IS_APPROVED_ASC - IS_APPROVED_DESC - IS_VERIFIED_ASC - IS_VERIFIED_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppMembershipDefault` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input AppMembershipDefaultCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `createdBy` field.""" - createdBy: UUID - - """Checks for equality with the object’s `updatedBy` field.""" - updatedBy: UUID - - """Checks for equality with the object’s `isApproved` field.""" - isApproved: Boolean - - """Checks for equality with the object’s `isVerified` field.""" - isVerified: Boolean -} - -""" -A filter to be used against `AppMembershipDefault` object types. All fields are combined with a logical ‘and.’ -""" -input AppMembershipDefaultFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `createdBy` field.""" - createdBy: UUIDFilter - - """Filter by the object’s `updatedBy` field.""" - updatedBy: UUIDFilter - - """Filter by the object’s `isApproved` field.""" - isApproved: BooleanFilter - - """Filter by the object’s `isVerified` field.""" - isVerified: BooleanFilter - - """Checks for all expressions in this list.""" - and: [AppMembershipDefaultFilter!] - - """Checks for any expressions in this list.""" - or: [AppMembershipDefaultFilter!] - - """Negates the expression.""" - not: AppMembershipDefaultFilter -} - -"""A connection to a list of `AppMembership` values.""" -type AppMembershipsConnection { - """A list of `AppMembership` objects.""" - nodes: [AppMembership!]! - - """ - A list of edges which contains the `AppMembership` and cursor to aid in pagination. - """ - edges: [AppMembershipsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppMembership` you could get from the connection.""" - totalCount: Int! -} - -"""A `AppMembership` edge in the connection.""" -type AppMembershipsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppMembership` at the end of the edge.""" - node: AppMembership! -} - -"""Methods to use when ordering `AppMembership`.""" -enum AppMembershipsOrderBy { - NATURAL - ID_ASC - ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - CREATED_BY_ASC - CREATED_BY_DESC - UPDATED_BY_ASC - UPDATED_BY_DESC - IS_APPROVED_ASC - IS_APPROVED_DESC - IS_BANNED_ASC - IS_BANNED_DESC - IS_DISABLED_ASC - IS_DISABLED_DESC - IS_VERIFIED_ASC - IS_VERIFIED_DESC - IS_ACTIVE_ASC - IS_ACTIVE_DESC - IS_OWNER_ASC - IS_OWNER_DESC - IS_ADMIN_ASC - IS_ADMIN_DESC - PERMISSIONS_ASC - PERMISSIONS_DESC - GRANTED_ASC - GRANTED_DESC - ACTOR_ID_ASC - ACTOR_ID_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppMembership` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input AppMembershipCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `createdBy` field.""" - createdBy: UUID - - """Checks for equality with the object’s `updatedBy` field.""" - updatedBy: UUID - - """Checks for equality with the object’s `isApproved` field.""" - isApproved: Boolean - - """Checks for equality with the object’s `isBanned` field.""" - isBanned: Boolean - - """Checks for equality with the object’s `isDisabled` field.""" - isDisabled: Boolean - - """Checks for equality with the object’s `isVerified` field.""" - isVerified: Boolean - - """Checks for equality with the object’s `isActive` field.""" - isActive: Boolean - - """Checks for equality with the object’s `isOwner` field.""" - isOwner: Boolean - - """Checks for equality with the object’s `isAdmin` field.""" - isAdmin: Boolean - - """Checks for equality with the object’s `permissions` field.""" - permissions: BitString - - """Checks for equality with the object’s `granted` field.""" - granted: BitString - - """Checks for equality with the object’s `actorId` field.""" - actorId: UUID -} - -""" -A filter to be used against `AppMembership` object types. All fields are combined with a logical ‘and.’ -""" -input AppMembershipFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `createdBy` field.""" - createdBy: UUIDFilter - - """Filter by the object’s `updatedBy` field.""" - updatedBy: UUIDFilter - - """Filter by the object’s `isApproved` field.""" - isApproved: BooleanFilter - - """Filter by the object’s `isBanned` field.""" - isBanned: BooleanFilter - - """Filter by the object’s `isDisabled` field.""" - isDisabled: BooleanFilter - - """Filter by the object’s `isVerified` field.""" - isVerified: BooleanFilter - - """Filter by the object’s `isActive` field.""" - isActive: BooleanFilter - - """Filter by the object’s `isOwner` field.""" - isOwner: BooleanFilter - - """Filter by the object’s `isAdmin` field.""" - isAdmin: BooleanFilter - - """Filter by the object’s `permissions` field.""" - permissions: BitStringFilter - - """Filter by the object’s `granted` field.""" - granted: BitStringFilter - - """Filter by the object’s `actorId` field.""" - actorId: UUIDFilter - - """Checks for all expressions in this list.""" - and: [AppMembershipFilter!] - - """Checks for any expressions in this list.""" - or: [AppMembershipFilter!] - - """Negates the expression.""" - not: AppMembershipFilter -} - -"""A connection to a list of `MembershipMembershipDefault` values.""" -type MembershipMembershipDefaultsConnection { - """A list of `MembershipMembershipDefault` objects.""" - nodes: [MembershipMembershipDefault!]! - - """ - A list of edges which contains the `MembershipMembershipDefault` and cursor to aid in pagination. - """ - edges: [MembershipMembershipDefaultsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipMembershipDefault` you could get from the connection. - """ - totalCount: Int! -} - -"""A `MembershipMembershipDefault` edge in the connection.""" -type MembershipMembershipDefaultsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipMembershipDefault` at the end of the edge.""" - node: MembershipMembershipDefault! -} - -"""Methods to use when ordering `MembershipMembershipDefault`.""" -enum MembershipMembershipDefaultsOrderBy { - NATURAL - ID_ASC - ID_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - CREATED_BY_ASC - CREATED_BY_DESC - UPDATED_BY_ASC - UPDATED_BY_DESC - IS_APPROVED_ASC - IS_APPROVED_DESC - ENTITY_ID_ASC - ENTITY_ID_DESC - DELETE_MEMBER_CASCADE_GROUPS_ASC - DELETE_MEMBER_CASCADE_GROUPS_DESC - CREATE_GROUPS_CASCADE_MEMBERS_ASC - CREATE_GROUPS_CASCADE_MEMBERS_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipMembershipDefault` object types. All -fields are tested for equality and combined with a logical ‘and.’ -""" -input MembershipMembershipDefaultCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime - - """Checks for equality with the object’s `createdBy` field.""" - createdBy: UUID - - """Checks for equality with the object’s `updatedBy` field.""" - updatedBy: UUID - - """Checks for equality with the object’s `isApproved` field.""" - isApproved: Boolean - - """Checks for equality with the object’s `entityId` field.""" - entityId: UUID - - """ - Checks for equality with the object’s `deleteMemberCascadeGroups` field. - """ - deleteMemberCascadeGroups: Boolean - - """ - Checks for equality with the object’s `createGroupsCascadeMembers` field. - """ - createGroupsCascadeMembers: Boolean -} - -""" -A filter to be used against `MembershipMembershipDefault` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipMembershipDefaultFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Filter by the object’s `createdBy` field.""" - createdBy: UUIDFilter - - """Filter by the object’s `updatedBy` field.""" - updatedBy: UUIDFilter - - """Filter by the object’s `isApproved` field.""" - isApproved: BooleanFilter - - """Filter by the object’s `entityId` field.""" - entityId: UUIDFilter - - """Filter by the object’s `deleteMemberCascadeGroups` field.""" - deleteMemberCascadeGroups: BooleanFilter - - """Filter by the object’s `createGroupsCascadeMembers` field.""" - createGroupsCascadeMembers: BooleanFilter - - """Checks for all expressions in this list.""" - and: [MembershipMembershipDefaultFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipMembershipDefaultFilter!] - - """Negates the expression.""" - not: MembershipMembershipDefaultFilter -} - -"""A connection to a list of `MembershipType` values.""" -type MembershipTypesConnection { - """A list of `MembershipType` objects.""" - nodes: [MembershipType!]! - - """ - A list of edges which contains the `MembershipType` and cursor to aid in pagination. - """ - edges: [MembershipTypesEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `MembershipType` you could get from the connection.""" - totalCount: Int! -} - -type MembershipType { - id: Int! - name: String! - description: String! - prefix: String! -} - -"""A `MembershipType` edge in the connection.""" -type MembershipTypesEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipType` at the end of the edge.""" - node: MembershipType! -} - -"""Methods to use when ordering `MembershipType`.""" -enum MembershipTypesOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - PREFIX_ASC - PREFIX_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipType` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input MembershipTypeCondition { - """Checks for equality with the object’s `id` field.""" - id: Int - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `description` field.""" - description: String - - """Checks for equality with the object’s `prefix` field.""" - prefix: String -} - -""" -A filter to be used against `MembershipType` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipTypeFilter { - """Filter by the object’s `id` field.""" - id: IntFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Filter by the object’s `prefix` field.""" - prefix: StringFilter - - """Checks for all expressions in this list.""" - and: [MembershipTypeFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipTypeFilter!] - - """Negates the expression.""" - not: MembershipTypeFilter -} - -"""A connection to a list of `AppPermissionDefault` values.""" -type AppPermissionDefaultsConnection { - """A list of `AppPermissionDefault` objects.""" - nodes: [AppPermissionDefault!]! - - """ - A list of edges which contains the `AppPermissionDefault` and cursor to aid in pagination. - """ - edges: [AppPermissionDefaultsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `AppPermissionDefault` you could get from the connection. - """ - totalCount: Int! -} - -type AppPermissionDefault { - id: UUID! - permissions: BitString! -} - -"""A `AppPermissionDefault` edge in the connection.""" -type AppPermissionDefaultsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppPermissionDefault` at the end of the edge.""" - node: AppPermissionDefault! -} - -"""Methods to use when ordering `AppPermissionDefault`.""" -enum AppPermissionDefaultsOrderBy { - NATURAL - ID_ASC - ID_DESC - PERMISSIONS_ASC - PERMISSIONS_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppPermissionDefault` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input AppPermissionDefaultCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `permissions` field.""" - permissions: BitString -} - -""" -A filter to be used against `AppPermissionDefault` object types. All fields are combined with a logical ‘and.’ -""" -input AppPermissionDefaultFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `permissions` field.""" - permissions: BitStringFilter - - """Checks for all expressions in this list.""" - and: [AppPermissionDefaultFilter!] - - """Checks for any expressions in this list.""" - or: [AppPermissionDefaultFilter!] - - """Negates the expression.""" - not: AppPermissionDefaultFilter -} - -"""A connection to a list of `AppPermission` values.""" -type AppPermissionsConnection { - """A list of `AppPermission` objects.""" - nodes: [AppPermission!]! - - """ - A list of edges which contains the `AppPermission` and cursor to aid in pagination. - """ - edges: [AppPermissionsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """The count of *all* `AppPermission` you could get from the connection.""" - totalCount: Int! -} - -type AppPermission { - id: UUID! - name: String - bitnum: Int - bitstr: BitString! - description: String -} - -"""A `AppPermission` edge in the connection.""" -type AppPermissionsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppPermission` at the end of the edge.""" - node: AppPermission! -} - -"""Methods to use when ordering `AppPermission`.""" -enum AppPermissionsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - BITNUM_ASC - BITNUM_DESC - BITSTR_ASC - BITSTR_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppPermission` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input AppPermissionCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `bitnum` field.""" - bitnum: Int - - """Checks for equality with the object’s `bitstr` field.""" - bitstr: BitString - - """Checks for equality with the object’s `description` field.""" - description: String -} - -""" -A filter to be used against `AppPermission` object types. All fields are combined with a logical ‘and.’ -""" -input AppPermissionFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `bitnum` field.""" - bitnum: IntFilter - - """Filter by the object’s `bitstr` field.""" - bitstr: BitStringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Checks for all expressions in this list.""" - and: [AppPermissionFilter!] - - """Checks for any expressions in this list.""" - or: [AppPermissionFilter!] - - """Negates the expression.""" - not: AppPermissionFilter -} - -"""A connection to a list of `MembershipPermission` values.""" -type MembershipPermissionsConnection { - """A list of `MembershipPermission` objects.""" - nodes: [MembershipPermission!]! - - """ - A list of edges which contains the `MembershipPermission` and cursor to aid in pagination. - """ - edges: [MembershipPermissionsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipPermission` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipPermission { - id: UUID! - name: String - bitnum: Int - bitstr: BitString! - description: String -} - -"""A `MembershipPermission` edge in the connection.""" -type MembershipPermissionsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipPermission` at the end of the edge.""" - node: MembershipPermission! -} - -"""Methods to use when ordering `MembershipPermission`.""" -enum MembershipPermissionsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - BITNUM_ASC - BITNUM_DESC - BITSTR_ASC - BITSTR_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipPermission` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input MembershipPermissionCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `bitnum` field.""" - bitnum: Int - - """Checks for equality with the object’s `bitstr` field.""" - bitstr: BitString - - """Checks for equality with the object’s `description` field.""" - description: String -} - -""" -A filter to be used against `MembershipPermission` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipPermissionFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `bitnum` field.""" - bitnum: IntFilter - - """Filter by the object’s `bitstr` field.""" - bitstr: BitStringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Checks for all expressions in this list.""" - and: [MembershipPermissionFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipPermissionFilter!] - - """Negates the expression.""" - not: MembershipPermissionFilter -} - -"""A connection to a list of `AppLimitDefault` values.""" -type AppLimitDefaultsConnection { - """A list of `AppLimitDefault` objects.""" - nodes: [AppLimitDefault!]! - - """ - A list of edges which contains the `AppLimitDefault` and cursor to aid in pagination. - """ - edges: [AppLimitDefaultsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `AppLimitDefault` you could get from the connection. - """ - totalCount: Int! -} - -type AppLimitDefault { - id: UUID! - name: String! - max: Int -} - -"""A `AppLimitDefault` edge in the connection.""" -type AppLimitDefaultsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppLimitDefault` at the end of the edge.""" - node: AppLimitDefault! -} - -"""Methods to use when ordering `AppLimitDefault`.""" -enum AppLimitDefaultsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - MAX_ASC - MAX_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppLimitDefault` object types. All fields are -tested for equality and combined with a logical ‘and.’ -""" -input AppLimitDefaultCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `max` field.""" - max: Int -} - -""" -A filter to be used against `AppLimitDefault` object types. All fields are combined with a logical ‘and.’ -""" -input AppLimitDefaultFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `max` field.""" - max: IntFilter - - """Checks for all expressions in this list.""" - and: [AppLimitDefaultFilter!] - - """Checks for any expressions in this list.""" - or: [AppLimitDefaultFilter!] - - """Negates the expression.""" - not: AppLimitDefaultFilter -} - -"""A connection to a list of `MembershipLimitDefault` values.""" -type MembershipLimitDefaultsConnection { - """A list of `MembershipLimitDefault` objects.""" - nodes: [MembershipLimitDefault!]! - - """ - A list of edges which contains the `MembershipLimitDefault` and cursor to aid in pagination. - """ - edges: [MembershipLimitDefaultsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `MembershipLimitDefault` you could get from the connection. - """ - totalCount: Int! -} - -type MembershipLimitDefault { - id: UUID! - name: String! - max: Int -} - -"""A `MembershipLimitDefault` edge in the connection.""" -type MembershipLimitDefaultsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `MembershipLimitDefault` at the end of the edge.""" - node: MembershipLimitDefault! -} - -"""Methods to use when ordering `MembershipLimitDefault`.""" -enum MembershipLimitDefaultsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - MAX_ASC - MAX_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `MembershipLimitDefault` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input MembershipLimitDefaultCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `max` field.""" - max: Int -} - -""" -A filter to be used against `MembershipLimitDefault` object types. All fields are combined with a logical ‘and.’ -""" -input MembershipLimitDefaultFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `max` field.""" - max: IntFilter - - """Checks for all expressions in this list.""" - and: [MembershipLimitDefaultFilter!] - - """Checks for any expressions in this list.""" - or: [MembershipLimitDefaultFilter!] - - """Negates the expression.""" - not: MembershipLimitDefaultFilter -} - -"""A connection to a list of `AppLevelRequirement` values.""" -type AppLevelRequirementsConnection { - """A list of `AppLevelRequirement` objects.""" - nodes: [AppLevelRequirement!]! - - """ - A list of edges which contains the `AppLevelRequirement` and cursor to aid in pagination. - """ - edges: [AppLevelRequirementsEdge!]! - - """Information to aid in pagination.""" - pageInfo: PageInfo! - - """ - The count of *all* `AppLevelRequirement` you could get from the connection. - """ - totalCount: Int! -} - -"""Requirements to achieve a level""" -type AppLevelRequirement { - id: UUID! - name: String! - level: String! - description: String - requiredCount: Int! - priority: Int! - createdAt: Datetime - updatedAt: Datetime -} - -"""A `AppLevelRequirement` edge in the connection.""" -type AppLevelRequirementsEdge { - """A cursor for use in pagination.""" - cursor: Cursor - - """The `AppLevelRequirement` at the end of the edge.""" - node: AppLevelRequirement! -} - -"""Methods to use when ordering `AppLevelRequirement`.""" -enum AppLevelRequirementsOrderBy { - NATURAL - ID_ASC - ID_DESC - NAME_ASC - NAME_DESC - LEVEL_ASC - LEVEL_DESC - DESCRIPTION_ASC - DESCRIPTION_DESC - REQUIRED_COUNT_ASC - REQUIRED_COUNT_DESC - PRIORITY_ASC - PRIORITY_DESC - CREATED_AT_ASC - CREATED_AT_DESC - UPDATED_AT_ASC - UPDATED_AT_DESC - PRIMARY_KEY_ASC - PRIMARY_KEY_DESC -} - -""" -A condition to be used against `AppLevelRequirement` object types. All fields -are tested for equality and combined with a logical ‘and.’ -""" -input AppLevelRequirementCondition { - """Checks for equality with the object’s `id` field.""" - id: UUID - - """Checks for equality with the object’s `name` field.""" - name: String - - """Checks for equality with the object’s `level` field.""" - level: String - - """Checks for equality with the object’s `description` field.""" - description: String - - """Checks for equality with the object’s `requiredCount` field.""" - requiredCount: Int - - """Checks for equality with the object’s `priority` field.""" - priority: Int - - """Checks for equality with the object’s `createdAt` field.""" - createdAt: Datetime - - """Checks for equality with the object’s `updatedAt` field.""" - updatedAt: Datetime -} - -""" -A filter to be used against `AppLevelRequirement` object types. All fields are combined with a logical ‘and.’ -""" -input AppLevelRequirementFilter { - """Filter by the object’s `id` field.""" - id: UUIDFilter - - """Filter by the object’s `name` field.""" - name: StringFilter - - """Filter by the object’s `level` field.""" - level: StringFilter - - """Filter by the object’s `description` field.""" - description: StringFilter - - """Filter by the object’s `requiredCount` field.""" - requiredCount: IntFilter - - """Filter by the object’s `priority` field.""" - priority: IntFilter - - """Filter by the object’s `createdAt` field.""" - createdAt: DatetimeFilter - - """Filter by the object’s `updatedAt` field.""" - updatedAt: DatetimeFilter - - """Checks for all expressions in this list.""" - and: [AppLevelRequirementFilter!] - - """Checks for any expressions in this list.""" - or: [AppLevelRequirementFilter!] - - """Negates the expression.""" - not: AppLevelRequirementFilter -} - -""" -The root mutation type which contains root level fields which mutate data. -""" -type Mutation { - """Creates a single `Category`.""" - createCategory( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateCategoryInput! - ): CreateCategoryPayload - - """Creates a single `CryptoAddress`.""" - createCryptoAddress( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateCryptoAddressInput! - ): CreateCryptoAddressPayload - - """Creates a single `Email`.""" - createEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateEmailInput! - ): CreateEmailPayload - - """Creates a single `OrderItem`.""" - createOrderItem( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateOrderItemInput! - ): CreateOrderItemPayload - - """Creates a single `Order`.""" - createOrder( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateOrderInput! - ): CreateOrderPayload - - """Creates a single `PhoneNumber`.""" - createPhoneNumber( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreatePhoneNumberInput! - ): CreatePhoneNumberPayload - - """Creates a single `Product`.""" - createProduct( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateProductInput! - ): CreateProductPayload - - """Creates a single `Review`.""" - createReview( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateReviewInput! - ): CreateReviewPayload - - """Creates a single `RoleType`.""" - createRoleType( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateRoleTypeInput! - ): CreateRoleTypePayload - - """Creates a single `User`.""" - createUser( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateUserInput! - ): CreateUserPayload - - """Creates a single `AppAdminGrant`.""" - createAppAdminGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppAdminGrantInput! - ): CreateAppAdminGrantPayload - - """Creates a single `AppGrant`.""" - createAppGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppGrantInput! - ): CreateAppGrantPayload - - """Creates a single `AppMembershipDefault`.""" - createAppMembershipDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppMembershipDefaultInput! - ): CreateAppMembershipDefaultPayload - - """Creates a single `AppMembership`.""" - createAppMembership( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppMembershipInput! - ): CreateAppMembershipPayload - - """Creates a single `AppOwnerGrant`.""" - createAppOwnerGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppOwnerGrantInput! - ): CreateAppOwnerGrantPayload - - """Creates a single `MembershipAdminGrant`.""" - createMembershipAdminGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipAdminGrantInput! - ): CreateMembershipAdminGrantPayload - - """Creates a single `MembershipGrant`.""" - createMembershipGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipGrantInput! - ): CreateMembershipGrantPayload - - """Creates a single `MembershipMember`.""" - createMembershipMember( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipMemberInput! - ): CreateMembershipMemberPayload - - """Creates a single `MembershipMembershipDefault`.""" - createMembershipMembershipDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipMembershipDefaultInput! - ): CreateMembershipMembershipDefaultPayload - - """Creates a single `MembershipMembership`.""" - createMembershipMembership( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipMembershipInput! - ): CreateMembershipMembershipPayload - - """Creates a single `MembershipOwnerGrant`.""" - createMembershipOwnerGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipOwnerGrantInput! - ): CreateMembershipOwnerGrantPayload - - """Creates a single `MembershipType`.""" - createMembershipType( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipTypeInput! - ): CreateMembershipTypePayload - - """Creates a single `AppPermissionDefault`.""" - createAppPermissionDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppPermissionDefaultInput! - ): CreateAppPermissionDefaultPayload - - """Creates a single `AppPermission`.""" - createAppPermission( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppPermissionInput! - ): CreateAppPermissionPayload - - """Creates a single `MembershipPermissionDefault`.""" - createMembershipPermissionDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipPermissionDefaultInput! - ): CreateMembershipPermissionDefaultPayload - - """Creates a single `MembershipPermission`.""" - createMembershipPermission( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipPermissionInput! - ): CreateMembershipPermissionPayload - - """Creates a single `AppLimitDefault`.""" - createAppLimitDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppLimitDefaultInput! - ): CreateAppLimitDefaultPayload - - """Creates a single `AppLimit`.""" - createAppLimit( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppLimitInput! - ): CreateAppLimitPayload - - """Creates a single `MembershipLimitDefault`.""" - createMembershipLimitDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipLimitDefaultInput! - ): CreateMembershipLimitDefaultPayload - - """Creates a single `MembershipLimit`.""" - createMembershipLimit( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipLimitInput! - ): CreateMembershipLimitPayload - - """Creates a single `AppAchievement`.""" - createAppAchievement( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppAchievementInput! - ): CreateAppAchievementPayload - - """Creates a single `AppLevelRequirement`.""" - createAppLevelRequirement( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppLevelRequirementInput! - ): CreateAppLevelRequirementPayload - - """Creates a single `AppLevel`.""" - createAppLevel( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppLevelInput! - ): CreateAppLevelPayload - - """Creates a single `AppStep`.""" - createAppStep( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAppStepInput! - ): CreateAppStepPayload - - """Creates a single `ClaimedInvite`.""" - createClaimedInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateClaimedInviteInput! - ): CreateClaimedInvitePayload - - """Creates a single `Invite`.""" - createInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateInviteInput! - ): CreateInvitePayload - - """Creates a single `MembershipClaimedInvite`.""" - createMembershipClaimedInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipClaimedInviteInput! - ): CreateMembershipClaimedInvitePayload - - """Creates a single `MembershipInvite`.""" - createMembershipInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateMembershipInviteInput! - ): CreateMembershipInvitePayload - - """Creates a single `AuditLog`.""" - createAuditLog( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CreateAuditLogInput! - ): CreateAuditLogPayload - - """Updates a single `Category` using a unique key and a patch.""" - updateCategory( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateCategoryInput! - ): UpdateCategoryPayload - - """Updates a single `CryptoAddress` using a unique key and a patch.""" - updateCryptoAddress( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateCryptoAddressInput! - ): UpdateCryptoAddressPayload - - """Updates a single `CryptoAddress` using a unique key and a patch.""" - updateCryptoAddressByAddress( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateCryptoAddressByAddressInput! - ): UpdateCryptoAddressPayload - - """Updates a single `Email` using a unique key and a patch.""" - updateEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateEmailInput! - ): UpdateEmailPayload - - """Updates a single `Email` using a unique key and a patch.""" - updateEmailByEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateEmailByEmailInput! - ): UpdateEmailPayload - - """Updates a single `OrderItem` using a unique key and a patch.""" - updateOrderItem( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateOrderItemInput! - ): UpdateOrderItemPayload - - """Updates a single `Order` using a unique key and a patch.""" - updateOrder( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateOrderInput! - ): UpdateOrderPayload - - """Updates a single `PhoneNumber` using a unique key and a patch.""" - updatePhoneNumber( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdatePhoneNumberInput! - ): UpdatePhoneNumberPayload - - """Updates a single `PhoneNumber` using a unique key and a patch.""" - updatePhoneNumberByNumber( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdatePhoneNumberByNumberInput! - ): UpdatePhoneNumberPayload - - """Updates a single `Product` using a unique key and a patch.""" - updateProduct( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateProductInput! - ): UpdateProductPayload - - """Updates a single `Review` using a unique key and a patch.""" - updateReview( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateReviewInput! - ): UpdateReviewPayload - - """Updates a single `RoleType` using a unique key and a patch.""" - updateRoleType( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateRoleTypeInput! - ): UpdateRoleTypePayload - - """Updates a single `RoleType` using a unique key and a patch.""" - updateRoleTypeByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateRoleTypeByNameInput! - ): UpdateRoleTypePayload - - """Updates a single `User` using a unique key and a patch.""" - updateUser( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateUserInput! - ): UpdateUserPayload - - """Updates a single `User` using a unique key and a patch.""" - updateUserByUsername( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateUserByUsernameInput! - ): UpdateUserPayload - - """Updates a single `AppAdminGrant` using a unique key and a patch.""" - updateAppAdminGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppAdminGrantInput! - ): UpdateAppAdminGrantPayload - - """Updates a single `AppGrant` using a unique key and a patch.""" - updateAppGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppGrantInput! - ): UpdateAppGrantPayload - - """ - Updates a single `AppMembershipDefault` using a unique key and a patch. - """ - updateAppMembershipDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppMembershipDefaultInput! - ): UpdateAppMembershipDefaultPayload - - """Updates a single `AppMembership` using a unique key and a patch.""" - updateAppMembership( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppMembershipInput! - ): UpdateAppMembershipPayload - - """Updates a single `AppMembership` using a unique key and a patch.""" - updateAppMembershipByActorId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppMembershipByActorIdInput! - ): UpdateAppMembershipPayload - - """Updates a single `AppOwnerGrant` using a unique key and a patch.""" - updateAppOwnerGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppOwnerGrantInput! - ): UpdateAppOwnerGrantPayload - - """ - Updates a single `MembershipAdminGrant` using a unique key and a patch. - """ - updateMembershipAdminGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipAdminGrantInput! - ): UpdateMembershipAdminGrantPayload - - """Updates a single `MembershipGrant` using a unique key and a patch.""" - updateMembershipGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipGrantInput! - ): UpdateMembershipGrantPayload - - """Updates a single `MembershipMember` using a unique key and a patch.""" - updateMembershipMember( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipMemberInput! - ): UpdateMembershipMemberPayload - - """Updates a single `MembershipMember` using a unique key and a patch.""" - updateMembershipMemberByActorIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipMemberByActorIdAndEntityIdInput! - ): UpdateMembershipMemberPayload - - """ - Updates a single `MembershipMembershipDefault` using a unique key and a patch. - """ - updateMembershipMembershipDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipMembershipDefaultInput! - ): UpdateMembershipMembershipDefaultPayload - - """ - Updates a single `MembershipMembershipDefault` using a unique key and a patch. - """ - updateMembershipMembershipDefaultByEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipMembershipDefaultByEntityIdInput! - ): UpdateMembershipMembershipDefaultPayload - - """ - Updates a single `MembershipMembership` using a unique key and a patch. - """ - updateMembershipMembership( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipMembershipInput! - ): UpdateMembershipMembershipPayload - - """ - Updates a single `MembershipMembership` using a unique key and a patch. - """ - updateMembershipMembershipByActorIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipMembershipByActorIdAndEntityIdInput! - ): UpdateMembershipMembershipPayload - - """ - Updates a single `MembershipOwnerGrant` using a unique key and a patch. - """ - updateMembershipOwnerGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipOwnerGrantInput! - ): UpdateMembershipOwnerGrantPayload - - """Updates a single `MembershipType` using a unique key and a patch.""" - updateMembershipType( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipTypeInput! - ): UpdateMembershipTypePayload - - """Updates a single `MembershipType` using a unique key and a patch.""" - updateMembershipTypeByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipTypeByNameInput! - ): UpdateMembershipTypePayload - - """ - Updates a single `AppPermissionDefault` using a unique key and a patch. - """ - updateAppPermissionDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppPermissionDefaultInput! - ): UpdateAppPermissionDefaultPayload - - """Updates a single `AppPermission` using a unique key and a patch.""" - updateAppPermission( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppPermissionInput! - ): UpdateAppPermissionPayload - - """Updates a single `AppPermission` using a unique key and a patch.""" - updateAppPermissionByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppPermissionByNameInput! - ): UpdateAppPermissionPayload - - """Updates a single `AppPermission` using a unique key and a patch.""" - updateAppPermissionByBitnum( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppPermissionByBitnumInput! - ): UpdateAppPermissionPayload - - """ - Updates a single `MembershipPermissionDefault` using a unique key and a patch. - """ - updateMembershipPermissionDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipPermissionDefaultInput! - ): UpdateMembershipPermissionDefaultPayload - - """ - Updates a single `MembershipPermission` using a unique key and a patch. - """ - updateMembershipPermission( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipPermissionInput! - ): UpdateMembershipPermissionPayload - - """ - Updates a single `MembershipPermission` using a unique key and a patch. - """ - updateMembershipPermissionByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipPermissionByNameInput! - ): UpdateMembershipPermissionPayload - - """ - Updates a single `MembershipPermission` using a unique key and a patch. - """ - updateMembershipPermissionByBitnum( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipPermissionByBitnumInput! - ): UpdateMembershipPermissionPayload - - """Updates a single `AppLimitDefault` using a unique key and a patch.""" - updateAppLimitDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLimitDefaultInput! - ): UpdateAppLimitDefaultPayload - - """Updates a single `AppLimitDefault` using a unique key and a patch.""" - updateAppLimitDefaultByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLimitDefaultByNameInput! - ): UpdateAppLimitDefaultPayload - - """Updates a single `AppLimit` using a unique key and a patch.""" - updateAppLimit( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLimitInput! - ): UpdateAppLimitPayload - - """Updates a single `AppLimit` using a unique key and a patch.""" - updateAppLimitByNameAndActorId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLimitByNameAndActorIdInput! - ): UpdateAppLimitPayload - - """ - Updates a single `MembershipLimitDefault` using a unique key and a patch. - """ - updateMembershipLimitDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipLimitDefaultInput! - ): UpdateMembershipLimitDefaultPayload - - """ - Updates a single `MembershipLimitDefault` using a unique key and a patch. - """ - updateMembershipLimitDefaultByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipLimitDefaultByNameInput! - ): UpdateMembershipLimitDefaultPayload - - """Updates a single `MembershipLimit` using a unique key and a patch.""" - updateMembershipLimit( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipLimitInput! - ): UpdateMembershipLimitPayload - - """Updates a single `MembershipLimit` using a unique key and a patch.""" - updateMembershipLimitByNameAndActorIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipLimitByNameAndActorIdAndEntityIdInput! - ): UpdateMembershipLimitPayload - - """Updates a single `AppAchievement` using a unique key and a patch.""" - updateAppAchievement( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppAchievementInput! - ): UpdateAppAchievementPayload - - """Updates a single `AppAchievement` using a unique key and a patch.""" - updateAppAchievementByActorIdAndName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppAchievementByActorIdAndNameInput! - ): UpdateAppAchievementPayload - - """Updates a single `AppLevelRequirement` using a unique key and a patch.""" - updateAppLevelRequirement( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLevelRequirementInput! - ): UpdateAppLevelRequirementPayload - - """Updates a single `AppLevelRequirement` using a unique key and a patch.""" - updateAppLevelRequirementByNameAndLevel( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLevelRequirementByNameAndLevelInput! - ): UpdateAppLevelRequirementPayload - - """Updates a single `AppLevel` using a unique key and a patch.""" - updateAppLevel( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLevelInput! - ): UpdateAppLevelPayload - - """Updates a single `AppLevel` using a unique key and a patch.""" - updateAppLevelByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppLevelByNameInput! - ): UpdateAppLevelPayload - - """Updates a single `AppStep` using a unique key and a patch.""" - updateAppStep( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAppStepInput! - ): UpdateAppStepPayload - - """Updates a single `ClaimedInvite` using a unique key and a patch.""" - updateClaimedInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateClaimedInviteInput! - ): UpdateClaimedInvitePayload - - """Updates a single `Invite` using a unique key and a patch.""" - updateInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateInviteInput! - ): UpdateInvitePayload - - """Updates a single `Invite` using a unique key and a patch.""" - updateInviteByEmailAndSenderId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateInviteByEmailAndSenderIdInput! - ): UpdateInvitePayload - - """Updates a single `Invite` using a unique key and a patch.""" - updateInviteByInviteToken( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateInviteByInviteTokenInput! - ): UpdateInvitePayload - - """ - Updates a single `MembershipClaimedInvite` using a unique key and a patch. - """ - updateMembershipClaimedInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipClaimedInviteInput! - ): UpdateMembershipClaimedInvitePayload - - """Updates a single `MembershipInvite` using a unique key and a patch.""" - updateMembershipInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipInviteInput! - ): UpdateMembershipInvitePayload - - """Updates a single `MembershipInvite` using a unique key and a patch.""" - updateMembershipInviteByEmailAndSenderIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipInviteByEmailAndSenderIdAndEntityIdInput! - ): UpdateMembershipInvitePayload - - """Updates a single `MembershipInvite` using a unique key and a patch.""" - updateMembershipInviteByInviteToken( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateMembershipInviteByInviteTokenInput! - ): UpdateMembershipInvitePayload - - """Updates a single `AuditLog` using a unique key and a patch.""" - updateAuditLog( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UpdateAuditLogInput! - ): UpdateAuditLogPayload - - """Deletes a single `Category` using a unique key.""" - deleteCategory( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteCategoryInput! - ): DeleteCategoryPayload - - """Deletes a single `CryptoAddress` using a unique key.""" - deleteCryptoAddress( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteCryptoAddressInput! - ): DeleteCryptoAddressPayload - - """Deletes a single `CryptoAddress` using a unique key.""" - deleteCryptoAddressByAddress( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteCryptoAddressByAddressInput! - ): DeleteCryptoAddressPayload - - """Deletes a single `Email` using a unique key.""" - deleteEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteEmailInput! - ): DeleteEmailPayload - - """Deletes a single `Email` using a unique key.""" - deleteEmailByEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteEmailByEmailInput! - ): DeleteEmailPayload - - """Deletes a single `OrderItem` using a unique key.""" - deleteOrderItem( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteOrderItemInput! - ): DeleteOrderItemPayload - - """Deletes a single `Order` using a unique key.""" - deleteOrder( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteOrderInput! - ): DeleteOrderPayload - - """Deletes a single `PhoneNumber` using a unique key.""" - deletePhoneNumber( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeletePhoneNumberInput! - ): DeletePhoneNumberPayload - - """Deletes a single `PhoneNumber` using a unique key.""" - deletePhoneNumberByNumber( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeletePhoneNumberByNumberInput! - ): DeletePhoneNumberPayload - - """Deletes a single `Product` using a unique key.""" - deleteProduct( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteProductInput! - ): DeleteProductPayload - - """Deletes a single `Review` using a unique key.""" - deleteReview( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteReviewInput! - ): DeleteReviewPayload - - """Deletes a single `RoleType` using a unique key.""" - deleteRoleType( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteRoleTypeInput! - ): DeleteRoleTypePayload - - """Deletes a single `RoleType` using a unique key.""" - deleteRoleTypeByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteRoleTypeByNameInput! - ): DeleteRoleTypePayload - - """Deletes a single `User` using a unique key.""" - deleteUser( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteUserInput! - ): DeleteUserPayload - - """Deletes a single `User` using a unique key.""" - deleteUserByUsername( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteUserByUsernameInput! - ): DeleteUserPayload - - """Deletes a single `AppAdminGrant` using a unique key.""" - deleteAppAdminGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppAdminGrantInput! - ): DeleteAppAdminGrantPayload - - """Deletes a single `AppGrant` using a unique key.""" - deleteAppGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppGrantInput! - ): DeleteAppGrantPayload - - """Deletes a single `AppMembershipDefault` using a unique key.""" - deleteAppMembershipDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppMembershipDefaultInput! - ): DeleteAppMembershipDefaultPayload - - """Deletes a single `AppMembership` using a unique key.""" - deleteAppMembership( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppMembershipInput! - ): DeleteAppMembershipPayload - - """Deletes a single `AppMembership` using a unique key.""" - deleteAppMembershipByActorId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppMembershipByActorIdInput! - ): DeleteAppMembershipPayload - - """Deletes a single `AppOwnerGrant` using a unique key.""" - deleteAppOwnerGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppOwnerGrantInput! - ): DeleteAppOwnerGrantPayload - - """Deletes a single `MembershipAdminGrant` using a unique key.""" - deleteMembershipAdminGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipAdminGrantInput! - ): DeleteMembershipAdminGrantPayload - - """Deletes a single `MembershipGrant` using a unique key.""" - deleteMembershipGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipGrantInput! - ): DeleteMembershipGrantPayload - - """Deletes a single `MembershipMember` using a unique key.""" - deleteMembershipMember( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipMemberInput! - ): DeleteMembershipMemberPayload - - """Deletes a single `MembershipMember` using a unique key.""" - deleteMembershipMemberByActorIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipMemberByActorIdAndEntityIdInput! - ): DeleteMembershipMemberPayload - - """Deletes a single `MembershipMembershipDefault` using a unique key.""" - deleteMembershipMembershipDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipMembershipDefaultInput! - ): DeleteMembershipMembershipDefaultPayload - - """Deletes a single `MembershipMembershipDefault` using a unique key.""" - deleteMembershipMembershipDefaultByEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipMembershipDefaultByEntityIdInput! - ): DeleteMembershipMembershipDefaultPayload - - """Deletes a single `MembershipMembership` using a unique key.""" - deleteMembershipMembership( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipMembershipInput! - ): DeleteMembershipMembershipPayload - - """Deletes a single `MembershipMembership` using a unique key.""" - deleteMembershipMembershipByActorIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipMembershipByActorIdAndEntityIdInput! - ): DeleteMembershipMembershipPayload - - """Deletes a single `MembershipOwnerGrant` using a unique key.""" - deleteMembershipOwnerGrant( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipOwnerGrantInput! - ): DeleteMembershipOwnerGrantPayload - - """Deletes a single `MembershipType` using a unique key.""" - deleteMembershipType( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipTypeInput! - ): DeleteMembershipTypePayload - - """Deletes a single `MembershipType` using a unique key.""" - deleteMembershipTypeByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipTypeByNameInput! - ): DeleteMembershipTypePayload - - """Deletes a single `AppPermissionDefault` using a unique key.""" - deleteAppPermissionDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppPermissionDefaultInput! - ): DeleteAppPermissionDefaultPayload - - """Deletes a single `AppPermission` using a unique key.""" - deleteAppPermission( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppPermissionInput! - ): DeleteAppPermissionPayload - - """Deletes a single `AppPermission` using a unique key.""" - deleteAppPermissionByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppPermissionByNameInput! - ): DeleteAppPermissionPayload - - """Deletes a single `AppPermission` using a unique key.""" - deleteAppPermissionByBitnum( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppPermissionByBitnumInput! - ): DeleteAppPermissionPayload - - """Deletes a single `MembershipPermissionDefault` using a unique key.""" - deleteMembershipPermissionDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipPermissionDefaultInput! - ): DeleteMembershipPermissionDefaultPayload - - """Deletes a single `MembershipPermission` using a unique key.""" - deleteMembershipPermission( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipPermissionInput! - ): DeleteMembershipPermissionPayload - - """Deletes a single `MembershipPermission` using a unique key.""" - deleteMembershipPermissionByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipPermissionByNameInput! - ): DeleteMembershipPermissionPayload - - """Deletes a single `MembershipPermission` using a unique key.""" - deleteMembershipPermissionByBitnum( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipPermissionByBitnumInput! - ): DeleteMembershipPermissionPayload - - """Deletes a single `AppLimitDefault` using a unique key.""" - deleteAppLimitDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLimitDefaultInput! - ): DeleteAppLimitDefaultPayload - - """Deletes a single `AppLimitDefault` using a unique key.""" - deleteAppLimitDefaultByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLimitDefaultByNameInput! - ): DeleteAppLimitDefaultPayload - - """Deletes a single `AppLimit` using a unique key.""" - deleteAppLimit( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLimitInput! - ): DeleteAppLimitPayload - - """Deletes a single `AppLimit` using a unique key.""" - deleteAppLimitByNameAndActorId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLimitByNameAndActorIdInput! - ): DeleteAppLimitPayload - - """Deletes a single `MembershipLimitDefault` using a unique key.""" - deleteMembershipLimitDefault( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipLimitDefaultInput! - ): DeleteMembershipLimitDefaultPayload - - """Deletes a single `MembershipLimitDefault` using a unique key.""" - deleteMembershipLimitDefaultByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipLimitDefaultByNameInput! - ): DeleteMembershipLimitDefaultPayload - - """Deletes a single `MembershipLimit` using a unique key.""" - deleteMembershipLimit( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipLimitInput! - ): DeleteMembershipLimitPayload - - """Deletes a single `MembershipLimit` using a unique key.""" - deleteMembershipLimitByNameAndActorIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipLimitByNameAndActorIdAndEntityIdInput! - ): DeleteMembershipLimitPayload - - """Deletes a single `AppAchievement` using a unique key.""" - deleteAppAchievement( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppAchievementInput! - ): DeleteAppAchievementPayload - - """Deletes a single `AppAchievement` using a unique key.""" - deleteAppAchievementByActorIdAndName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppAchievementByActorIdAndNameInput! - ): DeleteAppAchievementPayload - - """Deletes a single `AppLevelRequirement` using a unique key.""" - deleteAppLevelRequirement( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLevelRequirementInput! - ): DeleteAppLevelRequirementPayload - - """Deletes a single `AppLevelRequirement` using a unique key.""" - deleteAppLevelRequirementByNameAndLevel( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLevelRequirementByNameAndLevelInput! - ): DeleteAppLevelRequirementPayload - - """Deletes a single `AppLevel` using a unique key.""" - deleteAppLevel( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLevelInput! - ): DeleteAppLevelPayload - - """Deletes a single `AppLevel` using a unique key.""" - deleteAppLevelByName( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppLevelByNameInput! - ): DeleteAppLevelPayload - - """Deletes a single `AppStep` using a unique key.""" - deleteAppStep( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAppStepInput! - ): DeleteAppStepPayload - - """Deletes a single `ClaimedInvite` using a unique key.""" - deleteClaimedInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteClaimedInviteInput! - ): DeleteClaimedInvitePayload - - """Deletes a single `Invite` using a unique key.""" - deleteInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteInviteInput! - ): DeleteInvitePayload - - """Deletes a single `Invite` using a unique key.""" - deleteInviteByEmailAndSenderId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteInviteByEmailAndSenderIdInput! - ): DeleteInvitePayload - - """Deletes a single `Invite` using a unique key.""" - deleteInviteByInviteToken( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteInviteByInviteTokenInput! - ): DeleteInvitePayload - - """Deletes a single `MembershipClaimedInvite` using a unique key.""" - deleteMembershipClaimedInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipClaimedInviteInput! - ): DeleteMembershipClaimedInvitePayload - - """Deletes a single `MembershipInvite` using a unique key.""" - deleteMembershipInvite( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipInviteInput! - ): DeleteMembershipInvitePayload - - """Deletes a single `MembershipInvite` using a unique key.""" - deleteMembershipInviteByEmailAndSenderIdAndEntityId( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipInviteByEmailAndSenderIdAndEntityIdInput! - ): DeleteMembershipInvitePayload - - """Deletes a single `MembershipInvite` using a unique key.""" - deleteMembershipInviteByInviteToken( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteMembershipInviteByInviteTokenInput! - ): DeleteMembershipInvitePayload - - """Deletes a single `AuditLog` using a unique key.""" - deleteAuditLog( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: DeleteAuditLogInput! - ): DeleteAuditLogPayload - uuidGenerateV4( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: UuidGenerateV4Input! - ): UuidGenerateV4Payload - submitInviteCode( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: SubmitInviteCodeInput! - ): SubmitInviteCodePayload - submitMembershipInviteCode( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: SubmitMembershipInviteCodeInput! - ): SubmitMembershipInviteCodePayload - checkPassword( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: CheckPasswordInput! - ): CheckPasswordPayload - confirmDeleteAccount( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: ConfirmDeleteAccountInput! - ): ConfirmDeleteAccountPayload - extendTokenExpires( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: ExtendTokenExpiresInput! - ): ExtendTokenExpiresPayload - forgotPassword( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: ForgotPasswordInput! - ): ForgotPasswordPayload - login( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: LoginInput! - ): LoginPayload - loginOneTimeToken( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: LoginOneTimeTokenInput! - ): LoginOneTimeTokenPayload - logout( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: LogoutInput! - ): LogoutPayload - oneTimeToken( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: OneTimeTokenInput! - ): OneTimeTokenPayload - register( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: RegisterInput! - ): RegisterPayload - resetPassword( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: ResetPasswordInput! - ): ResetPasswordPayload - sendAccountDeletionEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: SendAccountDeletionEmailInput! - ): SendAccountDeletionEmailPayload - sendVerificationEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: SendVerificationEmailInput! - ): SendVerificationEmailPayload - setPassword( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: SetPasswordInput! - ): SetPasswordPayload - verifyEmail( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: VerifyEmailInput! - ): VerifyEmailPayload - verifyPassword( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: VerifyPasswordInput! - ): VerifyPasswordPayload - verifyTotp( - """ - The exclusive input argument for this mutation. An object type, make sure to see documentation for this object’s fields. - """ - input: VerifyTotpInput! - ): VerifyTotpPayload -} - -"""The output of our create `Category` mutation.""" -type CreateCategoryPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Category` that was created by this mutation.""" - category: Category - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `Category`. May be used by Relay 1.""" - categoryEdge( - """The method to use when ordering `Category`.""" - orderBy: [CategoriesOrderBy!] = [PRIMARY_KEY_ASC] - ): CategoriesEdge -} - -"""All input for the create `Category` mutation.""" -input CreateCategoryInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `Category` to be created by this mutation.""" - category: CategoryInput! -} - -"""An input for mutations affecting `Category`""" -input CategoryInput { - id: UUID - name: String! - description: String - slug: String! - imageUrl: String - isActive: Boolean - sortOrder: Int - createdAt: Datetime -} - -"""The output of our create `CryptoAddress` mutation.""" -type CreateCryptoAddressPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `CryptoAddress` that was created by this mutation.""" - cryptoAddress: CryptoAddress - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `CryptoAddress`.""" - owner: User - - """An edge for our `CryptoAddress`. May be used by Relay 1.""" - cryptoAddressEdge( - """The method to use when ordering `CryptoAddress`.""" - orderBy: [CryptoAddressesOrderBy!] = [PRIMARY_KEY_ASC] - ): CryptoAddressesEdge -} - -"""All input for the create `CryptoAddress` mutation.""" -input CreateCryptoAddressInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `CryptoAddress` to be created by this mutation.""" - cryptoAddress: CryptoAddressInput! -} - -"""An input for mutations affecting `CryptoAddress`""" -input CryptoAddressInput { - id: UUID - ownerId: UUID - address: String! - isVerified: Boolean - isPrimary: Boolean - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `Email` mutation.""" -type CreateEmailPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Email` that was created by this mutation.""" - email: Email - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Email`.""" - owner: User - - """An edge for our `Email`. May be used by Relay 1.""" - emailEdge( - """The method to use when ordering `Email`.""" - orderBy: [EmailsOrderBy!] = [PRIMARY_KEY_ASC] - ): EmailsEdge -} - -"""All input for the create `Email` mutation.""" -input CreateEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `Email` to be created by this mutation.""" - email: EmailInput! -} - -"""An input for mutations affecting `Email`""" -input EmailInput { - id: UUID - ownerId: UUID - email: String! - isVerified: Boolean - isPrimary: Boolean - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `OrderItem` mutation.""" -type CreateOrderItemPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `OrderItem` that was created by this mutation.""" - orderItem: OrderItem - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `Order` that is related to this `OrderItem`.""" - order: Order - - """Reads a single `Product` that is related to this `OrderItem`.""" - product: Product - - """An edge for our `OrderItem`. May be used by Relay 1.""" - orderItemEdge( - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - ): OrderItemsEdge -} - -"""All input for the create `OrderItem` mutation.""" -input CreateOrderItemInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `OrderItem` to be created by this mutation.""" - orderItem: OrderItemInput! -} - -"""An input for mutations affecting `OrderItem`""" -input OrderItemInput { - id: UUID - quantity: Int! - unitPrice: BigFloat! - totalPrice: BigFloat! - orderId: UUID! - productId: UUID! -} - -"""The output of our create `Order` mutation.""" -type CreateOrderPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Order` that was created by this mutation.""" - order: Order - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Order`.""" - customer: User - - """An edge for our `Order`. May be used by Relay 1.""" - orderEdge( - """The method to use when ordering `Order`.""" - orderBy: [OrdersOrderBy!] = [PRIMARY_KEY_ASC] - ): OrdersEdge -} - -"""All input for the create `Order` mutation.""" -input CreateOrderInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `Order` to be created by this mutation.""" - order: OrderInput! -} - -"""An input for mutations affecting `Order`""" -input OrderInput { - id: UUID - orderNumber: String! - status: String! - totalAmount: BigFloat! - shippingAmount: BigFloat - taxAmount: BigFloat - notes: String - shippedAt: Datetime - deliveredAt: Datetime - createdAt: Datetime - updatedAt: Datetime - customerId: UUID! -} - -"""The output of our create `PhoneNumber` mutation.""" -type CreatePhoneNumberPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `PhoneNumber` that was created by this mutation.""" - phoneNumber: PhoneNumber - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `PhoneNumber`.""" - owner: User - - """An edge for our `PhoneNumber`. May be used by Relay 1.""" - phoneNumberEdge( - """The method to use when ordering `PhoneNumber`.""" - orderBy: [PhoneNumbersOrderBy!] = [PRIMARY_KEY_ASC] - ): PhoneNumbersEdge -} - -"""All input for the create `PhoneNumber` mutation.""" -input CreatePhoneNumberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `PhoneNumber` to be created by this mutation.""" - phoneNumber: PhoneNumberInput! -} - -"""An input for mutations affecting `PhoneNumber`""" -input PhoneNumberInput { - id: UUID - ownerId: UUID - cc: String! - number: String! - isVerified: Boolean - isPrimary: Boolean - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `Product` mutation.""" -type CreateProductPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Product` that was created by this mutation.""" - product: Product - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Product`.""" - seller: User - - """Reads a single `Category` that is related to this `Product`.""" - category: Category - - """An edge for our `Product`. May be used by Relay 1.""" - productEdge( - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - ): ProductsEdge -} - -"""All input for the create `Product` mutation.""" -input CreateProductInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `Product` to be created by this mutation.""" - product: ProductInput! -} - -"""An input for mutations affecting `Product`""" -input ProductInput { - id: UUID - name: String! - description: String - price: BigFloat! - compareAtPrice: BigFloat - sku: String - inventoryQuantity: Int - weight: BigFloat - dimensions: String - isActive: Boolean - isFeatured: Boolean - tags: String - imageUrls: String - createdAt: Datetime - updatedAt: Datetime - sellerId: UUID! - categoryId: UUID -} - -"""The output of our create `Review` mutation.""" -type CreateReviewPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Review` that was created by this mutation.""" - review: Review - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Review`.""" - user: User - - """Reads a single `Product` that is related to this `Review`.""" - product: Product - - """An edge for our `Review`. May be used by Relay 1.""" - reviewEdge( - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - ): ReviewsEdge -} - -"""All input for the create `Review` mutation.""" -input CreateReviewInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `Review` to be created by this mutation.""" - review: ReviewInput! -} - -"""An input for mutations affecting `Review`""" -input ReviewInput { - id: UUID - rating: Int! - title: String - comment: String - isVerifiedPurchase: Boolean - createdAt: Datetime - userId: UUID! - productId: UUID! -} - -"""The output of our create `RoleType` mutation.""" -type CreateRoleTypePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `RoleType` that was created by this mutation.""" - roleType: RoleType - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `RoleType`. May be used by Relay 1.""" - roleTypeEdge( - """The method to use when ordering `RoleType`.""" - orderBy: [RoleTypesOrderBy!] = [PRIMARY_KEY_ASC] - ): RoleTypesEdge -} - -"""All input for the create `RoleType` mutation.""" -input CreateRoleTypeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `RoleType` to be created by this mutation.""" - roleType: RoleTypeInput! -} - -"""An input for mutations affecting `RoleType`""" -input RoleTypeInput { - id: Int! - name: String! -} - -"""The output of our create `User` mutation.""" -type CreateUserPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `User` that was created by this mutation.""" - user: User - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `RoleType` that is related to this `User`.""" - roleTypeByType: RoleType - - """An edge for our `User`. May be used by Relay 1.""" - userEdge( - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - ): UsersEdge -} - -"""All input for the create `User` mutation.""" -input CreateUserInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `User` to be created by this mutation.""" - user: UserInput! -} - -"""An input for mutations affecting `User`""" -input UserInput { - id: UUID - username: String - displayName: String - profilePicture: JSON - searchTsv: FullText - type: Int - createdAt: Datetime - updatedAt: Datetime - profilePictureUpload: Upload -} - -"""The `Upload` scalar type represents a file upload.""" -scalar Upload - -"""The output of our create `AppAdminGrant` mutation.""" -type CreateAppAdminGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppAdminGrant` that was created by this mutation.""" - appAdminGrant: AppAdminGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - grantor: User - - """An edge for our `AppAdminGrant`. May be used by Relay 1.""" - appAdminGrantEdge( - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppAdminGrantsEdge -} - -"""All input for the create `AppAdminGrant` mutation.""" -input CreateAppAdminGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppAdminGrant` to be created by this mutation.""" - appAdminGrant: AppAdminGrantInput! -} - -"""An input for mutations affecting `AppAdminGrant`""" -input AppAdminGrantInput { - id: UUID - isGrant: Boolean - actorId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `AppGrant` mutation.""" -type CreateAppGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppGrant` that was created by this mutation.""" - appGrant: AppGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppGrant`.""" - grantor: User - - """An edge for our `AppGrant`. May be used by Relay 1.""" - appGrantEdge( - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppGrantsEdge -} - -"""All input for the create `AppGrant` mutation.""" -input CreateAppGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppGrant` to be created by this mutation.""" - appGrant: AppGrantInput! -} - -"""An input for mutations affecting `AppGrant`""" -input AppGrantInput { - id: UUID - permissions: BitString - isGrant: Boolean - actorId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `AppMembershipDefault` mutation.""" -type CreateAppMembershipDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppMembershipDefault` that was created by this mutation.""" - appMembershipDefault: AppMembershipDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppMembershipDefault`. May be used by Relay 1.""" - appMembershipDefaultEdge( - """The method to use when ordering `AppMembershipDefault`.""" - orderBy: [AppMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppMembershipDefaultsEdge -} - -"""All input for the create `AppMembershipDefault` mutation.""" -input CreateAppMembershipDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppMembershipDefault` to be created by this mutation.""" - appMembershipDefault: AppMembershipDefaultInput! -} - -"""An input for mutations affecting `AppMembershipDefault`""" -input AppMembershipDefaultInput { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - isVerified: Boolean -} - -"""The output of our create `AppMembership` mutation.""" -type CreateAppMembershipPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppMembership` that was created by this mutation.""" - appMembership: AppMembership - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppMembership`.""" - actor: User - - """An edge for our `AppMembership`. May be used by Relay 1.""" - appMembershipEdge( - """The method to use when ordering `AppMembership`.""" - orderBy: [AppMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppMembershipsEdge -} - -"""All input for the create `AppMembership` mutation.""" -input CreateAppMembershipInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppMembership` to be created by this mutation.""" - appMembership: AppMembershipInput! -} - -"""An input for mutations affecting `AppMembership`""" -input AppMembershipInput { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - isBanned: Boolean - isDisabled: Boolean - isVerified: Boolean - isActive: Boolean - isOwner: Boolean - isAdmin: Boolean - permissions: BitString - granted: BitString - actorId: UUID! -} - -"""The output of our create `AppOwnerGrant` mutation.""" -type CreateAppOwnerGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppOwnerGrant` that was created by this mutation.""" - appOwnerGrant: AppOwnerGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - grantor: User - - """An edge for our `AppOwnerGrant`. May be used by Relay 1.""" - appOwnerGrantEdge( - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppOwnerGrantsEdge -} - -"""All input for the create `AppOwnerGrant` mutation.""" -input CreateAppOwnerGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppOwnerGrant` to be created by this mutation.""" - appOwnerGrant: AppOwnerGrantInput! -} - -"""An input for mutations affecting `AppOwnerGrant`""" -input AppOwnerGrantInput { - id: UUID - isGrant: Boolean - actorId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `MembershipAdminGrant` mutation.""" -type CreateMembershipAdminGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipAdminGrant` that was created by this mutation.""" - membershipAdminGrant: MembershipAdminGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - grantor: User - - """An edge for our `MembershipAdminGrant`. May be used by Relay 1.""" - membershipAdminGrantEdge( - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipAdminGrantsEdge -} - -"""All input for the create `MembershipAdminGrant` mutation.""" -input CreateMembershipAdminGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipAdminGrant` to be created by this mutation.""" - membershipAdminGrant: MembershipAdminGrantInput! -} - -"""An input for mutations affecting `MembershipAdminGrant`""" -input MembershipAdminGrantInput { - id: UUID - isGrant: Boolean - actorId: UUID! - entityId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `MembershipGrant` mutation.""" -type CreateMembershipGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipGrant` that was created by this mutation.""" - membershipGrant: MembershipGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - grantor: User - - """An edge for our `MembershipGrant`. May be used by Relay 1.""" - membershipGrantEdge( - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipGrantsEdge -} - -"""All input for the create `MembershipGrant` mutation.""" -input CreateMembershipGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipGrant` to be created by this mutation.""" - membershipGrant: MembershipGrantInput! -} - -"""An input for mutations affecting `MembershipGrant`""" -input MembershipGrantInput { - id: UUID - permissions: BitString - isGrant: Boolean - actorId: UUID! - entityId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `MembershipMember` mutation.""" -type CreateMembershipMemberPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMember` that was created by this mutation.""" - membershipMember: MembershipMember - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipMember`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMember`.""" - entity: User - - """An edge for our `MembershipMember`. May be used by Relay 1.""" - membershipMemberEdge( - """The method to use when ordering `MembershipMember`.""" - orderBy: [MembershipMembersOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembersEdge -} - -"""All input for the create `MembershipMember` mutation.""" -input CreateMembershipMemberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipMember` to be created by this mutation.""" - membershipMember: MembershipMemberInput! -} - -"""An input for mutations affecting `MembershipMember`""" -input MembershipMemberInput { - id: UUID - isAdmin: Boolean - actorId: UUID! - entityId: UUID! -} - -"""The output of our create `MembershipMembershipDefault` mutation.""" -type CreateMembershipMembershipDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMembershipDefault` that was created by this mutation.""" - membershipMembershipDefault: MembershipMembershipDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipMembershipDefault`. - """ - entity: User - - """An edge for our `MembershipMembershipDefault`. May be used by Relay 1.""" - membershipMembershipDefaultEdge( - """The method to use when ordering `MembershipMembershipDefault`.""" - orderBy: [MembershipMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembershipDefaultsEdge -} - -"""All input for the create `MembershipMembershipDefault` mutation.""" -input CreateMembershipMembershipDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipMembershipDefault` to be created by this mutation.""" - membershipMembershipDefault: MembershipMembershipDefaultInput! -} - -"""An input for mutations affecting `MembershipMembershipDefault`""" -input MembershipMembershipDefaultInput { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - entityId: UUID! - deleteMemberCascadeGroups: Boolean - createGroupsCascadeMembers: Boolean -} - -"""The output of our create `MembershipMembership` mutation.""" -type CreateMembershipMembershipPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMembership` that was created by this mutation.""" - membershipMembership: MembershipMembership - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipMembership`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMembership`.""" - entity: User - - """An edge for our `MembershipMembership`. May be used by Relay 1.""" - membershipMembershipEdge( - """The method to use when ordering `MembershipMembership`.""" - orderBy: [MembershipMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembershipsEdge -} - -"""All input for the create `MembershipMembership` mutation.""" -input CreateMembershipMembershipInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipMembership` to be created by this mutation.""" - membershipMembership: MembershipMembershipInput! -} - -"""An input for mutations affecting `MembershipMembership`""" -input MembershipMembershipInput { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - isBanned: Boolean - isDisabled: Boolean - isActive: Boolean - isOwner: Boolean - isAdmin: Boolean - permissions: BitString - granted: BitString - actorId: UUID! - entityId: UUID! -} - -"""The output of our create `MembershipOwnerGrant` mutation.""" -type CreateMembershipOwnerGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipOwnerGrant` that was created by this mutation.""" - membershipOwnerGrant: MembershipOwnerGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - grantor: User - - """An edge for our `MembershipOwnerGrant`. May be used by Relay 1.""" - membershipOwnerGrantEdge( - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipOwnerGrantsEdge -} - -"""All input for the create `MembershipOwnerGrant` mutation.""" -input CreateMembershipOwnerGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipOwnerGrant` to be created by this mutation.""" - membershipOwnerGrant: MembershipOwnerGrantInput! -} - -"""An input for mutations affecting `MembershipOwnerGrant`""" -input MembershipOwnerGrantInput { - id: UUID - isGrant: Boolean - actorId: UUID! - entityId: UUID! - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `MembershipType` mutation.""" -type CreateMembershipTypePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipType` that was created by this mutation.""" - membershipType: MembershipType - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipType`. May be used by Relay 1.""" - membershipTypeEdge( - """The method to use when ordering `MembershipType`.""" - orderBy: [MembershipTypesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipTypesEdge -} - -"""All input for the create `MembershipType` mutation.""" -input CreateMembershipTypeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipType` to be created by this mutation.""" - membershipType: MembershipTypeInput! -} - -"""An input for mutations affecting `MembershipType`""" -input MembershipTypeInput { - id: Int! - name: String! - description: String! - prefix: String! -} - -"""The output of our create `AppPermissionDefault` mutation.""" -type CreateAppPermissionDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppPermissionDefault` that was created by this mutation.""" - appPermissionDefault: AppPermissionDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppPermissionDefault`. May be used by Relay 1.""" - appPermissionDefaultEdge( - """The method to use when ordering `AppPermissionDefault`.""" - orderBy: [AppPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppPermissionDefaultsEdge -} - -"""All input for the create `AppPermissionDefault` mutation.""" -input CreateAppPermissionDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppPermissionDefault` to be created by this mutation.""" - appPermissionDefault: AppPermissionDefaultInput! -} - -"""An input for mutations affecting `AppPermissionDefault`""" -input AppPermissionDefaultInput { - id: UUID - permissions: BitString -} - -"""The output of our create `AppPermission` mutation.""" -type CreateAppPermissionPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppPermission` that was created by this mutation.""" - appPermission: AppPermission - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppPermission`. May be used by Relay 1.""" - appPermissionEdge( - """The method to use when ordering `AppPermission`.""" - orderBy: [AppPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppPermissionsEdge -} - -"""All input for the create `AppPermission` mutation.""" -input CreateAppPermissionInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppPermission` to be created by this mutation.""" - appPermission: AppPermissionInput! -} - -"""An input for mutations affecting `AppPermission`""" -input AppPermissionInput { - id: UUID - name: String - bitnum: Int - bitstr: BitString - description: String -} - -"""The output of our create `MembershipPermissionDefault` mutation.""" -type CreateMembershipPermissionDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipPermissionDefault` that was created by this mutation.""" - membershipPermissionDefault: MembershipPermissionDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipPermissionDefault`. - """ - entity: User - - """An edge for our `MembershipPermissionDefault`. May be used by Relay 1.""" - membershipPermissionDefaultEdge( - """The method to use when ordering `MembershipPermissionDefault`.""" - orderBy: [MembershipPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipPermissionDefaultsEdge -} - -"""All input for the create `MembershipPermissionDefault` mutation.""" -input CreateMembershipPermissionDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipPermissionDefault` to be created by this mutation.""" - membershipPermissionDefault: MembershipPermissionDefaultInput! -} - -"""An input for mutations affecting `MembershipPermissionDefault`""" -input MembershipPermissionDefaultInput { - id: UUID - permissions: BitString - entityId: UUID! -} - -"""The output of our create `MembershipPermission` mutation.""" -type CreateMembershipPermissionPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipPermission` that was created by this mutation.""" - membershipPermission: MembershipPermission - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipPermission`. May be used by Relay 1.""" - membershipPermissionEdge( - """The method to use when ordering `MembershipPermission`.""" - orderBy: [MembershipPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipPermissionsEdge -} - -"""All input for the create `MembershipPermission` mutation.""" -input CreateMembershipPermissionInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipPermission` to be created by this mutation.""" - membershipPermission: MembershipPermissionInput! -} - -"""An input for mutations affecting `MembershipPermission`""" -input MembershipPermissionInput { - id: UUID - name: String - bitnum: Int - bitstr: BitString - description: String -} - -"""The output of our create `AppLimitDefault` mutation.""" -type CreateAppLimitDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLimitDefault` that was created by this mutation.""" - appLimitDefault: AppLimitDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppLimitDefault`. May be used by Relay 1.""" - appLimitDefaultEdge( - """The method to use when ordering `AppLimitDefault`.""" - orderBy: [AppLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLimitDefaultsEdge -} - -"""All input for the create `AppLimitDefault` mutation.""" -input CreateAppLimitDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppLimitDefault` to be created by this mutation.""" - appLimitDefault: AppLimitDefaultInput! -} - -"""An input for mutations affecting `AppLimitDefault`""" -input AppLimitDefaultInput { - id: UUID - name: String! - max: Int -} - -"""The output of our create `AppLimit` mutation.""" -type CreateAppLimitPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLimit` that was created by this mutation.""" - appLimit: AppLimit - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppLimit`.""" - actor: User - - """An edge for our `AppLimit`. May be used by Relay 1.""" - appLimitEdge( - """The method to use when ordering `AppLimit`.""" - orderBy: [AppLimitsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLimitsEdge -} - -"""All input for the create `AppLimit` mutation.""" -input CreateAppLimitInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppLimit` to be created by this mutation.""" - appLimit: AppLimitInput! -} - -"""An input for mutations affecting `AppLimit`""" -input AppLimitInput { - id: UUID - name: String - actorId: UUID! - num: Int - max: Int -} - -"""The output of our create `MembershipLimitDefault` mutation.""" -type CreateMembershipLimitDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipLimitDefault` that was created by this mutation.""" - membershipLimitDefault: MembershipLimitDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipLimitDefault`. May be used by Relay 1.""" - membershipLimitDefaultEdge( - """The method to use when ordering `MembershipLimitDefault`.""" - orderBy: [MembershipLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipLimitDefaultsEdge -} - -"""All input for the create `MembershipLimitDefault` mutation.""" -input CreateMembershipLimitDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipLimitDefault` to be created by this mutation.""" - membershipLimitDefault: MembershipLimitDefaultInput! -} - -"""An input for mutations affecting `MembershipLimitDefault`""" -input MembershipLimitDefaultInput { - id: UUID - name: String! - max: Int -} - -"""The output of our create `MembershipLimit` mutation.""" -type CreateMembershipLimitPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipLimit` that was created by this mutation.""" - membershipLimit: MembershipLimit - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipLimit`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipLimit`.""" - entity: User - - """An edge for our `MembershipLimit`. May be used by Relay 1.""" - membershipLimitEdge( - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipLimitsEdge -} - -"""All input for the create `MembershipLimit` mutation.""" -input CreateMembershipLimitInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipLimit` to be created by this mutation.""" - membershipLimit: MembershipLimitInput! -} - -"""An input for mutations affecting `MembershipLimit`""" -input MembershipLimitInput { - id: UUID - name: String - actorId: UUID! - num: Int - max: Int - entityId: UUID! -} - -"""The output of our create `AppAchievement` mutation.""" -type CreateAppAchievementPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppAchievement` that was created by this mutation.""" - appAchievement: AppAchievement - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppAchievement`.""" - actor: User - - """An edge for our `AppAchievement`. May be used by Relay 1.""" - appAchievementEdge( - """The method to use when ordering `AppAchievement`.""" - orderBy: [AppAchievementsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppAchievementsEdge -} - -"""All input for the create `AppAchievement` mutation.""" -input CreateAppAchievementInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppAchievement` to be created by this mutation.""" - appAchievement: AppAchievementInput! -} - -"""An input for mutations affecting `AppAchievement`""" -input AppAchievementInput { - id: UUID - actorId: UUID - name: String! - count: Int - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `AppLevelRequirement` mutation.""" -type CreateAppLevelRequirementPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLevelRequirement` that was created by this mutation.""" - appLevelRequirement: AppLevelRequirement - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppLevelRequirement`. May be used by Relay 1.""" - appLevelRequirementEdge( - """The method to use when ordering `AppLevelRequirement`.""" - orderBy: [AppLevelRequirementsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLevelRequirementsEdge -} - -"""All input for the create `AppLevelRequirement` mutation.""" -input CreateAppLevelRequirementInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppLevelRequirement` to be created by this mutation.""" - appLevelRequirement: AppLevelRequirementInput! -} - -"""An input for mutations affecting `AppLevelRequirement`""" -input AppLevelRequirementInput { - id: UUID - name: String! - level: String! - description: String - requiredCount: Int - priority: Int - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `AppLevel` mutation.""" -type CreateAppLevelPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLevel` that was created by this mutation.""" - appLevel: AppLevel - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppLevel`.""" - owner: User - - """An edge for our `AppLevel`. May be used by Relay 1.""" - appLevelEdge( - """The method to use when ordering `AppLevel`.""" - orderBy: [AppLevelsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLevelsEdge -} - -"""All input for the create `AppLevel` mutation.""" -input CreateAppLevelInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppLevel` to be created by this mutation.""" - appLevel: AppLevelInput! -} - -"""An input for mutations affecting `AppLevel`""" -input AppLevelInput { - id: UUID - name: String! - description: String - image: JSON - ownerId: UUID - createdAt: Datetime - updatedAt: Datetime - imageUpload: Upload -} - -"""The output of our create `AppStep` mutation.""" -type CreateAppStepPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppStep` that was created by this mutation.""" - appStep: AppStep - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppStep`.""" - actor: User - - """An edge for our `AppStep`. May be used by Relay 1.""" - appStepEdge( - """The method to use when ordering `AppStep`.""" - orderBy: [AppStepsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppStepsEdge -} - -"""All input for the create `AppStep` mutation.""" -input CreateAppStepInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AppStep` to be created by this mutation.""" - appStep: AppStepInput! -} - -"""An input for mutations affecting `AppStep`""" -input AppStepInput { - id: UUID - actorId: UUID - name: String! - count: Int - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `ClaimedInvite` mutation.""" -type CreateClaimedInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `ClaimedInvite` that was created by this mutation.""" - claimedInvite: ClaimedInvite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - sender: User - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - receiver: User - - """An edge for our `ClaimedInvite`. May be used by Relay 1.""" - claimedInviteEdge( - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): ClaimedInvitesEdge -} - -"""All input for the create `ClaimedInvite` mutation.""" -input CreateClaimedInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `ClaimedInvite` to be created by this mutation.""" - claimedInvite: ClaimedInviteInput! -} - -"""An input for mutations affecting `ClaimedInvite`""" -input ClaimedInviteInput { - id: UUID - data: JSON - senderId: UUID - receiverId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `Invite` mutation.""" -type CreateInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Invite` that was created by this mutation.""" - invite: Invite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Invite`.""" - sender: User - - """An edge for our `Invite`. May be used by Relay 1.""" - inviteEdge( - """The method to use when ordering `Invite`.""" - orderBy: [InvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): InvitesEdge -} - -"""All input for the create `Invite` mutation.""" -input CreateInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `Invite` to be created by this mutation.""" - invite: InviteInput! -} - -"""An input for mutations affecting `Invite`""" -input InviteInput { - id: UUID - email: String - senderId: UUID - inviteToken: String - inviteValid: Boolean - inviteLimit: Int - inviteCount: Int - multiple: Boolean - data: JSON - expiresAt: Datetime - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our create `MembershipClaimedInvite` mutation.""" -type CreateMembershipClaimedInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipClaimedInvite` that was created by this mutation.""" - membershipClaimedInvite: MembershipClaimedInvite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - sender: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - receiver: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - entity: User - - """An edge for our `MembershipClaimedInvite`. May be used by Relay 1.""" - membershipClaimedInviteEdge( - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipClaimedInvitesEdge -} - -"""All input for the create `MembershipClaimedInvite` mutation.""" -input CreateMembershipClaimedInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipClaimedInvite` to be created by this mutation.""" - membershipClaimedInvite: MembershipClaimedInviteInput! -} - -"""An input for mutations affecting `MembershipClaimedInvite`""" -input MembershipClaimedInviteInput { - id: UUID - data: JSON - senderId: UUID - receiverId: UUID - createdAt: Datetime - updatedAt: Datetime - entityId: UUID! -} - -"""The output of our create `MembershipInvite` mutation.""" -type CreateMembershipInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipInvite` that was created by this mutation.""" - membershipInvite: MembershipInvite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipInvite`.""" - sender: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - receiver: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - entity: User - - """An edge for our `MembershipInvite`. May be used by Relay 1.""" - membershipInviteEdge( - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipInvitesEdge -} - -"""All input for the create `MembershipInvite` mutation.""" -input CreateMembershipInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `MembershipInvite` to be created by this mutation.""" - membershipInvite: MembershipInviteInput! -} - -"""An input for mutations affecting `MembershipInvite`""" -input MembershipInviteInput { - id: UUID - email: String - senderId: UUID - receiverId: UUID - inviteToken: String - inviteValid: Boolean - inviteLimit: Int - inviteCount: Int - multiple: Boolean - data: JSON - expiresAt: Datetime - createdAt: Datetime - updatedAt: Datetime - entityId: UUID! -} - -"""The output of our create `AuditLog` mutation.""" -type CreateAuditLogPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AuditLog` that was created by this mutation.""" - auditLog: AuditLog - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AuditLog`.""" - actor: User - - """An edge for our `AuditLog`. May be used by Relay 1.""" - auditLogEdge( - """The method to use when ordering `AuditLog`.""" - orderBy: [AuditLogsOrderBy!] = [PRIMARY_KEY_ASC] - ): AuditLogsEdge -} - -"""All input for the create `AuditLog` mutation.""" -input CreateAuditLogInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """The `AuditLog` to be created by this mutation.""" - auditLog: AuditLogInput! -} - -"""An input for mutations affecting `AuditLog`""" -input AuditLogInput { - id: UUID - event: String! - actorId: UUID - origin: String - userAgent: String - ipAddress: InternetAddress - success: Boolean! - createdAt: Datetime -} - -"""The output of our update `Category` mutation.""" -type UpdateCategoryPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Category` that was updated by this mutation.""" - category: Category - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `Category`. May be used by Relay 1.""" - categoryEdge( - """The method to use when ordering `Category`.""" - orderBy: [CategoriesOrderBy!] = [PRIMARY_KEY_ASC] - ): CategoriesEdge -} - -"""All input for the `updateCategory` mutation.""" -input UpdateCategoryInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Category` being updated. - """ - patch: CategoryPatch! - id: UUID! -} - -""" -Represents an update to a `Category`. Fields that are set will be updated. -""" -input CategoryPatch { - id: UUID - name: String - description: String - slug: String - imageUrl: String - isActive: Boolean - sortOrder: Int - createdAt: Datetime -} - -"""The output of our update `CryptoAddress` mutation.""" -type UpdateCryptoAddressPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `CryptoAddress` that was updated by this mutation.""" - cryptoAddress: CryptoAddress - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `CryptoAddress`.""" - owner: User - - """An edge for our `CryptoAddress`. May be used by Relay 1.""" - cryptoAddressEdge( - """The method to use when ordering `CryptoAddress`.""" - orderBy: [CryptoAddressesOrderBy!] = [PRIMARY_KEY_ASC] - ): CryptoAddressesEdge -} - -"""All input for the `updateCryptoAddress` mutation.""" -input UpdateCryptoAddressInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `CryptoAddress` being updated. - """ - patch: CryptoAddressPatch! - id: UUID! -} - -""" -Represents an update to a `CryptoAddress`. Fields that are set will be updated. -""" -input CryptoAddressPatch { - id: UUID - ownerId: UUID - address: String - isVerified: Boolean - isPrimary: Boolean - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `updateCryptoAddressByAddress` mutation.""" -input UpdateCryptoAddressByAddressInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `CryptoAddress` being updated. - """ - patch: CryptoAddressPatch! - address: String! -} - -"""The output of our update `Email` mutation.""" -type UpdateEmailPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Email` that was updated by this mutation.""" - email: Email - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Email`.""" - owner: User - - """An edge for our `Email`. May be used by Relay 1.""" - emailEdge( - """The method to use when ordering `Email`.""" - orderBy: [EmailsOrderBy!] = [PRIMARY_KEY_ASC] - ): EmailsEdge -} - -"""All input for the `updateEmail` mutation.""" -input UpdateEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Email` being updated. - """ - patch: EmailPatch! - id: UUID! -} - -""" -Represents an update to a `Email`. Fields that are set will be updated. -""" -input EmailPatch { - id: UUID - ownerId: UUID - email: String - isVerified: Boolean - isPrimary: Boolean - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `updateEmailByEmail` mutation.""" -input UpdateEmailByEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Email` being updated. - """ - patch: EmailPatch! - email: String! -} - -"""The output of our update `OrderItem` mutation.""" -type UpdateOrderItemPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `OrderItem` that was updated by this mutation.""" - orderItem: OrderItem - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `Order` that is related to this `OrderItem`.""" - order: Order - - """Reads a single `Product` that is related to this `OrderItem`.""" - product: Product - - """An edge for our `OrderItem`. May be used by Relay 1.""" - orderItemEdge( - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - ): OrderItemsEdge -} - -"""All input for the `updateOrderItem` mutation.""" -input UpdateOrderItemInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `OrderItem` being updated. - """ - patch: OrderItemPatch! - id: UUID! -} - -""" -Represents an update to a `OrderItem`. Fields that are set will be updated. -""" -input OrderItemPatch { - id: UUID - quantity: Int - unitPrice: BigFloat - totalPrice: BigFloat - orderId: UUID - productId: UUID -} - -"""The output of our update `Order` mutation.""" -type UpdateOrderPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Order` that was updated by this mutation.""" - order: Order - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Order`.""" - customer: User - - """An edge for our `Order`. May be used by Relay 1.""" - orderEdge( - """The method to use when ordering `Order`.""" - orderBy: [OrdersOrderBy!] = [PRIMARY_KEY_ASC] - ): OrdersEdge -} - -"""All input for the `updateOrder` mutation.""" -input UpdateOrderInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Order` being updated. - """ - patch: OrderPatch! - id: UUID! -} - -""" -Represents an update to a `Order`. Fields that are set will be updated. -""" -input OrderPatch { - id: UUID - orderNumber: String - status: String - totalAmount: BigFloat - shippingAmount: BigFloat - taxAmount: BigFloat - notes: String - shippedAt: Datetime - deliveredAt: Datetime - createdAt: Datetime - updatedAt: Datetime - customerId: UUID -} - -"""The output of our update `PhoneNumber` mutation.""" -type UpdatePhoneNumberPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `PhoneNumber` that was updated by this mutation.""" - phoneNumber: PhoneNumber - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `PhoneNumber`.""" - owner: User - - """An edge for our `PhoneNumber`. May be used by Relay 1.""" - phoneNumberEdge( - """The method to use when ordering `PhoneNumber`.""" - orderBy: [PhoneNumbersOrderBy!] = [PRIMARY_KEY_ASC] - ): PhoneNumbersEdge -} - -"""All input for the `updatePhoneNumber` mutation.""" -input UpdatePhoneNumberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `PhoneNumber` being updated. - """ - patch: PhoneNumberPatch! - id: UUID! -} - -""" -Represents an update to a `PhoneNumber`. Fields that are set will be updated. -""" -input PhoneNumberPatch { - id: UUID - ownerId: UUID - cc: String - number: String - isVerified: Boolean - isPrimary: Boolean - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `updatePhoneNumberByNumber` mutation.""" -input UpdatePhoneNumberByNumberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `PhoneNumber` being updated. - """ - patch: PhoneNumberPatch! - number: String! -} - -"""The output of our update `Product` mutation.""" -type UpdateProductPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Product` that was updated by this mutation.""" - product: Product - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Product`.""" - seller: User - - """Reads a single `Category` that is related to this `Product`.""" - category: Category - - """An edge for our `Product`. May be used by Relay 1.""" - productEdge( - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - ): ProductsEdge -} - -"""All input for the `updateProduct` mutation.""" -input UpdateProductInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Product` being updated. - """ - patch: ProductPatch! - id: UUID! -} - -""" -Represents an update to a `Product`. Fields that are set will be updated. -""" -input ProductPatch { - id: UUID - name: String - description: String - price: BigFloat - compareAtPrice: BigFloat - sku: String - inventoryQuantity: Int - weight: BigFloat - dimensions: String - isActive: Boolean - isFeatured: Boolean - tags: String - imageUrls: String - createdAt: Datetime - updatedAt: Datetime - sellerId: UUID - categoryId: UUID -} - -"""The output of our update `Review` mutation.""" -type UpdateReviewPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Review` that was updated by this mutation.""" - review: Review - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Review`.""" - user: User - - """Reads a single `Product` that is related to this `Review`.""" - product: Product - - """An edge for our `Review`. May be used by Relay 1.""" - reviewEdge( - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - ): ReviewsEdge -} - -"""All input for the `updateReview` mutation.""" -input UpdateReviewInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Review` being updated. - """ - patch: ReviewPatch! - id: UUID! -} - -""" -Represents an update to a `Review`. Fields that are set will be updated. -""" -input ReviewPatch { - id: UUID - rating: Int - title: String - comment: String - isVerifiedPurchase: Boolean - createdAt: Datetime - userId: UUID - productId: UUID -} - -"""The output of our update `RoleType` mutation.""" -type UpdateRoleTypePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `RoleType` that was updated by this mutation.""" - roleType: RoleType - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `RoleType`. May be used by Relay 1.""" - roleTypeEdge( - """The method to use when ordering `RoleType`.""" - orderBy: [RoleTypesOrderBy!] = [PRIMARY_KEY_ASC] - ): RoleTypesEdge -} - -"""All input for the `updateRoleType` mutation.""" -input UpdateRoleTypeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `RoleType` being updated. - """ - patch: RoleTypePatch! - id: Int! -} - -""" -Represents an update to a `RoleType`. Fields that are set will be updated. -""" -input RoleTypePatch { - id: Int - name: String -} - -"""All input for the `updateRoleTypeByName` mutation.""" -input UpdateRoleTypeByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `RoleType` being updated. - """ - patch: RoleTypePatch! - name: String! -} - -"""The output of our update `User` mutation.""" -type UpdateUserPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `User` that was updated by this mutation.""" - user: User - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `RoleType` that is related to this `User`.""" - roleTypeByType: RoleType - - """An edge for our `User`. May be used by Relay 1.""" - userEdge( - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - ): UsersEdge -} - -"""All input for the `updateUser` mutation.""" -input UpdateUserInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `User` being updated. - """ - patch: UserPatch! - id: UUID! -} - -"""Represents an update to a `User`. Fields that are set will be updated.""" -input UserPatch { - id: UUID - username: String - displayName: String - profilePicture: JSON - searchTsv: FullText - type: Int - createdAt: Datetime - updatedAt: Datetime - profilePictureUpload: Upload -} - -"""All input for the `updateUserByUsername` mutation.""" -input UpdateUserByUsernameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `User` being updated. - """ - patch: UserPatch! - username: String! -} - -"""The output of our update `AppAdminGrant` mutation.""" -type UpdateAppAdminGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppAdminGrant` that was updated by this mutation.""" - appAdminGrant: AppAdminGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - grantor: User - - """An edge for our `AppAdminGrant`. May be used by Relay 1.""" - appAdminGrantEdge( - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppAdminGrantsEdge -} - -"""All input for the `updateAppAdminGrant` mutation.""" -input UpdateAppAdminGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppAdminGrant` being updated. - """ - patch: AppAdminGrantPatch! - id: UUID! -} - -""" -Represents an update to a `AppAdminGrant`. Fields that are set will be updated. -""" -input AppAdminGrantPatch { - id: UUID - isGrant: Boolean - actorId: UUID - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `AppGrant` mutation.""" -type UpdateAppGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppGrant` that was updated by this mutation.""" - appGrant: AppGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppGrant`.""" - grantor: User - - """An edge for our `AppGrant`. May be used by Relay 1.""" - appGrantEdge( - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppGrantsEdge -} - -"""All input for the `updateAppGrant` mutation.""" -input UpdateAppGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppGrant` being updated. - """ - patch: AppGrantPatch! - id: UUID! -} - -""" -Represents an update to a `AppGrant`. Fields that are set will be updated. -""" -input AppGrantPatch { - id: UUID - permissions: BitString - isGrant: Boolean - actorId: UUID - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `AppMembershipDefault` mutation.""" -type UpdateAppMembershipDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppMembershipDefault` that was updated by this mutation.""" - appMembershipDefault: AppMembershipDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppMembershipDefault`. May be used by Relay 1.""" - appMembershipDefaultEdge( - """The method to use when ordering `AppMembershipDefault`.""" - orderBy: [AppMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppMembershipDefaultsEdge -} - -"""All input for the `updateAppMembershipDefault` mutation.""" -input UpdateAppMembershipDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppMembershipDefault` being updated. - """ - patch: AppMembershipDefaultPatch! - id: UUID! -} - -""" -Represents an update to a `AppMembershipDefault`. Fields that are set will be updated. -""" -input AppMembershipDefaultPatch { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - isVerified: Boolean -} - -"""The output of our update `AppMembership` mutation.""" -type UpdateAppMembershipPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppMembership` that was updated by this mutation.""" - appMembership: AppMembership - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppMembership`.""" - actor: User - - """An edge for our `AppMembership`. May be used by Relay 1.""" - appMembershipEdge( - """The method to use when ordering `AppMembership`.""" - orderBy: [AppMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppMembershipsEdge -} - -"""All input for the `updateAppMembership` mutation.""" -input UpdateAppMembershipInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppMembership` being updated. - """ - patch: AppMembershipPatch! - id: UUID! -} - -""" -Represents an update to a `AppMembership`. Fields that are set will be updated. -""" -input AppMembershipPatch { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - isBanned: Boolean - isDisabled: Boolean - isVerified: Boolean - isActive: Boolean - isOwner: Boolean - isAdmin: Boolean - permissions: BitString - granted: BitString - actorId: UUID -} - -"""All input for the `updateAppMembershipByActorId` mutation.""" -input UpdateAppMembershipByActorIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppMembership` being updated. - """ - patch: AppMembershipPatch! - actorId: UUID! -} - -"""The output of our update `AppOwnerGrant` mutation.""" -type UpdateAppOwnerGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppOwnerGrant` that was updated by this mutation.""" - appOwnerGrant: AppOwnerGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - grantor: User - - """An edge for our `AppOwnerGrant`. May be used by Relay 1.""" - appOwnerGrantEdge( - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppOwnerGrantsEdge -} - -"""All input for the `updateAppOwnerGrant` mutation.""" -input UpdateAppOwnerGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppOwnerGrant` being updated. - """ - patch: AppOwnerGrantPatch! - id: UUID! -} - -""" -Represents an update to a `AppOwnerGrant`. Fields that are set will be updated. -""" -input AppOwnerGrantPatch { - id: UUID - isGrant: Boolean - actorId: UUID - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `MembershipAdminGrant` mutation.""" -type UpdateMembershipAdminGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipAdminGrant` that was updated by this mutation.""" - membershipAdminGrant: MembershipAdminGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - grantor: User - - """An edge for our `MembershipAdminGrant`. May be used by Relay 1.""" - membershipAdminGrantEdge( - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipAdminGrantsEdge -} - -"""All input for the `updateMembershipAdminGrant` mutation.""" -input UpdateMembershipAdminGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipAdminGrant` being updated. - """ - patch: MembershipAdminGrantPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipAdminGrant`. Fields that are set will be updated. -""" -input MembershipAdminGrantPatch { - id: UUID - isGrant: Boolean - actorId: UUID - entityId: UUID - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `MembershipGrant` mutation.""" -type UpdateMembershipGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipGrant` that was updated by this mutation.""" - membershipGrant: MembershipGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - grantor: User - - """An edge for our `MembershipGrant`. May be used by Relay 1.""" - membershipGrantEdge( - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipGrantsEdge -} - -"""All input for the `updateMembershipGrant` mutation.""" -input UpdateMembershipGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipGrant` being updated. - """ - patch: MembershipGrantPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipGrant`. Fields that are set will be updated. -""" -input MembershipGrantPatch { - id: UUID - permissions: BitString - isGrant: Boolean - actorId: UUID - entityId: UUID - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `MembershipMember` mutation.""" -type UpdateMembershipMemberPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMember` that was updated by this mutation.""" - membershipMember: MembershipMember - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipMember`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMember`.""" - entity: User - - """An edge for our `MembershipMember`. May be used by Relay 1.""" - membershipMemberEdge( - """The method to use when ordering `MembershipMember`.""" - orderBy: [MembershipMembersOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembersEdge -} - -"""All input for the `updateMembershipMember` mutation.""" -input UpdateMembershipMemberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipMember` being updated. - """ - patch: MembershipMemberPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipMember`. Fields that are set will be updated. -""" -input MembershipMemberPatch { - id: UUID - isAdmin: Boolean - actorId: UUID - entityId: UUID -} - -""" -All input for the `updateMembershipMemberByActorIdAndEntityId` mutation. -""" -input UpdateMembershipMemberByActorIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipMember` being updated. - """ - patch: MembershipMemberPatch! - actorId: UUID! - entityId: UUID! -} - -"""The output of our update `MembershipMembershipDefault` mutation.""" -type UpdateMembershipMembershipDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMembershipDefault` that was updated by this mutation.""" - membershipMembershipDefault: MembershipMembershipDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipMembershipDefault`. - """ - entity: User - - """An edge for our `MembershipMembershipDefault`. May be used by Relay 1.""" - membershipMembershipDefaultEdge( - """The method to use when ordering `MembershipMembershipDefault`.""" - orderBy: [MembershipMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembershipDefaultsEdge -} - -"""All input for the `updateMembershipMembershipDefault` mutation.""" -input UpdateMembershipMembershipDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipMembershipDefault` being updated. - """ - patch: MembershipMembershipDefaultPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipMembershipDefault`. Fields that are set will be updated. -""" -input MembershipMembershipDefaultPatch { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - entityId: UUID - deleteMemberCascadeGroups: Boolean - createGroupsCascadeMembers: Boolean -} - -""" -All input for the `updateMembershipMembershipDefaultByEntityId` mutation. -""" -input UpdateMembershipMembershipDefaultByEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipMembershipDefault` being updated. - """ - patch: MembershipMembershipDefaultPatch! - entityId: UUID! -} - -"""The output of our update `MembershipMembership` mutation.""" -type UpdateMembershipMembershipPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMembership` that was updated by this mutation.""" - membershipMembership: MembershipMembership - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipMembership`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMembership`.""" - entity: User - - """An edge for our `MembershipMembership`. May be used by Relay 1.""" - membershipMembershipEdge( - """The method to use when ordering `MembershipMembership`.""" - orderBy: [MembershipMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembershipsEdge -} - -"""All input for the `updateMembershipMembership` mutation.""" -input UpdateMembershipMembershipInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipMembership` being updated. - """ - patch: MembershipMembershipPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipMembership`. Fields that are set will be updated. -""" -input MembershipMembershipPatch { - id: UUID - createdAt: Datetime - updatedAt: Datetime - createdBy: UUID - updatedBy: UUID - isApproved: Boolean - isBanned: Boolean - isDisabled: Boolean - isActive: Boolean - isOwner: Boolean - isAdmin: Boolean - permissions: BitString - granted: BitString - actorId: UUID - entityId: UUID -} - -""" -All input for the `updateMembershipMembershipByActorIdAndEntityId` mutation. -""" -input UpdateMembershipMembershipByActorIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipMembership` being updated. - """ - patch: MembershipMembershipPatch! - actorId: UUID! - entityId: UUID! -} - -"""The output of our update `MembershipOwnerGrant` mutation.""" -type UpdateMembershipOwnerGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipOwnerGrant` that was updated by this mutation.""" - membershipOwnerGrant: MembershipOwnerGrant - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - grantor: User - - """An edge for our `MembershipOwnerGrant`. May be used by Relay 1.""" - membershipOwnerGrantEdge( - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipOwnerGrantsEdge -} - -"""All input for the `updateMembershipOwnerGrant` mutation.""" -input UpdateMembershipOwnerGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipOwnerGrant` being updated. - """ - patch: MembershipOwnerGrantPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipOwnerGrant`. Fields that are set will be updated. -""" -input MembershipOwnerGrantPatch { - id: UUID - isGrant: Boolean - actorId: UUID - entityId: UUID - grantorId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `MembershipType` mutation.""" -type UpdateMembershipTypePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipType` that was updated by this mutation.""" - membershipType: MembershipType - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipType`. May be used by Relay 1.""" - membershipTypeEdge( - """The method to use when ordering `MembershipType`.""" - orderBy: [MembershipTypesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipTypesEdge -} - -"""All input for the `updateMembershipType` mutation.""" -input UpdateMembershipTypeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipType` being updated. - """ - patch: MembershipTypePatch! - id: Int! -} - -""" -Represents an update to a `MembershipType`. Fields that are set will be updated. -""" -input MembershipTypePatch { - id: Int - name: String - description: String - prefix: String -} - -"""All input for the `updateMembershipTypeByName` mutation.""" -input UpdateMembershipTypeByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipType` being updated. - """ - patch: MembershipTypePatch! - name: String! -} - -"""The output of our update `AppPermissionDefault` mutation.""" -type UpdateAppPermissionDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppPermissionDefault` that was updated by this mutation.""" - appPermissionDefault: AppPermissionDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppPermissionDefault`. May be used by Relay 1.""" - appPermissionDefaultEdge( - """The method to use when ordering `AppPermissionDefault`.""" - orderBy: [AppPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppPermissionDefaultsEdge -} - -"""All input for the `updateAppPermissionDefault` mutation.""" -input UpdateAppPermissionDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppPermissionDefault` being updated. - """ - patch: AppPermissionDefaultPatch! - id: UUID! -} - -""" -Represents an update to a `AppPermissionDefault`. Fields that are set will be updated. -""" -input AppPermissionDefaultPatch { - id: UUID - permissions: BitString -} - -"""The output of our update `AppPermission` mutation.""" -type UpdateAppPermissionPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppPermission` that was updated by this mutation.""" - appPermission: AppPermission - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppPermission`. May be used by Relay 1.""" - appPermissionEdge( - """The method to use when ordering `AppPermission`.""" - orderBy: [AppPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppPermissionsEdge -} - -"""All input for the `updateAppPermission` mutation.""" -input UpdateAppPermissionInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppPermission` being updated. - """ - patch: AppPermissionPatch! - id: UUID! -} - -""" -Represents an update to a `AppPermission`. Fields that are set will be updated. -""" -input AppPermissionPatch { - id: UUID - name: String - bitnum: Int - bitstr: BitString - description: String -} - -"""All input for the `updateAppPermissionByName` mutation.""" -input UpdateAppPermissionByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppPermission` being updated. - """ - patch: AppPermissionPatch! - name: String! -} - -"""All input for the `updateAppPermissionByBitnum` mutation.""" -input UpdateAppPermissionByBitnumInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppPermission` being updated. - """ - patch: AppPermissionPatch! - bitnum: Int! -} - -"""The output of our update `MembershipPermissionDefault` mutation.""" -type UpdateMembershipPermissionDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipPermissionDefault` that was updated by this mutation.""" - membershipPermissionDefault: MembershipPermissionDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipPermissionDefault`. - """ - entity: User - - """An edge for our `MembershipPermissionDefault`. May be used by Relay 1.""" - membershipPermissionDefaultEdge( - """The method to use when ordering `MembershipPermissionDefault`.""" - orderBy: [MembershipPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipPermissionDefaultsEdge -} - -"""All input for the `updateMembershipPermissionDefault` mutation.""" -input UpdateMembershipPermissionDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipPermissionDefault` being updated. - """ - patch: MembershipPermissionDefaultPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipPermissionDefault`. Fields that are set will be updated. -""" -input MembershipPermissionDefaultPatch { - id: UUID - permissions: BitString - entityId: UUID -} - -"""The output of our update `MembershipPermission` mutation.""" -type UpdateMembershipPermissionPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipPermission` that was updated by this mutation.""" - membershipPermission: MembershipPermission - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipPermission`. May be used by Relay 1.""" - membershipPermissionEdge( - """The method to use when ordering `MembershipPermission`.""" - orderBy: [MembershipPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipPermissionsEdge -} - -"""All input for the `updateMembershipPermission` mutation.""" -input UpdateMembershipPermissionInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipPermission` being updated. - """ - patch: MembershipPermissionPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipPermission`. Fields that are set will be updated. -""" -input MembershipPermissionPatch { - id: UUID - name: String - bitnum: Int - bitstr: BitString - description: String -} - -"""All input for the `updateMembershipPermissionByName` mutation.""" -input UpdateMembershipPermissionByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipPermission` being updated. - """ - patch: MembershipPermissionPatch! - name: String! -} - -"""All input for the `updateMembershipPermissionByBitnum` mutation.""" -input UpdateMembershipPermissionByBitnumInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipPermission` being updated. - """ - patch: MembershipPermissionPatch! - bitnum: Int! -} - -"""The output of our update `AppLimitDefault` mutation.""" -type UpdateAppLimitDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLimitDefault` that was updated by this mutation.""" - appLimitDefault: AppLimitDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppLimitDefault`. May be used by Relay 1.""" - appLimitDefaultEdge( - """The method to use when ordering `AppLimitDefault`.""" - orderBy: [AppLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLimitDefaultsEdge -} - -"""All input for the `updateAppLimitDefault` mutation.""" -input UpdateAppLimitDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLimitDefault` being updated. - """ - patch: AppLimitDefaultPatch! - id: UUID! -} - -""" -Represents an update to a `AppLimitDefault`. Fields that are set will be updated. -""" -input AppLimitDefaultPatch { - id: UUID - name: String - max: Int -} - -"""All input for the `updateAppLimitDefaultByName` mutation.""" -input UpdateAppLimitDefaultByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLimitDefault` being updated. - """ - patch: AppLimitDefaultPatch! - name: String! -} - -"""The output of our update `AppLimit` mutation.""" -type UpdateAppLimitPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLimit` that was updated by this mutation.""" - appLimit: AppLimit - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppLimit`.""" - actor: User - - """An edge for our `AppLimit`. May be used by Relay 1.""" - appLimitEdge( - """The method to use when ordering `AppLimit`.""" - orderBy: [AppLimitsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLimitsEdge -} - -"""All input for the `updateAppLimit` mutation.""" -input UpdateAppLimitInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLimit` being updated. - """ - patch: AppLimitPatch! - id: UUID! -} - -""" -Represents an update to a `AppLimit`. Fields that are set will be updated. -""" -input AppLimitPatch { - id: UUID - name: String - actorId: UUID - num: Int - max: Int -} - -"""All input for the `updateAppLimitByNameAndActorId` mutation.""" -input UpdateAppLimitByNameAndActorIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLimit` being updated. - """ - patch: AppLimitPatch! - name: String! - actorId: UUID! -} - -"""The output of our update `MembershipLimitDefault` mutation.""" -type UpdateMembershipLimitDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipLimitDefault` that was updated by this mutation.""" - membershipLimitDefault: MembershipLimitDefault - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipLimitDefault`. May be used by Relay 1.""" - membershipLimitDefaultEdge( - """The method to use when ordering `MembershipLimitDefault`.""" - orderBy: [MembershipLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipLimitDefaultsEdge -} - -"""All input for the `updateMembershipLimitDefault` mutation.""" -input UpdateMembershipLimitDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipLimitDefault` being updated. - """ - patch: MembershipLimitDefaultPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipLimitDefault`. Fields that are set will be updated. -""" -input MembershipLimitDefaultPatch { - id: UUID - name: String - max: Int -} - -"""All input for the `updateMembershipLimitDefaultByName` mutation.""" -input UpdateMembershipLimitDefaultByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipLimitDefault` being updated. - """ - patch: MembershipLimitDefaultPatch! - name: String! -} - -"""The output of our update `MembershipLimit` mutation.""" -type UpdateMembershipLimitPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipLimit` that was updated by this mutation.""" - membershipLimit: MembershipLimit - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipLimit`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipLimit`.""" - entity: User - - """An edge for our `MembershipLimit`. May be used by Relay 1.""" - membershipLimitEdge( - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipLimitsEdge -} - -"""All input for the `updateMembershipLimit` mutation.""" -input UpdateMembershipLimitInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipLimit` being updated. - """ - patch: MembershipLimitPatch! - id: UUID! -} - -""" -Represents an update to a `MembershipLimit`. Fields that are set will be updated. -""" -input MembershipLimitPatch { - id: UUID - name: String - actorId: UUID - num: Int - max: Int - entityId: UUID -} - -""" -All input for the `updateMembershipLimitByNameAndActorIdAndEntityId` mutation. -""" -input UpdateMembershipLimitByNameAndActorIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipLimit` being updated. - """ - patch: MembershipLimitPatch! - name: String! - actorId: UUID! - entityId: UUID! -} - -"""The output of our update `AppAchievement` mutation.""" -type UpdateAppAchievementPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppAchievement` that was updated by this mutation.""" - appAchievement: AppAchievement - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppAchievement`.""" - actor: User - - """An edge for our `AppAchievement`. May be used by Relay 1.""" - appAchievementEdge( - """The method to use when ordering `AppAchievement`.""" - orderBy: [AppAchievementsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppAchievementsEdge -} - -"""All input for the `updateAppAchievement` mutation.""" -input UpdateAppAchievementInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppAchievement` being updated. - """ - patch: AppAchievementPatch! - id: UUID! -} - -""" -Represents an update to a `AppAchievement`. Fields that are set will be updated. -""" -input AppAchievementPatch { - id: UUID - actorId: UUID - name: String - count: Int - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `updateAppAchievementByActorIdAndName` mutation.""" -input UpdateAppAchievementByActorIdAndNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppAchievement` being updated. - """ - patch: AppAchievementPatch! - actorId: UUID! - name: String! -} - -"""The output of our update `AppLevelRequirement` mutation.""" -type UpdateAppLevelRequirementPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLevelRequirement` that was updated by this mutation.""" - appLevelRequirement: AppLevelRequirement - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppLevelRequirement`. May be used by Relay 1.""" - appLevelRequirementEdge( - """The method to use when ordering `AppLevelRequirement`.""" - orderBy: [AppLevelRequirementsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLevelRequirementsEdge -} - -"""All input for the `updateAppLevelRequirement` mutation.""" -input UpdateAppLevelRequirementInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLevelRequirement` being updated. - """ - patch: AppLevelRequirementPatch! - id: UUID! -} - -""" -Represents an update to a `AppLevelRequirement`. Fields that are set will be updated. -""" -input AppLevelRequirementPatch { - id: UUID - name: String - level: String - description: String - requiredCount: Int - priority: Int - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `updateAppLevelRequirementByNameAndLevel` mutation.""" -input UpdateAppLevelRequirementByNameAndLevelInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLevelRequirement` being updated. - """ - patch: AppLevelRequirementPatch! - name: String! - level: String! -} - -"""The output of our update `AppLevel` mutation.""" -type UpdateAppLevelPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLevel` that was updated by this mutation.""" - appLevel: AppLevel - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppLevel`.""" - owner: User - - """An edge for our `AppLevel`. May be used by Relay 1.""" - appLevelEdge( - """The method to use when ordering `AppLevel`.""" - orderBy: [AppLevelsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLevelsEdge -} - -"""All input for the `updateAppLevel` mutation.""" -input UpdateAppLevelInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLevel` being updated. - """ - patch: AppLevelPatch! - id: UUID! -} - -""" -Represents an update to a `AppLevel`. Fields that are set will be updated. -""" -input AppLevelPatch { - id: UUID - name: String - description: String - image: JSON - ownerId: UUID - createdAt: Datetime - updatedAt: Datetime - imageUpload: Upload -} - -"""All input for the `updateAppLevelByName` mutation.""" -input UpdateAppLevelByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppLevel` being updated. - """ - patch: AppLevelPatch! - name: String! -} - -"""The output of our update `AppStep` mutation.""" -type UpdateAppStepPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppStep` that was updated by this mutation.""" - appStep: AppStep - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppStep`.""" - actor: User - - """An edge for our `AppStep`. May be used by Relay 1.""" - appStepEdge( - """The method to use when ordering `AppStep`.""" - orderBy: [AppStepsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppStepsEdge -} - -"""All input for the `updateAppStep` mutation.""" -input UpdateAppStepInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AppStep` being updated. - """ - patch: AppStepPatch! - id: UUID! -} - -""" -Represents an update to a `AppStep`. Fields that are set will be updated. -""" -input AppStepPatch { - id: UUID - actorId: UUID - name: String - count: Int - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `ClaimedInvite` mutation.""" -type UpdateClaimedInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `ClaimedInvite` that was updated by this mutation.""" - claimedInvite: ClaimedInvite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - sender: User - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - receiver: User - - """An edge for our `ClaimedInvite`. May be used by Relay 1.""" - claimedInviteEdge( - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): ClaimedInvitesEdge -} - -"""All input for the `updateClaimedInvite` mutation.""" -input UpdateClaimedInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `ClaimedInvite` being updated. - """ - patch: ClaimedInvitePatch! - id: UUID! -} - -""" -Represents an update to a `ClaimedInvite`. Fields that are set will be updated. -""" -input ClaimedInvitePatch { - id: UUID - data: JSON - senderId: UUID - receiverId: UUID - createdAt: Datetime - updatedAt: Datetime -} - -"""The output of our update `Invite` mutation.""" -type UpdateInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Invite` that was updated by this mutation.""" - invite: Invite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Invite`.""" - sender: User - - """An edge for our `Invite`. May be used by Relay 1.""" - inviteEdge( - """The method to use when ordering `Invite`.""" - orderBy: [InvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): InvitesEdge -} - -"""All input for the `updateInvite` mutation.""" -input UpdateInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Invite` being updated. - """ - patch: InvitePatch! - id: UUID! -} - -""" -Represents an update to a `Invite`. Fields that are set will be updated. -""" -input InvitePatch { - id: UUID - email: String - senderId: UUID - inviteToken: String - inviteValid: Boolean - inviteLimit: Int - inviteCount: Int - multiple: Boolean - data: JSON - expiresAt: Datetime - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `updateInviteByEmailAndSenderId` mutation.""" -input UpdateInviteByEmailAndSenderIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Invite` being updated. - """ - patch: InvitePatch! - email: String! - senderId: UUID! -} - -"""All input for the `updateInviteByInviteToken` mutation.""" -input UpdateInviteByInviteTokenInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `Invite` being updated. - """ - patch: InvitePatch! - inviteToken: String! -} - -"""The output of our update `MembershipClaimedInvite` mutation.""" -type UpdateMembershipClaimedInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipClaimedInvite` that was updated by this mutation.""" - membershipClaimedInvite: MembershipClaimedInvite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - sender: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - receiver: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - entity: User - - """An edge for our `MembershipClaimedInvite`. May be used by Relay 1.""" - membershipClaimedInviteEdge( - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipClaimedInvitesEdge -} - -"""All input for the `updateMembershipClaimedInvite` mutation.""" -input UpdateMembershipClaimedInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipClaimedInvite` being updated. - """ - patch: MembershipClaimedInvitePatch! - id: UUID! -} - -""" -Represents an update to a `MembershipClaimedInvite`. Fields that are set will be updated. -""" -input MembershipClaimedInvitePatch { - id: UUID - data: JSON - senderId: UUID - receiverId: UUID - createdAt: Datetime - updatedAt: Datetime - entityId: UUID -} - -"""The output of our update `MembershipInvite` mutation.""" -type UpdateMembershipInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipInvite` that was updated by this mutation.""" - membershipInvite: MembershipInvite - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipInvite`.""" - sender: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - receiver: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - entity: User - - """An edge for our `MembershipInvite`. May be used by Relay 1.""" - membershipInviteEdge( - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipInvitesEdge -} - -"""All input for the `updateMembershipInvite` mutation.""" -input UpdateMembershipInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipInvite` being updated. - """ - patch: MembershipInvitePatch! - id: UUID! -} - -""" -Represents an update to a `MembershipInvite`. Fields that are set will be updated. -""" -input MembershipInvitePatch { - id: UUID - email: String - senderId: UUID - receiverId: UUID - inviteToken: String - inviteValid: Boolean - inviteLimit: Int - inviteCount: Int - multiple: Boolean - data: JSON - expiresAt: Datetime - createdAt: Datetime - updatedAt: Datetime - entityId: UUID -} - -""" -All input for the `updateMembershipInviteByEmailAndSenderIdAndEntityId` mutation. -""" -input UpdateMembershipInviteByEmailAndSenderIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipInvite` being updated. - """ - patch: MembershipInvitePatch! - email: String! - senderId: UUID! - entityId: UUID! -} - -"""All input for the `updateMembershipInviteByInviteToken` mutation.""" -input UpdateMembershipInviteByInviteTokenInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `MembershipInvite` being updated. - """ - patch: MembershipInvitePatch! - inviteToken: String! -} - -"""The output of our update `AuditLog` mutation.""" -type UpdateAuditLogPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AuditLog` that was updated by this mutation.""" - auditLog: AuditLog - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AuditLog`.""" - actor: User - - """An edge for our `AuditLog`. May be used by Relay 1.""" - auditLogEdge( - """The method to use when ordering `AuditLog`.""" - orderBy: [AuditLogsOrderBy!] = [PRIMARY_KEY_ASC] - ): AuditLogsEdge -} - -"""All input for the `updateAuditLog` mutation.""" -input UpdateAuditLogInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - - """ - An object where the defined keys will be set on the `AuditLog` being updated. - """ - patch: AuditLogPatch! - id: UUID! -} - -""" -Represents an update to a `AuditLog`. Fields that are set will be updated. -""" -input AuditLogPatch { - id: UUID - event: String - actorId: UUID - origin: String - userAgent: String - ipAddress: InternetAddress - success: Boolean - createdAt: Datetime -} - -"""The output of our delete `Category` mutation.""" -type DeleteCategoryPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Category` that was deleted by this mutation.""" - category: Category - deletedCategoryNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `Category`. May be used by Relay 1.""" - categoryEdge( - """The method to use when ordering `Category`.""" - orderBy: [CategoriesOrderBy!] = [PRIMARY_KEY_ASC] - ): CategoriesEdge -} - -"""All input for the `deleteCategory` mutation.""" -input DeleteCategoryInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `CryptoAddress` mutation.""" -type DeleteCryptoAddressPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `CryptoAddress` that was deleted by this mutation.""" - cryptoAddress: CryptoAddress - deletedCryptoAddressNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `CryptoAddress`.""" - owner: User - - """An edge for our `CryptoAddress`. May be used by Relay 1.""" - cryptoAddressEdge( - """The method to use when ordering `CryptoAddress`.""" - orderBy: [CryptoAddressesOrderBy!] = [PRIMARY_KEY_ASC] - ): CryptoAddressesEdge -} - -"""All input for the `deleteCryptoAddress` mutation.""" -input DeleteCryptoAddressInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteCryptoAddressByAddress` mutation.""" -input DeleteCryptoAddressByAddressInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - address: String! -} - -"""The output of our delete `Email` mutation.""" -type DeleteEmailPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Email` that was deleted by this mutation.""" - email: Email - deletedEmailNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Email`.""" - owner: User - - """An edge for our `Email`. May be used by Relay 1.""" - emailEdge( - """The method to use when ordering `Email`.""" - orderBy: [EmailsOrderBy!] = [PRIMARY_KEY_ASC] - ): EmailsEdge -} - -"""All input for the `deleteEmail` mutation.""" -input DeleteEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteEmailByEmail` mutation.""" -input DeleteEmailByEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String! -} - -"""The output of our delete `OrderItem` mutation.""" -type DeleteOrderItemPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `OrderItem` that was deleted by this mutation.""" - orderItem: OrderItem - deletedOrderItemNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `Order` that is related to this `OrderItem`.""" - order: Order - - """Reads a single `Product` that is related to this `OrderItem`.""" - product: Product - - """An edge for our `OrderItem`. May be used by Relay 1.""" - orderItemEdge( - """The method to use when ordering `OrderItem`.""" - orderBy: [OrderItemsOrderBy!] = [PRIMARY_KEY_ASC] - ): OrderItemsEdge -} - -"""All input for the `deleteOrderItem` mutation.""" -input DeleteOrderItemInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `Order` mutation.""" -type DeleteOrderPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Order` that was deleted by this mutation.""" - order: Order - deletedOrderNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Order`.""" - customer: User - - """An edge for our `Order`. May be used by Relay 1.""" - orderEdge( - """The method to use when ordering `Order`.""" - orderBy: [OrdersOrderBy!] = [PRIMARY_KEY_ASC] - ): OrdersEdge -} - -"""All input for the `deleteOrder` mutation.""" -input DeleteOrderInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `PhoneNumber` mutation.""" -type DeletePhoneNumberPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `PhoneNumber` that was deleted by this mutation.""" - phoneNumber: PhoneNumber - deletedPhoneNumberNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `PhoneNumber`.""" - owner: User - - """An edge for our `PhoneNumber`. May be used by Relay 1.""" - phoneNumberEdge( - """The method to use when ordering `PhoneNumber`.""" - orderBy: [PhoneNumbersOrderBy!] = [PRIMARY_KEY_ASC] - ): PhoneNumbersEdge -} - -"""All input for the `deletePhoneNumber` mutation.""" -input DeletePhoneNumberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deletePhoneNumberByNumber` mutation.""" -input DeletePhoneNumberByNumberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - number: String! -} - -"""The output of our delete `Product` mutation.""" -type DeleteProductPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Product` that was deleted by this mutation.""" - product: Product - deletedProductNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Product`.""" - seller: User - - """Reads a single `Category` that is related to this `Product`.""" - category: Category - - """An edge for our `Product`. May be used by Relay 1.""" - productEdge( - """The method to use when ordering `Product`.""" - orderBy: [ProductsOrderBy!] = [PRIMARY_KEY_ASC] - ): ProductsEdge -} - -"""All input for the `deleteProduct` mutation.""" -input DeleteProductInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `Review` mutation.""" -type DeleteReviewPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Review` that was deleted by this mutation.""" - review: Review - deletedReviewNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Review`.""" - user: User - - """Reads a single `Product` that is related to this `Review`.""" - product: Product - - """An edge for our `Review`. May be used by Relay 1.""" - reviewEdge( - """The method to use when ordering `Review`.""" - orderBy: [ReviewsOrderBy!] = [PRIMARY_KEY_ASC] - ): ReviewsEdge -} - -"""All input for the `deleteReview` mutation.""" -input DeleteReviewInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `RoleType` mutation.""" -type DeleteRoleTypePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `RoleType` that was deleted by this mutation.""" - roleType: RoleType - deletedRoleTypeNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `RoleType`. May be used by Relay 1.""" - roleTypeEdge( - """The method to use when ordering `RoleType`.""" - orderBy: [RoleTypesOrderBy!] = [PRIMARY_KEY_ASC] - ): RoleTypesEdge -} - -"""All input for the `deleteRoleType` mutation.""" -input DeleteRoleTypeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: Int! -} - -"""All input for the `deleteRoleTypeByName` mutation.""" -input DeleteRoleTypeByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""The output of our delete `User` mutation.""" -type DeleteUserPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `User` that was deleted by this mutation.""" - user: User - deletedUserNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `RoleType` that is related to this `User`.""" - roleTypeByType: RoleType - - """An edge for our `User`. May be used by Relay 1.""" - userEdge( - """The method to use when ordering `User`.""" - orderBy: [UsersOrderBy!] = [PRIMARY_KEY_ASC] - ): UsersEdge -} - -"""All input for the `deleteUser` mutation.""" -input DeleteUserInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteUserByUsername` mutation.""" -input DeleteUserByUsernameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - username: String! -} - -"""The output of our delete `AppAdminGrant` mutation.""" -type DeleteAppAdminGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppAdminGrant` that was deleted by this mutation.""" - appAdminGrant: AppAdminGrant - deletedAppAdminGrantNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppAdminGrant`.""" - grantor: User - - """An edge for our `AppAdminGrant`. May be used by Relay 1.""" - appAdminGrantEdge( - """The method to use when ordering `AppAdminGrant`.""" - orderBy: [AppAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppAdminGrantsEdge -} - -"""All input for the `deleteAppAdminGrant` mutation.""" -input DeleteAppAdminGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `AppGrant` mutation.""" -type DeleteAppGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppGrant` that was deleted by this mutation.""" - appGrant: AppGrant - deletedAppGrantNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppGrant`.""" - grantor: User - - """An edge for our `AppGrant`. May be used by Relay 1.""" - appGrantEdge( - """The method to use when ordering `AppGrant`.""" - orderBy: [AppGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppGrantsEdge -} - -"""All input for the `deleteAppGrant` mutation.""" -input DeleteAppGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `AppMembershipDefault` mutation.""" -type DeleteAppMembershipDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppMembershipDefault` that was deleted by this mutation.""" - appMembershipDefault: AppMembershipDefault - deletedAppMembershipDefaultNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppMembershipDefault`. May be used by Relay 1.""" - appMembershipDefaultEdge( - """The method to use when ordering `AppMembershipDefault`.""" - orderBy: [AppMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppMembershipDefaultsEdge -} - -"""All input for the `deleteAppMembershipDefault` mutation.""" -input DeleteAppMembershipDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `AppMembership` mutation.""" -type DeleteAppMembershipPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppMembership` that was deleted by this mutation.""" - appMembership: AppMembership - deletedAppMembershipNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppMembership`.""" - actor: User - - """An edge for our `AppMembership`. May be used by Relay 1.""" - appMembershipEdge( - """The method to use when ordering `AppMembership`.""" - orderBy: [AppMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppMembershipsEdge -} - -"""All input for the `deleteAppMembership` mutation.""" -input DeleteAppMembershipInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppMembershipByActorId` mutation.""" -input DeleteAppMembershipByActorIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - actorId: UUID! -} - -"""The output of our delete `AppOwnerGrant` mutation.""" -type DeleteAppOwnerGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppOwnerGrant` that was deleted by this mutation.""" - appOwnerGrant: AppOwnerGrant - deletedAppOwnerGrantNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `AppOwnerGrant`.""" - grantor: User - - """An edge for our `AppOwnerGrant`. May be used by Relay 1.""" - appOwnerGrantEdge( - """The method to use when ordering `AppOwnerGrant`.""" - orderBy: [AppOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppOwnerGrantsEdge -} - -"""All input for the `deleteAppOwnerGrant` mutation.""" -input DeleteAppOwnerGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `MembershipAdminGrant` mutation.""" -type DeleteMembershipAdminGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipAdminGrant` that was deleted by this mutation.""" - membershipAdminGrant: MembershipAdminGrant - deletedMembershipAdminGrantNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipAdminGrant`.""" - grantor: User - - """An edge for our `MembershipAdminGrant`. May be used by Relay 1.""" - membershipAdminGrantEdge( - """The method to use when ordering `MembershipAdminGrant`.""" - orderBy: [MembershipAdminGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipAdminGrantsEdge -} - -"""All input for the `deleteMembershipAdminGrant` mutation.""" -input DeleteMembershipAdminGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `MembershipGrant` mutation.""" -type DeleteMembershipGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipGrant` that was deleted by this mutation.""" - membershipGrant: MembershipGrant - deletedMembershipGrantNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipGrant`.""" - grantor: User - - """An edge for our `MembershipGrant`. May be used by Relay 1.""" - membershipGrantEdge( - """The method to use when ordering `MembershipGrant`.""" - orderBy: [MembershipGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipGrantsEdge -} - -"""All input for the `deleteMembershipGrant` mutation.""" -input DeleteMembershipGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `MembershipMember` mutation.""" -type DeleteMembershipMemberPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMember` that was deleted by this mutation.""" - membershipMember: MembershipMember - deletedMembershipMemberNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipMember`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMember`.""" - entity: User - - """An edge for our `MembershipMember`. May be used by Relay 1.""" - membershipMemberEdge( - """The method to use when ordering `MembershipMember`.""" - orderBy: [MembershipMembersOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembersEdge -} - -"""All input for the `deleteMembershipMember` mutation.""" -input DeleteMembershipMemberInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -""" -All input for the `deleteMembershipMemberByActorIdAndEntityId` mutation. -""" -input DeleteMembershipMemberByActorIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - actorId: UUID! - entityId: UUID! -} - -"""The output of our delete `MembershipMembershipDefault` mutation.""" -type DeleteMembershipMembershipDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMembershipDefault` that was deleted by this mutation.""" - membershipMembershipDefault: MembershipMembershipDefault - deletedMembershipMembershipDefaultNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipMembershipDefault`. - """ - entity: User - - """An edge for our `MembershipMembershipDefault`. May be used by Relay 1.""" - membershipMembershipDefaultEdge( - """The method to use when ordering `MembershipMembershipDefault`.""" - orderBy: [MembershipMembershipDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembershipDefaultsEdge -} - -"""All input for the `deleteMembershipMembershipDefault` mutation.""" -input DeleteMembershipMembershipDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -""" -All input for the `deleteMembershipMembershipDefaultByEntityId` mutation. -""" -input DeleteMembershipMembershipDefaultByEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - entityId: UUID! -} - -"""The output of our delete `MembershipMembership` mutation.""" -type DeleteMembershipMembershipPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipMembership` that was deleted by this mutation.""" - membershipMembership: MembershipMembership - deletedMembershipMembershipNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipMembership`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipMembership`.""" - entity: User - - """An edge for our `MembershipMembership`. May be used by Relay 1.""" - membershipMembershipEdge( - """The method to use when ordering `MembershipMembership`.""" - orderBy: [MembershipMembershipsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipMembershipsEdge -} - -"""All input for the `deleteMembershipMembership` mutation.""" -input DeleteMembershipMembershipInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -""" -All input for the `deleteMembershipMembershipByActorIdAndEntityId` mutation. -""" -input DeleteMembershipMembershipByActorIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - actorId: UUID! - entityId: UUID! -} - -"""The output of our delete `MembershipOwnerGrant` mutation.""" -type DeleteMembershipOwnerGrantPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipOwnerGrant` that was deleted by this mutation.""" - membershipOwnerGrant: MembershipOwnerGrant - deletedMembershipOwnerGrantNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - entity: User - - """Reads a single `User` that is related to this `MembershipOwnerGrant`.""" - grantor: User - - """An edge for our `MembershipOwnerGrant`. May be used by Relay 1.""" - membershipOwnerGrantEdge( - """The method to use when ordering `MembershipOwnerGrant`.""" - orderBy: [MembershipOwnerGrantsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipOwnerGrantsEdge -} - -"""All input for the `deleteMembershipOwnerGrant` mutation.""" -input DeleteMembershipOwnerGrantInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `MembershipType` mutation.""" -type DeleteMembershipTypePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipType` that was deleted by this mutation.""" - membershipType: MembershipType - deletedMembershipTypeNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipType`. May be used by Relay 1.""" - membershipTypeEdge( - """The method to use when ordering `MembershipType`.""" - orderBy: [MembershipTypesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipTypesEdge -} - -"""All input for the `deleteMembershipType` mutation.""" -input DeleteMembershipTypeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: Int! -} - -"""All input for the `deleteMembershipTypeByName` mutation.""" -input DeleteMembershipTypeByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""The output of our delete `AppPermissionDefault` mutation.""" -type DeleteAppPermissionDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppPermissionDefault` that was deleted by this mutation.""" - appPermissionDefault: AppPermissionDefault - deletedAppPermissionDefaultNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppPermissionDefault`. May be used by Relay 1.""" - appPermissionDefaultEdge( - """The method to use when ordering `AppPermissionDefault`.""" - orderBy: [AppPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppPermissionDefaultsEdge -} - -"""All input for the `deleteAppPermissionDefault` mutation.""" -input DeleteAppPermissionDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `AppPermission` mutation.""" -type DeleteAppPermissionPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppPermission` that was deleted by this mutation.""" - appPermission: AppPermission - deletedAppPermissionNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppPermission`. May be used by Relay 1.""" - appPermissionEdge( - """The method to use when ordering `AppPermission`.""" - orderBy: [AppPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppPermissionsEdge -} - -"""All input for the `deleteAppPermission` mutation.""" -input DeleteAppPermissionInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppPermissionByName` mutation.""" -input DeleteAppPermissionByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""All input for the `deleteAppPermissionByBitnum` mutation.""" -input DeleteAppPermissionByBitnumInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - bitnum: Int! -} - -"""The output of our delete `MembershipPermissionDefault` mutation.""" -type DeleteMembershipPermissionDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipPermissionDefault` that was deleted by this mutation.""" - membershipPermissionDefault: MembershipPermissionDefault - deletedMembershipPermissionDefaultNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipPermissionDefault`. - """ - entity: User - - """An edge for our `MembershipPermissionDefault`. May be used by Relay 1.""" - membershipPermissionDefaultEdge( - """The method to use when ordering `MembershipPermissionDefault`.""" - orderBy: [MembershipPermissionDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipPermissionDefaultsEdge -} - -"""All input for the `deleteMembershipPermissionDefault` mutation.""" -input DeleteMembershipPermissionDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `MembershipPermission` mutation.""" -type DeleteMembershipPermissionPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipPermission` that was deleted by this mutation.""" - membershipPermission: MembershipPermission - deletedMembershipPermissionNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipPermission`. May be used by Relay 1.""" - membershipPermissionEdge( - """The method to use when ordering `MembershipPermission`.""" - orderBy: [MembershipPermissionsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipPermissionsEdge -} - -"""All input for the `deleteMembershipPermission` mutation.""" -input DeleteMembershipPermissionInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteMembershipPermissionByName` mutation.""" -input DeleteMembershipPermissionByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""All input for the `deleteMembershipPermissionByBitnum` mutation.""" -input DeleteMembershipPermissionByBitnumInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - bitnum: Int! -} - -"""The output of our delete `AppLimitDefault` mutation.""" -type DeleteAppLimitDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLimitDefault` that was deleted by this mutation.""" - appLimitDefault: AppLimitDefault - deletedAppLimitDefaultNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppLimitDefault`. May be used by Relay 1.""" - appLimitDefaultEdge( - """The method to use when ordering `AppLimitDefault`.""" - orderBy: [AppLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLimitDefaultsEdge -} - -"""All input for the `deleteAppLimitDefault` mutation.""" -input DeleteAppLimitDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppLimitDefaultByName` mutation.""" -input DeleteAppLimitDefaultByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""The output of our delete `AppLimit` mutation.""" -type DeleteAppLimitPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLimit` that was deleted by this mutation.""" - appLimit: AppLimit - deletedAppLimitNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppLimit`.""" - actor: User - - """An edge for our `AppLimit`. May be used by Relay 1.""" - appLimitEdge( - """The method to use when ordering `AppLimit`.""" - orderBy: [AppLimitsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLimitsEdge -} - -"""All input for the `deleteAppLimit` mutation.""" -input DeleteAppLimitInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppLimitByNameAndActorId` mutation.""" -input DeleteAppLimitByNameAndActorIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! - actorId: UUID! -} - -"""The output of our delete `MembershipLimitDefault` mutation.""" -type DeleteMembershipLimitDefaultPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipLimitDefault` that was deleted by this mutation.""" - membershipLimitDefault: MembershipLimitDefault - deletedMembershipLimitDefaultNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `MembershipLimitDefault`. May be used by Relay 1.""" - membershipLimitDefaultEdge( - """The method to use when ordering `MembershipLimitDefault`.""" - orderBy: [MembershipLimitDefaultsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipLimitDefaultsEdge -} - -"""All input for the `deleteMembershipLimitDefault` mutation.""" -input DeleteMembershipLimitDefaultInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteMembershipLimitDefaultByName` mutation.""" -input DeleteMembershipLimitDefaultByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""The output of our delete `MembershipLimit` mutation.""" -type DeleteMembershipLimitPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipLimit` that was deleted by this mutation.""" - membershipLimit: MembershipLimit - deletedMembershipLimitNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipLimit`.""" - actor: User - - """Reads a single `User` that is related to this `MembershipLimit`.""" - entity: User - - """An edge for our `MembershipLimit`. May be used by Relay 1.""" - membershipLimitEdge( - """The method to use when ordering `MembershipLimit`.""" - orderBy: [MembershipLimitsOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipLimitsEdge -} - -"""All input for the `deleteMembershipLimit` mutation.""" -input DeleteMembershipLimitInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -""" -All input for the `deleteMembershipLimitByNameAndActorIdAndEntityId` mutation. -""" -input DeleteMembershipLimitByNameAndActorIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! - actorId: UUID! - entityId: UUID! -} - -"""The output of our delete `AppAchievement` mutation.""" -type DeleteAppAchievementPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppAchievement` that was deleted by this mutation.""" - appAchievement: AppAchievement - deletedAppAchievementNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppAchievement`.""" - actor: User - - """An edge for our `AppAchievement`. May be used by Relay 1.""" - appAchievementEdge( - """The method to use when ordering `AppAchievement`.""" - orderBy: [AppAchievementsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppAchievementsEdge -} - -"""All input for the `deleteAppAchievement` mutation.""" -input DeleteAppAchievementInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppAchievementByActorIdAndName` mutation.""" -input DeleteAppAchievementByActorIdAndNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - actorId: UUID! - name: String! -} - -"""The output of our delete `AppLevelRequirement` mutation.""" -type DeleteAppLevelRequirementPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLevelRequirement` that was deleted by this mutation.""" - appLevelRequirement: AppLevelRequirement - deletedAppLevelRequirementNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """An edge for our `AppLevelRequirement`. May be used by Relay 1.""" - appLevelRequirementEdge( - """The method to use when ordering `AppLevelRequirement`.""" - orderBy: [AppLevelRequirementsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLevelRequirementsEdge -} - -"""All input for the `deleteAppLevelRequirement` mutation.""" -input DeleteAppLevelRequirementInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppLevelRequirementByNameAndLevel` mutation.""" -input DeleteAppLevelRequirementByNameAndLevelInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! - level: String! -} - -"""The output of our delete `AppLevel` mutation.""" -type DeleteAppLevelPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppLevel` that was deleted by this mutation.""" - appLevel: AppLevel - deletedAppLevelNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppLevel`.""" - owner: User - - """An edge for our `AppLevel`. May be used by Relay 1.""" - appLevelEdge( - """The method to use when ordering `AppLevel`.""" - orderBy: [AppLevelsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppLevelsEdge -} - -"""All input for the `deleteAppLevel` mutation.""" -input DeleteAppLevelInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteAppLevelByName` mutation.""" -input DeleteAppLevelByNameInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - name: String! -} - -"""The output of our delete `AppStep` mutation.""" -type DeleteAppStepPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AppStep` that was deleted by this mutation.""" - appStep: AppStep - deletedAppStepNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AppStep`.""" - actor: User - - """An edge for our `AppStep`. May be used by Relay 1.""" - appStepEdge( - """The method to use when ordering `AppStep`.""" - orderBy: [AppStepsOrderBy!] = [PRIMARY_KEY_ASC] - ): AppStepsEdge -} - -"""All input for the `deleteAppStep` mutation.""" -input DeleteAppStepInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `ClaimedInvite` mutation.""" -type DeleteClaimedInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `ClaimedInvite` that was deleted by this mutation.""" - claimedInvite: ClaimedInvite - deletedClaimedInviteNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - sender: User - - """Reads a single `User` that is related to this `ClaimedInvite`.""" - receiver: User - - """An edge for our `ClaimedInvite`. May be used by Relay 1.""" - claimedInviteEdge( - """The method to use when ordering `ClaimedInvite`.""" - orderBy: [ClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): ClaimedInvitesEdge -} - -"""All input for the `deleteClaimedInvite` mutation.""" -input DeleteClaimedInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `Invite` mutation.""" -type DeleteInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `Invite` that was deleted by this mutation.""" - invite: Invite - deletedInviteNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `Invite`.""" - sender: User - - """An edge for our `Invite`. May be used by Relay 1.""" - inviteEdge( - """The method to use when ordering `Invite`.""" - orderBy: [InvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): InvitesEdge -} - -"""All input for the `deleteInvite` mutation.""" -input DeleteInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""All input for the `deleteInviteByEmailAndSenderId` mutation.""" -input DeleteInviteByEmailAndSenderIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String! - senderId: UUID! -} - -"""All input for the `deleteInviteByInviteToken` mutation.""" -input DeleteInviteByInviteTokenInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - inviteToken: String! -} - -"""The output of our delete `MembershipClaimedInvite` mutation.""" -type DeleteMembershipClaimedInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipClaimedInvite` that was deleted by this mutation.""" - membershipClaimedInvite: MembershipClaimedInvite - deletedMembershipClaimedInviteNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - sender: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - receiver: User - - """ - Reads a single `User` that is related to this `MembershipClaimedInvite`. - """ - entity: User - - """An edge for our `MembershipClaimedInvite`. May be used by Relay 1.""" - membershipClaimedInviteEdge( - """The method to use when ordering `MembershipClaimedInvite`.""" - orderBy: [MembershipClaimedInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipClaimedInvitesEdge -} - -"""All input for the `deleteMembershipClaimedInvite` mutation.""" -input DeleteMembershipClaimedInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our delete `MembershipInvite` mutation.""" -type DeleteMembershipInvitePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `MembershipInvite` that was deleted by this mutation.""" - membershipInvite: MembershipInvite - deletedMembershipInviteNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `MembershipInvite`.""" - sender: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - receiver: User - - """Reads a single `User` that is related to this `MembershipInvite`.""" - entity: User - - """An edge for our `MembershipInvite`. May be used by Relay 1.""" - membershipInviteEdge( - """The method to use when ordering `MembershipInvite`.""" - orderBy: [MembershipInvitesOrderBy!] = [PRIMARY_KEY_ASC] - ): MembershipInvitesEdge -} - -"""All input for the `deleteMembershipInvite` mutation.""" -input DeleteMembershipInviteInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -""" -All input for the `deleteMembershipInviteByEmailAndSenderIdAndEntityId` mutation. -""" -input DeleteMembershipInviteByEmailAndSenderIdAndEntityIdInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String! - senderId: UUID! - entityId: UUID! -} - -"""All input for the `deleteMembershipInviteByInviteToken` mutation.""" -input DeleteMembershipInviteByInviteTokenInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - inviteToken: String! -} - -"""The output of our delete `AuditLog` mutation.""" -type DeleteAuditLogPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """The `AuditLog` that was deleted by this mutation.""" - auditLog: AuditLog - deletedAuditLogNodeId: ID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query - - """Reads a single `User` that is related to this `AuditLog`.""" - actor: User - - """An edge for our `AuditLog`. May be used by Relay 1.""" - auditLogEdge( - """The method to use when ordering `AuditLog`.""" - orderBy: [AuditLogsOrderBy!] = [PRIMARY_KEY_ASC] - ): AuditLogsEdge -} - -"""All input for the `deleteAuditLog` mutation.""" -input DeleteAuditLogInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - id: UUID! -} - -"""The output of our `uuidGenerateV4` mutation.""" -type UuidGenerateV4Payload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - uuid: UUID - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `uuidGenerateV4` mutation.""" -input UuidGenerateV4Input { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String -} - -"""The output of our `submitInviteCode` mutation.""" -type SubmitInviteCodePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `submitInviteCode` mutation.""" -input SubmitInviteCodeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - token: String -} - -"""The output of our `submitMembershipInviteCode` mutation.""" -type SubmitMembershipInviteCodePayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `submitMembershipInviteCode` mutation.""" -input SubmitMembershipInviteCodeInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - token: String -} - -"""The output of our `checkPassword` mutation.""" -type CheckPasswordPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `checkPassword` mutation.""" -input CheckPasswordInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - password: String -} - -"""The output of our `confirmDeleteAccount` mutation.""" -type ConfirmDeleteAccountPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `confirmDeleteAccount` mutation.""" -input ConfirmDeleteAccountInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - userId: UUID - token: String -} - -"""The output of our `extendTokenExpires` mutation.""" -type ExtendTokenExpiresPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - apiToken: ApiToken - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -type ApiToken { - id: UUID! - userId: UUID! - otToken: String - origin: String - ip: InternetAddress - uagent: String - accessToken: String! - accessTokenExpiresAt: Datetime! - isVerified: Boolean! - lastTotpVerified: Datetime - totpEnabled: Boolean! - lastPasswordVerified: Datetime - createdAt: Datetime - updatedAt: Datetime -} - -"""All input for the `extendTokenExpires` mutation.""" -input ExtendTokenExpiresInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - amount: IntervalInput -} - -""" -An interval of time that has passed where the smallest distinct unit is a second. -""" -input IntervalInput { - """ - A quantity of seconds. This is the only non-integer field, as all the other - fields will dump their overflow into a smaller unit of time. Intervals don’t - have a smaller unit than seconds. - """ - seconds: Float - - """A quantity of minutes.""" - minutes: Int - - """A quantity of hours.""" - hours: Int - - """A quantity of days.""" - days: Int - - """A quantity of months.""" - months: Int - - """A quantity of years.""" - years: Int -} - -"""The output of our `forgotPassword` mutation.""" -type ForgotPasswordPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `forgotPassword` mutation.""" -input ForgotPasswordInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String -} - -"""The output of our `login` mutation.""" -type LoginPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - apiToken: ApiToken - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `login` mutation.""" -input LoginInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String! - password: String! - rememberMe: Boolean -} - -"""The output of our `loginOneTimeToken` mutation.""" -type LoginOneTimeTokenPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - apiToken: ApiToken - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `loginOneTimeToken` mutation.""" -input LoginOneTimeTokenInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - token: String! -} - -"""The output of our `logout` mutation.""" -type LogoutPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `logout` mutation.""" -input LogoutInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String -} - -"""The output of our `oneTimeToken` mutation.""" -type OneTimeTokenPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - string: String - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `oneTimeToken` mutation.""" -input OneTimeTokenInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String! - password: String! - origin: String! - rememberMe: Boolean -} - -"""The output of our `register` mutation.""" -type RegisterPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - apiToken: ApiToken - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `register` mutation.""" -input RegisterInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String - password: String - rememberMe: Boolean -} - -"""The output of our `resetPassword` mutation.""" -type ResetPasswordPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `resetPassword` mutation.""" -input ResetPasswordInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - roleId: UUID - resetToken: String - newPassword: String -} - -"""The output of our `sendAccountDeletionEmail` mutation.""" -type SendAccountDeletionEmailPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `sendAccountDeletionEmail` mutation.""" -input SendAccountDeletionEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String -} - -"""The output of our `sendVerificationEmail` mutation.""" -type SendVerificationEmailPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `sendVerificationEmail` mutation.""" -input SendVerificationEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - email: String -} - -"""The output of our `setPassword` mutation.""" -type SetPasswordPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `setPassword` mutation.""" -input SetPasswordInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - currentPassword: String - newPassword: String -} - -"""The output of our `verifyEmail` mutation.""" -type VerifyEmailPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - boolean: Boolean - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `verifyEmail` mutation.""" -input VerifyEmailInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - emailId: UUID - token: String -} - -"""The output of our `verifyPassword` mutation.""" -type VerifyPasswordPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - apiToken: ApiToken - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `verifyPassword` mutation.""" -input VerifyPasswordInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - password: String! -} - -"""The output of our `verifyTotp` mutation.""" -type VerifyTotpPayload { - """ - The exact same `clientMutationId` that was provided in the mutation input, - unchanged and unused. May be used by a client to track mutations. - """ - clientMutationId: String - apiToken: ApiToken - - """ - Our root query field type. Allows us to run any query from our mutation payload. - """ - query: Query -} - -"""All input for the `verifyTotp` mutation.""" -input VerifyTotpInput { - """ - An arbitrary string value with no semantic meaning. Will be included in the - payload verbatim. May be used to track mutations by the client. - """ - clientMutationId: String - totpValue: String! -} - -type MetaschemaType { - pgAlias: String! - pgType: String! - gqlType: String! - subtype: String - modifier: Int - typmod: JSON - isArray: Boolean! -} - -type MetaschemaField { - name: String! - type: MetaschemaType! -} - -type MetaschemaTableInflection { - allRows: String! - allRowsSimple: String! - tableFieldName: String! - tableType: String! - createPayloadType: String! - orderByType: String! - filterType: String - inputType: String! - patchType: String - conditionType: String! - patchField: String! - edge: String! - edgeField: String! - connection: String! - typeName: String! - enumType: String! - updatePayloadType: String - deletePayloadType: String! - deleteByPrimaryKey: String - updateByPrimaryKey: String - createField: String! - createInputType: String! -} - -type MetaschemaTableQuery { - all: String! - one: String! - create: String! - update: String - delete: String -} - -type MetaschemaTableManyToManyRelation { - fieldName: String - type: String - leftKeyAttributes: [MetaschemaField]! - rightKeyAttributes: [MetaschemaField]! - junctionLeftKeyAttributes: [MetaschemaField]! - junctionRightKeyAttributes: [MetaschemaField]! - junctionTable: MetaschemaTable! - rightTable: MetaschemaTable! - junctionLeftConstraint: MetaschemaForeignKeyConstraint! - junctionRightConstraint: MetaschemaForeignKeyConstraint! -} - -type MetaschemaTableHasRelation { - fieldName: String - type: String - referencedBy: MetaschemaTable! - isUnique: Boolean! - keys: [MetaschemaField] -} - -type MetaschemaTableBelongsToRelation { - fieldName: String - type: String - references: MetaschemaTable! - isUnique: Boolean! - keys: [MetaschemaField] -} - -type MetaschemaTableRelation { - hasOne: [MetaschemaTableHasRelation] - hasMany: [MetaschemaTableHasRelation] - has: [MetaschemaTableHasRelation] - belongsTo: [MetaschemaTableBelongsToRelation] - manyToMany: [MetaschemaTableManyToManyRelation] -} - -type MetaschemaTable { - name: String! - query: MetaschemaTableQuery! - inflection: MetaschemaTableInflection! - relations: MetaschemaTableRelation - fields: [MetaschemaField] - constraints: [MetaschemaConstraint] - foreignKeyConstraints: [MetaschemaForeignKeyConstraint] - primaryKeyConstraints: [MetaschemaPrimaryKeyConstraint] - uniqueConstraints: [MetaschemaUniqueConstraint] - checkConstraints: [MetaschemaCheckConstraint] - exclusionConstraints: [MetaschemaExclusionConstraint] -} - -union MetaschemaConstraint = MetaschemaForeignKeyConstraint | MetaschemaUniqueConstraint | MetaschemaPrimaryKeyConstraint | MetaschemaCheckConstraint | MetaschemaExclusionConstraint - -type MetaschemaForeignKeyConstraint { - name: String! - fields: [MetaschemaField] - refTable: MetaschemaTable - refFields: [MetaschemaField] -} - -type MetaschemaUniqueConstraint { - name: String! - fields: [MetaschemaField] -} - -type MetaschemaPrimaryKeyConstraint { - name: String! - fields: [MetaschemaField] -} - -type MetaschemaCheckConstraint { - name: String! - fields: [MetaschemaField] -} - -type MetaschemaExclusionConstraint { - name: String! - fields: [MetaschemaField] -} - -type Metaschema { - tables: [MetaschemaTable] -} diff --git a/graphql/codegen/examples/type-inference-test.ts b/graphql/codegen/examples/type-inference-test.ts deleted file mode 100644 index 5a1fa823b..000000000 --- a/graphql/codegen/examples/type-inference-test.ts +++ /dev/null @@ -1,160 +0,0 @@ -/** - * Type inference verification test - * - * This file verifies that Select types with relations have proper type inference. - * Run: npx tsc --noEmit examples/type-inference-test.ts - */ -import { createClient } from '../output-orm'; -import type { OrderSelect, ProductSelect, UserSelect } from '../output-orm/input-types'; - -const db = createClient({ endpoint: 'http://public-0e394519.localhost:3000/graphql' }); - -// ============================================================================ -// TYPE VERIFICATION SECTION -// These type aliases are for verifying the structure is correct -// ============================================================================ - -// Verify OrderSelect has relation fields with proper typing -type OrderSelectKeys = keyof OrderSelect; -type TestBelongsTo = OrderSelect['customer']; // boolean | { select?: UserSelect } -type TestHasMany = OrderSelect['orderItems']; // boolean | { select?: OrderItemSelect; first?: number; ... } - -// Verify ProductSelect has relation fields -type ProductSelectKeys = keyof ProductSelect; -type TestProductSeller = ProductSelect['seller']; // boolean | { select?: UserSelect } -type TestProductCategory = ProductSelect['category']; // boolean | { select?: CategorySelect } - -// ============================================================================ -// COMPILE-TIME TEST SECTION -// If these functions compile without errors, the types are correct -// ============================================================================ - -async function testBelongsToRelation() { - // Test belongsTo relation: Order.customer -> User - const orders = await db.order.findMany({ - select: { - id: true, - orderNumber: true, - status: true, - // belongsTo: nested select should accept UserSelect fields - customer: { - select: { - id: true, - username: true, - displayName: true - } - } - }, - first: 10 - }).execute(); - - // Return type should be narrowed - if (orders.data?.orders?.nodes[0]) { - const order = orders.data.orders.nodes[0]; - console.log(order.id); - console.log(order.orderNumber); - // Uncomment to verify TypeScript error: - // console.log(order.totalAmount); // Error: Property 'totalAmount' does not exist - } -} - -async function testHasManyRelation() { - // Test hasMany relation: Order.orderItems -> OrderItemsConnection - const orders = await db.order.findMany({ - select: { - id: true, - // hasMany: should accept nested select + pagination params - orderItems: { - select: { - id: true, - quantity: true, - price: true - }, - first: 5 - // filter and orderBy are also available but not tested here - } - } - }).execute(); - - return orders; -} - -async function testManyToManyRelation() { - // Test manyToMany relation: Order.productsByOrderItemOrderIdAndProductId -> ProductsConnection - const orders = await db.order.findMany({ - select: { - id: true, - // manyToMany through junction table - productsByOrderItemOrderIdAndProductId: { - select: { - id: true, - name: true, - price: true - }, - first: 10 - } - } - }).execute(); - - return orders; -} - -async function testNestedRelations() { - // Test multiple levels of relations - const products = await db.product.findMany({ - select: { - id: true, - name: true, - // belongsTo: seller - seller: { - select: { - id: true, - username: true - } - }, - // belongsTo: category - category: { - select: { - id: true, - name: true - } - }, - // hasMany: reviews - reviews: { - select: { - id: true, - rating: true, - comment: true - }, - first: 5 - } - }, - first: 10 - }).execute(); - - return products; -} - -// ============================================================================ -// RUNTIME TEST -// ============================================================================ - -async function runTests() { - console.log('Type inference tests:'); - console.log('1. BelongsTo relation...'); - await testBelongsToRelation(); - - console.log('2. HasMany relation...'); - await testHasManyRelation(); - - console.log('3. ManyToMany relation...'); - await testManyToManyRelation(); - - console.log('4. Nested relations...'); - await testNestedRelations(); - - console.log('\nAll type inference tests passed!'); -} - -// This file is primarily for type checking, but can be run for verification -runTests().catch(console.error); diff --git a/graphql/codegen/jest.config.js b/graphql/codegen/jest.config.js index 057a9420e..86f911c5d 100644 --- a/graphql/codegen/jest.config.js +++ b/graphql/codegen/jest.config.js @@ -13,6 +13,7 @@ module.exports = { }, transformIgnorePatterns: [`/node_modules/*`], testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$', + testPathIgnorePatterns: ['/node_modules/', '/__tests__/fixtures/'], moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], modulePathIgnorePatterns: ['dist/*'] }; diff --git a/graphql/codegen/package.json b/graphql/codegen/package.json index 92b54a2c8..ee4a35c21 100644 --- a/graphql/codegen/package.json +++ b/graphql/codegen/package.json @@ -41,9 +41,10 @@ "lint": "eslint . --fix", "test": "jest --passWithNoTests", "test:watch": "jest --watch", - "example:orm": "tsx examples/test-orm.ts", - "example:rq": "tsx examples/test-rq.ts", - "example:schema": "tsx examples/download-schema.ts" + "example:codegen:sdk": "node dist/cli/index.js generate --endpoint http://api.localhost:3000/graphql --output examples/output/generated-sdk", + "example:codegen:orm": "node dist/cli/index.js generate-orm --endpoint http://api.localhost:3000/graphql --output examples/output/generated-orm", + "example:sdk": "tsx examples/react-query-sdk.ts", + "example:orm": "tsx examples/orm-sdk.ts" }, "dependencies": { "ajv": "^8.17.1", @@ -76,6 +77,7 @@ "jest": "^29.7.0", "react": "^19.2.3", "ts-jest": "^29.2.5", + "tsx": "^4.21.0", "typescript": "^5.9.3" } -} +} \ No newline at end of file diff --git a/graphql/codegen/src/cli/codegen/barrel.ts b/graphql/codegen/src/cli/codegen/barrel.ts index 4067d34e7..ccb9e0924 100644 --- a/graphql/codegen/src/cli/codegen/barrel.ts +++ b/graphql/codegen/src/cli/codegen/barrel.ts @@ -19,10 +19,7 @@ import { getOperationHookName } from './type-resolver'; * Generate the queries/index.ts barrel file */ export function generateQueriesBarrel(tables: CleanTable[]): string { - const lines: string[] = [ - createFileHeader('Query hooks barrel export'), - '', - ]; + const lines: string[] = [createFileHeader('Query hooks barrel export'), '']; // Export all query hooks for (const table of tables) { @@ -67,32 +64,45 @@ export function generateMutationsBarrel(tables: CleanTable[]): string { /** * Generate the main index.ts barrel file + * + * @param tables - The tables to include in the SDK + * @param hasSchemaTypes - Whether schema-types.ts was generated */ -export function generateMainBarrel(tables: CleanTable[]): string { +export function generateMainBarrel( + tables: CleanTable[], + hasSchemaTypes: boolean = false +): string { const tableNames = tables.map((t) => t.name).join(', '); + const schemaTypesExport = hasSchemaTypes + ? ` +// Schema types (input, payload, enum types) +export * from './schema-types'; +` + : ''; + return `/** * Auto-generated GraphQL SDK * @generated by @constructive-io/graphql-codegen - * + * * Tables: ${tableNames} - * + * * Usage: - * + * * 1. Configure the client: * \`\`\`ts * import { configure } from './generated'; - * + * * configure({ * endpoint: 'https://api.example.com/graphql', * headers: { Authorization: 'Bearer ' }, * }); * \`\`\` - * + * * 2. Use the hooks: * \`\`\`tsx * import { useCarsQuery, useCreateCarMutation } from './generated'; - * + * * function MyComponent() { * const { data, isLoading } = useCarsQuery({ first: 10 }); * const { mutate } = useCreateCarMutation(); @@ -106,7 +116,7 @@ export * from './client'; // Entity and filter types export * from './types'; - +${schemaTypesExport} // Query hooks export * from './queries'; diff --git a/graphql/codegen/src/cli/codegen/client.ts b/graphql/codegen/src/cli/codegen/client.ts index 4bb19b723..dd572f883 100644 --- a/graphql/codegen/src/cli/codegen/client.ts +++ b/graphql/codegen/src/cli/codegen/client.ts @@ -54,6 +54,39 @@ export function getConfig(): GraphQLClientConfig { return globalConfig; } +/** + * Set a single header value + * Useful for updating Authorization after login + * + * @example + * \`\`\`ts + * setHeader('Authorization', 'Bearer '); + * \`\`\` + */ +export function setHeader(key: string, value: string): void { + const config = getConfig(); + globalConfig = { + ...config, + headers: { ...config.headers, [key]: value }, + }; +} + +/** + * Merge multiple headers into the current configuration + * + * @example + * \`\`\`ts + * setHeaders({ Authorization: 'Bearer ', 'X-Custom': 'value' }); + * \`\`\` + */ +export function setHeaders(headers: Record): void { + const config = getConfig(); + globalConfig = { + ...config, + headers: { ...config.headers, ...headers }, + }; +} + // ============================================================================ // Error handling // ============================================================================ diff --git a/graphql/codegen/src/cli/codegen/custom-mutations.ts b/graphql/codegen/src/cli/codegen/custom-mutations.ts index 5deb921f7..46c73b933 100644 --- a/graphql/codegen/src/cli/codegen/custom-mutations.ts +++ b/graphql/codegen/src/cli/codegen/custom-mutations.ts @@ -34,6 +34,8 @@ import { getOperationVariablesTypeName, getOperationResultTypeName, getDocumentConstName, + createTypeTracker, + type TypeTracker, } from './type-resolver'; export interface GeneratedCustomMutationFile { @@ -53,6 +55,8 @@ export interface GenerateCustomMutationHookOptions { skipQueryField?: boolean; /** Whether to generate React Query hooks (default: true for backwards compatibility) */ reactQueryEnabled?: boolean; + /** Table entity type names (for import path resolution) */ + tableTypeNames?: Set; } /** @@ -81,7 +85,7 @@ export function generateCustomMutationHook( function generateCustomMutationHookInternal( options: GenerateCustomMutationHookOptions ): GeneratedCustomMutationFile { - const { operation, typeRegistry, maxDepth = 2, skipQueryField = true } = options; + const { operation, typeRegistry, maxDepth = 2, skipQueryField = true, tableTypeNames } = options; const project = createProject(); const hookName = getOperationHookName(operation.name, 'mutation'); @@ -90,6 +94,9 @@ function generateCustomMutationHookInternal( const resultTypeName = getOperationResultTypeName(operation.name, 'mutation'); const documentConstName = getDocumentConstName(operation.name, 'mutation'); + // Create type tracker to collect referenced types (with table type awareness) + const tracker = createTypeTracker({ tableTypeNames }); + // Generate GraphQL document const mutationDocument = buildCustomMutationString({ operation, @@ -106,8 +113,24 @@ function generateCustomMutationHookInternal( createFileHeader(`Custom mutation hook for ${operation.name}`) + '\n\n' ); + // Generate variables interface if there are arguments (with tracking) + let variablesProps: InterfaceProperty[] = []; + if (operation.args.length > 0) { + variablesProps = generateVariablesProperties(operation.args, tracker); + } + + // Generate result interface (with tracking) + const resultType = typeRefToTsType(operation.returnType, tracker); + const resultProps: InterfaceProperty[] = [ + { name: operation.name, type: resultType }, + ]; + + // Get importable types from tracker (separated by source) + const schemaTypes = tracker.getImportableTypes(); // From schema-types.ts + const tableTypes = tracker.getTableTypes(); // From types.ts + // Add imports - sourceFile.addImportDeclarations([ + const imports = [ createImport({ moduleSpecifier: '@tanstack/react-query', namedImports: ['useMutation'], @@ -117,7 +140,29 @@ function generateCustomMutationHookInternal( moduleSpecifier: '../client', namedImports: ['execute'], }), - ]); + ]; + + // Add types.ts import for table entity types + if (tableTypes.length > 0) { + imports.push( + createImport({ + moduleSpecifier: '../types', + typeOnlyNamedImports: tableTypes, + }) + ); + } + + // Add schema-types import for Input/Payload/Enum types + if (schemaTypes.length > 0) { + imports.push( + createImport({ + moduleSpecifier: '../schema-types', + typeOnlyNamedImports: schemaTypes, + }) + ); + } + + sourceFile.addImportDeclarations(imports); // Add mutation document constant sourceFile.addVariableStatement( @@ -126,17 +171,12 @@ function generateCustomMutationHookInternal( }) ); - // Generate variables interface if there are arguments + // Add variables interface if (operation.args.length > 0) { - const variablesProps = generateVariablesProperties(operation.args); sourceFile.addInterface(createInterface(variablesTypeName, variablesProps)); } - // Generate result interface - const resultType = typeRefToTsType(operation.returnType); - const resultProps: InterfaceProperty[] = [ - { name: operation.name, type: resultType }, - ]; + // Add result interface sourceFile.addInterface(createInterface(resultTypeName, resultProps)); // Generate hook function @@ -165,10 +205,13 @@ function generateCustomMutationHookInternal( /** * Generate interface properties from CleanArguments */ -function generateVariablesProperties(args: CleanArgument[]): InterfaceProperty[] { +function generateVariablesProperties( + args: CleanArgument[], + tracker?: TypeTracker +): InterfaceProperty[] { return args.map((arg) => ({ name: arg.name, - type: typeRefToTsType(arg.type), + type: typeRefToTsType(arg.type, tracker), optional: !isTypeRequired(arg.type), docs: arg.description ? [arg.description] : undefined, })); @@ -239,6 +282,8 @@ export interface GenerateAllCustomMutationHooksOptions { skipQueryField?: boolean; /** Whether to generate React Query hooks (default: true for backwards compatibility) */ reactQueryEnabled?: boolean; + /** Table entity type names (for import path resolution) */ + tableTypeNames?: Set; } /** @@ -248,7 +293,7 @@ export interface GenerateAllCustomMutationHooksOptions { export function generateAllCustomMutationHooks( options: GenerateAllCustomMutationHooksOptions ): GeneratedCustomMutationFile[] { - const { operations, typeRegistry, maxDepth = 2, skipQueryField = true, reactQueryEnabled = true } = options; + const { operations, typeRegistry, maxDepth = 2, skipQueryField = true, reactQueryEnabled = true, tableTypeNames } = options; return operations .filter((op) => op.kind === 'mutation') @@ -259,6 +304,7 @@ export function generateAllCustomMutationHooks( maxDepth, skipQueryField, reactQueryEnabled, + tableTypeNames, }) ) .filter((result): result is GeneratedCustomMutationFile => result !== null); diff --git a/graphql/codegen/src/cli/codegen/custom-queries.ts b/graphql/codegen/src/cli/codegen/custom-queries.ts index 05f707f19..286cb4381 100644 --- a/graphql/codegen/src/cli/codegen/custom-queries.ts +++ b/graphql/codegen/src/cli/codegen/custom-queries.ts @@ -35,6 +35,8 @@ import { getOperationResultTypeName, getDocumentConstName, getQueryKeyName, + createTypeTracker, + type TypeTracker, } from './type-resolver'; import { ucFirst } from './utils'; @@ -55,6 +57,8 @@ export interface GenerateCustomQueryHookOptions { skipQueryField?: boolean; /** Whether to generate React Query hooks (default: true for backwards compatibility) */ reactQueryEnabled?: boolean; + /** Table entity type names (for import path resolution) */ + tableTypeNames?: Set; } /** @@ -63,7 +67,7 @@ export interface GenerateCustomQueryHookOptions { export function generateCustomQueryHook( options: GenerateCustomQueryHookOptions ): GeneratedCustomQueryFile { - const { operation, typeRegistry, maxDepth = 2, skipQueryField = true, reactQueryEnabled = true } = options; + const { operation, typeRegistry, maxDepth = 2, skipQueryField = true, reactQueryEnabled = true, tableTypeNames } = options; const project = createProject(); const hookName = getOperationHookName(operation.name, 'query'); @@ -73,6 +77,9 @@ export function generateCustomQueryHook( const documentConstName = getDocumentConstName(operation.name, 'query'); const queryKeyName = getQueryKeyName(operation.name); + // Create type tracker to collect referenced types (with table type awareness) + const tracker = createTypeTracker({ tableTypeNames }); + // Generate GraphQL document const queryDocument = buildCustomQueryString({ operation, @@ -89,6 +96,22 @@ export function generateCustomQueryHook( : `Custom query functions for ${operation.name}`; sourceFile.insertText(0, createFileHeader(headerText) + '\n\n'); + // Generate variables interface if there are arguments (with tracking) + let variablesProps: InterfaceProperty[] = []; + if (operation.args.length > 0) { + variablesProps = generateVariablesProperties(operation.args, tracker); + } + + // Generate result interface (with tracking) + const resultType = typeRefToTsType(operation.returnType, tracker); + const resultProps: InterfaceProperty[] = [ + { name: operation.name, type: resultType }, + ]; + + // Get importable types from tracker (separated by source) + const schemaTypes = tracker.getImportableTypes(); // From schema-types.ts + const tableTypes = tracker.getTableTypes(); // From types.ts + // Add imports - conditionally include React Query imports const imports = []; if (reactQueryEnabled) { @@ -107,6 +130,27 @@ export function generateCustomQueryHook( typeOnlyNamedImports: ['ExecuteOptions'], }) ); + + // Add types.ts import for table entity types + if (tableTypes.length > 0) { + imports.push( + createImport({ + moduleSpecifier: '../types', + typeOnlyNamedImports: tableTypes, + }) + ); + } + + // Add schema-types import for Input/Payload/Enum types + if (schemaTypes.length > 0) { + imports.push( + createImport({ + moduleSpecifier: '../schema-types', + typeOnlyNamedImports: schemaTypes, + }) + ); + } + sourceFile.addImportDeclarations(imports); // Add query document constant @@ -116,17 +160,12 @@ export function generateCustomQueryHook( }) ); - // Generate variables interface if there are arguments + // Add variables interface if (operation.args.length > 0) { - const variablesProps = generateVariablesProperties(operation.args); sourceFile.addInterface(createInterface(variablesTypeName, variablesProps)); } - // Generate result interface - const resultType = typeRefToTsType(operation.returnType); - const resultProps: InterfaceProperty[] = [ - { name: operation.name, type: resultType }, - ]; + // Add result interface sourceFile.addInterface(createInterface(resultTypeName, resultProps)); // Query key factory @@ -215,10 +254,13 @@ export function generateCustomQueryHook( /** * Generate interface properties from CleanArguments */ -function generateVariablesProperties(args: CleanArgument[]): InterfaceProperty[] { +function generateVariablesProperties( + args: CleanArgument[], + tracker?: TypeTracker +): InterfaceProperty[] { return args.map((arg) => ({ name: arg.name, - type: typeRefToTsType(arg.type), + type: typeRefToTsType(arg.type, tracker), optional: !isTypeRequired(arg.type), docs: arg.description ? [arg.description] : undefined, })); @@ -496,6 +538,8 @@ export interface GenerateAllCustomQueryHooksOptions { skipQueryField?: boolean; /** Whether to generate React Query hooks (default: true for backwards compatibility) */ reactQueryEnabled?: boolean; + /** Table entity type names (for import path resolution) */ + tableTypeNames?: Set; } /** @@ -504,7 +548,7 @@ export interface GenerateAllCustomQueryHooksOptions { export function generateAllCustomQueryHooks( options: GenerateAllCustomQueryHooksOptions ): GeneratedCustomQueryFile[] { - const { operations, typeRegistry, maxDepth = 2, skipQueryField = true, reactQueryEnabled = true } = options; + const { operations, typeRegistry, maxDepth = 2, skipQueryField = true, reactQueryEnabled = true, tableTypeNames } = options; return operations .filter((op) => op.kind === 'query') @@ -515,6 +559,7 @@ export function generateAllCustomQueryHooks( maxDepth, skipQueryField, reactQueryEnabled, + tableTypeNames, }) ); } diff --git a/graphql/codegen/src/cli/codegen/filters.ts b/graphql/codegen/src/cli/codegen/filters.ts deleted file mode 100644 index 36ad08f12..000000000 --- a/graphql/codegen/src/cli/codegen/filters.ts +++ /dev/null @@ -1,384 +0,0 @@ -/** - * PostGraphile filter type generators - * - * Generates TypeScript interfaces for PostGraphile filter types: - * - Base scalar filters (StringFilter, IntFilter, etc.) - * - Table-specific filters (CarFilter, UserFilter, etc.) - * - OrderBy enum types - */ -import type { CleanTable, CleanField } from '../../types/schema'; -import { - getFilterTypeName, - getOrderByTypeName, - getScalarFilterType, - getScalarFields, - toScreamingSnake, - getGeneratedFileHeader, -} from './utils'; - -// ============================================================================ -// Base filter type definitions -// ============================================================================ - -/** - * Generate all base PostGraphile filter types - * These are shared across all tables - */ -export function generateBaseFilterTypes(): string { - return `${getGeneratedFileHeader('PostGraphile base filter types')} - -// ============================================================================ -// String filters -// ============================================================================ - -export interface StringFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; - includes?: string; - notIncludes?: string; - includesInsensitive?: string; - notIncludesInsensitive?: string; - startsWith?: string; - notStartsWith?: string; - startsWithInsensitive?: string; - notStartsWithInsensitive?: string; - endsWith?: string; - notEndsWith?: string; - endsWithInsensitive?: string; - notEndsWithInsensitive?: string; - like?: string; - notLike?: string; - likeInsensitive?: string; - notLikeInsensitive?: string; -} - -export interface StringListFilter { - isNull?: boolean; - equalTo?: string[]; - notEqualTo?: string[]; - distinctFrom?: string[]; - notDistinctFrom?: string[]; - lessThan?: string[]; - lessThanOrEqualTo?: string[]; - greaterThan?: string[]; - greaterThanOrEqualTo?: string[]; - contains?: string[]; - containedBy?: string[]; - overlaps?: string[]; - anyEqualTo?: string; - anyNotEqualTo?: string; - anyLessThan?: string; - anyLessThanOrEqualTo?: string; - anyGreaterThan?: string; - anyGreaterThanOrEqualTo?: string; -} - -// ============================================================================ -// Numeric filters -// ============================================================================ - -export interface IntFilter { - isNull?: boolean; - equalTo?: number; - notEqualTo?: number; - distinctFrom?: number; - notDistinctFrom?: number; - in?: number[]; - notIn?: number[]; - lessThan?: number; - lessThanOrEqualTo?: number; - greaterThan?: number; - greaterThanOrEqualTo?: number; -} - -export interface IntListFilter { - isNull?: boolean; - equalTo?: number[]; - notEqualTo?: number[]; - distinctFrom?: number[]; - notDistinctFrom?: number[]; - lessThan?: number[]; - lessThanOrEqualTo?: number[]; - greaterThan?: number[]; - greaterThanOrEqualTo?: number[]; - contains?: number[]; - containedBy?: number[]; - overlaps?: number[]; - anyEqualTo?: number; - anyNotEqualTo?: number; - anyLessThan?: number; - anyLessThanOrEqualTo?: number; - anyGreaterThan?: number; - anyGreaterThanOrEqualTo?: number; -} - -export interface FloatFilter { - isNull?: boolean; - equalTo?: number; - notEqualTo?: number; - distinctFrom?: number; - notDistinctFrom?: number; - in?: number[]; - notIn?: number[]; - lessThan?: number; - lessThanOrEqualTo?: number; - greaterThan?: number; - greaterThanOrEqualTo?: number; -} - -export interface BigIntFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; -} - -export interface BigFloatFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; -} - -// ============================================================================ -// Boolean filter -// ============================================================================ - -export interface BooleanFilter { - isNull?: boolean; - equalTo?: boolean; - notEqualTo?: boolean; - distinctFrom?: boolean; - notDistinctFrom?: boolean; - in?: boolean[]; - notIn?: boolean[]; -} - -// ============================================================================ -// UUID filter -// ============================================================================ - -export interface UUIDFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; -} - -export interface UUIDListFilter { - isNull?: boolean; - equalTo?: string[]; - notEqualTo?: string[]; - distinctFrom?: string[]; - notDistinctFrom?: string[]; - lessThan?: string[]; - lessThanOrEqualTo?: string[]; - greaterThan?: string[]; - greaterThanOrEqualTo?: string[]; - contains?: string[]; - containedBy?: string[]; - overlaps?: string[]; - anyEqualTo?: string; - anyNotEqualTo?: string; - anyLessThan?: string; - anyLessThanOrEqualTo?: string; - anyGreaterThan?: string; - anyGreaterThanOrEqualTo?: string; -} - -// ============================================================================ -// Date/Time filters -// ============================================================================ - -export interface DatetimeFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; -} - -export interface DateFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; -} - -export interface TimeFilter { - isNull?: boolean; - equalTo?: string; - notEqualTo?: string; - distinctFrom?: string; - notDistinctFrom?: string; - in?: string[]; - notIn?: string[]; - lessThan?: string; - lessThanOrEqualTo?: string; - greaterThan?: string; - greaterThanOrEqualTo?: string; -} - -// ============================================================================ -// JSON filter -// ============================================================================ - -export interface JSONFilter { - isNull?: boolean; - equalTo?: unknown; - notEqualTo?: unknown; - distinctFrom?: unknown; - notDistinctFrom?: unknown; - in?: unknown[]; - notIn?: unknown[]; - contains?: unknown; - containedBy?: unknown; - containsKey?: string; - containsAllKeys?: string[]; - containsAnyKeys?: string[]; -} -`; -} - -// ============================================================================ -// Table-specific filter generators -// ============================================================================ - -/** - * Generate filter interface for a specific table - */ -export function generateTableFilter(table: CleanTable): string { - const filterTypeName = getFilterTypeName(table); - const scalarFields = getScalarFields(table); - - const fieldFilters = scalarFields - .map((field) => { - const filterType = getFieldFilterType(field); - if (!filterType) return null; - return ` ${field.name}?: ${filterType};`; - }) - .filter(Boolean) - .join('\n'); - - return `export interface ${filterTypeName} { -${fieldFilters} - /** Logical AND */ - and?: ${filterTypeName}[]; - /** Logical OR */ - or?: ${filterTypeName}[]; - /** Logical NOT */ - not?: ${filterTypeName}; -}`; -} - -/** - * Get the filter type for a specific field - */ -function getFieldFilterType(field: CleanField): string | null { - const { gqlType, isArray } = field.type; - - // Handle array types - if (isArray) { - const cleanType = gqlType.replace(/!/g, ''); - switch (cleanType) { - case 'String': - return 'StringListFilter'; - case 'Int': - return 'IntListFilter'; - case 'UUID': - return 'UUIDListFilter'; - default: - return null; - } - } - - return getScalarFilterType(gqlType); -} - -// ============================================================================ -// OrderBy enum generators -// ============================================================================ - -/** - * Generate OrderBy type for a specific table - */ -export function generateTableOrderBy(table: CleanTable): string { - const orderByTypeName = getOrderByTypeName(table); - const scalarFields = getScalarFields(table); - - const fieldOrderBys = scalarFields.flatMap((field) => { - const screamingName = toScreamingSnake(field.name); - return [`'${screamingName}_ASC'`, `'${screamingName}_DESC'`]; - }); - - // Add standard PostGraphile order options - const standardOrderBys = [ - "'NATURAL'", - "'PRIMARY_KEY_ASC'", - "'PRIMARY_KEY_DESC'", - ]; - - const allOrderBys = [...fieldOrderBys, ...standardOrderBys]; - - return `export type ${orderByTypeName} = ${allOrderBys.join(' | ')};`; -} - -// ============================================================================ -// Combined generators for hook files -// ============================================================================ - -/** - * Generate inline filter and orderBy types for a query hook file - * These are embedded directly in the hook file for self-containment - */ -export function generateInlineFilterTypes(table: CleanTable): string { - const filterDef = generateTableFilter(table); - const orderByDef = generateTableOrderBy(table); - - return `${filterDef} - -${orderByDef}`; -} diff --git a/graphql/codegen/src/cli/codegen/gql-ast.ts b/graphql/codegen/src/cli/codegen/gql-ast.ts index a07ec3f7b..7e1353ce3 100644 --- a/graphql/codegen/src/cli/codegen/gql-ast.ts +++ b/graphql/codegen/src/cli/codegen/gql-ast.ts @@ -23,6 +23,7 @@ import { getFilterTypeName, getOrderByTypeName, getScalarFields, + getPrimaryKeyInfo, ucFirst, } from './utils'; @@ -153,17 +154,22 @@ export function buildSingleQueryAST(config: SingleQueryConfig): DocumentNode { const queryName = getSingleRowQueryName(table); const scalarFields = getScalarFields(table); - // Variable definitions - assume UUID primary key + // Get primary key info dynamically from table constraints + const pkFields = getPrimaryKeyInfo(table); + // For simplicity, use first PK field (most common case) + const pkField = pkFields[0]; + + // Variable definitions - use dynamic PK field name and type const variableDefinitions: VariableDefinitionNode[] = [ t.variableDefinition({ - variable: t.variable({ name: 'id' }), - type: t.nonNullType({ type: t.namedType({ type: 'UUID' }) }), + variable: t.variable({ name: pkField.name }), + type: t.nonNullType({ type: t.namedType({ type: pkField.gqlType }) }), }), ]; - // Query arguments + // Query arguments - use dynamic PK field name const args: ArgumentNode[] = [ - t.argument({ name: 'id', value: t.variable({ name: 'id' }) }), + t.argument({ name: pkField.name, value: t.variable({ name: pkField.name }) }), ]; // Field selections diff --git a/graphql/codegen/src/cli/codegen/index.ts b/graphql/codegen/src/cli/codegen/index.ts index 5a91b16dd..204509373 100644 --- a/graphql/codegen/src/cli/codegen/index.ts +++ b/graphql/codegen/src/cli/codegen/index.ts @@ -28,6 +28,7 @@ import type { ResolvedConfig } from '../../types/config'; import { generateClientFile } from './client'; import { generateTypesFile } from './types'; +import { generateSchemaTypesFile } from './schema-types-generator'; import { generateAllQueryHooks } from './queries'; import { generateAllMutationHooks } from './mutations'; import { generateAllCustomQueryHooks } from './custom-queries'; @@ -39,6 +40,7 @@ import { generateCustomQueriesBarrel, generateCustomMutationsBarrel, } from './barrel'; +import { getTableNames } from './utils'; // ============================================================================ // Types @@ -108,13 +110,37 @@ export function generate(options: GenerateOptions): GenerateResult { content: generateClientFile(), }); - // 2. Generate types.ts + // Collect table type names for import path resolution + const tableTypeNames = new Set(tables.map((t) => getTableNames(t).typeName)); + + // 2. Generate schema-types.ts for custom operations (if any) + // NOTE: This must come BEFORE types.ts so that types.ts can import enum types + let hasSchemaTypes = false; + let generatedEnumNames: string[] = []; + if (customOperations && customOperations.typeRegistry) { + const schemaTypesResult = generateSchemaTypesFile({ + typeRegistry: customOperations.typeRegistry, + tableTypeNames, + }); + + // Only include if there's meaningful content + if (schemaTypesResult.content.split('\n').length > 10) { + files.push({ + path: 'schema-types.ts', + content: schemaTypesResult.content, + }); + hasSchemaTypes = true; + generatedEnumNames = schemaTypesResult.generatedEnums || []; + } + } + + // 3. Generate types.ts (can now import enums from schema-types) files.push({ path: 'types.ts', - content: generateTypesFile(tables), + content: generateTypesFile(tables, { enumsFromSchemaTypes: generatedEnumNames }), }); - // 3. Generate table-based query hooks (queries/*.ts) + // 4. Generate table-based query hooks (queries/*.ts) const queryHooks = generateAllQueryHooks(tables, { reactQueryEnabled }); for (const hook of queryHooks) { files.push({ @@ -123,7 +149,7 @@ export function generate(options: GenerateOptions): GenerateResult { }); } - // 4. Generate custom query hooks if available + // 5. Generate custom query hooks if available let customQueryHooks: Array<{ fileName: string; content: string; operationName: string }> = []; if (customOperations && customOperations.queries.length > 0) { customQueryHooks = generateAllCustomQueryHooks({ @@ -132,6 +158,7 @@ export function generate(options: GenerateOptions): GenerateResult { maxDepth, skipQueryField, reactQueryEnabled, + tableTypeNames, }); for (const hook of customQueryHooks) { @@ -151,7 +178,10 @@ export function generate(options: GenerateOptions): GenerateResult { }); // 6. Generate table-based mutation hooks (mutations/*.ts) - const mutationHooks = generateAllMutationHooks(tables, { reactQueryEnabled }); + const mutationHooks = generateAllMutationHooks(tables, { + reactQueryEnabled, + enumsFromSchemaTypes: generatedEnumNames, + }); for (const hook of mutationHooks) { files.push({ path: `mutations/${hook.fileName}`, @@ -168,6 +198,7 @@ export function generate(options: GenerateOptions): GenerateResult { maxDepth, skipQueryField, reactQueryEnabled, + tableTypeNames, }); for (const hook of customMutationHooks) { @@ -186,10 +217,10 @@ export function generate(options: GenerateOptions): GenerateResult { : generateMutationsBarrel(tables), }); - // 9. Generate main index.ts barrel + // 9. Generate main index.ts barrel (with schema-types if present) files.push({ path: 'index.ts', - content: generateMainBarrel(tables), + content: generateMainBarrel(tables, hasSchemaTypes), }); return { diff --git a/graphql/codegen/src/cli/codegen/mutations.ts b/graphql/codegen/src/cli/codegen/mutations.ts index 9da44a62c..f302ecfdc 100644 --- a/graphql/codegen/src/cli/codegen/mutations.ts +++ b/graphql/codegen/src/cli/codegen/mutations.ts @@ -36,11 +36,33 @@ import { getUpdateMutationName, getDeleteMutationName, getScalarFields, + getPrimaryKeyInfo, fieldTypeToTs, ucFirst, lcFirst, } from './utils'; +/** + * Check if a field is auto-generated and should be excluded from create inputs + * Uses primary key from constraints and common timestamp patterns + */ +function isAutoGeneratedField(fieldName: string, pkFieldNames: Set): boolean { + const name = fieldName.toLowerCase(); + + // Exclude primary key fields (from constraints) + if (pkFieldNames.has(fieldName)) return true; + + // Exclude common timestamp patterns (case-insensitive) + // These are typically auto-set by database triggers or defaults + const timestampPatterns = [ + 'createdat', 'created_at', 'createddate', 'created_date', + 'updatedat', 'updated_at', 'updateddate', 'updated_date', + 'deletedat', 'deleted_at', // soft delete timestamps + ]; + + return timestampPatterns.includes(name); +} + export interface GeneratedMutationFile { fileName: string; content: string; @@ -49,6 +71,8 @@ export interface GeneratedMutationFile { export interface MutationGeneratorOptions { /** Whether to generate React Query hooks (default: true for backwards compatibility) */ reactQueryEnabled?: boolean; + /** Enum type names that are available from schema-types.ts */ + enumsFromSchemaTypes?: string[]; } // ============================================================================ @@ -63,18 +87,33 @@ export function generateCreateMutationHook( table: CleanTable, options: MutationGeneratorOptions = {} ): GeneratedMutationFile | null { - const { reactQueryEnabled = true } = options; + const { reactQueryEnabled = true, enumsFromSchemaTypes = [] } = options; // Mutations require React Query - skip generation when disabled if (!reactQueryEnabled) { return null; } + + const enumSet = new Set(enumsFromSchemaTypes); + const project = createProject(); const { typeName, singularName } = getTableNames(table); const hookName = getCreateMutationHookName(table); const mutationName = getCreateMutationName(table); const scalarFields = getScalarFields(table); + // Get primary key field names dynamically from table constraints + const pkFieldNames = new Set(getPrimaryKeyInfo(table).map(pk => pk.name)); + + // Collect which enums are used by this table's fields + const usedEnums = new Set(); + for (const field of scalarFields) { + const cleanType = field.type.gqlType.replace(/!/g, ''); + if (enumSet.has(cleanType)) { + usedEnums.add(cleanType); + } + } + // Generate GraphQL document via AST const mutationAST = buildCreateMutationAST({ table }); const mutationDocument = printGraphQL(mutationAST); @@ -84,8 +123,8 @@ export function generateCreateMutationHook( // Add file header sourceFile.insertText(0, createFileHeader(`Create mutation hook for ${typeName}`) + '\n\n'); - // Add imports - sourceFile.addImportDeclarations([ + // Build import declarations + const imports = [ createImport({ moduleSpecifier: '@tanstack/react-query', namedImports: ['useMutation', 'useQueryClient'], @@ -99,7 +138,20 @@ export function generateCreateMutationHook( moduleSpecifier: '../types', typeOnlyNamedImports: [typeName], }), - ]); + ]; + + // Add import for enum types from schema-types if any are used + if (usedEnums.size > 0) { + imports.push( + createImport({ + moduleSpecifier: '../schema-types', + typeOnlyNamedImports: Array.from(usedEnums).sort(), + }) + ); + } + + // Add imports + sourceFile.addImportDeclarations(imports); // Re-export entity type sourceFile.addStatements(`\n// Re-export entity type for convenience\nexport type { ${typeName} };\n`); @@ -120,11 +172,9 @@ export function generateCreateMutationHook( sourceFile.addStatements('// ============================================================================\n'); // Generate CreateInput type - exclude auto-generated fields + // Note: Not exported to avoid conflicts with schema-types const inputFields: InterfaceProperty[] = scalarFields - .filter((f) => { - const name = f.name.toLowerCase(); - return !['id', 'createdat', 'updatedat', 'created_at', 'updated_at'].includes(name); - }) + .filter((f) => !isAutoGeneratedField(f.name, pkFieldNames)) .map((f) => ({ name: f.name, type: `${fieldTypeToTs(f.type)} | null`, @@ -134,6 +184,7 @@ export function generateCreateMutationHook( sourceFile.addInterface( createInterface(`${typeName}CreateInput`, inputFields, { docs: [`Input type for creating a ${typeName}`], + isExported: false, }) ); @@ -229,7 +280,7 @@ export function generateUpdateMutationHook( table: CleanTable, options: MutationGeneratorOptions = {} ): GeneratedMutationFile | null { - const { reactQueryEnabled = true } = options; + const { reactQueryEnabled = true, enumsFromSchemaTypes = [] } = options; // Mutations require React Query - skip generation when disabled if (!reactQueryEnabled) { @@ -241,12 +292,28 @@ export function generateUpdateMutationHook( return null; } + const enumSet = new Set(enumsFromSchemaTypes); + const project = createProject(); const { typeName, singularName } = getTableNames(table); const hookName = getUpdateMutationHookName(table); const mutationName = getUpdateMutationName(table); const scalarFields = getScalarFields(table); + // Get primary key info dynamically from table constraints + const pkFields = getPrimaryKeyInfo(table); + const pkField = pkFields[0]; // Use first PK field + const pkFieldNames = new Set(pkFields.map(pk => pk.name)); + + // Collect which enums are used by this table's fields + const usedEnums = new Set(); + for (const field of scalarFields) { + const cleanType = field.type.gqlType.replace(/!/g, ''); + if (enumSet.has(cleanType)) { + usedEnums.add(cleanType); + } + } + // Generate GraphQL document via AST const mutationAST = buildUpdateMutationAST({ table }); const mutationDocument = printGraphQL(mutationAST); @@ -256,8 +323,8 @@ export function generateUpdateMutationHook( // Add file header sourceFile.insertText(0, createFileHeader(`Update mutation hook for ${typeName}`) + '\n\n'); - // Add imports - sourceFile.addImportDeclarations([ + // Build import declarations + const imports = [ createImport({ moduleSpecifier: '@tanstack/react-query', namedImports: ['useMutation', 'useQueryClient'], @@ -271,7 +338,20 @@ export function generateUpdateMutationHook( moduleSpecifier: '../types', typeOnlyNamedImports: [typeName], }), - ]); + ]; + + // Add import for enum types from schema-types if any are used + if (usedEnums.size > 0) { + imports.push( + createImport({ + moduleSpecifier: '../schema-types', + typeOnlyNamedImports: Array.from(usedEnums).sort(), + }) + ); + } + + // Add imports + sourceFile.addImportDeclarations(imports); // Re-export entity type sourceFile.addStatements(`\n// Re-export entity type for convenience\nexport type { ${typeName} };\n`); @@ -291,9 +371,10 @@ export function generateUpdateMutationHook( sourceFile.addStatements('// Types'); sourceFile.addStatements('// ============================================================================\n'); - // Generate Patch type - all fields optional + // Generate Patch type - all fields optional, exclude primary key + // Note: Not exported to avoid conflicts with schema-types const patchFields: InterfaceProperty[] = scalarFields - .filter((f) => f.name.toLowerCase() !== 'id') + .filter((f) => !pkFieldNames.has(f.name)) .map((f) => ({ name: f.name, type: `${fieldTypeToTs(f.type)} | null`, @@ -303,16 +384,17 @@ export function generateUpdateMutationHook( sourceFile.addInterface( createInterface(`${typeName}Patch`, patchFields, { docs: [`Patch type for updating a ${typeName} - all fields optional`], + isExported: false, }) ); - // Variables interface + // Variables interface - use dynamic PK field name and type sourceFile.addInterface( createInterface(`${ucFirst(mutationName)}MutationVariables`, [ { name: 'input', type: `{ - id: string; + ${pkField.name}: ${pkField.tsType}; patch: ${typeName}Patch; }`, }, @@ -357,7 +439,7 @@ export function generateUpdateMutationHook( ), onSuccess: (_, variables) => { // Invalidate specific item and list queries - queryClient.invalidateQueries({ queryKey: ['${typeName.toLowerCase()}', 'detail', variables.input.id] }); + queryClient.invalidateQueries({ queryKey: ['${typeName.toLowerCase()}', 'detail', variables.input.${pkField.name}] }); queryClient.invalidateQueries({ queryKey: ['${typeName.toLowerCase()}', 'list'] }); }, ...options, @@ -372,7 +454,7 @@ const { mutate, isPending } = ${hookName}(); mutate({ input: { - id: 'uuid-here', + ${pkField.name}: ${pkField.tsType === 'string' ? "'value-here'" : '123'}, patch: { // ... fields to update }, @@ -418,6 +500,10 @@ export function generateDeleteMutationHook( const hookName = getDeleteMutationHookName(table); const mutationName = getDeleteMutationName(table); + // Get primary key info dynamically from table constraints + const pkFields = getPrimaryKeyInfo(table); + const pkField = pkFields[0]; // Use first PK field + // Generate GraphQL document via AST const mutationAST = buildDeleteMutationAST({ table }); const mutationDocument = printGraphQL(mutationAST); @@ -455,13 +541,13 @@ export function generateDeleteMutationHook( sourceFile.addStatements('// Types'); sourceFile.addStatements('// ============================================================================\n'); - // Variables interface + // Variables interface - use dynamic PK field name and type sourceFile.addInterface( createInterface(`${ucFirst(mutationName)}MutationVariables`, [ { name: 'input', type: `{ - id: string; + ${pkField.name}: ${pkField.tsType}; }`, }, ]) @@ -474,7 +560,7 @@ export function generateDeleteMutationHook( name: mutationName, type: `{ clientMutationId: string | null; - deletedId: string | null; + deleted${ucFirst(pkField.name)}: ${pkField.tsType} | null; }`, }, ]) @@ -506,7 +592,7 @@ export function generateDeleteMutationHook( ), onSuccess: (_, variables) => { // Remove from cache and invalidate list - queryClient.removeQueries({ queryKey: ['${typeName.toLowerCase()}', 'detail', variables.input.id] }); + queryClient.removeQueries({ queryKey: ['${typeName.toLowerCase()}', 'detail', variables.input.${pkField.name}] }); queryClient.invalidateQueries({ queryKey: ['${typeName.toLowerCase()}', 'list'] }); }, ...options, @@ -521,7 +607,7 @@ const { mutate, isPending } = ${hookName}(); mutate({ input: { - id: 'uuid-to-delete', + ${pkField.name}: ${pkField.tsType === 'string' ? "'value-to-delete'" : '123'}, }, }); \`\`\``, diff --git a/graphql/codegen/src/cli/codegen/orm/barrel.ts b/graphql/codegen/src/cli/codegen/orm/barrel.ts index 1537a1542..f3d03eaf5 100644 --- a/graphql/codegen/src/cli/codegen/orm/barrel.ts +++ b/graphql/codegen/src/cli/codegen/orm/barrel.ts @@ -34,10 +34,12 @@ export function generateModelsBarrel(tables: CleanTable[]): GeneratedBarrelFile for (const table of tables) { const { typeName } = getTableNames(table); const modelName = `${typeName}Model`; - const fileName = lcFirst(typeName); + // Use same naming logic as model-generator to avoid "index.ts" clash with barrel file + const baseFileName = lcFirst(typeName); + const moduleFileName = baseFileName === 'index' ? `${baseFileName}Model` : baseFileName; sourceFile.addExportDeclaration({ - moduleSpecifier: `./${fileName}`, + moduleSpecifier: `./${moduleFileName}`, namedExports: [modelName], }); } diff --git a/graphql/codegen/src/cli/codegen/orm/index.ts b/graphql/codegen/src/cli/codegen/orm/index.ts index 729fba67c..76897cfb4 100644 --- a/graphql/codegen/src/cli/codegen/orm/index.ts +++ b/graphql/codegen/src/cli/codegen/orm/index.ts @@ -89,6 +89,25 @@ export function generateOrm(options: GenerateOrmOptions): GenerateOrmResult { ]; const usedInputTypes = collectInputTypeNames(allOps); const usedPayloadTypes = collectPayloadTypeNames(allOps); + + // Also include payload types for table CRUD mutations (they reference Edge types) + if (typeRegistry) { + for (const table of tables) { + const typeName = table.name; + // Add standard CRUD payload types + const crudPayloadTypes = [ + `Create${typeName}Payload`, + `Update${typeName}Payload`, + `Delete${typeName}Payload`, + ]; + for (const payloadType of crudPayloadTypes) { + if (typeRegistry.has(payloadType)) { + usedPayloadTypes.add(payloadType); + } + } + } + } + const inputTypesFile = generateInputTypesFile( typeRegistry ?? new Map(), usedInputTypes, diff --git a/graphql/codegen/src/cli/codegen/orm/input-types-generator.test.ts b/graphql/codegen/src/cli/codegen/orm/input-types-generator.test.ts deleted file mode 100644 index 5e6e0dbae..000000000 --- a/graphql/codegen/src/cli/codegen/orm/input-types-generator.test.ts +++ /dev/null @@ -1,81 +0,0 @@ -// Jest globals - no import needed - -import { generateInputTypesFile } from './input-types-generator'; -import type { CleanTable, CleanFieldType } from '../../../types/schema'; - -const uuidType: CleanFieldType = { gqlType: 'UUID', isArray: false }; -const stringType: CleanFieldType = { gqlType: 'String', isArray: false }; - -function createTable(table: Partial & Pick): CleanTable { - return { - name: table.name, - fields: table.fields ?? [], - relations: table.relations ?? { - belongsTo: [], - hasOne: [], - hasMany: [], - manyToMany: [], - }, - query: table.query, - inflection: table.inflection, - constraints: table.constraints, - }; -} - -describe('input-types-generator', () => { - it('emits relation helpers and select types with related names', () => { - const userTable = createTable({ - name: 'User', - fields: [ - { name: 'id', type: uuidType }, - { name: 'name', type: stringType }, - ], - relations: { - belongsTo: [], - hasOne: [], - hasMany: [ - { - fieldName: 'posts', - isUnique: false, - referencedByTable: 'Post', - type: null, - keys: [], - }, - ], - manyToMany: [], - }, - }); - - const postTable = createTable({ - name: 'Post', - fields: [ - { name: 'id', type: uuidType }, - { name: 'title', type: stringType }, - ], - relations: { - belongsTo: [ - { - fieldName: 'author', - isUnique: false, - referencesTable: 'User', - type: null, - keys: [], - }, - ], - hasOne: [], - hasMany: [], - manyToMany: [], - }, - }); - - const result = generateInputTypesFile(new Map(), new Set(), [userTable, postTable]); - - expect(result.content).toContain('export interface ConnectionResult'); - expect(result.content).toContain('export interface UserRelations'); - expect(result.content).toContain('posts?: ConnectionResult'); - expect(result.content).toContain('export type UserWithRelations = User & UserRelations;'); - expect(result.content).toContain('posts?: boolean | {'); - expect(result.content).toContain('orderBy?: PostsOrderBy[];'); - expect(result.content).toContain('author?: boolean | { select?: UserSelect };'); - }); -}); diff --git a/graphql/codegen/src/cli/codegen/orm/input-types-generator.ts b/graphql/codegen/src/cli/codegen/orm/input-types-generator.ts index 57d24afb6..05e1e8343 100644 --- a/graphql/codegen/src/cli/codegen/orm/input-types-generator.ts +++ b/graphql/codegen/src/cli/codegen/orm/input-types-generator.ts @@ -231,6 +231,61 @@ function addScalarFilterTypes(sourceFile: SourceFile): void { } } +// ============================================================================ +// Enum Types Collector +// ============================================================================ + +/** + * Check if a type is likely an enum (not a scalar and not ending with Input/Filter/etc) + */ +function isLikelyEnumType(typeName: string, typeRegistry: TypeRegistry): boolean { + const typeInfo = typeRegistry.get(typeName); + return typeInfo?.kind === 'ENUM'; +} + +/** + * Collect enum types used by table fields + */ +function collectEnumTypesFromTables( + tables: CleanTable[], + typeRegistry: TypeRegistry +): Set { + const enumTypes = new Set(); + + for (const table of tables) { + for (const field of table.fields) { + const fieldType = typeof field.type === 'string' ? field.type : field.type.gqlType; + // Check if this type is an enum in the registry + if (isLikelyEnumType(fieldType, typeRegistry)) { + enumTypes.add(fieldType); + } + } + } + + return enumTypes; +} + +/** + * Add enum types to source file + */ +function addEnumTypes( + sourceFile: SourceFile, + typeRegistry: TypeRegistry, + enumTypeNames: Set +): void { + if (enumTypeNames.size === 0) return; + + addSectionComment(sourceFile, 'Enum Types'); + + for (const typeName of Array.from(enumTypeNames).sort()) { + const typeInfo = typeRegistry.get(typeName); + if (!typeInfo || typeInfo.kind !== 'ENUM' || !typeInfo.enumValues) continue; + + const values = typeInfo.enumValues.map((v) => `'${v}'`).join(' | '); + sourceFile.addTypeAlias(createTypeAlias(typeName, values)); + } +} + // ============================================================================ // Entity Types Generator (AST-based) // ============================================================================ @@ -568,11 +623,13 @@ function buildOrderByUnion(table: CleanTable): string { /** * Add OrderBy types + * Uses inflection from table metadata for correct pluralization */ function addOrderByTypes(sourceFile: SourceFile, tables: CleanTable[]): void { addSectionComment(sourceFile, 'OrderBy Types'); for (const table of tables) { + // Use getOrderByTypeName which respects table.inflection.orderByType const enumName = getOrderByTypeName(table); sourceFile.addTypeAlias(createTypeAlias(enumName, buildOrderByUnion(table))); } @@ -718,44 +775,48 @@ export function collectInputTypeNames( return inputTypes; } +/** + * Build a set of exact table CRUD input type names to skip + * These are generated by addAllCrudInputTypes, so we don't need to regenerate them + */ +function buildTableCrudTypeNames(tables: CleanTable[]): Set { + const crudTypes = new Set(); + for (const table of tables) { + const { typeName } = getTableNames(table); + crudTypes.add(`Create${typeName}Input`); + crudTypes.add(`Update${typeName}Input`); + crudTypes.add(`Delete${typeName}Input`); + crudTypes.add(`${typeName}Filter`); + crudTypes.add(`${typeName}Patch`); + } + return crudTypes; +} + /** * Add custom input types from TypeRegistry */ function addCustomInputTypes( sourceFile: SourceFile, typeRegistry: TypeRegistry, - usedInputTypes: Set + usedInputTypes: Set, + tableCrudTypes?: Set ): void { addSectionComment(sourceFile, 'Custom Input Types (from schema)'); const generatedTypes = new Set(); const typesToGenerate = new Set(Array.from(usedInputTypes)); - // Filter out types we've already generated - const typesToRemove: string[] = []; - typesToGenerate.forEach((typeName) => { - if ( - typeName.endsWith('Filter') || - typeName.startsWith('Create') || - typeName.startsWith('Update') || - typeName.startsWith('Delete') - ) { - const isTableCrud = - /^(Create|Update|Delete)[A-Z][a-zA-Z]+Input$/.test(typeName) || - /^[A-Z][a-zA-Z]+Filter$/.test(typeName); - - if (isTableCrud) { - typesToRemove.push(typeName); + // Filter out types we've already generated (exact matches for table CRUD types only) + if (tableCrudTypes) { + for (const typeName of Array.from(typesToGenerate)) { + if (tableCrudTypes.has(typeName)) { + typesToGenerate.delete(typeName); } } - }); - typesToRemove.forEach((t) => typesToGenerate.delete(t)); - - let iterations = 0; - const maxIterations = 200; + } - while (typesToGenerate.size > 0 && iterations < maxIterations) { - iterations++; + // Process all types - no artificial limit + while (typesToGenerate.size > 0) { const typeNameResult = typesToGenerate.values().next(); if (typeNameResult.done) break; const typeName: string = typeNameResult.value; @@ -838,11 +899,8 @@ function addPayloadTypes( 'Time', 'JSON', 'BigInt', 'BigFloat', 'Cursor', 'Query', 'Mutation', ]); - let iterations = 0; - const maxIterations = 200; - - while (typesToGenerate.size > 0 && iterations < maxIterations) { - iterations++; + // Process all types - no artificial limit + while (typesToGenerate.size > 0) { const typeNameResult = typesToGenerate.values().next(); if (typeNameResult.done) break; const typeName: string = typeNameResult.value; @@ -923,7 +981,13 @@ export function generateInputTypesFile( // 1. Scalar filter types addScalarFilterTypes(sourceFile); - // 2. Entity and relation types (if tables provided) + // 2. Enum types used by table fields + if (tables && tables.length > 0) { + const enumTypes = collectEnumTypesFromTables(tables, typeRegistry); + addEnumTypes(sourceFile, typeRegistry, enumTypes); + } + + // 3. Entity and relation types (if tables provided) if (tables && tables.length > 0) { const tableByName = new Map(tables.map((table) => [table.name, table])); @@ -933,20 +997,21 @@ export function generateInputTypesFile( addEntityWithRelations(sourceFile, tables); addEntitySelectTypes(sourceFile, tables, tableByName); - // 3. Table filter types + // 4. Table filter types addTableFilterTypes(sourceFile, tables); - // 4. OrderBy types + // 5. OrderBy types addOrderByTypes(sourceFile, tables); - // 5. CRUD input types + // 6. CRUD input types addAllCrudInputTypes(sourceFile, tables); } - // 6. Custom input types from TypeRegistry - addCustomInputTypes(sourceFile, typeRegistry, usedInputTypes); + // 7. Custom input types from TypeRegistry + const tableCrudTypes = tables ? buildTableCrudTypeNames(tables) : undefined; + addCustomInputTypes(sourceFile, typeRegistry, usedInputTypes, tableCrudTypes); - // 7. Payload/return types for custom operations + // 8. Payload/return types for custom operations if (usedPayloadTypes && usedPayloadTypes.size > 0) { const alreadyGeneratedTypes = new Set(); if (tables) { diff --git a/graphql/codegen/src/cli/codegen/orm/model-generator.ts b/graphql/codegen/src/cli/codegen/orm/model-generator.ts index 077a680ea..72b13e4fd 100644 --- a/graphql/codegen/src/cli/codegen/orm/model-generator.ts +++ b/graphql/codegen/src/cli/codegen/orm/model-generator.ts @@ -23,7 +23,7 @@ import { createFileHeader, createImport, } from '../ts-ast'; -import { getTableNames, lcFirst } from '../utils'; +import { getTableNames, getOrderByTypeName, getFilterTypeName, lcFirst } from '../utils'; export interface GeneratedModelFile { fileName: string; @@ -42,14 +42,16 @@ export function generateModelFile( const project = createProject(); const { typeName, singularName, pluralName } = getTableNames(table); const modelName = `${typeName}Model`; - const fileName = `${lcFirst(typeName)}.ts`; + // Avoid "index.ts" which clashes with barrel file + const baseFileName = lcFirst(typeName); + const fileName = baseFileName === 'index' ? `${baseFileName}Model.ts` : `${baseFileName}.ts`; const entityLower = singularName; - // Type names for this entity + // Type names for this entity - use inflection from table metadata const selectTypeName = `${typeName}Select`; const relationTypeName = `${typeName}WithRelations`; - const whereTypeName = `${typeName}Filter`; - const orderByTypeName = `${typeName}sOrderBy`; // PostGraphile uses plural + const whereTypeName = getFilterTypeName(table); + const orderByTypeName = getOrderByTypeName(table); const createInputTypeName = `Create${typeName}Input`; const updateInputTypeName = `Update${typeName}Input`; const deleteInputTypeName = `Delete${typeName}Input`; diff --git a/graphql/codegen/src/cli/codegen/orm/select-types.test.ts b/graphql/codegen/src/cli/codegen/orm/select-types.test.ts deleted file mode 100644 index d671bc4af..000000000 --- a/graphql/codegen/src/cli/codegen/orm/select-types.test.ts +++ /dev/null @@ -1,56 +0,0 @@ -/** - * Type-level tests for select-types.ts - * - * These tests verify the compile-time type inference behavior. - * The TypeScript compiler validates these types during build. - * - * Note: Type-only tests using expectTypeOf have been removed as they - * are not compatible with Jest. The TypeScript compiler validates - * these types at compile time via the type assertions below. - */ - -import type { ConnectionResult, InferSelectResult } from './select-types'; - -type Profile = { - bio: string | null; -}; - -type Post = { - id: string; - title: string; -}; - -type User = { - id: string; - name?: string | null; - profile?: Profile | null; - posts?: ConnectionResult; -}; - -// Type assertions - these will fail at compile time if types are wrong -type UserSelect = { - id: true; - profile: { select: { bio: true } }; - posts: { select: { id: true } }; -}; - -type Selected = InferSelectResult; - -// Compile-time type check: verify the inferred type matches expected structure -const _typeCheck: Selected = {} as { - id: string; - profile: { bio: string | null } | null; - posts: ConnectionResult<{ id: string }>; -}; - -// Compile-time type check: fields set to false should be excluded -type SelectedWithExclusion = InferSelectResult; -const _excludedTypeCheck: SelectedWithExclusion = {} as { id: string }; - -// Dummy test to satisfy Jest -describe('InferSelectResult', () => { - it('type assertions compile correctly', () => { - // If this file compiles, the type tests pass - expect(true).toBe(true); - }); -}); diff --git a/graphql/codegen/src/cli/codegen/queries.ts b/graphql/codegen/src/cli/codegen/queries.ts index 5d3634a15..bc83baffc 100644 --- a/graphql/codegen/src/cli/codegen/queries.ts +++ b/graphql/codegen/src/cli/codegen/queries.ts @@ -37,6 +37,7 @@ import { getOrderByTypeName, getScalarFields, getScalarFilterType, + getPrimaryKeyInfo, toScreamingSnake, ucFirst, } from './utils'; @@ -86,7 +87,7 @@ export function generateListQueryHook( // Collect all filter types used by this table's fields const filterTypesUsed = new Set(); for (const field of scalarFields) { - const filterType = getScalarFilterType(field.type.gqlType); + const filterType = getScalarFilterType(field.type.gqlType, field.type.isArray); if (filterType) { filterTypesUsed.add(filterType); } @@ -137,14 +138,16 @@ export function generateListQueryHook( // Generate filter interface const fieldFilters = scalarFields .map((field) => { - const filterType = getScalarFilterType(field.type.gqlType); + const filterType = getScalarFilterType(field.type.gqlType, field.type.isArray); return filterType ? { fieldName: field.name, filterType } : null; }) .filter((f): f is { fieldName: string; filterType: string } => f !== null); - sourceFile.addInterface(createFilterInterface(filterTypeName, fieldFilters)); + // Note: Not exported to avoid conflicts with schema-types + sourceFile.addInterface(createFilterInterface(filterTypeName, fieldFilters, { isExported: false })); // Generate OrderBy type + // Note: Not exported to avoid conflicts with schema-types const orderByValues = [ ...scalarFields.flatMap((f) => [ `${toScreamingSnake(f.name)}_ASC`, @@ -155,7 +158,7 @@ export function generateListQueryHook( 'PRIMARY_KEY_DESC', ]; sourceFile.addTypeAlias( - createTypeAlias(orderByTypeName, createUnionType(orderByValues)) + createTypeAlias(orderByTypeName, createUnionType(orderByValues), { isExported: false }) ); // Variables interface @@ -364,6 +367,14 @@ export function generateSingleQueryHook( const hookName = getSingleQueryHookName(table); const queryName = getSingleRowQueryName(table); + // Get primary key info dynamically from table constraints + const pkFields = getPrimaryKeyInfo(table); + // For simplicity, use first PK field (most common case) + // Composite PKs would need more complex handling + const pkField = pkFields[0]; + const pkName = pkField.name; + const pkTsType = pkField.tsType; + // Generate GraphQL document via AST const queryAST = buildSingleQueryAST({ table }); const queryDocument = printGraphQL(queryAST); @@ -418,10 +429,10 @@ export function generateSingleQueryHook( sourceFile.addStatements('// Types'); sourceFile.addStatements('// ============================================================================\n'); - // Variables interface + // Variables interface - use dynamic PK field name and type sourceFile.addInterface( createInterface(`${ucFirst(singularName)}QueryVariables`, [ - { name: 'id', type: 'string' }, + { name: pkName, type: pkTsType }, ]) ); @@ -437,12 +448,12 @@ export function generateSingleQueryHook( sourceFile.addStatements('// Query Key'); sourceFile.addStatements('// ============================================================================\n'); - // Query key factory + // Query key factory - use dynamic PK field name and type sourceFile.addVariableStatement( createConst( `${queryName}QueryKey`, - `(id: string) => - ['${typeName.toLowerCase()}', 'detail', id] as const` + `(${pkName}: ${pkTsType}) => + ['${typeName.toLowerCase()}', 'detail', ${pkName}] as const` ) ); @@ -452,12 +463,12 @@ export function generateSingleQueryHook( sourceFile.addStatements('// Hook'); sourceFile.addStatements('// ============================================================================\n'); - // Hook function + // Hook function - use dynamic PK field name and type sourceFile.addFunction({ name: hookName, isExported: true, parameters: [ - { name: 'id', type: 'string' }, + { name: pkName, type: pkTsType }, { name: 'options', type: `Omit, 'queryKey' | 'queryFn'>`, @@ -465,24 +476,24 @@ export function generateSingleQueryHook( }, ], statements: `return useQuery({ - queryKey: ${queryName}QueryKey(id), + queryKey: ${queryName}QueryKey(${pkName}), queryFn: () => execute<${ucFirst(singularName)}QueryResult, ${ucFirst(singularName)}QueryVariables>( ${queryName}QueryDocument, - { id } + { ${pkName} } ), - enabled: !!id && (options?.enabled !== false), + enabled: !!${pkName} && (options?.enabled !== false), ...options, });`, docs: [ { - description: `Query hook for fetching a single ${typeName} by ID + description: `Query hook for fetching a single ${typeName} by primary key @example \`\`\`tsx -const { data, isLoading } = ${hookName}('uuid-here'); +const { data, isLoading } = ${hookName}(${pkTsType === 'string' ? "'value-here'" : '123'}); if (data?.${queryName}) { - console.log(data.${queryName}.id); + console.log(data.${queryName}.${pkName}); } \`\`\``, }, @@ -495,13 +506,13 @@ if (data?.${queryName}) { sourceFile.addStatements('// Standalone Functions (non-React)'); sourceFile.addStatements('// ============================================================================\n'); - // Fetch function (standalone, no React) + // Fetch function (standalone, no React) - use dynamic PK sourceFile.addFunction({ name: `fetch${ucFirst(singularName)}Query`, isExported: true, isAsync: true, parameters: [ - { name: 'id', type: 'string' }, + { name: pkName, type: pkTsType }, { name: 'options', type: 'ExecuteOptions', @@ -511,22 +522,22 @@ if (data?.${queryName}) { returnType: `Promise<${ucFirst(singularName)}QueryResult>`, statements: `return execute<${ucFirst(singularName)}QueryResult, ${ucFirst(singularName)}QueryVariables>( ${queryName}QueryDocument, - { id }, + { ${pkName} }, options );`, docs: [ { - description: `Fetch a single ${typeName} by ID without React hooks + description: `Fetch a single ${typeName} by primary key without React hooks @example \`\`\`ts -const data = await fetch${ucFirst(singularName)}Query('uuid-here'); +const data = await fetch${ucFirst(singularName)}Query(${pkTsType === 'string' ? "'value-here'" : '123'}); \`\`\``, }, ], }); - // Prefetch function (for SSR/QueryClient) - only if React Query is enabled + // Prefetch function (for SSR/QueryClient) - only if React Query is enabled, use dynamic PK if (reactQueryEnabled) { sourceFile.addFunction({ name: `prefetch${ucFirst(singularName)}Query`, @@ -534,7 +545,7 @@ const data = await fetch${ucFirst(singularName)}Query('uuid-here'); isAsync: true, parameters: [ { name: 'queryClient', type: 'QueryClient' }, - { name: 'id', type: 'string' }, + { name: pkName, type: pkTsType }, { name: 'options', type: 'ExecuteOptions', @@ -543,10 +554,10 @@ const data = await fetch${ucFirst(singularName)}Query('uuid-here'); ], returnType: 'Promise', statements: `await queryClient.prefetchQuery({ - queryKey: ${queryName}QueryKey(id), + queryKey: ${queryName}QueryKey(${pkName}), queryFn: () => execute<${ucFirst(singularName)}QueryResult, ${ucFirst(singularName)}QueryVariables>( ${queryName}QueryDocument, - { id }, + { ${pkName} }, options ), });`, @@ -556,7 +567,7 @@ const data = await fetch${ucFirst(singularName)}Query('uuid-here'); @example \`\`\`ts -await prefetch${ucFirst(singularName)}Query(queryClient, 'uuid-here'); +await prefetch${ucFirst(singularName)}Query(queryClient, ${pkTsType === 'string' ? "'value-here'" : '123'}); \`\`\``, }, ], diff --git a/graphql/codegen/src/cli/codegen/scalars.ts b/graphql/codegen/src/cli/codegen/scalars.ts index e22ae5774..36f59bed9 100644 --- a/graphql/codegen/src/cli/codegen/scalars.ts +++ b/graphql/codegen/src/cli/codegen/scalars.ts @@ -37,6 +37,9 @@ export const SCALAR_TS_MAP: Record = { MacAddr: 'string', TsVector: 'string', TsQuery: 'string', + + // File upload + Upload: 'File', }; export const SCALAR_FILTER_MAP: Record = { @@ -60,24 +63,27 @@ export const SCALAR_FILTER_MAP: Record = { export const SCALAR_NAMES = new Set(Object.keys(SCALAR_TS_MAP)); -export interface ScalarToTsOptions { - unknownScalar?: 'unknown' | 'name'; - overrides?: Record; -} +/** Scalars that have list filter variants (e.g., StringListFilter) */ +const LIST_FILTER_SCALARS = new Set(['String', 'Int', 'UUID']); + +/** All base filter type names - skip these in schema-types.ts to avoid duplicates */ +export const BASE_FILTER_TYPE_NAMES = new Set([ + ...new Set(Object.values(SCALAR_FILTER_MAP)), + ...Array.from(LIST_FILTER_SCALARS).map((s) => `${s}ListFilter`), +]); export function scalarToTsType( scalarName: string, - options: ScalarToTsOptions = {} + options: { unknownScalar?: 'unknown' | 'name'; overrides?: Record } = {} ): string { - const override = options.overrides?.[scalarName]; - if (override) return override; - - const mapped = SCALAR_TS_MAP[scalarName]; - if (mapped) return mapped; - - return options.unknownScalar === 'unknown' ? 'unknown' : scalarName; + return options.overrides?.[scalarName] ?? SCALAR_TS_MAP[scalarName] ?? (options.unknownScalar === 'unknown' ? 'unknown' : scalarName); } -export function scalarToFilterType(scalarName: string): string | null { +/** Get the filter type for a scalar (handles both scalar and array types) */ +export function scalarToFilterType(scalarName: string, isArray = false): string | null { + const baseName = scalarName === 'ID' ? 'UUID' : scalarName; + if (isArray) { + return LIST_FILTER_SCALARS.has(baseName) ? `${baseName}ListFilter` : null; + } return SCALAR_FILTER_MAP[scalarName] ?? null; } diff --git a/graphql/codegen/src/cli/codegen/schema-types-generator.ts b/graphql/codegen/src/cli/codegen/schema-types-generator.ts new file mode 100644 index 000000000..d1fff0763 --- /dev/null +++ b/graphql/codegen/src/cli/codegen/schema-types-generator.ts @@ -0,0 +1,503 @@ +/** + * Schema types generator for React Query hooks (non-ORM mode) + * + * Generates TypeScript interfaces for: + * 1. INPUT_OBJECT types (e.g., BootstrapUserInput, LoginInput) + * 2. Payload OBJECT types (e.g., BootstrapUserPayload, LoginPayload) + * 3. ENUM types (e.g., FieldCategory, TableCategory) + * + * These types are referenced by custom mutation/query hooks but not generated + * elsewhere in non-ORM mode. + * + * Uses ts-morph for robust AST-based code generation. + */ +import type { SourceFile } from 'ts-morph'; +import type { TypeRegistry, CleanArgument, ResolvedType } from '../../types/schema'; +import { + createProject, + createSourceFile, + getMinimalFormattedOutput, + createFileHeader, + createInterface, + createTypeAlias, + addSectionComment, + type InterfaceProperty, +} from './ts-ast'; +import { getTypeBaseName } from './type-resolver'; +import { scalarToTsType, SCALAR_NAMES, BASE_FILTER_TYPE_NAMES } from './scalars'; + +export interface GeneratedSchemaTypesFile { + fileName: string; + content: string; + /** List of enum type names that were generated */ + generatedEnums: string[]; + /** List of table entity types that are referenced */ + referencedTableTypes: string[]; +} + +export interface GenerateSchemaTypesOptions { + /** The TypeRegistry containing all GraphQL types */ + typeRegistry: TypeRegistry; + /** Type names that already exist in types.ts (table entity types) */ + tableTypeNames: Set; +} + +// ============================================================================ +// Constants +// ============================================================================ + +/** + * Types that should not be generated (scalars, built-ins, types generated elsewhere) + */ +const SKIP_TYPES = new Set([ + ...SCALAR_NAMES, + // GraphQL built-ins + 'Query', + 'Mutation', + 'Subscription', + '__Schema', + '__Type', + '__Field', + '__InputValue', + '__EnumValue', + '__Directive', + // Note: PageInfo and Cursor are NOT skipped - they're needed by Connection types + // Base filter types (generated in types.ts via filters.ts) + ...BASE_FILTER_TYPE_NAMES, +]); + +/** + * Type name patterns to skip (regex patterns) + * + * Note: We intentionally DO NOT skip Connection, Edge, Filter, or Patch types + * because they may be referenced by custom operations or payload types. + * Only skip Condition and OrderBy which are typically not needed. + */ +const SKIP_TYPE_PATTERNS = [ + /Condition$/, // e.g., UserCondition (filter conditions are separate) + /OrderBy$/, // e.g., UsersOrderBy (ordering is handled separately) +]; + +// ============================================================================ +// Type Conversion Utilities +// ============================================================================ + +/** + * Convert a CleanTypeRef to TypeScript type string + */ +function typeRefToTs(typeRef: CleanArgument['type']): string { + if (typeRef.kind === 'NON_NULL') { + if (typeRef.ofType) { + return typeRefToTs(typeRef.ofType as CleanArgument['type']); + } + return typeRef.name ?? 'unknown'; + } + + if (typeRef.kind === 'LIST') { + if (typeRef.ofType) { + return `${typeRefToTs(typeRef.ofType as CleanArgument['type'])}[]`; + } + return 'unknown[]'; + } + + // Scalar or named type + const name = typeRef.name ?? 'unknown'; + return scalarToTsType(name, { unknownScalar: 'name' }); +} + +/** + * Check if a type is required (NON_NULL) + */ +function isRequired(typeRef: CleanArgument['type']): boolean { + return typeRef.kind === 'NON_NULL'; +} + +/** + * Check if a type should be skipped + */ +function shouldSkipType( + typeName: string, + tableTypeNames: Set +): boolean { + // Skip scalars and built-ins + if (SKIP_TYPES.has(typeName)) return true; + + // Skip table entity types (already in types.ts) + if (tableTypeNames.has(typeName)) return true; + + // Skip types matching patterns + for (const pattern of SKIP_TYPE_PATTERNS) { + if (pattern.test(typeName)) return true; + } + + // Skip table-specific types that would conflict with inline types in table-based hooks. + // Note: Patch and CreateInput are now NOT exported from hooks (isExported: false), + // so we only skip Filter types here. + // The Filter and OrderBy types are generated inline (non-exported) by table query hooks, + // but schema-types should still generate them for custom operations that need them. + // Actually, we don't skip any table-based types now since hooks don't export them. + + return false; +} + +// ============================================================================ +// ENUM Types Generator +// ============================================================================ + +/** + * Add ENUM types to source file + */ +function addEnumTypes( + sourceFile: SourceFile, + typeRegistry: TypeRegistry, + tableTypeNames: Set +): Set { + const generatedTypes = new Set(); + + addSectionComment(sourceFile, 'Enum Types'); + + for (const [typeName, typeInfo] of typeRegistry) { + if (typeInfo.kind !== 'ENUM') continue; + if (shouldSkipType(typeName, tableTypeNames)) continue; + if (!typeInfo.enumValues || typeInfo.enumValues.length === 0) continue; + + const values = typeInfo.enumValues.map((v) => `'${v}'`).join(' | '); + sourceFile.addTypeAlias(createTypeAlias(typeName, values)); + generatedTypes.add(typeName); + } + + return generatedTypes; +} + +// ============================================================================ +// INPUT_OBJECT Types Generator +// ============================================================================ + +/** + * Add INPUT_OBJECT types to source file + * Uses iteration to handle nested input types + */ +function addInputObjectTypes( + sourceFile: SourceFile, + typeRegistry: TypeRegistry, + tableTypeNames: Set, + alreadyGenerated: Set +): Set { + const generatedTypes = new Set(alreadyGenerated); + const typesToGenerate = new Set(); + + // Collect all INPUT_OBJECT types + for (const [typeName, typeInfo] of typeRegistry) { + if (typeInfo.kind !== 'INPUT_OBJECT') continue; + if (shouldSkipType(typeName, tableTypeNames)) continue; + if (generatedTypes.has(typeName)) continue; + typesToGenerate.add(typeName); + } + + if (typesToGenerate.size === 0) return generatedTypes; + + addSectionComment(sourceFile, 'Input Object Types'); + + // Process all types - no artificial limit + while (typesToGenerate.size > 0) { + const typeNameResult = typesToGenerate.values().next(); + if (typeNameResult.done) break; + const typeName: string = typeNameResult.value; + typesToGenerate.delete(typeName); + + if (generatedTypes.has(typeName)) continue; + + const typeInfo = typeRegistry.get(typeName); + if (!typeInfo || typeInfo.kind !== 'INPUT_OBJECT') continue; + + generatedTypes.add(typeName); + + if (typeInfo.inputFields && typeInfo.inputFields.length > 0) { + const properties: InterfaceProperty[] = []; + + for (const field of typeInfo.inputFields) { + const optional = !isRequired(field.type); + const tsType = typeRefToTs(field.type); + properties.push({ + name: field.name, + type: tsType, + optional, + docs: field.description ? [field.description] : undefined, + }); + + // Follow nested Input types + const baseType = getTypeBaseName(field.type); + if ( + baseType && + !generatedTypes.has(baseType) && + !shouldSkipType(baseType, tableTypeNames) + ) { + const nestedType = typeRegistry.get(baseType); + if (nestedType?.kind === 'INPUT_OBJECT') { + typesToGenerate.add(baseType); + } + } + } + + sourceFile.addInterface(createInterface(typeName, properties)); + } else { + // Empty input object + sourceFile.addInterface(createInterface(typeName, [])); + } + } + + return generatedTypes; +} + +// ============================================================================ +// UNION Types Generator +// ============================================================================ + +/** + * Add UNION types to source file + */ +function addUnionTypes( + sourceFile: SourceFile, + typeRegistry: TypeRegistry, + tableTypeNames: Set, + alreadyGenerated: Set +): Set { + const generatedTypes = new Set(alreadyGenerated); + const unionTypesToGenerate = new Set(); + + // Collect all UNION types + for (const [typeName, typeInfo] of typeRegistry) { + if (typeInfo.kind !== 'UNION') continue; + if (shouldSkipType(typeName, tableTypeNames)) continue; + if (generatedTypes.has(typeName)) continue; + unionTypesToGenerate.add(typeName); + } + + if (unionTypesToGenerate.size === 0) return generatedTypes; + + addSectionComment(sourceFile, 'Union Types'); + + for (const typeName of unionTypesToGenerate) { + const typeInfo = typeRegistry.get(typeName); + if (!typeInfo || typeInfo.kind !== 'UNION') continue; + if (!typeInfo.possibleTypes || typeInfo.possibleTypes.length === 0) continue; + + // Generate union type as TypeScript union + const unionMembers = typeInfo.possibleTypes.join(' | '); + sourceFile.addTypeAlias(createTypeAlias(typeName, unionMembers)); + generatedTypes.add(typeName); + } + + return generatedTypes; +} + +// ============================================================================ +// Payload/Return OBJECT Types Generator +// ============================================================================ + +export interface PayloadTypesResult { + generatedTypes: Set; + referencedTableTypes: Set; +} + +/** + * Collect return types from Query and Mutation root types + * This dynamically discovers what OBJECT types need to be generated + * based on actual schema structure, not pattern matching + */ +function collectReturnTypesFromRootTypes( + typeRegistry: TypeRegistry, + tableTypeNames: Set +): Set { + const returnTypes = new Set(); + + // Get Query and Mutation root types + const queryType = typeRegistry.get('Query'); + const mutationType = typeRegistry.get('Mutation'); + + const processFields = (fields: ResolvedType['fields']) => { + if (!fields) return; + for (const field of fields) { + const baseType = getTypeBaseName(field.type); + if (baseType && !shouldSkipType(baseType, tableTypeNames)) { + const typeInfo = typeRegistry.get(baseType); + if (typeInfo?.kind === 'OBJECT') { + returnTypes.add(baseType); + } + } + } + }; + + if (queryType?.fields) processFields(queryType.fields); + if (mutationType?.fields) processFields(mutationType.fields); + + return returnTypes; +} + +/** + * Add Payload OBJECT types to source file + * These are return types from mutations (e.g., LoginPayload, BootstrapUserPayload) + * + * Also tracks which table entity types are referenced so they can be imported. + * + * Uses dynamic type discovery from Query/Mutation return types instead of pattern matching. + */ +function addPayloadObjectTypes( + sourceFile: SourceFile, + typeRegistry: TypeRegistry, + tableTypeNames: Set, + alreadyGenerated: Set +): PayloadTypesResult { + const generatedTypes = new Set(alreadyGenerated); + const referencedTableTypes = new Set(); + + // Dynamically collect return types from Query and Mutation + const typesToGenerate = collectReturnTypesFromRootTypes(typeRegistry, tableTypeNames); + + // Filter out already generated types + for (const typeName of Array.from(typesToGenerate)) { + if (generatedTypes.has(typeName)) { + typesToGenerate.delete(typeName); + } + } + + if (typesToGenerate.size === 0) { + return { generatedTypes, referencedTableTypes }; + } + + addSectionComment(sourceFile, 'Payload/Return Object Types'); + + // Process all types - no artificial limit + while (typesToGenerate.size > 0) { + const typeNameResult = typesToGenerate.values().next(); + if (typeNameResult.done) break; + const typeName: string = typeNameResult.value; + typesToGenerate.delete(typeName); + + if (generatedTypes.has(typeName)) continue; + + const typeInfo = typeRegistry.get(typeName); + if (!typeInfo || typeInfo.kind !== 'OBJECT') continue; + + generatedTypes.add(typeName); + + if (typeInfo.fields && typeInfo.fields.length > 0) { + const properties: InterfaceProperty[] = []; + + for (const field of typeInfo.fields) { + const baseType = getTypeBaseName(field.type); + + // Skip Query and Mutation fields + if (baseType === 'Query' || baseType === 'Mutation') continue; + + const tsType = typeRefToTs(field.type); + const isNullable = !isRequired(field.type); + + properties.push({ + name: field.name, + type: isNullable ? `${tsType} | null` : tsType, + optional: isNullable, + docs: field.description ? [field.description] : undefined, + }); + + // Track table entity types that are referenced + if (baseType && tableTypeNames.has(baseType)) { + referencedTableTypes.add(baseType); + } + + // Follow nested OBJECT types that aren't table types + if ( + baseType && + !generatedTypes.has(baseType) && + !shouldSkipType(baseType, tableTypeNames) + ) { + const nestedType = typeRegistry.get(baseType); + if (nestedType?.kind === 'OBJECT') { + typesToGenerate.add(baseType); + } + } + } + + sourceFile.addInterface(createInterface(typeName, properties)); + } else { + // Empty payload object + sourceFile.addInterface(createInterface(typeName, [])); + } + } + + return { generatedTypes, referencedTableTypes }; +} + +// ============================================================================ +// Main Generator +// ============================================================================ + +/** + * Generate comprehensive schema-types.ts file using ts-morph AST + * + * This generates all Input/Payload/Enum types from the TypeRegistry + * that are needed by custom mutation/query hooks. + */ +export function generateSchemaTypesFile( + options: GenerateSchemaTypesOptions +): GeneratedSchemaTypesFile { + const { typeRegistry, tableTypeNames } = options; + + const project = createProject(); + const sourceFile = createSourceFile(project, 'schema-types.ts'); + + // Add file header + sourceFile.insertText( + 0, + createFileHeader('GraphQL schema types for custom operations') + '\n' + ); + + // Track all generated types + let generatedTypes = new Set(); + + // 1. Generate ENUM types + const enumTypes = addEnumTypes(sourceFile, typeRegistry, tableTypeNames); + generatedTypes = new Set([...generatedTypes, ...enumTypes]); + + // 2. Generate UNION types + const unionTypes = addUnionTypes(sourceFile, typeRegistry, tableTypeNames, generatedTypes); + generatedTypes = new Set([...generatedTypes, ...unionTypes]); + + // 3. Generate INPUT_OBJECT types + const inputTypes = addInputObjectTypes( + sourceFile, + typeRegistry, + tableTypeNames, + generatedTypes + ); + generatedTypes = new Set([...generatedTypes, ...inputTypes]); + + // 4. Generate Payload OBJECT types + const payloadResult = addPayloadObjectTypes( + sourceFile, + typeRegistry, + tableTypeNames, + generatedTypes + ); + + // 5. Add imports from types.ts (table entity types + base filter types) + const referencedTableTypes = Array.from(payloadResult.referencedTableTypes).sort(); + // Always import base filter types since generated Filter interfaces reference them + const baseFilterImports = Array.from(BASE_FILTER_TYPE_NAMES).sort(); + const allTypesImports = [...referencedTableTypes, ...baseFilterImports]; + + if (allTypesImports.length > 0) { + // Insert import after the file header comment + const importStatement = `import type { ${allTypesImports.join(', ')} } from './types';\n\n`; + // Find position after header (after first */ + newlines) + const headerEndIndex = sourceFile.getFullText().indexOf('*/') + 3; + sourceFile.insertText(headerEndIndex, '\n' + importStatement); + } + + return { + fileName: 'schema-types.ts', + content: getMinimalFormattedOutput(sourceFile), + generatedEnums: Array.from(enumTypes).sort(), + referencedTableTypes, + }; +} diff --git a/graphql/codegen/src/cli/codegen/ts-ast.ts b/graphql/codegen/src/cli/codegen/ts-ast.ts index 3c72c398b..358f4447d 100644 --- a/graphql/codegen/src/cli/codegen/ts-ast.ts +++ b/graphql/codegen/src/cli/codegen/ts-ast.ts @@ -215,7 +215,8 @@ export function createInterface( */ export function createFilterInterface( name: string, - fieldFilters: Array<{ fieldName: string; filterType: string }> + fieldFilters: Array<{ fieldName: string; filterType: string }>, + options?: { isExported?: boolean } ): InterfaceDeclarationStructure { const properties: InterfaceProperty[] = [ ...fieldFilters.map((f) => ({ @@ -228,7 +229,7 @@ export function createFilterInterface( { name: 'not', type: name, optional: true, docs: ['Logical NOT'] }, ]; - return createInterface(name, properties); + return createInterface(name, properties, { isExported: options?.isExported ?? true }); } // ============================================================================ diff --git a/graphql/codegen/src/cli/codegen/type-resolver.ts b/graphql/codegen/src/cli/codegen/type-resolver.ts index 9b514fa2b..cc8a213c1 100644 --- a/graphql/codegen/src/cli/codegen/type-resolver.ts +++ b/graphql/codegen/src/cli/codegen/type-resolver.ts @@ -1,6 +1,6 @@ /** * Type Resolver - Convert GraphQL types to TypeScript - * + * * Utilities for converting CleanTypeRef and other GraphQL types * into TypeScript type strings and interface definitions. */ @@ -10,7 +10,88 @@ import type { CleanObjectField, } from '../../types/schema'; import type { InterfaceProperty } from './ts-ast'; -import { scalarToTsType as resolveScalarToTs } from './scalars'; +import { scalarToTsType as resolveScalarToTs, SCALAR_NAMES } from './scalars'; + +// ============================================================================ +// Type Tracker for Collecting Referenced Types +// ============================================================================ + +/** + * Types that should not be tracked (scalars, built-ins, internal types) + */ +const SKIP_TYPE_TRACKING = new Set([ + ...SCALAR_NAMES, + // GraphQL built-ins + 'Query', + 'Mutation', + 'Subscription', + '__Schema', + '__Type', + '__Field', + '__InputValue', + '__EnumValue', + '__Directive', + // Connection types (handled separately) + 'PageInfo', +]); + +/** + * Interface for tracking referenced types during code generation + */ +export interface TypeTracker { + /** Set of type names that have been referenced */ + referencedTypes: Set; + /** Track a type reference */ + track(typeName: string): void; + /** Get importable types from schema-types.ts (Input/Payload/Enum types) */ + getImportableTypes(): string[]; + /** Get importable types from types.ts (table entity types) */ + getTableTypes(): string[]; + /** Reset the tracker */ + reset(): void; +} + +/** + * Options for creating a TypeTracker + */ +export interface TypeTrackerOptions { + /** Table entity type names that should be imported from types.ts */ + tableTypeNames?: Set; +} + +/** + * Create a new TypeTracker instance + * + * @param options - Optional configuration for the tracker + */ +export function createTypeTracker(options?: TypeTrackerOptions): TypeTracker { + const referencedTypes = new Set(); + const tableTypeNames = options?.tableTypeNames ?? new Set(); + + return { + referencedTypes, + track(typeName: string) { + if (typeName && !SKIP_TYPE_TRACKING.has(typeName)) { + referencedTypes.add(typeName); + } + }, + getImportableTypes() { + // Return schema types (not table entity types) + return Array.from(referencedTypes) + .filter((name) => !tableTypeNames.has(name)) + .sort(); + }, + getTableTypes() { + // Return table entity types only + return Array.from(referencedTypes) + .filter((name) => tableTypeNames.has(name)) + .sort(); + }, + reset() { + referencedTypes.clear(); + }, + }; +} // ============================================================================ // GraphQL to TypeScript Type Mapping @@ -30,20 +111,23 @@ export function scalarToTsType(scalarName: string): string { /** * Convert a CleanTypeRef to a TypeScript type string * Handles nested LIST and NON_NULL wrappers + * + * @param typeRef - The GraphQL type reference + * @param tracker - Optional TypeTracker to collect referenced types */ -export function typeRefToTsType(typeRef: CleanTypeRef): string { +export function typeRefToTsType(typeRef: CleanTypeRef, tracker?: TypeTracker): string { switch (typeRef.kind) { case 'NON_NULL': // Non-null wrapper - unwrap and return the inner type if (typeRef.ofType) { - return typeRefToTsType(typeRef.ofType); + return typeRefToTsType(typeRef.ofType, tracker); } return 'unknown'; case 'LIST': // List wrapper - wrap inner type in array if (typeRef.ofType) { - const innerType = typeRefToTsType(typeRef.ofType); + const innerType = typeRefToTsType(typeRef.ofType, tracker); return `${innerType}[]`; } return 'unknown[]'; @@ -52,14 +136,20 @@ export function typeRefToTsType(typeRef: CleanTypeRef): string { // Scalar type - map to TS type return scalarToTsType(typeRef.name ?? 'unknown'); - case 'ENUM': - // Enum type - use the GraphQL enum name - return typeRef.name ?? 'string'; + case 'ENUM': { + // Enum type - use the GraphQL enum name and track it + const typeName = typeRef.name ?? 'string'; + tracker?.track(typeName); + return typeName; + } case 'OBJECT': - case 'INPUT_OBJECT': - // Object types - use the GraphQL type name - return typeRef.name ?? 'unknown'; + case 'INPUT_OBJECT': { + // Object types - use the GraphQL type name and track it + const typeName = typeRef.name ?? 'unknown'; + tracker?.track(typeName); + return typeName; + } default: return 'unknown'; @@ -69,9 +159,12 @@ export function typeRefToTsType(typeRef: CleanTypeRef): string { /** * Convert a CleanTypeRef to a nullable TypeScript type string * (for optional fields that can be null) + * + * @param typeRef - The GraphQL type reference + * @param tracker - Optional TypeTracker to collect referenced types */ -export function typeRefToNullableTsType(typeRef: CleanTypeRef): string { - const baseType = typeRefToTsType(typeRef); +export function typeRefToNullableTsType(typeRef: CleanTypeRef, tracker?: TypeTracker): string { + const baseType = typeRefToTsType(typeRef, tracker); // If the outer type is NON_NULL, it's required if (typeRef.kind === 'NON_NULL') { @@ -127,11 +220,14 @@ export function getBaseTypeKind(typeRef: CleanTypeRef): CleanTypeRef['kind'] { /** * Convert CleanArgument to InterfaceProperty for ts-morph + * + * @param arg - The GraphQL argument + * @param tracker - Optional TypeTracker to collect referenced types */ -export function argumentToInterfaceProperty(arg: CleanArgument): InterfaceProperty { +export function argumentToInterfaceProperty(arg: CleanArgument, tracker?: TypeTracker): InterfaceProperty { return { name: arg.name, - type: typeRefToTsType(arg.type), + type: typeRefToTsType(arg.type, tracker), optional: !isTypeRequired(arg.type), docs: arg.description ? [arg.description] : undefined, }; @@ -139,11 +235,14 @@ export function argumentToInterfaceProperty(arg: CleanArgument): InterfaceProper /** * Convert CleanObjectField to InterfaceProperty for ts-morph + * + * @param field - The GraphQL object field + * @param tracker - Optional TypeTracker to collect referenced types */ -export function fieldToInterfaceProperty(field: CleanObjectField): InterfaceProperty { +export function fieldToInterfaceProperty(field: CleanObjectField, tracker?: TypeTracker): InterfaceProperty { return { name: field.name, - type: typeRefToNullableTsType(field.type), + type: typeRefToNullableTsType(field.type, tracker), optional: false, // Fields are always present, just potentially null docs: field.description ? [field.description] : undefined, }; @@ -151,16 +250,22 @@ export function fieldToInterfaceProperty(field: CleanObjectField): InterfaceProp /** * Convert an array of CleanArguments to InterfaceProperty array + * + * @param args - The GraphQL arguments + * @param tracker - Optional TypeTracker to collect referenced types */ -export function argumentsToInterfaceProperties(args: CleanArgument[]): InterfaceProperty[] { - return args.map(argumentToInterfaceProperty); +export function argumentsToInterfaceProperties(args: CleanArgument[], tracker?: TypeTracker): InterfaceProperty[] { + return args.map((arg) => argumentToInterfaceProperty(arg, tracker)); } /** * Convert an array of CleanObjectFields to InterfaceProperty array + * + * @param fields - The GraphQL object fields + * @param tracker - Optional TypeTracker to collect referenced types */ -export function fieldsToInterfaceProperties(fields: CleanObjectField[]): InterfaceProperty[] { - return fields.map(fieldToInterfaceProperty); +export function fieldsToInterfaceProperties(fields: CleanObjectField[], tracker?: TypeTracker): InterfaceProperty[] { + return fields.map((field) => fieldToInterfaceProperty(field, tracker)); } // ============================================================================ diff --git a/graphql/codegen/src/cli/codegen/types.ts b/graphql/codegen/src/cli/codegen/types.ts index 3931f02c0..cec801dd6 100644 --- a/graphql/codegen/src/cli/codegen/types.ts +++ b/graphql/codegen/src/cli/codegen/types.ts @@ -7,23 +7,195 @@ import { createSourceFile, getFormattedOutput, createFileHeader, + createImport, createInterface, type InterfaceProperty, } from './ts-ast'; import { getScalarFields, fieldTypeToTs } from './utils'; -import { generateBaseFilterTypes } from './filters'; + +// ============================================================================ +// Filter Types Configuration +// ============================================================================ + +type FilterOps = 'equality' | 'distinct' | 'inArray' | 'comparison' | 'string' | 'json' | 'inet' | 'fulltext' | 'listArray'; + +/** All filter type configurations - scalar and list filters */ +const FILTER_CONFIGS: Array<{ name: string; tsType: string; operators: FilterOps[] }> = [ + // Scalar filters + { name: 'StringFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray', 'comparison', 'string'] }, + { name: 'IntFilter', tsType: 'number', operators: ['equality', 'distinct', 'inArray', 'comparison'] }, + { name: 'FloatFilter', tsType: 'number', operators: ['equality', 'distinct', 'inArray', 'comparison'] }, + { name: 'BooleanFilter', tsType: 'boolean', operators: ['equality'] }, + { name: 'UUIDFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray'] }, + { name: 'DatetimeFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray', 'comparison'] }, + { name: 'DateFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray', 'comparison'] }, + { name: 'JSONFilter', tsType: 'Record', operators: ['equality', 'distinct', 'json'] }, + { name: 'BigIntFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray', 'comparison'] }, + { name: 'BigFloatFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray', 'comparison'] }, + { name: 'BitStringFilter', tsType: 'string', operators: ['equality'] }, + { name: 'InternetAddressFilter', tsType: 'string', operators: ['equality', 'distinct', 'inArray', 'comparison', 'inet'] }, + { name: 'FullTextFilter', tsType: 'string', operators: ['fulltext'] }, + // List filters + { name: 'StringListFilter', tsType: 'string[]', operators: ['equality', 'distinct', 'comparison', 'listArray'] }, + { name: 'IntListFilter', tsType: 'number[]', operators: ['equality', 'distinct', 'comparison', 'listArray'] }, + { name: 'UUIDListFilter', tsType: 'string[]', operators: ['equality', 'distinct', 'comparison', 'listArray'] }, +]; + +/** Build filter properties based on operator sets */ +function buildFilterProperties(tsType: string, operators: FilterOps[]): InterfaceProperty[] { + const props: InterfaceProperty[] = []; + + // Equality operators (isNull, equalTo, notEqualTo) + if (operators.includes('equality')) { + props.push( + { name: 'isNull', type: 'boolean', optional: true }, + { name: 'equalTo', type: tsType, optional: true }, + { name: 'notEqualTo', type: tsType, optional: true }, + ); + } + + // Distinct operators + if (operators.includes('distinct')) { + props.push( + { name: 'distinctFrom', type: tsType, optional: true }, + { name: 'notDistinctFrom', type: tsType, optional: true }, + ); + } + + // In array operators + if (operators.includes('inArray')) { + props.push( + { name: 'in', type: `${tsType}[]`, optional: true }, + { name: 'notIn', type: `${tsType}[]`, optional: true }, + ); + } + + // Comparison operators (lt, lte, gt, gte) + if (operators.includes('comparison')) { + props.push( + { name: 'lessThan', type: tsType, optional: true }, + { name: 'lessThanOrEqualTo', type: tsType, optional: true }, + { name: 'greaterThan', type: tsType, optional: true }, + { name: 'greaterThanOrEqualTo', type: tsType, optional: true }, + ); + } + + // String-specific operators + if (operators.includes('string')) { + props.push( + { name: 'includes', type: 'string', optional: true }, + { name: 'notIncludes', type: 'string', optional: true }, + { name: 'includesInsensitive', type: 'string', optional: true }, + { name: 'notIncludesInsensitive', type: 'string', optional: true }, + { name: 'startsWith', type: 'string', optional: true }, + { name: 'notStartsWith', type: 'string', optional: true }, + { name: 'startsWithInsensitive', type: 'string', optional: true }, + { name: 'notStartsWithInsensitive', type: 'string', optional: true }, + { name: 'endsWith', type: 'string', optional: true }, + { name: 'notEndsWith', type: 'string', optional: true }, + { name: 'endsWithInsensitive', type: 'string', optional: true }, + { name: 'notEndsWithInsensitive', type: 'string', optional: true }, + { name: 'like', type: 'string', optional: true }, + { name: 'notLike', type: 'string', optional: true }, + { name: 'likeInsensitive', type: 'string', optional: true }, + { name: 'notLikeInsensitive', type: 'string', optional: true }, + ); + } + + // JSON-specific operators + if (operators.includes('json')) { + props.push( + { name: 'contains', type: 'unknown', optional: true }, + { name: 'containedBy', type: 'unknown', optional: true }, + { name: 'containsKey', type: 'string', optional: true }, + { name: 'containsAllKeys', type: 'string[]', optional: true }, + { name: 'containsAnyKeys', type: 'string[]', optional: true }, + ); + } + + // Internet address operators + if (operators.includes('inet')) { + props.push( + { name: 'contains', type: 'string', optional: true }, + { name: 'containedBy', type: 'string', optional: true }, + { name: 'containsOrContainedBy', type: 'string', optional: true }, + ); + } + + // Full-text search operator + if (operators.includes('fulltext')) { + props.push({ name: 'matches', type: 'string', optional: true }); + } + + // List/Array operators (for StringListFilter, IntListFilter, etc.) + if (operators.includes('listArray')) { + // Extract base type from array type (e.g., 'string[]' -> 'string') + const baseType = tsType.replace('[]', ''); + props.push( + { name: 'contains', type: tsType, optional: true }, + { name: 'containedBy', type: tsType, optional: true }, + { name: 'overlaps', type: tsType, optional: true }, + { name: 'anyEqualTo', type: baseType, optional: true }, + { name: 'anyNotEqualTo', type: baseType, optional: true }, + { name: 'anyLessThan', type: baseType, optional: true }, + { name: 'anyLessThanOrEqualTo', type: baseType, optional: true }, + { name: 'anyGreaterThan', type: baseType, optional: true }, + { name: 'anyGreaterThanOrEqualTo', type: baseType, optional: true }, + ); + } + + return props; +} + +/** + * Options for generating types.ts + */ +export interface GenerateTypesOptions { + /** Enum type names that are available from schema-types.ts */ + enumsFromSchemaTypes?: string[]; +} /** * Generate types.ts content with all entity interfaces and base filter types */ -export function generateTypesFile(tables: CleanTable[]): string { +export function generateTypesFile( + tables: CleanTable[], + options: GenerateTypesOptions = {} +): string { + const { enumsFromSchemaTypes = [] } = options; + const enumSet = new Set(enumsFromSchemaTypes); + const project = createProject(); const sourceFile = createSourceFile(project, 'types.ts'); // Add file header sourceFile.insertText(0, createFileHeader('Entity types and filter types') + '\n\n'); - // Add section comment + // Collect which enums are actually used by entity fields + const usedEnums = new Set(); + for (const table of tables) { + const scalarFields = getScalarFields(table); + for (const field of scalarFields) { + // Check if the field's gqlType matches any known enum + const cleanType = field.type.gqlType.replace(/!/g, ''); + if (enumSet.has(cleanType)) { + usedEnums.add(cleanType); + } + } + } + + // Add import for enum types from schema-types if any are used + if (usedEnums.size > 0) { + sourceFile.addImportDeclaration( + createImport({ + moduleSpecifier: './schema-types', + typeOnlyNamedImports: Array.from(usedEnums).sort(), + }) + ); + sourceFile.addStatements(''); + } + + // Add section comment for entity types sourceFile.addStatements('// ============================================================================'); sourceFile.addStatements('// Entity types'); sourceFile.addStatements('// ============================================================================\n'); @@ -40,56 +212,15 @@ export function generateTypesFile(tables: CleanTable[]): string { sourceFile.addInterface(createInterface(table.name, properties)); } - // Add section comment for filters + // Add section comment for filter types sourceFile.addStatements('\n// ============================================================================'); - sourceFile.addStatements('// Filter types (shared)'); + sourceFile.addStatements('// Filter types (shared PostGraphile filter interfaces)'); sourceFile.addStatements('// ============================================================================\n'); - // Add base filter types (using string concat for complex types - acceptable for static definitions) - const filterTypesContent = generateBaseFilterTypes(); - // Extract just the interfaces part (skip the header) - const filterInterfaces = filterTypesContent - .split('\n') - .slice(6) // Skip header lines - .join('\n'); - - sourceFile.addStatements(filterInterfaces); - - return getFormattedOutput(sourceFile); -} - -/** - * Generate a minimal entity type (just id and display fields) - */ -export function generateMinimalEntityType(table: CleanTable): string { - const project = createProject(); - const sourceFile = createSourceFile(project, 'minimal.ts'); - - const scalarFields = getScalarFields(table); - - // Find id and likely display fields - const displayFields = scalarFields.filter((f) => { - const name = f.name.toLowerCase(); - return ( - name === 'id' || - name === 'name' || - name === 'title' || - name === 'label' || - name === 'email' || - name.endsWith('name') || - name.endsWith('title') - ); - }); - - // If no display fields found, take first 5 scalar fields - const fieldsToUse = displayFields.length > 0 ? displayFields : scalarFields.slice(0, 5); - - const properties: InterfaceProperty[] = fieldsToUse.map((field) => ({ - name: field.name, - type: `${fieldTypeToTs(field.type)} | null`, - })); - - sourceFile.addInterface(createInterface(`${table.name}Minimal`, properties)); + // Generate all filter types + for (const { name, tsType, operators } of FILTER_CONFIGS) { + sourceFile.addInterface(createInterface(name, buildFilterProperties(tsType, operators))); + } return getFormattedOutput(sourceFile); } diff --git a/graphql/codegen/src/cli/codegen/utils.ts b/graphql/codegen/src/cli/codegen/utils.ts index 2da06e24c..d932b5e11 100644 --- a/graphql/codegen/src/cli/codegen/utils.ts +++ b/graphql/codegen/src/cli/codegen/utils.ts @@ -277,10 +277,12 @@ export function fieldTypeToTs(fieldType: CleanFieldType): string { /** * Get the PostGraphile filter type for a GraphQL scalar + * @param gqlType - The GraphQL type string (e.g., "String", "UUID") + * @param isArray - Whether this is an array type */ -export function getScalarFilterType(gqlType: string): string | null { +export function getScalarFilterType(gqlType: string, isArray = false): string | null { const cleanType = gqlType.replace(/!/g, ''); - return scalarToFilterType(cleanType); + return scalarToFilterType(cleanType, isArray); } // ============================================================================ @@ -308,12 +310,48 @@ export function getScalarFields(table: CleanTable): CleanField[] { } /** - * Get primary key field names + * Primary key field information */ -export function getPrimaryKeyFields(table: CleanTable): string[] { +export interface PrimaryKeyField { + /** Field name */ + name: string; + /** GraphQL type (e.g., "UUID", "Int", "String") */ + gqlType: string; + /** TypeScript type (e.g., "string", "number") */ + tsType: string; +} + +/** + * Get primary key field information from table constraints + * Returns array to support composite primary keys + */ +export function getPrimaryKeyInfo(table: CleanTable): PrimaryKeyField[] { const pk = table.constraints?.primaryKey?.[0]; - if (!pk) return ['id']; // Default assumption - return pk.fields.map((f) => f.name); + if (!pk || pk.fields.length === 0) { + // Fallback: try to find 'id' field in table fields + const idField = table.fields.find(f => f.name.toLowerCase() === 'id'); + if (idField) { + return [{ + name: idField.name, + gqlType: idField.type.gqlType, + tsType: fieldTypeToTs(idField.type), + }]; + } + // Last resort: assume 'id' of type string (UUID) + return [{ name: 'id', gqlType: 'UUID', tsType: 'string' }]; + } + return pk.fields.map((f) => ({ + name: f.name, + gqlType: f.type.gqlType, + tsType: fieldTypeToTs(f.type), + })); +} + +/** + * Get primary key field names (convenience wrapper) + */ +export function getPrimaryKeyFields(table: CleanTable): string[] { + return getPrimaryKeyInfo(table).map((pk) => pk.name); } // ============================================================================ diff --git a/graphql/codegen/src/cli/commands/generate-orm.ts b/graphql/codegen/src/cli/commands/generate-orm.ts index 8d22da0d4..5baf4b6e6 100644 --- a/graphql/codegen/src/cli/commands/generate-orm.ts +++ b/graphql/codegen/src/cli/commands/generate-orm.ts @@ -204,17 +204,17 @@ export async function generateOrmCommand( } // 7. Generate ORM code - log('Generating ORM client...'); + console.log('Generating code...'); const { files: generatedFiles, stats } = generateOrm({ tables, customOperations: customOperationsData, config, }); + console.log(`Generated ${stats.totalFiles} files`); - log(` Generated ${stats.tables} table models`); - log(` Generated ${stats.customQueries} custom query operations`); - log(` Generated ${stats.customMutations} custom mutation operations`); - log(` Total files: ${stats.totalFiles}`); + log(` ${stats.tables} table models`); + log(` ${stats.customQueries} custom query operations`); + log(` ${stats.customMutations} custom mutation operations`); if (options.dryRun) { return { diff --git a/graphql/codegen/src/cli/commands/generate.ts b/graphql/codegen/src/cli/commands/generate.ts index 8d3700478..3942d1640 100644 --- a/graphql/codegen/src/cli/commands/generate.ts +++ b/graphql/codegen/src/cli/commands/generate.ts @@ -193,18 +193,18 @@ export async function generateCommand( } // 7. Generate code - log('Generating code...'); + console.log('Generating code...'); const { files: generatedFiles, stats } = generate({ tables, customOperations: customOperationsData, config, }); + console.log(`Generated ${stats.totalFiles} files`); - log(` Generated ${stats.queryHooks} table query hooks`); - log(` Generated ${stats.mutationHooks} table mutation hooks`); - log(` Generated ${stats.customQueryHooks} custom query hooks`); - log(` Generated ${stats.customMutationHooks} custom mutation hooks`); - log(` Total files: ${stats.totalFiles}`); + log(` ${stats.queryHooks} table query hooks`); + log(` ${stats.mutationHooks} table mutation hooks`); + log(` ${stats.customQueryHooks} custom query hooks`); + log(` ${stats.customMutationHooks} custom mutation hooks`); if (options.dryRun) { return { @@ -308,13 +308,21 @@ export interface WriteResult { errors?: string[]; } +export interface WriteOptions { + showProgress?: boolean; +} + export async function writeGeneratedFiles( files: GeneratedFile[], outputDir: string, - subdirs: string[] + subdirs: string[], + options: WriteOptions = {} ): Promise { + const { showProgress = true } = options; const errors: string[] = []; const written: string[] = []; + const total = files.length; + const isTTY = process.stdout.isTTY; // Ensure output directory exists try { @@ -342,9 +350,21 @@ export async function writeGeneratedFiles( return { success: false, errors }; } - for (const file of files) { + for (let i = 0; i < files.length; i++) { + const file = files[i]; const filePath = path.join(outputDir, file.path); + // Show progress + if (showProgress) { + const progress = Math.round(((i + 1) / total) * 100); + if (isTTY) { + process.stdout.write(`\rWriting files: ${i + 1}/${total} (${progress}%)`); + } else if (i % 100 === 0 || i === total - 1) { + // Non-TTY: periodic updates for CI/CD + console.log(`Writing files: ${i + 1}/${total}`); + } + } + // Ensure parent directory exists const parentDir = path.dirname(filePath); try { @@ -364,6 +384,11 @@ export async function writeGeneratedFiles( } } + // Clear progress line + if (showProgress && isTTY) { + process.stdout.write('\r' + ' '.repeat(40) + '\r'); + } + return { success: errors.length === 0, filesWritten: written, diff --git a/graphql/codegen/src/cli/introspect/transform-schema.test.ts b/graphql/codegen/src/cli/introspect/transform-schema.test.ts deleted file mode 100644 index 3a23545ac..000000000 --- a/graphql/codegen/src/cli/introspect/transform-schema.test.ts +++ /dev/null @@ -1,79 +0,0 @@ -// Jest globals - no import needed - -import { - getTableOperationNames, - getCustomOperations, - isTableOperation, -} from './transform-schema'; -import type { CleanOperation, CleanTypeRef } from '../../types/schema'; - -describe('transform-schema table operation filtering', () => { - const dummyReturnType: CleanTypeRef = { kind: 'SCALAR', name: 'String' }; - - it('detects table operations and update/delete patterns', () => { - const tableOps = getTableOperationNames([ - { - name: 'User', - query: { - all: 'users', - one: 'user', - create: 'createUser', - update: 'updateUser', - delete: 'deleteUser', - }, - inflection: { tableType: 'User' }, - }, - ]); - - const updateByEmail: CleanOperation = { - name: 'updateUserByEmail', - kind: 'mutation', - args: [], - returnType: dummyReturnType, - }; - - const login: CleanOperation = { - name: 'login', - kind: 'mutation', - args: [], - returnType: dummyReturnType, - }; - - expect(isTableOperation(updateByEmail, tableOps)).toBe(true); - expect(isTableOperation(login, tableOps)).toBe(false); - }); - - it('filters out table operations from custom list', () => { - const tableOps = getTableOperationNames([ - { - name: 'User', - query: { - all: 'users', - one: 'user', - create: 'createUser', - update: 'updateUser', - delete: 'deleteUser', - }, - inflection: { tableType: 'User' }, - }, - ]); - - const operations: CleanOperation[] = [ - { - name: 'users', - kind: 'query', - args: [], - returnType: dummyReturnType, - }, - { - name: 'login', - kind: 'mutation', - args: [], - returnType: dummyReturnType, - }, - ]; - - const customOps = getCustomOperations(operations, tableOps); - expect(customOps.map((op) => op.name)).toEqual(['login']); - }); -}); diff --git a/graphql/codegen/src/cli/introspect/transform-schema.ts b/graphql/codegen/src/cli/introspect/transform-schema.ts index e0f12a850..40cc4aa9f 100644 --- a/graphql/codegen/src/cli/introspect/transform-schema.ts +++ b/graphql/codegen/src/cli/introspect/transform-schema.ts @@ -1,6 +1,6 @@ /** * Transform GraphQL introspection data to clean operation types - * + * * This module converts raw introspection responses into the CleanOperation * format used by code generators. */ @@ -37,9 +37,7 @@ import type { * 1. First pass: Create all type entries with basic info * 2. Second pass: Resolve fields with references to other types */ -export function buildTypeRegistry( - types: IntrospectionType[] -): TypeRegistry { +export function buildTypeRegistry(types: IntrospectionType[]): TypeRegistry { const registry: TypeRegistry = new Map(); // First pass: Create all type entries @@ -58,6 +56,11 @@ export function buildTypeRegistry( resolvedType.enumValues = type.enumValues.map((ev) => ev.name); } + // Resolve possible types for UNION types (no circular refs for names) + if (type.kind === 'UNION' && type.possibleTypes) { + resolvedType.possibleTypes = type.possibleTypes.map((pt) => pt.name); + } + registry.set(type.name, resolvedType); } @@ -191,7 +194,9 @@ function transformFieldToCleanOperation( return { name: field.name, kind, - args: field.args.map((arg) => transformInputValueToCleanArgument(arg, types)), + args: field.args.map((arg) => + transformInputValueToCleanArgument(arg, types) + ), returnType: transformTypeRefToCleanTypeRef(field.type, types), description: field.description ?? undefined, isDeprecated: field.isDeprecated, @@ -304,74 +309,92 @@ function matchesPatterns(name: string, patterns: string[]): boolean { // Utility Functions // ============================================================================ +/** + * Result type for table operation names lookup + */ +export interface TableOperationNames { + queries: Set; + mutations: Set; +} + /** * Get the set of table-related operation names from tables * Used to identify which operations are already covered by table generators * - * This includes: - * - Basic CRUD: all, one, create, update, delete - * - PostGraphile alternate mutations: updateXByY, deleteXByY (for unique constraints) + * IMPORTANT: This uses EXACT matches only from _meta.query fields. + * Any operation not explicitly listed in _meta will flow through as a + * custom operation, ensuring 100% coverage of the schema. + * + * Table operations (generated by table generators): + * - Queries: all (list), one (single by PK) + * - Mutations: create, update (by PK), delete (by PK) + * + * Custom operations (generated by custom operation generators): + * - Unique constraint lookups: *ByUsername, *ByEmail, etc. + * - Unique constraint mutations: update*By*, delete*By* + * - True custom operations: login, register, bootstrapUser, etc. */ export function getTableOperationNames( tables: Array<{ name: string; - query?: { all: string; one: string; create: string; update: string | null; delete: string | null }; - inflection?: { tableType: string }; + query?: { + all: string; + one: string; + create: string; + update: string | null; + delete: string | null; + }; }> -): { queries: Set; mutations: Set; tableTypePatterns: RegExp[] } { +): TableOperationNames { const queries = new Set(); const mutations = new Set(); - const tableTypePatterns: RegExp[] = []; for (const table of tables) { if (table.query) { + // Add exact query names from _meta queries.add(table.query.all); queries.add(table.query.one); + + // Add exact mutation names from _meta mutations.add(table.query.create); if (table.query.update) mutations.add(table.query.update); if (table.query.delete) mutations.add(table.query.delete); } - - // Create patterns to match alternate CRUD mutations (updateXByY, deleteXByY) - if (table.inflection?.tableType) { - const typeName = table.inflection.tableType; - // Match: update{TypeName}By*, delete{TypeName}By* - tableTypePatterns.push(new RegExp(`^update${typeName}By`, 'i')); - tableTypePatterns.push(new RegExp(`^delete${typeName}By`, 'i')); - } } - return { queries, mutations, tableTypePatterns }; + return { queries, mutations }; } /** * Check if an operation is a table operation (already handled by table generators) + * + * Uses EXACT match only - no pattern matching. This ensures: + * 1. Only operations explicitly in _meta.query are treated as table operations + * 2. All other operations (including update*By*, delete*By*) become custom operations + * 3. 100% schema coverage is guaranteed */ export function isTableOperation( operation: CleanOperation, - tableOperationNames: { queries: Set; mutations: Set; tableTypePatterns: RegExp[] } + tableOperationNames: TableOperationNames ): boolean { if (operation.kind === 'query') { return tableOperationNames.queries.has(operation.name); } - - // Check exact match first - if (tableOperationNames.mutations.has(operation.name)) { - return true; - } - - // Check pattern match for alternate CRUD mutations (updateXByY, deleteXByY) - return tableOperationNames.tableTypePatterns.some((pattern) => - pattern.test(operation.name) - ); + return tableOperationNames.mutations.has(operation.name); } /** * Get only custom operations (not covered by table generators) + * + * This returns ALL operations that are not exact matches for table CRUD operations. + * Includes: + * - Unique constraint queries (*ByUsername, *ByEmail, etc.) + * - Unique constraint mutations (update*By*, delete*By*) + * - True custom operations (login, register, bootstrapUser, etc.) */ export function getCustomOperations( operations: CleanOperation[], - tableOperationNames: { queries: Set; mutations: Set; tableTypePatterns: RegExp[] } + tableOperationNames: TableOperationNames ): CleanOperation[] { return operations.filter((op) => !isTableOperation(op, tableOperationNames)); } diff --git a/graphql/codegen/src/types/schema.ts b/graphql/codegen/src/types/schema.ts index f8a25dbe0..860e7857d 100644 --- a/graphql/codegen/src/types/schema.ts +++ b/graphql/codegen/src/types/schema.ts @@ -277,4 +277,6 @@ export interface ResolvedType { inputFields?: CleanArgument[]; /** Values for ENUM types */ enumValues?: string[]; + /** Possible types for UNION types */ + possibleTypes?: string[]; } diff --git a/graphql/codegen/tsconfig.json b/graphql/codegen/tsconfig.json index 9c8a7d7c1..efe6742a0 100644 --- a/graphql/codegen/tsconfig.json +++ b/graphql/codegen/tsconfig.json @@ -4,5 +4,6 @@ "outDir": "dist", "rootDir": "src" }, - "include": ["src/**/*"] + "include": ["src/**/*"], + "exclude": ["src/__tests__/**/*"] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0aeed8c30..623299441 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -742,6 +742,9 @@ importers: ts-jest: specifier: ^29.2.5 version: 29.4.6(@babel/core@7.28.5)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.28.5))(jest-util@30.2.0)(jest@29.7.0(@types/node@20.19.27)(ts-node@10.9.2(@types/node@20.19.27)(typescript@5.9.3)))(typescript@5.9.3) + tsx: + specifier: ^4.21.0 + version: 4.21.0 typescript: specifier: ^5.9.3 version: 5.9.3 @@ -2424,6 +2427,162 @@ packages: '@emotion/unitless@0.7.5': resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==} + '@esbuild/aix-ppc64@0.27.2': + resolution: {integrity: sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.27.2': + resolution: {integrity: sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.27.2': + resolution: {integrity: sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.27.2': + resolution: {integrity: sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.27.2': + resolution: {integrity: sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.27.2': + resolution: {integrity: sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.27.2': + resolution: {integrity: sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.27.2': + resolution: {integrity: sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.27.2': + resolution: {integrity: sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.27.2': + resolution: {integrity: sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.27.2': + resolution: {integrity: sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.27.2': + resolution: {integrity: sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.27.2': + resolution: {integrity: sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.27.2': + resolution: {integrity: sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.27.2': + resolution: {integrity: sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.27.2': + resolution: {integrity: sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.27.2': + resolution: {integrity: sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.27.2': + resolution: {integrity: sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.27.2': + resolution: {integrity: sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.27.2': + resolution: {integrity: sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.27.2': + resolution: {integrity: sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.27.2': + resolution: {integrity: sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.27.2': + resolution: {integrity: sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.27.2': + resolution: {integrity: sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.27.2': + resolution: {integrity: sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.27.2': + resolution: {integrity: sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.9.0': resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -4271,7 +4430,6 @@ packages: core-js@2.6.12: resolution: {integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==} - deprecated: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} @@ -4762,6 +4920,11 @@ packages: es6-promisify@5.0.0: resolution: {integrity: sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==} + esbuild@0.27.2: + resolution: {integrity: sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==} + engines: {node: '>=18'} + hasBin: true + escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -5122,6 +5285,9 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} + get-tsconfig@4.13.0: + resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==} + get-uri@2.0.4: resolution: {integrity: sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==} @@ -5174,7 +5340,6 @@ packages: glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Glob versions prior to v9 are no longer supported glob@9.3.5: resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} @@ -5243,6 +5408,10 @@ packages: resolution: {integrity: sha512-BL/Xd/T9baO6NFzoMpiMD7YUZ62R6viR5tp/MULVEnbYJXZA//kRNW7J0j1w/wXArgL0sCxhDfK5dczSKn3+cg==} engines: {node: '>= 10.x'} + graphql@15.8.0: + resolution: {integrity: sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==} + engines: {node: '>= 10.x'} + handlebars@4.7.8: resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} engines: {node: '>=0.4.7'} @@ -5255,7 +5424,6 @@ packages: har-validator@5.1.5: resolution: {integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==} engines: {node: '>=6'} - deprecated: this library is no longer supported hard-rejection@2.1.0: resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} @@ -5427,7 +5595,6 @@ packages: inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. inherits@2.0.3: resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} @@ -6131,7 +6298,6 @@ packages: mailgun-js@0.22.0: resolution: {integrity: sha512-a2alg5nuTZA9Psa1pSEIEsbxr1Zrmqx4VkgGCQ30xVh0kIH7Bu57AYILo+0v8QLSdXtCyLaS+KVmdCrQo0uWFA==} engines: {node: '>=6.0.0'} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. makage@0.1.10: resolution: {integrity: sha512-IQKuRbHOrDgVNlydle+XRO5iMyaozBq4Bb9vhEzwxtvzyk08JkQo5qpfFRep0dSum53gECdX2gBoTmkWDHIfJA==} @@ -7182,7 +7348,6 @@ packages: request@2.88.2: resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==} engines: {node: '>= 6'} - deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} @@ -7207,6 +7372,9 @@ packages: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + resolve.exports@2.0.3: resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} engines: {node: '>=10'} @@ -7230,7 +7398,6 @@ packages: rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true rimraf@4.4.1: @@ -7387,7 +7554,6 @@ packages: source-map-resolve@0.6.0: resolution: {integrity: sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==} - deprecated: See https://github.com/lydell/source-map-resolve#deprecated source-map-support@0.5.13: resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} @@ -7517,7 +7683,6 @@ packages: subscriptions-transport-ws@0.9.19: resolution: {integrity: sha512-dxdemxFFB0ppCLg10FTtRqH/31FNRL1y1BQv8209MK5I4CwALb7iihQg+7p65lFcIl8MHatINWBLOqpgU4Kyyw==} - deprecated: The `subscriptions-transport-ws` package is no longer maintained. We recommend you use `graphql-ws` instead. For help migrating Apollo software to `graphql-ws`, see https://www.apollographql.com/docs/apollo-server/data/subscriptions/#switching-from-subscriptions-transport-ws For general help using `graphql-ws`, see https://github.com/enisdenjo/graphql-ws/blob/master/README.md peerDependencies: graphql: '>=0.10.0' @@ -7684,6 +7849,11 @@ packages: resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} engines: {node: '>=0.6.x'} + tsx@4.21.0: + resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} + engines: {node: '>=18.0.0'} + hasBin: true + tuf-js@2.2.1: resolution: {integrity: sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==} engines: {node: ^16.14.0 || >=18.0.0} @@ -7826,7 +7996,6 @@ packages: uuid@3.4.0: resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} - deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. hasBin: true v8-compile-cache-lib@3.0.1: @@ -7881,7 +8050,6 @@ packages: whatwg-encoding@3.1.1: resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} engines: {node: '>=18'} - deprecated: Use @exodus/bytes instead for a more spec-conformant and faster implementation whatwg-mimetype@4.0.0: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} @@ -8755,6 +8923,84 @@ snapshots: '@emotion/unitless@0.7.5': {} + '@esbuild/aix-ppc64@0.27.2': + optional: true + + '@esbuild/android-arm64@0.27.2': + optional: true + + '@esbuild/android-arm@0.27.2': + optional: true + + '@esbuild/android-x64@0.27.2': + optional: true + + '@esbuild/darwin-arm64@0.27.2': + optional: true + + '@esbuild/darwin-x64@0.27.2': + optional: true + + '@esbuild/freebsd-arm64@0.27.2': + optional: true + + '@esbuild/freebsd-x64@0.27.2': + optional: true + + '@esbuild/linux-arm64@0.27.2': + optional: true + + '@esbuild/linux-arm@0.27.2': + optional: true + + '@esbuild/linux-ia32@0.27.2': + optional: true + + '@esbuild/linux-loong64@0.27.2': + optional: true + + '@esbuild/linux-mips64el@0.27.2': + optional: true + + '@esbuild/linux-ppc64@0.27.2': + optional: true + + '@esbuild/linux-riscv64@0.27.2': + optional: true + + '@esbuild/linux-s390x@0.27.2': + optional: true + + '@esbuild/linux-x64@0.27.2': + optional: true + + '@esbuild/netbsd-arm64@0.27.2': + optional: true + + '@esbuild/netbsd-x64@0.27.2': + optional: true + + '@esbuild/openbsd-arm64@0.27.2': + optional: true + + '@esbuild/openbsd-x64@0.27.2': + optional: true + + '@esbuild/openharmony-arm64@0.27.2': + optional: true + + '@esbuild/sunos-x64@0.27.2': + optional: true + + '@esbuild/win32-arm64@0.27.2': + optional: true + + '@esbuild/win32-ia32@0.27.2': + optional: true + + '@esbuild/win32-x64@0.27.2': + optional: true + '@eslint-community/eslint-utils@4.9.0(eslint@9.39.2(jiti@2.6.1))': dependencies: eslint: 9.39.2(jiti@2.6.1) @@ -11643,6 +11889,35 @@ snapshots: dependencies: es6-promise: 4.2.8 + esbuild@0.27.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.2 + '@esbuild/android-arm': 0.27.2 + '@esbuild/android-arm64': 0.27.2 + '@esbuild/android-x64': 0.27.2 + '@esbuild/darwin-arm64': 0.27.2 + '@esbuild/darwin-x64': 0.27.2 + '@esbuild/freebsd-arm64': 0.27.2 + '@esbuild/freebsd-x64': 0.27.2 + '@esbuild/linux-arm': 0.27.2 + '@esbuild/linux-arm64': 0.27.2 + '@esbuild/linux-ia32': 0.27.2 + '@esbuild/linux-loong64': 0.27.2 + '@esbuild/linux-mips64el': 0.27.2 + '@esbuild/linux-ppc64': 0.27.2 + '@esbuild/linux-riscv64': 0.27.2 + '@esbuild/linux-s390x': 0.27.2 + '@esbuild/linux-x64': 0.27.2 + '@esbuild/netbsd-arm64': 0.27.2 + '@esbuild/netbsd-x64': 0.27.2 + '@esbuild/openbsd-arm64': 0.27.2 + '@esbuild/openbsd-x64': 0.27.2 + '@esbuild/openharmony-arm64': 0.27.2 + '@esbuild/sunos-x64': 0.27.2 + '@esbuild/win32-arm64': 0.27.2 + '@esbuild/win32-ia32': 0.27.2 + '@esbuild/win32-x64': 0.27.2 + escalade@3.2.0: {} escape-goat@3.0.0: {} @@ -12056,6 +12331,10 @@ snapshots: get-stream@6.0.1: {} + get-tsconfig@4.13.0: + dependencies: + resolve-pkg-maps: 1.0.0 + get-uri@2.0.4: dependencies: data-uri-to-buffer: 1.2.0 @@ -12189,7 +12468,7 @@ snapshots: debug: 4.4.3(supports-color@5.5.0) graphile-build: 4.14.1(graphql@15.10.1) graphile-build-pg: 4.14.1(graphql@15.10.1)(pg@8.16.3) - graphql: 15.10.1 + graphql: 15.8.0 tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -12226,6 +12505,8 @@ snapshots: graphql@15.10.1: {} + graphql@15.8.0: {} + handlebars@4.7.8: dependencies: minimist: 1.2.8 @@ -15006,6 +15287,8 @@ snapshots: resolve-from@5.0.0: {} + resolve-pkg-maps@1.0.0: {} + resolve.exports@2.0.3: {} resolve@1.22.11: @@ -15565,6 +15848,13 @@ snapshots: tsscmp@1.0.6: {} + tsx@4.21.0: + dependencies: + esbuild: 0.27.2 + get-tsconfig: 4.13.0 + optionalDependencies: + fsevents: 2.3.3 + tuf-js@2.2.1: dependencies: '@tufjs/models': 2.0.1