From e6bdca4bc38821343794175a994f09154aeddd7f Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Wed, 31 Jan 2024 01:24:33 +0100 Subject: [PATCH 01/18] feat: add user model --- models/user/CHANGELOG.md | 1 + models/user/LICENSE | 21 ++++++ models/user/README.md | 25 +++++++ models/user/package.json | 28 +++++++ models/user/src/index.ts | 5 ++ models/user/src/user/builder.spec.ts | 74 +++++++++++++++++++ models/user/src/user/builder.ts | 12 +++ models/user/src/user/generator.ts | 25 +++++++ models/user/src/user/index.ts | 3 + models/user/src/user/presets/index.ts | 1 + models/user/src/user/transformers.ts | 15 ++++ models/user/src/user/types.ts | 50 +++++++++++++ .../user/src/user/user-draft/builder.spec.ts | 56 ++++++++++++++ models/user/src/user/user-draft/builder.ts | 12 +++ models/user/src/user/user-draft/generator.ts | 16 ++++ models/user/src/user/user-draft/index.ts | 2 + .../user/src/user/user-draft/presets/index.ts | 1 + .../user/src/user/user-draft/transformers.ts | 14 ++++ pnpm-lock.yaml | 24 ++++++ 19 files changed, 385 insertions(+) create mode 100644 models/user/CHANGELOG.md create mode 100644 models/user/LICENSE create mode 100644 models/user/README.md create mode 100644 models/user/package.json create mode 100644 models/user/src/index.ts create mode 100644 models/user/src/user/builder.spec.ts create mode 100644 models/user/src/user/builder.ts create mode 100644 models/user/src/user/generator.ts create mode 100644 models/user/src/user/index.ts create mode 100644 models/user/src/user/presets/index.ts create mode 100644 models/user/src/user/transformers.ts create mode 100644 models/user/src/user/types.ts create mode 100644 models/user/src/user/user-draft/builder.spec.ts create mode 100644 models/user/src/user/user-draft/builder.ts create mode 100644 models/user/src/user/user-draft/generator.ts create mode 100644 models/user/src/user/user-draft/index.ts create mode 100644 models/user/src/user/user-draft/presets/index.ts create mode 100644 models/user/src/user/user-draft/transformers.ts diff --git a/models/user/CHANGELOG.md b/models/user/CHANGELOG.md new file mode 100644 index 000000000..57ecfc2f1 --- /dev/null +++ b/models/user/CHANGELOG.md @@ -0,0 +1 @@ +# @commercetools-test-data/user diff --git a/models/user/LICENSE b/models/user/LICENSE new file mode 100644 index 000000000..469e863f1 --- /dev/null +++ b/models/user/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) commercetools GmbH + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/models/user/README.md b/models/user/README.md new file mode 100644 index 000000000..f93622671 --- /dev/null +++ b/models/user/README.md @@ -0,0 +1,25 @@ +# @commercetools-test-data/user + +This package provides the data model for `User` from the COCO API. + +# Install + +```bash +$ pnpm add -D @commercetools-test-data/user +``` + +# Usage + +```ts +import { + User, + UserDraft, + type TUser, + type TUserDraft, + type TUserDraftGraphql, +} from '@commercetools-test-data/project'; + +const user = User.random().buildRest(); +const userDraft = UserDraft.random().buildRest(); +const userGraphQLDraft = UserDraft.random().buildGraphql(); +``` diff --git a/models/user/package.json b/models/user/package.json new file mode 100644 index 000000000..3507f7945 --- /dev/null +++ b/models/user/package.json @@ -0,0 +1,28 @@ +{ + "name": "@commercetools-test-data/state", + "version": "6.11.0", + "description": "Data model for commercetools API State", + "bugs": "https://github.com/commercetools/test-data/issues", + "repository": { + "type": "git", + "url": "https://github.com/commercetools/test-data.git", + "directory": "models/state" + }, + "keywords": ["javascript", "typescript", "test-data"], + "license": "MIT", + "publishConfig": { + "access": "public" + }, + "main": "dist/commercetools-test-data-state.cjs.js", + "module": "dist/commercetools-test-data-state.esm.js", + "files": ["dist", "package.json", "LICENSE", "README.md"], + "dependencies": { + "@babel/runtime": "^7.17.9", + "@babel/runtime-corejs3": "^7.17.9", + "@commercetools-test-data/commons": "6.11.0", + "@commercetools-test-data/core": "6.11.0", + "@commercetools-test-data/utils": "6.11.0", + "@commercetools/platform-sdk": "^7.0.0", + "@faker-js/faker": "^8.0.0" + } +} diff --git a/models/user/src/index.ts b/models/user/src/index.ts new file mode 100644 index 000000000..20264fc68 --- /dev/null +++ b/models/user/src/index.ts @@ -0,0 +1,5 @@ +export * as User from './user'; +export * as UserDraft from './user/user-draft'; +export { default as presets } from './user/presets'; +export { default as draftPresets } from './user/user-draft/presets'; +export * from './user/types'; diff --git a/models/user/src/user/builder.spec.ts b/models/user/src/user/builder.spec.ts new file mode 100644 index 000000000..b45710fa7 --- /dev/null +++ b/models/user/src/user/builder.spec.ts @@ -0,0 +1,74 @@ +/* eslint-disable jest/no-disabled-tests */ +/* eslint-disable jest/valid-title */ +import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; +import type { TUser, TUserGraphql } from './types'; +import * as User from './index'; + +describe('builder', () => { + it( + ...createBuilderSpec( + 'default', + User.random().email('avengers@mcu.com'), + expect.objectContaining({ + id: expect.any(String), + version: expect.any(Number), + email: 'avengers@mcu.com', + lowercaseEmail: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + password: expect.any(String), + language: ['en'], + numberFormat: ['en'], + businessRole: expect.any(String), + createdAt: expect.any(String), + lastModifiedAt: expect.any(String), + lastLoginAt: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'rest', + User.random(), + expect.objectContaining({ + id: expect.any(String), + version: expect.any(Number), + email: expect.any(String), + lowercaseEmail: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + password: expect.any(String), + language: ['en'], + numberFormat: ['en'], + businessRole: expect.any(String), + createdAt: expect.any(String), + lastModifiedAt: expect.any(String), + lastLoginAt: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'graphql', + User.random(), + expect.objectContaining({ + __typename: 'User', + id: expect.any(String), + version: expect.any(Number), + email: expect.any(String), + lowercaseEmail: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + password: expect.any(String), + language: ['en'], + numberFormat: ['en'], + businessRole: expect.any(String), + createdAt: expect.any(String), + lastModifiedAt: expect.any(String), + lastLoginAt: expect.any(String), + }) + ) + ); +}); diff --git a/models/user/src/user/builder.ts b/models/user/src/user/builder.ts new file mode 100644 index 000000000..bbca21c91 --- /dev/null +++ b/models/user/src/user/builder.ts @@ -0,0 +1,12 @@ +import { Builder } from '@commercetools-test-data/core'; +import generator from './generator'; +import transformers from './transformers'; +import type { TCreateUserBuilder, TUser } from './types'; + +const Model: TCreateUserBuilder = () => + Builder({ + generator, + transformers, + }); + +export default Model; diff --git a/models/user/src/user/generator.ts b/models/user/src/user/generator.ts new file mode 100644 index 000000000..f12744400 --- /dev/null +++ b/models/user/src/user/generator.ts @@ -0,0 +1,25 @@ +import { sequence, fake, Generator } from '@commercetools-test-data/core'; +import { createRelatedDates } from '@commercetools-test-data/utils'; +import type { TUser } from './types'; + +const [getOlderDate, getNewerDate] = createRelatedDates(); + +const generator = Generator({ + fields: { + id: fake((f) => f.string.uuid()), + version: sequence(), + email: fake((f) => f.internet.email()), + lowercaseEmail: fake((f) => f.internet.email()), + firstName: fake((f) => f.person.firstName()), + lastName: fake((f) => f.person.lastName()), + password: fake((f) => f.internet.password()), + language: fake(() => ['en']), + numberFormat: fake(() => ['en']), + businessRole: fake(() => 'Other'), + createdAt: fake(getOlderDate), + lastModifiedAt: fake(getNewerDate), + lastLoginAt: fake(getNewerDate), + }, +}); + +export default generator; diff --git a/models/user/src/user/index.ts b/models/user/src/user/index.ts new file mode 100644 index 000000000..60207429a --- /dev/null +++ b/models/user/src/user/index.ts @@ -0,0 +1,3 @@ +export { default as random } from './builder'; +export { default as preset } from './presets'; +export * from './types'; diff --git a/models/user/src/user/presets/index.ts b/models/user/src/user/presets/index.ts new file mode 100644 index 000000000..ff8b4c563 --- /dev/null +++ b/models/user/src/user/presets/index.ts @@ -0,0 +1 @@ +export default {}; diff --git a/models/user/src/user/transformers.ts b/models/user/src/user/transformers.ts new file mode 100644 index 000000000..674c9beb9 --- /dev/null +++ b/models/user/src/user/transformers.ts @@ -0,0 +1,15 @@ +import { Transformer } from '@commercetools-test-data/core'; +import type { TUser, TUserGraphql } from './types'; + +const transformers = { + default: Transformer('default', {}), + rest: Transformer('rest', {}), + graphql: Transformer('graphql', { + buildFields: [], + addFields: () => ({ + __typename: 'User', + }), + }), +}; + +export default transformers; diff --git a/models/user/src/user/types.ts b/models/user/src/user/types.ts new file mode 100644 index 000000000..d548fbc61 --- /dev/null +++ b/models/user/src/user/types.ts @@ -0,0 +1,50 @@ +import type { TBuilder } from '@commercetools-test-data/core'; + +type BusinessRole = + | 'ExecutiveManagement' + | 'CustomerService' + | 'Marketing' + | 'SalesAndECommerceManager' + | 'ProductProjectManagerOrOwner' + | 'Architect' + | 'Engineer' + | 'Other'; + +export type TUser = { + id: string; + version: number; + email: string; + lowercaseEmail: string; + firstName: string; + lastName: string; + password: string; + language: string; + numberFormat: string; + businessRole: BusinessRole; + createdAt: string; + lastModifiedAt: string; + lastLoginAt: string; +}; + +export type TUserGraphql = TUser & { + __typename: 'User'; +}; + +export type TUserDraft = { + email: string; + password?: string; + firstName: string; + lastName: string; + language: string; + numberFormat?: string; + businessRole: BusinessRole; +}; + +export type TUserDraftGraphql = TUserDraft & { + __typename: 'UserDraft'; +}; + +export type TUserBuilder = TBuilder; +export type TUserDraftBuilder = TBuilder; +export type TCreateUserBuilder = () => TUserBuilder; +export type TCreateUserDraftBuilder = () => TUserDraftBuilder; diff --git a/models/user/src/user/user-draft/builder.spec.ts b/models/user/src/user/user-draft/builder.spec.ts new file mode 100644 index 000000000..7b0fb47a5 --- /dev/null +++ b/models/user/src/user/user-draft/builder.spec.ts @@ -0,0 +1,56 @@ +/* eslint-disable jest/no-disabled-tests */ +/* eslint-disable jest/valid-title */ +import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; +import { TUserDraft, TUserDraftGraphql } from '../types'; +import * as UserDraft from './index'; + +describe('builder', () => { + it( + ...createBuilderSpec( + 'default', + UserDraft.random().email('hello@ct.com'), + expect.objectContaining({ + email: 'hello@ct.com', + password: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + language: ['en'], + numberFormat: ['en'], + businessRole: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'rest', + UserDraft.random(), + expect.objectContaining({ + email: expect.any(String), + password: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + language: ['en'], + numberFormat: ['en'], + businessRole: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'graphql', + UserDraft.random(), + expect.objectContaining({ + __typename: 'UserDraft', + email: expect.any(String), + password: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + language: ['en'], + numberFormat: ['en'], + businessRole: expect.any(String), + }) + ) + ); +}); diff --git a/models/user/src/user/user-draft/builder.ts b/models/user/src/user/user-draft/builder.ts new file mode 100644 index 000000000..512c6bcb7 --- /dev/null +++ b/models/user/src/user/user-draft/builder.ts @@ -0,0 +1,12 @@ +import { Builder } from '@commercetools-test-data/core'; +import type { TCreateUserDraftBuilder, TUserDraft } from '../types'; +import generator from './generator'; +import transformers from './transformers'; + +const Model: TCreateUserDraftBuilder = () => + Builder({ + generator, + transformers, + }); + +export default Model; diff --git a/models/user/src/user/user-draft/generator.ts b/models/user/src/user/user-draft/generator.ts new file mode 100644 index 000000000..62eefd9ee --- /dev/null +++ b/models/user/src/user/user-draft/generator.ts @@ -0,0 +1,16 @@ +import { fake, Generator } from '@commercetools-test-data/core'; +import type { TUserDraft } from '../types'; + +const generator = Generator({ + fields: { + email: fake((f) => f.internet.email()), + password: fake((f) => f.internet.password()), + firstName: fake((f) => f.person.firstName()), + lastName: fake((f) => f.person.lastName()), + language: fake(() => ['en']), + numberFormat: fake(() => ['en']), + businessRole: fake(() => 'Other'), + }, +}); + +export default generator; diff --git a/models/user/src/user/user-draft/index.ts b/models/user/src/user/user-draft/index.ts new file mode 100644 index 000000000..96e2519e1 --- /dev/null +++ b/models/user/src/user/user-draft/index.ts @@ -0,0 +1,2 @@ +export { default as random } from './builder'; +export { default as presets } from './presets'; diff --git a/models/user/src/user/user-draft/presets/index.ts b/models/user/src/user/user-draft/presets/index.ts new file mode 100644 index 000000000..ff8b4c563 --- /dev/null +++ b/models/user/src/user/user-draft/presets/index.ts @@ -0,0 +1 @@ +export default {}; diff --git a/models/user/src/user/user-draft/transformers.ts b/models/user/src/user/user-draft/transformers.ts new file mode 100644 index 000000000..70eee769d --- /dev/null +++ b/models/user/src/user/user-draft/transformers.ts @@ -0,0 +1,14 @@ +import { Transformer } from '@commercetools-test-data/core'; +import type { TUserDraft, TUserDraftGraphql } from '../types'; + +const transformers = { + default: Transformer('default', {}), + rest: Transformer('rest', {}), + graphql: Transformer('graphql', { + addFields: () => ({ + __typename: 'UserDraft', + }), + }), +}; + +export default transformers; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 69220502b..ae834983a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1049,6 +1049,30 @@ importers: specifier: ^8.0.0 version: 8.3.1 + models/user: + dependencies: + '@babel/runtime': + specifier: ^7.17.9 + version: 7.23.4 + '@babel/runtime-corejs3': + specifier: ^7.17.9 + version: 7.23.4 + '@commercetools-test-data/commons': + specifier: 6.11.0 + version: link:../commons + '@commercetools-test-data/core': + specifier: 6.11.0 + version: link:../../core + '@commercetools-test-data/utils': + specifier: 6.11.0 + version: link:../../utils + '@commercetools/platform-sdk': + specifier: ^7.0.0 + version: 7.0.0 + '@faker-js/faker': + specifier: ^8.0.0 + version: 8.3.1 + models/zone: dependencies: '@babel/runtime': From 33c54481132a487f2cc4183942778575907c3803 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Fri, 9 Feb 2024 04:58:47 +0100 Subject: [PATCH 02/18] feat: add model for mc-user --- .changeset/mighty-avengers-strike.md | 24 ++++ models/user/README.md | 19 ++- models/user/src/index.ts | 7 + models/user/src/mc-user/builder.spec.ts | 122 ++++++++++++++++++ models/user/src/mc-user/builder.ts | 12 ++ models/user/src/mc-user/generator.ts | 35 +++++ .../id-token-user-info/builder.spec.ts | 59 +++++++++ .../src/mc-user/id-token-user-info/builder.ts | 15 +++ .../mc-user/id-token-user-info/generator.ts | 20 +++ .../src/mc-user/id-token-user-info/index.ts | 2 + .../id-token-user-info/presets/index.ts | 1 + .../id-token-user-info/transformers.ts | 14 ++ models/user/src/mc-user/index.ts | 3 + .../src/mc-user/mc-user-draft/builder.spec.ts | 44 +++++++ .../user/src/mc-user/mc-user-draft/builder.ts | 12 ++ .../src/mc-user/mc-user-draft/generator.ts | 12 ++ .../user/src/mc-user/mc-user-draft/index.ts | 2 + .../mc-user/mc-user-draft/presets/index.ts | 1 + .../src/mc-user/mc-user-draft/transformers.ts | 14 ++ models/user/src/mc-user/presets/index.ts | 1 + models/user/src/mc-user/transformers.ts | 19 +++ models/user/src/mc-user/types.ts | 70 ++++++++++ 22 files changed, 506 insertions(+), 2 deletions(-) create mode 100644 .changeset/mighty-avengers-strike.md create mode 100644 models/user/src/mc-user/builder.spec.ts create mode 100644 models/user/src/mc-user/builder.ts create mode 100644 models/user/src/mc-user/generator.ts create mode 100644 models/user/src/mc-user/id-token-user-info/builder.spec.ts create mode 100644 models/user/src/mc-user/id-token-user-info/builder.ts create mode 100644 models/user/src/mc-user/id-token-user-info/generator.ts create mode 100644 models/user/src/mc-user/id-token-user-info/index.ts create mode 100644 models/user/src/mc-user/id-token-user-info/presets/index.ts create mode 100644 models/user/src/mc-user/id-token-user-info/transformers.ts create mode 100644 models/user/src/mc-user/index.ts create mode 100644 models/user/src/mc-user/mc-user-draft/builder.spec.ts create mode 100644 models/user/src/mc-user/mc-user-draft/builder.ts create mode 100644 models/user/src/mc-user/mc-user-draft/generator.ts create mode 100644 models/user/src/mc-user/mc-user-draft/index.ts create mode 100644 models/user/src/mc-user/mc-user-draft/presets/index.ts create mode 100644 models/user/src/mc-user/mc-user-draft/transformers.ts create mode 100644 models/user/src/mc-user/presets/index.ts create mode 100644 models/user/src/mc-user/transformers.ts create mode 100644 models/user/src/mc-user/types.ts diff --git a/.changeset/mighty-avengers-strike.md b/.changeset/mighty-avengers-strike.md new file mode 100644 index 000000000..6975e2949 --- /dev/null +++ b/.changeset/mighty-avengers-strike.md @@ -0,0 +1,24 @@ +--- +'@commercetools-test-data/project': minor +--- + +This package provides the data model for the commercetools platform `User` type and the enhanced representation used by the Merchant Center API. + +```ts +import { + // Coco + User, + UserDraft, + type TUser, + type TUserDraft, + type TUserDraftGraphql, + + // MC + McUser, + McUserDraft, + type TMcUser, + type TMcUserDraft, + type TMcUserDraftGraphql, +} from '@commercetools-test-data/user'; + +``` diff --git a/models/user/README.md b/models/user/README.md index f93622671..87fa51320 100644 --- a/models/user/README.md +++ b/models/user/README.md @@ -1,6 +1,6 @@ # @commercetools-test-data/user -This package provides the data model for `User` from the COCO API. +This package provides the data model for the commercetools platform `User` type and the enhanced representation used by the Merchant Center API. # Install @@ -10,16 +10,31 @@ $ pnpm add -D @commercetools-test-data/user # Usage +The package provides 2 type of models for User: one targeting to User of the CoCo API and one targeting the User of the Merchant Center API (prefixed by `Mc`). + ```ts import { + // Coco User, UserDraft, type TUser, type TUserDraft, type TUserDraftGraphql, -} from '@commercetools-test-data/project'; + + // MC + McUser, + McUserDraft, + type TMcUser, + type TMcUserDraft, + type TMcUserDraftGraphql, +} from '@commercetools-test-data/user'; const user = User.random().buildRest(); const userDraft = UserDraft.random().buildRest(); const userGraphQLDraft = UserDraft.random().buildGraphql(); + +const mcUser = McUser.random().buildRest(); +const mcUserDraft = McUserDraft.random().buildRest(); +const mcUserGraphQLDraft = + McUserDraft.random().buildGraphql(); ``` diff --git a/models/user/src/index.ts b/models/user/src/index.ts index 20264fc68..ca6a59946 100644 --- a/models/user/src/index.ts +++ b/models/user/src/index.ts @@ -3,3 +3,10 @@ export * as UserDraft from './user/user-draft'; export { default as presets } from './user/presets'; export { default as draftPresets } from './user/user-draft/presets'; export * from './user/types'; + +// MC +export * as McUser from './mc-user'; +export * as McUserDraft from './mc-user/mc-user-draft'; +export { default as presetsMc } from './mc-user/presets'; +export { default as draftPresetsMc } from './mc-user/mc-user-draft/presets'; +export * from './mc-user/types'; diff --git a/models/user/src/mc-user/builder.spec.ts b/models/user/src/mc-user/builder.spec.ts new file mode 100644 index 000000000..5da832acd --- /dev/null +++ b/models/user/src/mc-user/builder.spec.ts @@ -0,0 +1,122 @@ +/* eslint-disable jest/no-disabled-tests */ +/* eslint-disable jest/valid-title */ +import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; +import type { TMcUser, TMcUserGraphql } from './types'; +import * as McUser from './index'; + +describe('builder', () => { + it( + ...createBuilderSpec( + 'default', + McUser.random().email('avengers@mcu.com'), + expect.objectContaining({ + id: expect.any(String), + version: expect.any(Number), + email: 'avengers@mcu.com', + firstName: expect.any(String), + lastName: expect.any(String), + language: 'en', + numberFormat: 'en', + businessRole: expect.any(String), + timeZone: expect.any(String), + launchdarklyTrackingId: expect.any(String), + launchdarklyTrackingGroup: expect.any(String), + launchdarklyTrackingSubgroup: expect.any(String), + launchdarklyTrackingTeam: expect.any(Array), + launchdarklyTrackingTenant: expect.any(String), + launchdarklyTrackingCloudEnvironment: expect.any(String), + gravatarHash: expect.any(String), + defaultProjectKey: expect.any(String), + projects: null, + idTokenUserInfo: expect.objectContaining({ + iss: expect.any(String), + sub: expect.any(String), + aud: expect.any(String), + exp: expect.any(String), + iat: expect.any(String), + email: expect.any(String), + name: expect.any(String), + additionalClaims: expect.any(String), + }), + verificationStatus: 'Verified', + }) + ) + ); + + it( + ...createBuilderSpec( + 'rest', + McUser.random(), + expect.objectContaining({ + id: expect.any(String), + version: expect.any(Number), + email: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + language: 'en', + numberFormat: 'en', + businessRole: expect.any(String), + timeZone: expect.any(String), + launchdarklyTrackingId: expect.any(String), + launchdarklyTrackingGroup: expect.any(String), + launchdarklyTrackingSubgroup: expect.any(String), + launchdarklyTrackingTeam: expect.any(Array), + launchdarklyTrackingTenant: expect.any(String), + launchdarklyTrackingCloudEnvironment: expect.any(String), + gravatarHash: expect.any(String), + defaultProjectKey: expect.any(String), + projects: null, + idTokenUserInfo: expect.objectContaining({ + iss: expect.any(String), + sub: expect.any(String), + aud: expect.any(String), + exp: expect.any(String), + iat: expect.any(String), + email: expect.any(String), + name: expect.any(String), + additionalClaims: expect.any(String), + }), + verificationStatus: 'Verified', + }) + ) + ); + + it( + ...createBuilderSpec( + 'graphql', + McUser.random(), + expect.objectContaining({ + __typename: 'User', + id: expect.any(String), + version: expect.any(Number), + email: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + language: 'en', + numberFormat: 'en', + businessRole: expect.any(String), + timeZone: expect.any(String), + launchdarklyTrackingId: expect.any(String), + launchdarklyTrackingGroup: expect.any(String), + launchdarklyTrackingSubgroup: expect.any(String), + launchdarklyTrackingTeam: expect.any(Array), + launchdarklyTrackingTenant: expect.any(String), + launchdarklyTrackingCloudEnvironment: expect.any(String), + gravatarHash: expect.any(String), + defaultProjectKey: expect.any(String), + projects: null, + idTokenUserInfo: expect.objectContaining({ + iss: expect.any(String), + sub: expect.any(String), + aud: expect.any(String), + exp: expect.any(String), + iat: expect.any(String), + email: expect.any(String), + name: expect.any(String), + additionalClaims: expect.any(String), + }), + verificationStatus: 'Verified', + }) + ) + ); +}); diff --git a/models/user/src/mc-user/builder.ts b/models/user/src/mc-user/builder.ts new file mode 100644 index 000000000..6ba945abb --- /dev/null +++ b/models/user/src/mc-user/builder.ts @@ -0,0 +1,12 @@ +import { Builder } from '@commercetools-test-data/core'; +import generator from './generator'; +import transformers from './transformers'; +import type { TMcCreateUserBuilder, TMcUser } from './types'; + +const Model: TMcCreateUserBuilder = () => + Builder({ + generator, + transformers, + }); + +export default Model; diff --git a/models/user/src/mc-user/generator.ts b/models/user/src/mc-user/generator.ts new file mode 100644 index 000000000..9867bec23 --- /dev/null +++ b/models/user/src/mc-user/generator.ts @@ -0,0 +1,35 @@ +import { sequence, fake, Generator } from '@commercetools-test-data/core'; +import { createRelatedDates } from '@commercetools-test-data/utils'; +import * as IdTokenUserInfo from './id-token-user-info'; +import type { TMcUser } from './types'; + +const [getOlderDate, getNewerDate] = createRelatedDates(); + +const generator = Generator({ + fields: { + id: fake((f) => f.string.uuid()), + version: sequence(), + createdAt: fake(getOlderDate), + lastModifiedAt: fake(getNewerDate), + email: fake((f) => f.internet.email()), + firstName: fake((f) => f.person.firstName()), + lastName: fake((f) => f.person.lastName()), + language: fake(() => 'en'), + numberFormat: fake(() => 'en'), + timeZone: fake(() => 'Europe/Berlin'), + launchdarklyTrackingId: fake((f) => f.string.uuid()), + launchdarklyTrackingGroup: fake((f) => f.lorem.word()), + launchdarklyTrackingSubgroup: fake((f) => f.lorem.word()), + launchdarklyTrackingTeam: fake((f) => [f.lorem.word()]), + launchdarklyTrackingTenant: fake((f) => f.lorem.word()), + launchdarklyTrackingCloudEnvironment: fake((f) => f.lorem.word()), + gravatarHash: fake((f) => f.lorem.word()), + defaultProjectKey: fake((f) => f.lorem.word()), + projects: null, // TODO: Update this when project PR is merged + businessRole: fake(() => 'Other'), + idTokenUserInfo: fake(() => IdTokenUserInfo.random()), + verificationStatus: fake(() => 'Verified'), + }, +}); + +export default generator; diff --git a/models/user/src/mc-user/id-token-user-info/builder.spec.ts b/models/user/src/mc-user/id-token-user-info/builder.spec.ts new file mode 100644 index 000000000..b8b3202b1 --- /dev/null +++ b/models/user/src/mc-user/id-token-user-info/builder.spec.ts @@ -0,0 +1,59 @@ +/* eslint-disable jest/no-disabled-tests */ +/* eslint-disable jest/valid-title */ +import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; +import type { TIdTokenUserInfo, TIdTokenUserInfoGraphql } from '../types'; +import * as IdTokenUserInfo from './index'; + +describe('builder', () => { + it( + ...createBuilderSpec( + 'default', + IdTokenUserInfo.random(), + expect.objectContaining({ + iss: expect.any(String), + sub: expect.any(String), + aud: expect.any(String), + exp: expect.any(String), + iat: expect.any(String), + email: expect.any(String), + name: expect.any(String), + additionalClaims: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'rest', + IdTokenUserInfo.random(), + expect.objectContaining({ + iss: expect.any(String), + sub: expect.any(String), + aud: expect.any(String), + exp: expect.any(String), + iat: expect.any(String), + email: expect.any(String), + name: expect.any(String), + additionalClaims: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'graphql', + IdTokenUserInfo.random(), + expect.objectContaining({ + __typename: 'IdTokenUserInfo', + iss: expect.any(String), + sub: expect.any(String), + aud: expect.any(String), + exp: expect.any(String), + iat: expect.any(String), + email: expect.any(String), + name: expect.any(String), + additionalClaims: expect.any(String), + }) + ) + ); +}); diff --git a/models/user/src/mc-user/id-token-user-info/builder.ts b/models/user/src/mc-user/id-token-user-info/builder.ts new file mode 100644 index 000000000..1a262838b --- /dev/null +++ b/models/user/src/mc-user/id-token-user-info/builder.ts @@ -0,0 +1,15 @@ +import { Builder } from '@commercetools-test-data/core'; +import type { + TMcCreateIdTokenUserInfoBuilder, + TIdTokenUserInfo, +} from '../types'; +import generator from './generator'; +import transformers from './transformers'; + +const Model: TMcCreateIdTokenUserInfoBuilder = () => + Builder({ + generator, + transformers, + }); + +export default Model; diff --git a/models/user/src/mc-user/id-token-user-info/generator.ts b/models/user/src/mc-user/id-token-user-info/generator.ts new file mode 100644 index 000000000..f788f83c8 --- /dev/null +++ b/models/user/src/mc-user/id-token-user-info/generator.ts @@ -0,0 +1,20 @@ +import { fake, Generator } from '@commercetools-test-data/core'; +import { createRelatedDates } from '@commercetools-test-data/utils'; +import type { TIdTokenUserInfo } from '../types'; + +const [_, getNewerDate] = createRelatedDates(); + +const generator = Generator({ + fields: { + iss: fake((f) => f.internet.url()), + sub: fake((f) => f.internet.email()), + aud: fake((f) => f.internet.url()), + exp: fake(getNewerDate), + iat: fake(getNewerDate), + email: fake((f) => f.internet.email()), + name: fake((f) => f.person.firstName()), + additionalClaims: fake((f) => f.lorem.words()), + }, +}); + +export default generator; diff --git a/models/user/src/mc-user/id-token-user-info/index.ts b/models/user/src/mc-user/id-token-user-info/index.ts new file mode 100644 index 000000000..96e2519e1 --- /dev/null +++ b/models/user/src/mc-user/id-token-user-info/index.ts @@ -0,0 +1,2 @@ +export { default as random } from './builder'; +export { default as presets } from './presets'; diff --git a/models/user/src/mc-user/id-token-user-info/presets/index.ts b/models/user/src/mc-user/id-token-user-info/presets/index.ts new file mode 100644 index 000000000..ff8b4c563 --- /dev/null +++ b/models/user/src/mc-user/id-token-user-info/presets/index.ts @@ -0,0 +1 @@ +export default {}; diff --git a/models/user/src/mc-user/id-token-user-info/transformers.ts b/models/user/src/mc-user/id-token-user-info/transformers.ts new file mode 100644 index 000000000..7fc1542b8 --- /dev/null +++ b/models/user/src/mc-user/id-token-user-info/transformers.ts @@ -0,0 +1,14 @@ +import { Transformer } from '@commercetools-test-data/core'; +import type { TIdTokenUserInfo, TIdTokenUserInfoGraphql } from '../types'; + +const transformers = { + default: Transformer('default', {}), + rest: Transformer('rest', {}), + graphql: Transformer('graphql', { + addFields: () => ({ + __typename: 'IdTokenUserInfo', + }), + }), +}; + +export default transformers; diff --git a/models/user/src/mc-user/index.ts b/models/user/src/mc-user/index.ts new file mode 100644 index 000000000..60207429a --- /dev/null +++ b/models/user/src/mc-user/index.ts @@ -0,0 +1,3 @@ +export { default as random } from './builder'; +export { default as preset } from './presets'; +export * from './types'; diff --git a/models/user/src/mc-user/mc-user-draft/builder.spec.ts b/models/user/src/mc-user/mc-user-draft/builder.spec.ts new file mode 100644 index 000000000..bdd959baa --- /dev/null +++ b/models/user/src/mc-user/mc-user-draft/builder.spec.ts @@ -0,0 +1,44 @@ +/* eslint-disable jest/no-disabled-tests */ +/* eslint-disable jest/valid-title */ +import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; +import { TMcUserDraft, TMcUserDraftGraphql } from '../types'; +import * as McUserDraft from './index'; + +describe('builder', () => { + it( + ...createBuilderSpec( + 'default', + McUserDraft.random().email('hello@ct.com'), + expect.objectContaining({ + email: 'hello@ct.com', + firstName: expect.any(String), + lastName: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'rest', + McUserDraft.random(), + expect.objectContaining({ + email: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + }) + ) + ); + + it( + ...createBuilderSpec( + 'graphql', + McUserDraft.random(), + expect.objectContaining({ + __typename: 'UserDraft', + email: expect.any(String), + firstName: expect.any(String), + lastName: expect.any(String), + }) + ) + ); +}); diff --git a/models/user/src/mc-user/mc-user-draft/builder.ts b/models/user/src/mc-user/mc-user-draft/builder.ts new file mode 100644 index 000000000..9c827798e --- /dev/null +++ b/models/user/src/mc-user/mc-user-draft/builder.ts @@ -0,0 +1,12 @@ +import { Builder } from '@commercetools-test-data/core'; +import type { TMcCreateUserDraftBuilder, TMcUserDraft } from '../types'; +import generator from './generator'; +import transformers from './transformers'; + +const Model: TMcCreateUserDraftBuilder = () => + Builder({ + generator, + transformers, + }); + +export default Model; diff --git a/models/user/src/mc-user/mc-user-draft/generator.ts b/models/user/src/mc-user/mc-user-draft/generator.ts new file mode 100644 index 000000000..3c7806a87 --- /dev/null +++ b/models/user/src/mc-user/mc-user-draft/generator.ts @@ -0,0 +1,12 @@ +import { fake, Generator } from '@commercetools-test-data/core'; +import type { TMcUserDraft } from '../types'; + +const generator = Generator({ + fields: { + email: fake((f) => f.internet.email()), + firstName: fake((f) => f.person.firstName()), + lastName: fake((f) => f.person.lastName()), + }, +}); + +export default generator; diff --git a/models/user/src/mc-user/mc-user-draft/index.ts b/models/user/src/mc-user/mc-user-draft/index.ts new file mode 100644 index 000000000..96e2519e1 --- /dev/null +++ b/models/user/src/mc-user/mc-user-draft/index.ts @@ -0,0 +1,2 @@ +export { default as random } from './builder'; +export { default as presets } from './presets'; diff --git a/models/user/src/mc-user/mc-user-draft/presets/index.ts b/models/user/src/mc-user/mc-user-draft/presets/index.ts new file mode 100644 index 000000000..ff8b4c563 --- /dev/null +++ b/models/user/src/mc-user/mc-user-draft/presets/index.ts @@ -0,0 +1 @@ +export default {}; diff --git a/models/user/src/mc-user/mc-user-draft/transformers.ts b/models/user/src/mc-user/mc-user-draft/transformers.ts new file mode 100644 index 000000000..03dd4787d --- /dev/null +++ b/models/user/src/mc-user/mc-user-draft/transformers.ts @@ -0,0 +1,14 @@ +import { Transformer } from '@commercetools-test-data/core'; +import type { TMcUserDraft, TMcUserDraftGraphql } from '../types'; + +const transformers = { + default: Transformer('default', {}), + rest: Transformer('rest', {}), + graphql: Transformer('graphql', { + addFields: () => ({ + __typename: 'UserDraft', + }), + }), +}; + +export default transformers; diff --git a/models/user/src/mc-user/presets/index.ts b/models/user/src/mc-user/presets/index.ts new file mode 100644 index 000000000..ff8b4c563 --- /dev/null +++ b/models/user/src/mc-user/presets/index.ts @@ -0,0 +1 @@ +export default {}; diff --git a/models/user/src/mc-user/transformers.ts b/models/user/src/mc-user/transformers.ts new file mode 100644 index 000000000..1bccc65aa --- /dev/null +++ b/models/user/src/mc-user/transformers.ts @@ -0,0 +1,19 @@ +import { Transformer } from '@commercetools-test-data/core'; +import type { TMcUser, TMcUserGraphql } from './types'; + +const transformers = { + default: Transformer('default', { + buildFields: ['idTokenUserInfo'], + }), + rest: Transformer('rest', { + buildFields: ['idTokenUserInfo'], + }), + graphql: Transformer('graphql', { + buildFields: ['idTokenUserInfo'], + addFields: () => ({ + __typename: 'User', + }), + }), +}; + +export default transformers; diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts new file mode 100644 index 000000000..ab46caff3 --- /dev/null +++ b/models/user/src/mc-user/types.ts @@ -0,0 +1,70 @@ +import type { TBuilder } from '@commercetools-test-data/core'; + +type ProjectQueryResult = { + count: number; + offset: number; + total: number; + results: unknown[]; // TODO: Update this when project PR is merged +}; + +export type TIdTokenUserInfo = { + iss: string; + sub: string; + aud: string; + exp: number; + iat?: number; + email?: string; + name?: string; + additionalClaims?: string; +}; + +export type TIdTokenUserInfoGraphql = TIdTokenUserInfo & { + __typename: 'IdTokenUserInfo'; +}; + +export type TMcUser = { + id: string; + version: number; + createdAt: string; + lastModifiedAt: string; + email: string; + firstName: string; + lastName: string; + language: string; + numberFormat: string; + timeZone?: string; + launchdarklyTrackingId: string; + launchdarklyTrackingGroup: string; + launchdarklyTrackingSubgroup?: string; + launchdarklyTrackingTeam: string[]; + launchdarklyTrackingTenant: string; + launchdarklyTrackingCloudEnvironment: string; + gravatarHash: string; + defaultProjectKey?: string; + projects: ProjectQueryResult; + businessRole: string; + idTokenUserInfo?: TIdTokenUserInfo; + verificationStatus: 'Verified' | 'Unverified'; +}; + +export type TMcUserGraphql = TMcUser & { + __typename: 'User'; +}; + +export type TMcUserDraft = { + email: string; + firstName: string; + lastName: string; +}; + +export type TMcUserDraftGraphql = TMcUserDraft & { + __typename: 'UserDraft'; +}; + +export type TMcUserBuilder = TBuilder; +export type TMcUserDraftBuilder = TBuilder; +export type TIdTokenUserInfoBuilder = TBuilder; + +export type TMcCreateUserBuilder = () => TMcUserBuilder; +export type TMcCreateUserDraftBuilder = () => TMcUserDraftBuilder; +export type TMcCreateIdTokenUserInfoBuilder = () => TIdTokenUserInfoBuilder; From 0a3a9b457555aa2813a570baaa0120796cbed4d3 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Tue, 20 Feb 2024 10:18:56 +0100 Subject: [PATCH 03/18] refactor: add Project to generator --- models/user/package.json | 18 ++++++-- models/user/src/mc-user/builder.spec.ts | 25 +++++++++-- models/user/src/mc-user/generator.ts | 8 +++- models/user/src/mc-user/types.ts | 3 +- models/user/src/user/generator.ts | 13 +++++- pnpm-lock.yaml | 58 +++++++++++++++++++++++-- 6 files changed, 113 insertions(+), 12 deletions(-) diff --git a/models/user/package.json b/models/user/package.json index 3507f7945..e15c37d67 100644 --- a/models/user/package.json +++ b/models/user/package.json @@ -8,21 +8,33 @@ "url": "https://github.com/commercetools/test-data.git", "directory": "models/state" }, - "keywords": ["javascript", "typescript", "test-data"], + "keywords": [ + "javascript", + "typescript", + "test-data" + ], "license": "MIT", "publishConfig": { "access": "public" }, "main": "dist/commercetools-test-data-state.cjs.js", "module": "dist/commercetools-test-data-state.esm.js", - "files": ["dist", "package.json", "LICENSE", "README.md"], + "files": [ + "dist", + "package.json", + "LICENSE", + "README.md" + ], "dependencies": { "@babel/runtime": "^7.17.9", "@babel/runtime-corejs3": "^7.17.9", "@commercetools-test-data/commons": "6.11.0", "@commercetools-test-data/core": "6.11.0", + "@commercetools-test-data/project": "workspace:^", "@commercetools-test-data/utils": "6.11.0", "@commercetools/platform-sdk": "^7.0.0", - "@faker-js/faker": "^8.0.0" + "@faker-js/faker": "^8.0.0", + "add": "^2.0.6", + "pnpm": "^8.15.3" } } diff --git a/models/user/src/mc-user/builder.spec.ts b/models/user/src/mc-user/builder.spec.ts index 5da832acd..c693b3339 100644 --- a/models/user/src/mc-user/builder.spec.ts +++ b/models/user/src/mc-user/builder.spec.ts @@ -4,6 +4,25 @@ import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; import type { TMcUser, TMcUserGraphql } from './types'; import * as McUser from './index'; +const projects = { + count: 1, + offset: 0, + total: 1, + results: [ + expect.objectContaining({ + id: expect.any(String), + key: expect.any(String), + version: expect.any(Number), + name: expect.any(String), + countries: expect.any(Array), + currencies: expect.any(Array), + languages: expect.any(Array), + createdAt: expect.any(String), + lastModifiedAt: expect.any(String), + }), + ], +}; + describe('builder', () => { it( ...createBuilderSpec( @@ -27,7 +46,7 @@ describe('builder', () => { launchdarklyTrackingCloudEnvironment: expect.any(String), gravatarHash: expect.any(String), defaultProjectKey: expect.any(String), - projects: null, + projects, idTokenUserInfo: expect.objectContaining({ iss: expect.any(String), sub: expect.any(String), @@ -65,7 +84,7 @@ describe('builder', () => { launchdarklyTrackingCloudEnvironment: expect.any(String), gravatarHash: expect.any(String), defaultProjectKey: expect.any(String), - projects: null, + projects, idTokenUserInfo: expect.objectContaining({ iss: expect.any(String), sub: expect.any(String), @@ -104,7 +123,7 @@ describe('builder', () => { launchdarklyTrackingCloudEnvironment: expect.any(String), gravatarHash: expect.any(String), defaultProjectKey: expect.any(String), - projects: null, + projects, idTokenUserInfo: expect.objectContaining({ iss: expect.any(String), sub: expect.any(String), diff --git a/models/user/src/mc-user/generator.ts b/models/user/src/mc-user/generator.ts index 9867bec23..802f49cfa 100644 --- a/models/user/src/mc-user/generator.ts +++ b/models/user/src/mc-user/generator.ts @@ -1,4 +1,5 @@ import { sequence, fake, Generator } from '@commercetools-test-data/core'; +import { McProject } from '@commercetools-test-data/project'; import { createRelatedDates } from '@commercetools-test-data/utils'; import * as IdTokenUserInfo from './id-token-user-info'; import type { TMcUser } from './types'; @@ -25,7 +26,12 @@ const generator = Generator({ launchdarklyTrackingCloudEnvironment: fake((f) => f.lorem.word()), gravatarHash: fake((f) => f.lorem.word()), defaultProjectKey: fake((f) => f.lorem.word()), - projects: null, // TODO: Update this when project PR is merged + projects: fake(() => ({ + count: 1, + offset: 0, + total: 1, + results: [McProject.random().build()], + })), businessRole: fake(() => 'Other'), idTokenUserInfo: fake(() => IdTokenUserInfo.random()), verificationStatus: fake(() => 'Verified'), diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts index ab46caff3..1836b2be7 100644 --- a/models/user/src/mc-user/types.ts +++ b/models/user/src/mc-user/types.ts @@ -1,10 +1,11 @@ import type { TBuilder } from '@commercetools-test-data/core'; +import type { TMcProject } from '@commercetools-test-data/project'; type ProjectQueryResult = { count: number; offset: number; total: number; - results: unknown[]; // TODO: Update this when project PR is merged + results: TMcProject[]; }; export type TIdTokenUserInfo = { diff --git a/models/user/src/user/generator.ts b/models/user/src/user/generator.ts index f12744400..7e58f5b55 100644 --- a/models/user/src/user/generator.ts +++ b/models/user/src/user/generator.ts @@ -4,6 +4,17 @@ import type { TUser } from './types'; const [getOlderDate, getNewerDate] = createRelatedDates(); +const fakeBusinessRoles = [ + 'ExecutiveManagement', + 'CustomerService', + 'Marketing', + 'SalesAndECommerceManager', + 'ProductProjectManagerOrOwner', + 'Architect', + 'Engineer', + 'Other', +]; + const generator = Generator({ fields: { id: fake((f) => f.string.uuid()), @@ -15,7 +26,7 @@ const generator = Generator({ password: fake((f) => f.internet.password()), language: fake(() => ['en']), numberFormat: fake(() => ['en']), - businessRole: fake(() => 'Other'), + businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), createdAt: fake(getOlderDate), lastModifiedAt: fake(getNewerDate), lastLoginAt: fake(getNewerDate), diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ae834983a..ae9b580ae 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1059,19 +1059,28 @@ importers: version: 7.23.4 '@commercetools-test-data/commons': specifier: 6.11.0 - version: link:../commons + version: 6.11.0 '@commercetools-test-data/core': specifier: 6.11.0 - version: link:../../core + version: 6.11.0 + '@commercetools-test-data/project': + specifier: workspace:^ + version: link:../project '@commercetools-test-data/utils': specifier: 6.11.0 - version: link:../../utils + version: 6.11.0 '@commercetools/platform-sdk': specifier: ^7.0.0 version: 7.0.0 '@faker-js/faker': specifier: ^8.0.0 version: 8.3.1 + add: + specifier: ^2.0.6 + version: 2.0.6 + pnpm: + specifier: ^8.15.3 + version: 8.15.3 models/zone: dependencies: @@ -3222,6 +3231,21 @@ packages: - encoding dev: false + /@commercetools-test-data/commons@6.11.0: + resolution: {integrity: sha512-Eq+vmkyKJ0IoNjedA73FyDbRp27orRI2e9I5R15Mu36Qa/s4zPawztwwbm4oCLdu2vLAQYsx9aH+ekZWzBjUkA==} + dependencies: + '@babel/runtime': 7.23.4 + '@babel/runtime-corejs3': 7.23.4 + '@commercetools-test-data/core': 6.11.0 + '@commercetools-test-data/utils': 6.11.0 + '@commercetools/platform-sdk': 7.0.0 + '@faker-js/faker': 8.3.1 + '@types/lodash': 4.14.202 + lodash: 4.17.21 + transitivePeerDependencies: + - encoding + dev: false + /@commercetools-test-data/core@5.11.2: resolution: {integrity: sha512-iz++zEBengERwg3REm51RsEFmiUeNPQz1K9K2kZjH1sAkFxOf1ydmpM0Tt4Awmi/OHQ+G2tGKKdJewm8AQyHNg==} dependencies: @@ -3232,6 +3256,16 @@ packages: lodash: 4.17.21 dev: false + /@commercetools-test-data/core@6.11.0: + resolution: {integrity: sha512-zEnJ8kIjCW6mgzL3pPm56Shrus3dS/lkK6Pjsy3cjgC0HiKC8euuf7DUBR8gM5ZqqgUsYwOcHvArFnqbDZ7Kig==} + dependencies: + '@babel/runtime': 7.23.4 + '@babel/runtime-corejs3': 7.23.4 + '@faker-js/faker': 8.3.1 + '@types/lodash': 4.14.202 + lodash: 4.17.21 + dev: false + /@commercetools-test-data/product-variant@5.11.2: resolution: {integrity: sha512-7VT0Iez2bi8fhpqJOzVx/WfmLV+mAXlc5SOxZoTeP1JyUyY07GiujI0ctKAh8Q3/0qzVyJ08RFV1BLtYxLWeKA==} dependencies: @@ -3255,6 +3289,14 @@ packages: '@faker-js/faker': 8.3.1 dev: false + /@commercetools-test-data/utils@6.11.0: + resolution: {integrity: sha512-AeyKbGpScByAvwr7EymIl5GPp8h62DQs6JUhnTF/oatxlK7Fzf2JWY/ypgVKEx23CxQ7IDAwT5KH/pJIbiyOJA==} + dependencies: + '@babel/runtime': 7.23.4 + '@babel/runtime-corejs3': 7.23.4 + '@faker-js/faker': 8.3.1 + dev: false + /@commercetools/platform-sdk@4.11.0: resolution: {integrity: sha512-ftcq6mCxzpIG9wmGpTED6KQCApk4nyURh81J3PRP3d48oCLOrkZSyzDDfvflGoVZQeIcox+YdtyqZoryFrRtmQ==} engines: {node: '>=14'} @@ -5306,6 +5348,10 @@ packages: hasBin: true dev: false + /add@2.0.6: + resolution: {integrity: sha512-j5QzrmsokwWWp6kUcJQySpbG+xfOBqqKnup3OIk1pz+kB/80SLorZ9V8zHFLO92Lcd+hbvq8bT+zOGoPkmBV0Q==} + dev: false + /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -10213,6 +10259,12 @@ packages: irregular-plurals: 3.3.0 dev: false + /pnpm@8.15.3: + resolution: {integrity: sha512-3YXNbspkF8b3PbMroetHZ/+0y6T1vwcnhGciyStrnlaizCGLEThbvCsh8YoWpn2nes6um2Gg9WoWQ7JeH7amBQ==} + engines: {node: '>=16.14'} + hasBin: true + dev: false + /preferred-pm@3.0.3: resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} engines: {node: '>=10'} From c9f6635f1a00f6d46eedbbbcbb2b60224100d946 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Tue, 20 Feb 2024 10:26:45 +0100 Subject: [PATCH 04/18] refactor: update changeset --- .changeset/mighty-avengers-strike.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.changeset/mighty-avengers-strike.md b/.changeset/mighty-avengers-strike.md index 6975e2949..852c07db2 100644 --- a/.changeset/mighty-avengers-strike.md +++ b/.changeset/mighty-avengers-strike.md @@ -1,24 +1,27 @@ --- -'@commercetools-test-data/project': minor +'@commercetools-test-data/user': minor --- -This package provides the data model for the commercetools platform `User` type and the enhanced representation used by the Merchant Center API. +The package provides 2 type of models for Users: one targeting to User of the CoCo API and one targeting the User of the Merchant Center API (prefixed by `Mc`). ```ts import { - // Coco + // CoCo User, UserDraft, type TUser, type TUserDraft, - type TUserDraftGraphql, // MC McUser, McUserDraft, type TMcUser, type TMcUserDraft, - type TMcUserDraftGraphql, } from '@commercetools-test-data/user'; +const user = User.random().buildRest(); +const userDraft = UserDraft.random().buildRest(); + +const mcUser = McUser.random().buildGraphql(); +const mcUserDraft = McUserDraft.random().buildGraphql(); ``` From 468c142e2396e641f6c680adfd7769a4d76c4b32 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Tue, 20 Feb 2024 10:37:22 +0100 Subject: [PATCH 05/18] refactor: remove typename from user draft --- models/user/src/mc-user/mc-user-draft/builder.spec.ts | 1 - models/user/src/mc-user/mc-user-draft/transformers.ts | 6 +----- models/user/src/mc-user/types.ts | 4 +--- models/user/src/user/types.ts | 4 +--- models/user/src/user/user-draft/builder.spec.ts | 1 - models/user/src/user/user-draft/transformers.ts | 6 +----- 6 files changed, 4 insertions(+), 18 deletions(-) diff --git a/models/user/src/mc-user/mc-user-draft/builder.spec.ts b/models/user/src/mc-user/mc-user-draft/builder.spec.ts index bdd959baa..a72531eaf 100644 --- a/models/user/src/mc-user/mc-user-draft/builder.spec.ts +++ b/models/user/src/mc-user/mc-user-draft/builder.spec.ts @@ -34,7 +34,6 @@ describe('builder', () => { 'graphql', McUserDraft.random(), expect.objectContaining({ - __typename: 'UserDraft', email: expect.any(String), firstName: expect.any(String), lastName: expect.any(String), diff --git a/models/user/src/mc-user/mc-user-draft/transformers.ts b/models/user/src/mc-user/mc-user-draft/transformers.ts index 03dd4787d..dceeb5328 100644 --- a/models/user/src/mc-user/mc-user-draft/transformers.ts +++ b/models/user/src/mc-user/mc-user-draft/transformers.ts @@ -4,11 +4,7 @@ import type { TMcUserDraft, TMcUserDraftGraphql } from '../types'; const transformers = { default: Transformer('default', {}), rest: Transformer('rest', {}), - graphql: Transformer('graphql', { - addFields: () => ({ - __typename: 'UserDraft', - }), - }), + graphql: Transformer('graphql', {}), }; export default transformers; diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts index 1836b2be7..5f48e4514 100644 --- a/models/user/src/mc-user/types.ts +++ b/models/user/src/mc-user/types.ts @@ -58,9 +58,7 @@ export type TMcUserDraft = { lastName: string; }; -export type TMcUserDraftGraphql = TMcUserDraft & { - __typename: 'UserDraft'; -}; +export type TMcUserDraftGraphql = TMcUserDraft; export type TMcUserBuilder = TBuilder; export type TMcUserDraftBuilder = TBuilder; diff --git a/models/user/src/user/types.ts b/models/user/src/user/types.ts index d548fbc61..b7d7dda40 100644 --- a/models/user/src/user/types.ts +++ b/models/user/src/user/types.ts @@ -40,9 +40,7 @@ export type TUserDraft = { businessRole: BusinessRole; }; -export type TUserDraftGraphql = TUserDraft & { - __typename: 'UserDraft'; -}; +export type TUserDraftGraphql = TUserDraft; export type TUserBuilder = TBuilder; export type TUserDraftBuilder = TBuilder; diff --git a/models/user/src/user/user-draft/builder.spec.ts b/models/user/src/user/user-draft/builder.spec.ts index 7b0fb47a5..0c1c99667 100644 --- a/models/user/src/user/user-draft/builder.spec.ts +++ b/models/user/src/user/user-draft/builder.spec.ts @@ -42,7 +42,6 @@ describe('builder', () => { 'graphql', UserDraft.random(), expect.objectContaining({ - __typename: 'UserDraft', email: expect.any(String), password: expect.any(String), firstName: expect.any(String), diff --git a/models/user/src/user/user-draft/transformers.ts b/models/user/src/user/user-draft/transformers.ts index 70eee769d..7099f84db 100644 --- a/models/user/src/user/user-draft/transformers.ts +++ b/models/user/src/user/user-draft/transformers.ts @@ -4,11 +4,7 @@ import type { TUserDraft, TUserDraftGraphql } from '../types'; const transformers = { default: Transformer('default', {}), rest: Transformer('rest', {}), - graphql: Transformer('graphql', { - addFields: () => ({ - __typename: 'UserDraft', - }), - }), + graphql: Transformer('graphql', {}), }; export default transformers; From 517fb71d6901531e57544cfba45ba7bab6d31c7e Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 15:19:32 +0100 Subject: [PATCH 06/18] refactor: update package.json, remove copy/paste left over --- models/user/package.json | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/models/user/package.json b/models/user/package.json index e15c37d67..cf7787b15 100644 --- a/models/user/package.json +++ b/models/user/package.json @@ -1,30 +1,21 @@ { - "name": "@commercetools-test-data/state", + "name": "@commercetools-test-data/user", "version": "6.11.0", - "description": "Data model for commercetools API State", + "description": "Data model for commercetools API User", "bugs": "https://github.com/commercetools/test-data/issues", "repository": { "type": "git", "url": "https://github.com/commercetools/test-data.git", - "directory": "models/state" + "directory": "models/user" }, - "keywords": [ - "javascript", - "typescript", - "test-data" - ], + "keywords": ["javascript", "typescript", "test-data"], "license": "MIT", "publishConfig": { "access": "public" }, - "main": "dist/commercetools-test-data-state.cjs.js", - "module": "dist/commercetools-test-data-state.esm.js", - "files": [ - "dist", - "package.json", - "LICENSE", - "README.md" - ], + "main": "dist/commercetools-test-data-user.cjs.js", + "module": "dist/commercetools-test-data-user.esm.js", + "files": ["dist", "package.json", "LICENSE", "README.md"], "dependencies": { "@babel/runtime": "^7.17.9", "@babel/runtime-corejs3": "^7.17.9", @@ -33,8 +24,6 @@ "@commercetools-test-data/project": "workspace:^", "@commercetools-test-data/utils": "6.11.0", "@commercetools/platform-sdk": "^7.0.0", - "@faker-js/faker": "^8.0.0", - "add": "^2.0.6", - "pnpm": "^8.15.3" + "@faker-js/faker": "^8.0.0" } } From 37ada55f00657385cf92045975a32ecaa350c12d Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 15:32:54 +0100 Subject: [PATCH 07/18] refactor: add business role to mc-user-draft --- models/user/src/constants.ts | 10 ++++++++++ models/user/src/mc-user/generator.ts | 3 ++- .../user/src/mc-user/mc-user-draft/builder.spec.ts | 2 +- models/user/src/mc-user/mc-user-draft/generator.ts | 2 ++ models/user/src/mc-user/types.ts | 1 + models/user/src/user/generator.ts | 12 +----------- models/user/src/user/user-draft/generator.ts | 3 ++- 7 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 models/user/src/constants.ts diff --git a/models/user/src/constants.ts b/models/user/src/constants.ts new file mode 100644 index 000000000..44fbc5d99 --- /dev/null +++ b/models/user/src/constants.ts @@ -0,0 +1,10 @@ +export const fakeBusinessRoles = [ + 'ExecutiveManagement', + 'CustomerService', + 'Marketing', + 'SalesAndECommerceManager', + 'ProductProjectManagerOrOwner', + 'Architect', + 'Engineer', + 'Other', +]; diff --git a/models/user/src/mc-user/generator.ts b/models/user/src/mc-user/generator.ts index 802f49cfa..928a444e8 100644 --- a/models/user/src/mc-user/generator.ts +++ b/models/user/src/mc-user/generator.ts @@ -1,6 +1,7 @@ import { sequence, fake, Generator } from '@commercetools-test-data/core'; import { McProject } from '@commercetools-test-data/project'; import { createRelatedDates } from '@commercetools-test-data/utils'; +import { fakeBusinessRoles } from '../constants'; import * as IdTokenUserInfo from './id-token-user-info'; import type { TMcUser } from './types'; @@ -32,7 +33,7 @@ const generator = Generator({ total: 1, results: [McProject.random().build()], })), - businessRole: fake(() => 'Other'), + businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), idTokenUserInfo: fake(() => IdTokenUserInfo.random()), verificationStatus: fake(() => 'Verified'), }, diff --git a/models/user/src/mc-user/mc-user-draft/builder.spec.ts b/models/user/src/mc-user/mc-user-draft/builder.spec.ts index a72531eaf..7857f3769 100644 --- a/models/user/src/mc-user/mc-user-draft/builder.spec.ts +++ b/models/user/src/mc-user/mc-user-draft/builder.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable jest/no-disabled-tests */ /* eslint-disable jest/valid-title */ import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; -import { TMcUserDraft, TMcUserDraftGraphql } from '../types'; +import type { TMcUserDraft, TMcUserDraftGraphql } from '../types'; import * as McUserDraft from './index'; describe('builder', () => { diff --git a/models/user/src/mc-user/mc-user-draft/generator.ts b/models/user/src/mc-user/mc-user-draft/generator.ts index 3c7806a87..cdba8b8cb 100644 --- a/models/user/src/mc-user/mc-user-draft/generator.ts +++ b/models/user/src/mc-user/mc-user-draft/generator.ts @@ -1,4 +1,5 @@ import { fake, Generator } from '@commercetools-test-data/core'; +import { fakeBusinessRoles } from '../../constants'; import type { TMcUserDraft } from '../types'; const generator = Generator({ @@ -6,6 +7,7 @@ const generator = Generator({ email: fake((f) => f.internet.email()), firstName: fake((f) => f.person.firstName()), lastName: fake((f) => f.person.lastName()), + businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), }, }); diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts index 5f48e4514..2fcb24697 100644 --- a/models/user/src/mc-user/types.ts +++ b/models/user/src/mc-user/types.ts @@ -56,6 +56,7 @@ export type TMcUserDraft = { email: string; firstName: string; lastName: string; + businessRole?: string; }; export type TMcUserDraftGraphql = TMcUserDraft; diff --git a/models/user/src/user/generator.ts b/models/user/src/user/generator.ts index 7e58f5b55..45cd01624 100644 --- a/models/user/src/user/generator.ts +++ b/models/user/src/user/generator.ts @@ -1,20 +1,10 @@ import { sequence, fake, Generator } from '@commercetools-test-data/core'; import { createRelatedDates } from '@commercetools-test-data/utils'; +import { fakeBusinessRoles } from '../constants'; import type { TUser } from './types'; const [getOlderDate, getNewerDate] = createRelatedDates(); -const fakeBusinessRoles = [ - 'ExecutiveManagement', - 'CustomerService', - 'Marketing', - 'SalesAndECommerceManager', - 'ProductProjectManagerOrOwner', - 'Architect', - 'Engineer', - 'Other', -]; - const generator = Generator({ fields: { id: fake((f) => f.string.uuid()), diff --git a/models/user/src/user/user-draft/generator.ts b/models/user/src/user/user-draft/generator.ts index 62eefd9ee..a02b47b81 100644 --- a/models/user/src/user/user-draft/generator.ts +++ b/models/user/src/user/user-draft/generator.ts @@ -1,4 +1,5 @@ import { fake, Generator } from '@commercetools-test-data/core'; +import { fakeBusinessRoles } from '../../constants'; import type { TUserDraft } from '../types'; const generator = Generator({ @@ -9,7 +10,7 @@ const generator = Generator({ lastName: fake((f) => f.person.lastName()), language: fake(() => ['en']), numberFormat: fake(() => ['en']), - businessRole: fake(() => 'Other'), + businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), }, }); From 28c6959802fd5f6896b62cfdeb0535beb34dd0fd Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 17:08:05 +0100 Subject: [PATCH 08/18] refactor: generate types for mc gateway and update mc-user types --- codegen.mc.yml | 20 + graphql-types/src/generated/mc.ts | 647 ++ models/user/README.md | 4 +- .../id-token-user-info/builder.spec.ts | 8 +- .../src/mc-user/id-token-user-info/builder.ts | 4 +- .../mc-user/id-token-user-info/generator.ts | 4 +- .../id-token-user-info/transformers.ts | 19 +- .../src/mc-user/mc-user-draft/builder.spec.ts | 4 +- .../src/mc-user/mc-user-draft/transformers.ts | 4 +- models/user/src/mc-user/types.ts | 64 +- package.json | 4 +- schemas/mc.json | 6583 +++++++++++++++++ 12 files changed, 7286 insertions(+), 79 deletions(-) create mode 100644 codegen.mc.yml create mode 100644 graphql-types/src/generated/mc.ts create mode 100644 schemas/mc.json diff --git a/codegen.mc.yml b/codegen.mc.yml new file mode 100644 index 000000000..3be635df6 --- /dev/null +++ b/codegen.mc.yml @@ -0,0 +1,20 @@ +schema: + - '${MC_API_URL}/graphql': + headers: + X-Graphql-Target: mc +extensions: + codegen: + generates: + schemas/mc.json: + plugins: + - introspection + graphql-types/src/generated/mc.ts: + plugins: + - typescript + - typescript-operations + config: + typesPrefix: TMc + addUnderscoreToArgsType: true + hooks: + afterAllFileWrite: + - prettier --write diff --git a/graphql-types/src/generated/mc.ts b/graphql-types/src/generated/mc.ts new file mode 100644 index 000000000..005a42d3c --- /dev/null +++ b/graphql-types/src/generated/mc.ts @@ -0,0 +1,647 @@ +export type Maybe = T | null; +export type InputMaybe = Maybe; +export type Exact = { + [K in keyof T]: T[K]; +}; +export type MakeOptional = Omit & { + [SubKey in K]?: Maybe; +}; +export type MakeMaybe = Omit & { + [SubKey in K]: Maybe; +}; +export type MakeEmpty< + T extends { [key: string]: unknown }, + K extends keyof T +> = { [_ in K]?: never }; +export type Incremental = + | T + | { + [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never; + }; +/** All built-in and custom scalars, mapped to their actual values */ +export type Scalars = { + ID: { input: string; output: string }; + String: { input: string; output: string }; + Boolean: { input: boolean; output: boolean }; + Int: { input: number; output: number }; + Float: { input: number; output: number }; +}; + +export type TMcAdditionalUserInfo = { + firstName: Scalars['String']['input']; + lastName: Scalars['String']['input']; +}; + +export type TMcAllPermissionsForAllApplications = { + __typename?: 'AllPermissionsForAllApplications'; + allAppliedActionRights: Array; + allAppliedDataFences: Array; + allAppliedMenuVisibilities: Array; + allAppliedPermissions: Array; +}; + +export type TMcAppliedActionRight = { + __typename?: 'AppliedActionRight'; + group: Scalars['String']['output']; + name: Scalars['String']['output']; + value: Scalars['Boolean']['output']; +}; + +export type TMcAppliedDataFence = TMcStoreDataFence; + +export type TMcAppliedMenuVisibilities = { + __typename?: 'AppliedMenuVisibilities'; + name: Scalars['String']['output']; + value: Scalars['Boolean']['output']; +}; + +export type TMcAppliedPermission = { + __typename?: 'AppliedPermission'; + name: Scalars['String']['output']; + value: Scalars['Boolean']['output']; +}; + +export type TMcCartClassificationValue = { + __typename?: 'CartClassificationValue'; + allLocaleLabels: Array>; + key: Scalars['String']['output']; +}; + +export type TMcChangeUserBusinessRole = { + businessRole?: InputMaybe; +}; + +export type TMcChangeUserLanguage = { + language: Scalars['String']['input']; +}; + +export type TMcChangeUserName = { + firstName: Scalars['String']['input']; + lastName: Scalars['String']['input']; +}; + +export type TMcChangeUserNumberFormat = { + numberFormat: Scalars['String']['input']; +}; + +export type TMcChangeUserPassword = { + password: Scalars['String']['input']; +}; + +export type TMcDataFence = { + type: Scalars['String']['output']; +}; + +export type TMcDeleteAccountRequest = { + __typename?: 'DeleteAccountRequest'; + jwt?: Maybe; +}; + +export type TMcDeletedUser = { + __typename?: 'DeletedUser'; + id: Scalars['String']['output']; +}; + +export type TMcFeature = { + __typename?: 'Feature'; + name: Scalars['String']['output']; + reason?: Maybe; + value: Scalars['Boolean']['output']; +}; + +export type TMcIdTokenUserInfo = { + __typename?: 'IdTokenUserInfo'; + additionalClaims?: Maybe; + aud: Scalars['String']['output']; + email?: Maybe; + exp: Scalars['Float']['output']; + iat?: Maybe; + iss: Scalars['String']['output']; + name?: Maybe; + sub: Scalars['String']['output']; +}; + +export type TMcImportResponse = { + __typename?: 'ImportResponse'; + hasImportedSampleData?: Maybe; + importedSampleData?: Maybe; + projectKey?: Maybe; +}; + +export type TMcInvitationInput = { + emails: Array; + organization: TMcInvitationOrganizationInput; + team: TMcInvitationTeamInput; +}; + +export type TMcInvitationOrganizationInput = { + id: Scalars['ID']['input']; + name?: InputMaybe; + version: Scalars['Int']['input']; +}; + +export type TMcInvitationQueryResult = { + __typename?: 'InvitationQueryResult'; + gravatarHash?: Maybe; + hasValidEmail: Scalars['Boolean']['output']; + isAlreadyAMemberOfTeam: Scalars['Boolean']['output']; + isKnownUser: Scalars['Boolean']['output']; + version: Scalars['Int']['output']; +}; + +export type TMcInvitationResult = { + __typename?: 'InvitationResult'; + email: Scalars['String']['output']; + jwt?: Maybe; + status: TMcInvitationStatus; +}; + +export enum TMcInvitationStatus { + InvitationFailure = 'InvitationFailure', + InvitationSent = 'InvitationSent', + PendingRegistration = 'PendingRegistration', +} + +export type TMcInvitationTeamInput = { + id: Scalars['ID']['input']; +}; + +export type TMcInvitationWhereInput = { + email: Scalars['String']['input']; + organizationId: Scalars['ID']['input']; + teamId: Scalars['ID']['input']; +}; + +export type TMcLocalizedField = { + __typename?: 'LocalizedField'; + locale: Scalars['String']['output']; + value: Scalars['String']['output']; +}; + +export type TMcMetaData = { + createdAt: Scalars['String']['output']; + lastModifiedAt: Scalars['String']['output']; + version?: Maybe; +}; + +export type TMcMutation = { + __typename?: 'Mutation'; + createMyOrganization?: Maybe; + createMyProject?: Maybe; + createOAuthClient: TMcOAuthClient; + deleteAccount: TMcDeletedUser; + deleteOAuthClient: TMcOAuthClient; + importSampleData: TMcImportResponse; + invite: Array; + random: Scalars['String']['output']; + resetPassword: TMcResetUser; + sendLinkToDeleteAccount?: Maybe; + sendLinkToResetPassword?: Maybe; + sendLinkToSignUp?: Maybe; + signUp: TMcSignedUpUser; + updateUser: TMcUser; +}; + +export type TMcMutation_CreateMyOrganizationArgs = { + draft: TMcOrganizationDraftType; +}; + +export type TMcMutation_CreateMyProjectArgs = { + draft: TMcProjectDraftType; + myPermission: TMcMyPermissionInitializationInput; +}; + +export type TMcMutation_CreateOAuthClientArgs = { + draft: TMcOAuthClientCreationInput; +}; + +export type TMcMutation_DeleteAccountArgs = { + jwt: Scalars['String']['input']; +}; + +export type TMcMutation_DeleteOAuthClientArgs = { + id: Scalars['ID']['input']; +}; + +export type TMcMutation_ImportSampleDataArgs = { + projectKey: Scalars['String']['input']; +}; + +export type TMcMutation_InviteArgs = { + draft: TMcInvitationInput; + origin?: InputMaybe; +}; + +export type TMcMutation_RandomArgs = { + byteLength: Scalars['Int']['input']; +}; + +export type TMcMutation_ResetPasswordArgs = { + draft: TMcResetPasswordDraft; + jwt: Scalars['String']['input']; +}; + +export type TMcMutation_SendLinkToResetPasswordArgs = { + email: Scalars['String']['input']; +}; + +export type TMcMutation_SendLinkToSignUpArgs = { + additionalInfo?: InputMaybe; + email: Scalars['String']['input']; + language?: InputMaybe; +}; + +export type TMcMutation_SignUpArgs = { + draft: TMcUserDraft; + jwt: Scalars['String']['input']; +}; + +export type TMcMutation_UpdateUserArgs = { + actions: Array; + version: Scalars['Int']['input']; +}; + +export type TMcMyPermissionInitializationInput = { + teamId: Scalars['String']['input']; +}; + +export type TMcOAuthClient = { + __typename?: 'OAuthClient'; + createdAt?: Maybe; + id: Scalars['ID']['output']; + lastUsedAt?: Maybe; + name: Scalars['String']['output']; + ownerId: Scalars['ID']['output']; + permissions: Array; + secret: Scalars['String']['output']; +}; + +export type TMcOAuthClientCreationInput = { + name: Scalars['String']['input']; + ownerId: Scalars['ID']['input']; + permissions: Array; +}; + +export type TMcOAuthClientQueryResult = TMcQueryResult & { + __typename?: 'OAuthClientQueryResult'; + count: Scalars['Int']['output']; + offset: Scalars['Int']['output']; + results: Array; + total: Scalars['Int']['output']; +}; + +export type TMcOAuthClientTemplate = { + __typename?: 'OAuthClientTemplate'; + key: Scalars['String']['output']; + oAuthScopes: Array; +}; + +export type TMcOrganization = { + __typename?: 'Organization'; + /** @deprecated This field will be removed in the future. */ + createdAt: Scalars['String']['output']; + id: Scalars['ID']['output']; + name: Scalars['String']['output']; +}; + +export type TMcOrganizationCreated = { + __typename?: 'OrganizationCreated'; + id: Scalars['String']['output']; + name: Scalars['String']['output']; + teams: Array; +}; + +export type TMcOrganizationDraftType = { + name: Scalars['String']['input']; + ownerId: Scalars['String']['input']; +}; + +export type TMcOrganizationTeamsCreated = { + __typename?: 'OrganizationTeamsCreated'; + id: Scalars['String']['output']; + name: Scalars['String']['output']; +}; + +export type TMcProject = TMcMetaData & { + __typename?: 'Project'; + allAppliedActionRights: Array; + allAppliedDataFences: Array; + /** @deprecated This field has been moved into the menuPermissionsForAllApplications field. */ + allAppliedMenuVisibilities: Array; + allAppliedPermissions: Array; + allPermissionsForAllApplications: TMcAllPermissionsForAllApplications; + apiVersion: Scalars['String']['output']; + countries: Array; + createdAt: Scalars['String']['output']; + currencies: Array; + expiry: TMcProjectExpiry; + initialized: Scalars['Boolean']['output']; + isProductionProject: Scalars['Boolean']['output']; + key: Scalars['String']['output']; + languages: Array; + lastModifiedAt: Scalars['String']['output']; + name: Scalars['String']['output']; + owner: TMcOrganization; + plan: Scalars['String']['output']; + sampleDataImportDataset?: Maybe; + shippingRateInputType?: Maybe; + suspension: TMcProjectSuspension; + version?: Maybe; +}; + +export type TMcProjectDraftType = { + countries: Array; + currencies: Array; + deleteDaysAfterCreation?: InputMaybe; + key: Scalars['String']['input']; + languages: Array; + messagesEnabled?: InputMaybe; + name: Scalars['String']['input']; + ownerId: Scalars['String']['input']; +}; + +export type TMcProjectExpiry = { + __typename?: 'ProjectExpiry'; + daysLeft?: Maybe; + isActive: Scalars['Boolean']['output']; +}; + +export type TMcProjectPendingCreation = { + __typename?: 'ProjectPendingCreation'; + id: Scalars['String']['output']; + key: Scalars['String']['output']; + name: Scalars['String']['output']; + version: Scalars['Int']['output']; +}; + +export type TMcProjectPermission = { + __typename?: 'ProjectPermission'; + key: Scalars['String']['output']; + projectKey?: Maybe; + storeKey?: Maybe; +}; + +export type TMcProjectPermissionInput = { + key: Scalars['String']['input']; + projectKey?: InputMaybe; + storeKey?: InputMaybe; +}; + +export type TMcProjectQueryResult = TMcQueryResult & { + __typename?: 'ProjectQueryResult'; + count: Scalars['Int']['output']; + offset: Scalars['Int']['output']; + results: Array; + total: Scalars['Int']['output']; +}; + +export type TMcProjectSuspension = { + __typename?: 'ProjectSuspension'; + isActive: Scalars['Boolean']['output']; + reason?: Maybe; +}; + +export enum TMcProjectSuspensionReason { + Other = 'Other', + Payment = 'Payment', + TemporaryMaintenance = 'TemporaryMaintenance', +} + +export type TMcQuery = { + __typename?: 'Query'; + allFeatures: Array; + allImpliedOAuthScopes: Array; + allSupportedActionRights?: Maybe>; + allSupportedMenuVisibilities?: Maybe>; + allSupportedOAuthScopes: Array; + allSupportedOAuthScopesForOAuthClients: Array; + allSupportedResources?: Maybe>; + allSupportedStoreScopes?: Maybe>; + amILoggedIn: Scalars['Boolean']['output']; + invitation?: Maybe; + me?: Maybe; + oAuthClient?: Maybe; + oAuthClientTemplates: Array; + oAuthClients: TMcOAuthClientQueryResult; + project?: Maybe; + release?: Maybe; + releases?: Maybe; + storeOAuthScopes: Array; + systemStatus: TMcSystemStatus; +}; + +export type TMcQuery_AllImpliedOAuthScopesArgs = { + onlyConfiguredOnTrustedClient?: InputMaybe; + resourceAccessPermissions: Array; +}; + +export type TMcQuery_InvitationArgs = { + where?: InputMaybe; +}; + +export type TMcQuery_OAuthClientArgs = { + id: Scalars['String']['input']; +}; + +export type TMcQuery_OAuthClientsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + sort?: InputMaybe>; +}; + +export type TMcQuery_ProjectArgs = { + key?: InputMaybe; +}; + +export type TMcQuery_ReleasesArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + origin: TMcReleaseOrigin; +}; + +export type TMcQueryResult = { + count: Scalars['Int']['output']; + offset: Scalars['Int']['output']; + total: Scalars['Int']['output']; +}; + +export type TMcReference = { + __typename?: 'Reference'; + id: Scalars['String']['output']; + typeId: Scalars['String']['output']; +}; + +export type TMcReferenceInput = { + id: Scalars['ID']['input']; + typeId: Scalars['String']['input']; +}; + +export type TMcReleaseEntry = { + __typename?: 'ReleaseEntry'; + description: Scalars['String']['output']; + guid: Scalars['String']['output']; + link: Scalars['String']['output']; + releasedAt: Scalars['String']['output']; + title: Scalars['String']['output']; +}; + +export type TMcReleaseHistory = { + __typename?: 'ReleaseHistory'; + description: Scalars['String']['output']; + entries: TMcReleaseQueryResult; + link: Scalars['String']['output']; + title: Scalars['String']['output']; +}; + +export type TMcReleaseHistory_EntriesArgs = { + limit?: InputMaybe; + offset?: InputMaybe; +}; + +export enum TMcReleaseOrigin { + Ctp = 'ctp', + Mc = 'mc', +} + +export type TMcReleaseQueryResult = TMcQueryResult & { + __typename?: 'ReleaseQueryResult'; + count: Scalars['Int']['output']; + offset: Scalars['Int']['output']; + results: Array; + total: Scalars['Int']['output']; +}; + +export type TMcResetPasswordDraft = { + password: Scalars['String']['input']; +}; + +export type TMcResetPasswordRequest = { + __typename?: 'ResetPasswordRequest'; + jwt?: Maybe; +}; + +export type TMcResetUser = { + __typename?: 'ResetUser'; + id: Scalars['String']['output']; +}; + +export type TMcSetUserTimeZone = { + timeZone?: InputMaybe; +}; + +export type TMcShippingRateInputType = { + __typename?: 'ShippingRateInputType'; + type: TMcShippingRateType; + values?: Maybe>>; +}; + +export enum TMcShippingRateType { + CartClassification = 'CartClassification', + CartScore = 'CartScore', + CartValue = 'CartValue', +} + +export type TMcSignUpRequest = { + __typename?: 'SignUpRequest'; + jwt?: Maybe; +}; + +export type TMcSignedUpUser = { + __typename?: 'SignedUpUser'; + id: Scalars['String']['output']; +}; + +export type TMcStoreDataFence = TMcDataFence & { + __typename?: 'StoreDataFence'; + group: Scalars['String']['output']; + name: Scalars['String']['output']; + type: Scalars['String']['output']; + value: Scalars['String']['output']; +}; + +export type TMcSupportedActionRight = { + __typename?: 'SupportedActionRight'; + group: Scalars['String']['output']; + name: Scalars['String']['output']; +}; + +export type TMcSupportedMenuVisibility = { + __typename?: 'SupportedMenuVisibility'; + group: Scalars['String']['output']; + name: Scalars['String']['output']; +}; + +export type TMcSupportedOAuthScopeForOAuthClient = { + __typename?: 'SupportedOAuthScopeForOAuthClient'; + name: Scalars['String']['output']; +}; + +export type TMcSupportedResource = { + __typename?: 'SupportedResource'; + name: Scalars['String']['output']; +}; + +export type TMcSupportedStoreScope = { + __typename?: 'SupportedStoreScope'; + group: Scalars['String']['output']; + name: Scalars['String']['output']; +}; + +export enum TMcSystemOperabilityStatus { + Degraded = 'DEGRADED', + Operational = 'OPERATIONAL', + Outage = 'OUTAGE', +} + +export type TMcSystemStatus = { + __typename?: 'SystemStatus'; + status: TMcSystemOperabilityStatus; +}; + +export type TMcUser = TMcMetaData & { + __typename?: 'User'; + businessRole?: Maybe; + createdAt: Scalars['String']['output']; + defaultProjectKey?: Maybe; + email: Scalars['String']['output']; + firstName: Scalars['String']['output']; + gravatarHash: Scalars['String']['output']; + id: Scalars['ID']['output']; + idTokenUserInfo?: Maybe; + language: Scalars['String']['output']; + lastModifiedAt: Scalars['String']['output']; + lastName: Scalars['String']['output']; + launchdarklyTrackingCloudEnvironment: Scalars['String']['output']; + launchdarklyTrackingGroup: Scalars['String']['output']; + launchdarklyTrackingId: Scalars['String']['output']; + launchdarklyTrackingSubgroup?: Maybe; + launchdarklyTrackingTeam?: Maybe>; + launchdarklyTrackingTenant: Scalars['String']['output']; + numberFormat: Scalars['String']['output']; + projects: TMcProjectQueryResult; + timeZone?: Maybe; + /** @deprecated This field is not used anymore. */ + verificationStatus: TMcVerificationStatus; + version?: Maybe; +}; + +export type TMcUserDraft = { + businessRole?: InputMaybe; + firstName: Scalars['String']['input']; + lastName: Scalars['String']['input']; + password: Scalars['String']['input']; +}; + +export type TMcUserUpdateAction = { + changeBusinessRole?: InputMaybe; + changeLanguage?: InputMaybe; + changeName?: InputMaybe; + changeNumberFormat?: InputMaybe; + changePassword?: InputMaybe; + setTimeZone?: InputMaybe; +}; + +export enum TMcVerificationStatus { + Unverified = 'Unverified', + Verified = 'Verified', +} diff --git a/models/user/README.md b/models/user/README.md index 87fa51320..837393474 100644 --- a/models/user/README.md +++ b/models/user/README.md @@ -26,7 +26,6 @@ import { McUserDraft, type TMcUser, type TMcUserDraft, - type TMcUserDraftGraphql, } from '@commercetools-test-data/user'; const user = User.random().buildRest(); @@ -35,6 +34,5 @@ const userGraphQLDraft = UserDraft.random().buildGraphql(); const mcUser = McUser.random().buildRest(); const mcUserDraft = McUserDraft.random().buildRest(); -const mcUserGraphQLDraft = - McUserDraft.random().buildGraphql(); +const mcUserGraphQLDraft = McUserDraft.random().buildGraphql(); ``` diff --git a/models/user/src/mc-user/id-token-user-info/builder.spec.ts b/models/user/src/mc-user/id-token-user-info/builder.spec.ts index b8b3202b1..0ae21072f 100644 --- a/models/user/src/mc-user/id-token-user-info/builder.spec.ts +++ b/models/user/src/mc-user/id-token-user-info/builder.spec.ts @@ -1,12 +1,12 @@ /* eslint-disable jest/no-disabled-tests */ /* eslint-disable jest/valid-title */ import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; -import type { TIdTokenUserInfo, TIdTokenUserInfoGraphql } from '../types'; +import type { TMcIdTokenUserInfo, TMcIdTokenUserInfoGraphql } from '../types'; import * as IdTokenUserInfo from './index'; describe('builder', () => { it( - ...createBuilderSpec( + ...createBuilderSpec( 'default', IdTokenUserInfo.random(), expect.objectContaining({ @@ -23,7 +23,7 @@ describe('builder', () => { ); it( - ...createBuilderSpec( + ...createBuilderSpec( 'rest', IdTokenUserInfo.random(), expect.objectContaining({ @@ -40,7 +40,7 @@ describe('builder', () => { ); it( - ...createBuilderSpec( + ...createBuilderSpec( 'graphql', IdTokenUserInfo.random(), expect.objectContaining({ diff --git a/models/user/src/mc-user/id-token-user-info/builder.ts b/models/user/src/mc-user/id-token-user-info/builder.ts index 1a262838b..5c4478cfe 100644 --- a/models/user/src/mc-user/id-token-user-info/builder.ts +++ b/models/user/src/mc-user/id-token-user-info/builder.ts @@ -1,13 +1,13 @@ import { Builder } from '@commercetools-test-data/core'; import type { TMcCreateIdTokenUserInfoBuilder, - TIdTokenUserInfo, + TMcIdTokenUserInfo, } from '../types'; import generator from './generator'; import transformers from './transformers'; const Model: TMcCreateIdTokenUserInfoBuilder = () => - Builder({ + Builder({ generator, transformers, }); diff --git a/models/user/src/mc-user/id-token-user-info/generator.ts b/models/user/src/mc-user/id-token-user-info/generator.ts index f788f83c8..5dead6b4e 100644 --- a/models/user/src/mc-user/id-token-user-info/generator.ts +++ b/models/user/src/mc-user/id-token-user-info/generator.ts @@ -1,10 +1,10 @@ import { fake, Generator } from '@commercetools-test-data/core'; import { createRelatedDates } from '@commercetools-test-data/utils'; -import type { TIdTokenUserInfo } from '../types'; +import type { TMcIdTokenUserInfo } from '../types'; const [_, getNewerDate] = createRelatedDates(); -const generator = Generator({ +const generator = Generator({ fields: { iss: fake((f) => f.internet.url()), sub: fake((f) => f.internet.email()), diff --git a/models/user/src/mc-user/id-token-user-info/transformers.ts b/models/user/src/mc-user/id-token-user-info/transformers.ts index 7fc1542b8..b23e30c65 100644 --- a/models/user/src/mc-user/id-token-user-info/transformers.ts +++ b/models/user/src/mc-user/id-token-user-info/transformers.ts @@ -1,14 +1,17 @@ import { Transformer } from '@commercetools-test-data/core'; -import type { TIdTokenUserInfo, TIdTokenUserInfoGraphql } from '../types'; +import type { TMcIdTokenUserInfo, TMcIdTokenUserInfoGraphql } from '../types'; const transformers = { - default: Transformer('default', {}), - rest: Transformer('rest', {}), - graphql: Transformer('graphql', { - addFields: () => ({ - __typename: 'IdTokenUserInfo', - }), - }), + default: Transformer('default', {}), + rest: Transformer('rest', {}), + graphql: Transformer( + 'graphql', + { + addFields: () => ({ + __typename: 'IdTokenUserInfo', + }), + } + ), }; export default transformers; diff --git a/models/user/src/mc-user/mc-user-draft/builder.spec.ts b/models/user/src/mc-user/mc-user-draft/builder.spec.ts index 7857f3769..432e45b2b 100644 --- a/models/user/src/mc-user/mc-user-draft/builder.spec.ts +++ b/models/user/src/mc-user/mc-user-draft/builder.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable jest/no-disabled-tests */ /* eslint-disable jest/valid-title */ import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; -import type { TMcUserDraft, TMcUserDraftGraphql } from '../types'; +import type { TMcUserDraft } from '../types'; import * as McUserDraft from './index'; describe('builder', () => { @@ -30,7 +30,7 @@ describe('builder', () => { ); it( - ...createBuilderSpec( + ...createBuilderSpec( 'graphql', McUserDraft.random(), expect.objectContaining({ diff --git a/models/user/src/mc-user/mc-user-draft/transformers.ts b/models/user/src/mc-user/mc-user-draft/transformers.ts index dceeb5328..a893c9a36 100644 --- a/models/user/src/mc-user/mc-user-draft/transformers.ts +++ b/models/user/src/mc-user/mc-user-draft/transformers.ts @@ -1,10 +1,10 @@ import { Transformer } from '@commercetools-test-data/core'; -import type { TMcUserDraft, TMcUserDraftGraphql } from '../types'; +import type { TMcUserDraft } from '../types'; const transformers = { default: Transformer('default', {}), rest: Transformer('rest', {}), - graphql: Transformer('graphql', {}), + graphql: Transformer('graphql', {}), }; export default transformers; diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts index 2fcb24697..6eecb9fb7 100644 --- a/models/user/src/mc-user/types.ts +++ b/models/user/src/mc-user/types.ts @@ -1,56 +1,12 @@ import type { TBuilder } from '@commercetools-test-data/core'; -import type { TMcProject } from '@commercetools-test-data/project'; +import type { + TMcUser as TMcUserGraphql, + TMcIdTokenUserInfo as TMcIdTokenUserInfoGraphql, +} from '../../../../graphql-types/src/generated/mc'; +export type { TMcUserGraphql, TMcIdTokenUserInfoGraphql }; -type ProjectQueryResult = { - count: number; - offset: number; - total: number; - results: TMcProject[]; -}; - -export type TIdTokenUserInfo = { - iss: string; - sub: string; - aud: string; - exp: number; - iat?: number; - email?: string; - name?: string; - additionalClaims?: string; -}; - -export type TIdTokenUserInfoGraphql = TIdTokenUserInfo & { - __typename: 'IdTokenUserInfo'; -}; - -export type TMcUser = { - id: string; - version: number; - createdAt: string; - lastModifiedAt: string; - email: string; - firstName: string; - lastName: string; - language: string; - numberFormat: string; - timeZone?: string; - launchdarklyTrackingId: string; - launchdarklyTrackingGroup: string; - launchdarklyTrackingSubgroup?: string; - launchdarklyTrackingTeam: string[]; - launchdarklyTrackingTenant: string; - launchdarklyTrackingCloudEnvironment: string; - gravatarHash: string; - defaultProjectKey?: string; - projects: ProjectQueryResult; - businessRole: string; - idTokenUserInfo?: TIdTokenUserInfo; - verificationStatus: 'Verified' | 'Unverified'; -}; - -export type TMcUserGraphql = TMcUser & { - __typename: 'User'; -}; +export type TMcUser = Omit; +export type TMcIdTokenUserInfo = Omit; export type TMcUserDraft = { email: string; @@ -59,12 +15,10 @@ export type TMcUserDraft = { businessRole?: string; }; -export type TMcUserDraftGraphql = TMcUserDraft; - export type TMcUserBuilder = TBuilder; export type TMcUserDraftBuilder = TBuilder; -export type TIdTokenUserInfoBuilder = TBuilder; +export type TMcIdTokenUserInfoBuilder = TBuilder; export type TMcCreateUserBuilder = () => TMcUserBuilder; export type TMcCreateUserDraftBuilder = () => TMcUserDraftBuilder; -export type TMcCreateIdTokenUserInfoBuilder = () => TIdTokenUserInfoBuilder; +export type TMcCreateIdTokenUserInfoBuilder = () => TMcIdTokenUserInfoBuilder; diff --git a/package.json b/package.json index 2504966a8..fb2db46e7 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,9 @@ "test": "jest --config jest.test.config.js", "typecheck": "tsc --noEmit", "changeset:version-and-format": "changeset version && prettier --write --parser json '**/package.json' && pnpm install --lockfile-only", - "generate-types:settings": "graphql-codegen -r dotenv/config --config codegen.settings.yml" + "generate-types:settings": "graphql-codegen -r dotenv/config --config codegen.settings.yml", + "generate-types:mc": "graphql-codegen -r dotenv/config --config codegen.mc.yml", + "generate-types": "pnpm generate-types:settings && generate-types:mc" }, "dependencies": { "@babel/core": "^7.21.0", diff --git a/schemas/mc.json b/schemas/mc.json new file mode 100644 index 000000000..8a653e72e --- /dev/null +++ b/schemas/mc.json @@ -0,0 +1,6583 @@ +{ + "__schema": { + "queryType": { + "name": "Query" + }, + "mutationType": { + "name": "Mutation" + }, + "subscriptionType": null, + "types": [ + { + "kind": "INPUT_OBJECT", + "name": "AdditionalUserInfo", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "firstName", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastName", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "AllPermissionsForAllApplications", + "description": null, + "fields": [ + { + "name": "allAppliedActionRights", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedActionRight", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allAppliedDataFences", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "AppliedDataFence", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allAppliedMenuVisibilities", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedMenuVisibilities", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allAppliedPermissions", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedPermission", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "AppliedActionRight", + "description": null, + "fields": [ + { + "name": "group", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "AppliedDataFence", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "StoreDataFence", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "AppliedMenuVisibilities", + "description": null, + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "AppliedPermission", + "description": null, + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Boolean", + "description": "The `Boolean` scalar type represents `true` or `false`.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CartClassificationValue", + "description": null, + "fields": [ + { + "name": "allLocaleLabels", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "LocalizedField", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeUserBusinessRole", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "businessRole", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeUserLanguage", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "language", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeUserName", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "firstName", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastName", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeUserNumberFormat", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "numberFormat", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeUserPassword", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "password", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "DataFence", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "StoreDataFence", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "DeleteAccountRequest", + "description": null, + "fields": [ + { + "name": "jwt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DeletedUser", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Feature", + "description": null, + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "reason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Float", + "description": "The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "ID", + "description": "The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "IdTokenUserInfo", + "description": null, + "fields": [ + { + "name": "additionalClaims", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "aud", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "email", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "exp", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "iat", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "iss", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sub", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ImportResponse", + "description": null, + "fields": [ + { + "name": "hasImportedSampleData", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "importedSampleData", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "projectKey", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Int", + "description": "The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "InvitationInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "emails", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "organization", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "InvitationOrganizationInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "InvitationTeamInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "InvitationOrganizationInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "InvitationQueryResult", + "description": null, + "fields": [ + { + "name": "gravatarHash", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "hasValidEmail", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isAlreadyAMemberOfTeam", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isKnownUser", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "InvitationResult", + "description": null, + "fields": [ + { + "name": "email", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "jwt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "status", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "InvitationStatus", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "InvitationStatus", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "InvitationFailure", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "InvitationSent", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PendingRegistration", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "InvitationTeamInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "InvitationWhereInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "email", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "organizationId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "LocalizedField", + "description": null, + "fields": [ + { + "name": "locale", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "MetaData", + "description": null, + "fields": [ + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "User", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "Mutation", + "description": null, + "fields": [ + { + "name": "createMyOrganization", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "OrganizationDraftType", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "OrganizationCreated", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createMyProject", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ProjectDraftType", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "myPermission", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "MyPermissionInitializationInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "ProjectPendingCreation", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createOAuthClient", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "OAuthClientCreationInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OAuthClient", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteAccount", + "description": null, + "args": [ + { + "name": "jwt", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "DeletedUser", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteOAuthClient", + "description": null, + "args": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OAuthClient", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "importSampleData", + "description": null, + "args": [ + { + "name": "projectKey", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ImportResponse", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "invite", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "InvitationInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "origin", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "InvitationResult", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "random", + "description": null, + "args": [ + { + "name": "byteLength", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "resetPassword", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ResetPasswordDraft", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "jwt", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ResetUser", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sendLinkToDeleteAccount", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "DeleteAccountRequest", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sendLinkToResetPassword", + "description": null, + "args": [ + { + "name": "email", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "ResetPasswordRequest", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sendLinkToSignUp", + "description": null, + "args": [ + { + "name": "additionalInfo", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "AdditionalUserInfo", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "email", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "language", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "SignUpRequest", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "signUp", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "UserDraft", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "jwt", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SignedUpUser", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "updateUser", + "description": null, + "args": [ + { + "name": "actions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "UserUpdateAction", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "User", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "MyPermissionInitializationInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OAuthClient", + "description": null, + "fields": [ + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastUsedAt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ownerId", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissions", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectPermission", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "secret", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "OAuthClientCreationInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ownerId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ProjectPermissionInput", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OAuthClientQueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "results", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OAuthClient", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "QueryResult", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OAuthClientTemplate", + "description": null, + "fields": [ + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "oAuthScopes", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Organization", + "description": null, + "fields": [ + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": true, + "deprecationReason": "This field will be removed in the future." + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrganizationCreated", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teams", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OrganizationTeamsCreated", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "OrganizationDraftType", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ownerId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrganizationTeamsCreated", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Project", + "description": null, + "fields": [ + { + "name": "allAppliedActionRights", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedActionRight", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allAppliedDataFences", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "AppliedDataFence", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allAppliedMenuVisibilities", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedMenuVisibilities", + "ofType": null + } + } + } + }, + "isDeprecated": true, + "deprecationReason": "This field has been moved into the menuPermissionsForAllApplications field." + }, + { + "name": "allAppliedPermissions", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedPermission", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allPermissionsForAllApplications", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AllPermissionsForAllApplications", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "apiVersion", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "countries", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "currencies", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "expiry", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectExpiry", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "initialized", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isProductionProject", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "languages", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "plan", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sampleDataImportDataset", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "shippingRateInputType", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShippingRateInputType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "suspension", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectSuspension", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "MetaData", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ProjectDraftType", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "countries", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "currencies", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteDaysAfterCreation", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "key", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "languages", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "messagesEnabled", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ownerId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectExpiry", + "description": null, + "fields": [ + { + "name": "daysLeft", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isActive", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectPendingCreation", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectPermission", + "description": null, + "fields": [ + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "projectKey", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "storeKey", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ProjectPermissionInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "key", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "projectKey", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "storeKey", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "results", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "QueryResult", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectSuspension", + "description": null, + "fields": [ + { + "name": "isActive", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "reason", + "description": null, + "args": [], + "type": { + "kind": "ENUM", + "name": "ProjectSuspensionReason", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ProjectSuspensionReason", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "Other", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Payment", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "TemporaryMaintenance", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Query", + "description": null, + "fields": [ + { + "name": "allFeatures", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Feature", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allImpliedOAuthScopes", + "description": null, + "args": [ + { + "name": "onlyConfiguredOnTrustedClient", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "resourceAccessPermissions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allSupportedActionRights", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SupportedActionRight", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allSupportedMenuVisibilities", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SupportedMenuVisibility", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allSupportedOAuthScopes", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allSupportedOAuthScopesForOAuthClients", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SupportedOAuthScopeForOAuthClient", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allSupportedResources", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SupportedResource", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "allSupportedStoreScopes", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SupportedStoreScope", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "amILoggedIn", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "invitation", + "description": null, + "args": [ + { + "name": "where", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "InvitationWhereInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "InvitationQueryResult", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "me", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "User", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "oAuthClient", + "description": null, + "args": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "OAuthClient", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "oAuthClientTemplates", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OAuthClientTemplate", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "oAuthClients", + "description": null, + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OAuthClientQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "project", + "description": null, + "args": [ + { + "name": "key", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "release", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "releases", + "description": null, + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "origin", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "ReleaseOrigin", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "ReleaseHistory", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "storeOAuthScopes", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "systemStatus", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SystemStatus", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "QueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "OAuthClientQueryResult", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ReleaseQueryResult", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "Reference", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "typeId", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "typeId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ReleaseEntry", + "description": null, + "fields": [ + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "guid", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "link", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "releasedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "title", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ReleaseHistory", + "description": null, + "fields": [ + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "entries", + "description": null, + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ReleaseQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "link", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "title", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ReleaseOrigin", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "ctp", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "mc", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ReleaseQueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "results", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ReleaseEntry", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "QueryResult", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ResetPasswordDraft", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "password", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ResetPasswordRequest", + "description": null, + "fields": [ + { + "name": "jwt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ResetUser", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SetUserTimeZone", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "timeZone", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ShippingRateInputType", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "ShippingRateType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "values", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CartClassificationValue", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ShippingRateType", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "CartClassification", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "CartScore", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "CartValue", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SignUpRequest", + "description": null, + "fields": [ + { + "name": "jwt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SignedUpUser", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "StoreDataFence", + "description": null, + "fields": [ + { + "name": "group", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "DataFence", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "String", + "description": "The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SupportedActionRight", + "description": null, + "fields": [ + { + "name": "group", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SupportedMenuVisibility", + "description": null, + "fields": [ + { + "name": "group", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SupportedOAuthScopeForOAuthClient", + "description": null, + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SupportedResource", + "description": null, + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SupportedStoreScope", + "description": null, + "fields": [ + { + "name": "group", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "SystemOperabilityStatus", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "DEGRADED", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OPERATIONAL", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OUTAGE", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SystemStatus", + "description": null, + "fields": [ + { + "name": "status", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "SystemOperabilityStatus", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "User", + "description": null, + "fields": [ + { + "name": "businessRole", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "defaultProjectKey", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "email", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "firstName", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "gravatarHash", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "idTokenUserInfo", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "IdTokenUserInfo", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "language", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastName", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "launchdarklyTrackingCloudEnvironment", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "launchdarklyTrackingGroup", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "launchdarklyTrackingId", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "launchdarklyTrackingSubgroup", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "launchdarklyTrackingTeam", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "launchdarklyTrackingTenant", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "numberFormat", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "projects", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "timeZone", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "verificationStatus", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "VerificationStatus", + "ofType": null + } + }, + "isDeprecated": true, + "deprecationReason": "This field is not used anymore." + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "MetaData", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "UserDraft", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "businessRole", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "firstName", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastName", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "password", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "UserUpdateAction", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "changeBusinessRole", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeUserBusinessRole", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "changeLanguage", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeUserLanguage", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "changeName", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeUserName", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "changeNumberFormat", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeUserNumberFormat", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "changePassword", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeUserPassword", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "setTimeZone", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SetUserTimeZone", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "VerificationStatus", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "Unverified", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Verified", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Directive", + "description": "A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isRepeatable", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "locations", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "__DirectiveLocation", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "args", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__InputValue", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "__DirectiveLocation", + "description": "A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "QUERY", + "description": "Location adjacent to a query operation.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "MUTATION", + "description": "Location adjacent to a mutation operation.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SUBSCRIPTION", + "description": "Location adjacent to a subscription operation.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FIELD", + "description": "Location adjacent to a field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FRAGMENT_DEFINITION", + "description": "Location adjacent to a fragment definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FRAGMENT_SPREAD", + "description": "Location adjacent to a fragment spread.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INLINE_FRAGMENT", + "description": "Location adjacent to an inline fragment.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VARIABLE_DEFINITION", + "description": "Location adjacent to a variable definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SCHEMA", + "description": "Location adjacent to a schema definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SCALAR", + "description": "Location adjacent to a scalar definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OBJECT", + "description": "Location adjacent to an object type definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FIELD_DEFINITION", + "description": "Location adjacent to a field definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ARGUMENT_DEFINITION", + "description": "Location adjacent to an argument definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INTERFACE", + "description": "Location adjacent to an interface definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UNION", + "description": "Location adjacent to a union definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ENUM", + "description": "Location adjacent to an enum definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ENUM_VALUE", + "description": "Location adjacent to an enum value definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INPUT_OBJECT", + "description": "Location adjacent to an input object type definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INPUT_FIELD_DEFINITION", + "description": "Location adjacent to an input object field definition.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__EnumValue", + "description": "One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isDeprecated", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deprecationReason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Field", + "description": "Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "args", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__InputValue", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isDeprecated", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deprecationReason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__InputValue", + "description": "Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "defaultValue", + "description": "A GraphQL-formatted string representing the default value for this input value.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isDeprecated", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deprecationReason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Schema", + "description": "A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.", + "fields": [ + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "types", + "description": "A list of all types supported by this server.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "queryType", + "description": "The type that query operations will be rooted at.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "mutationType", + "description": "If this server supports mutation, the type that mutation operations will be rooted at.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "subscriptionType", + "description": "If this server support subscription, the type that subscription operations will be rooted at.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "directives", + "description": "A list of all directives supported by this server.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Directive", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Type", + "description": "The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name, description and optional `specifiedByURL`, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.", + "fields": [ + { + "name": "kind", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "__TypeKind", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "specifiedByURL", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fields", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Field", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "interfaces", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "possibleTypes", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "enumValues", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__EnumValue", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "inputFields", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__InputValue", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ofType", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "__TypeKind", + "description": "An enum describing what kind of type a given `__Type` is.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "SCALAR", + "description": "Indicates this type is a scalar.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OBJECT", + "description": "Indicates this type is an object. `fields` and `interfaces` are valid fields.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INTERFACE", + "description": "Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UNION", + "description": "Indicates this type is a union. `possibleTypes` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ENUM", + "description": "Indicates this type is an enum. `enumValues` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INPUT_OBJECT", + "description": "Indicates this type is an input object. `inputFields` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "LIST", + "description": "Indicates this type is a list. `ofType` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "NON_NULL", + "description": "Indicates this type is a non-null. `ofType` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + } + ], + "directives": [ + { + "name": "collectMetrics", + "description": null, + "isRepeatable": false, + "locations": ["FIELD_DEFINITION"], + "args": [] + }, + { + "name": "deprecate", + "description": null, + "isRepeatable": false, + "locations": ["FIELD_DEFINITION"], + "args": [ + { + "name": "reason", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "withCounter", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "true", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "withLog", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "true", + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "deprecated", + "description": "Marks an element of a GraphQL schema as no longer supported.", + "isRepeatable": false, + "locations": [ + "ARGUMENT_DEFINITION", + "ENUM_VALUE", + "FIELD_DEFINITION", + "INPUT_FIELD_DEFINITION" + ], + "args": [ + { + "name": "reason", + "description": "Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax, as specified by [CommonMark](https://commonmark.org/).", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": "\"No longer supported\"", + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "include", + "description": "Directs the executor to include this field or fragment only when the `if` argument is true.", + "isRepeatable": false, + "locations": ["FIELD", "FRAGMENT_SPREAD", "INLINE_FRAGMENT"], + "args": [ + { + "name": "if", + "description": "Included when true.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "isAuthenticated", + "description": null, + "isRepeatable": false, + "locations": ["FIELD_DEFINITION"], + "args": [] + }, + { + "name": "rateLimit", + "description": "Controls the rate of traffic.", + "isRepeatable": false, + "locations": ["FIELD_DEFINITION", "OBJECT"], + "args": [ + { + "name": "duration", + "description": "Number of seconds before limit is reset.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": "60", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "limit", + "description": "Number of occurrences allowed over duration.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": "60", + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "skip", + "description": "Directs the executor to skip this field or fragment when the `if` argument is true.", + "isRepeatable": false, + "locations": ["FIELD", "FRAGMENT_SPREAD", "INLINE_FRAGMENT"], + "args": [ + { + "name": "if", + "description": "Skipped when true.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "specifiedBy", + "description": "Exposes a URL that specifies the behavior of this scalar.", + "isRepeatable": false, + "locations": ["SCALAR"], + "args": [ + { + "name": "url", + "description": "The URL that specifies the behavior of this scalar.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ] + } + ] + } +} From c3d9a211d7822038eab423b0db71e804dade3ee0 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 17:33:09 +0100 Subject: [PATCH 09/18] refactor: generate types for core api and update user types --- codegen.core.yml | 21 + graphql-types/src/generated/core.ts | 822 ++ models/user/README.md | 4 +- models/user/src/user/types.ts | 23 +- .../user/src/user/user-draft/builder.spec.ts | 4 +- .../user/src/user/user-draft/transformers.ts | 4 +- package.json | 3 +- schemas/core.json | 7658 +++++++++++++++++ 8 files changed, 8512 insertions(+), 27 deletions(-) create mode 100644 codegen.core.yml create mode 100644 graphql-types/src/generated/core.ts create mode 100644 schemas/core.json diff --git a/codegen.core.yml b/codegen.core.yml new file mode 100644 index 000000000..e49cda01e --- /dev/null +++ b/codegen.core.yml @@ -0,0 +1,21 @@ +schema: + - '${MC_API_URL}/graphql': + headers: + Cookie: mcAccessToken=${MC_ACCESS_TOKEN} + X-Graphql-Target: administration +extensions: + codegen: + generates: + schemas/core.json: + plugins: + - introspection + graphql-types/src/generated/core.ts: + plugins: + - typescript + - typescript-operations + config: + typesPrefix: TCore + addUnderscoreToArgsType: true + hooks: + afterAllFileWrite: + - prettier --write diff --git a/graphql-types/src/generated/core.ts b/graphql-types/src/generated/core.ts new file mode 100644 index 000000000..cfd0d0300 --- /dev/null +++ b/graphql-types/src/generated/core.ts @@ -0,0 +1,822 @@ +export type Maybe = T | null; +export type InputMaybe = Maybe; +export type Exact = { + [K in keyof T]: T[K]; +}; +export type MakeOptional = Omit & { + [SubKey in K]?: Maybe; +}; +export type MakeMaybe = Omit & { + [SubKey in K]: Maybe; +}; +export type MakeEmpty< + T extends { [key: string]: unknown }, + K extends keyof T +> = { [_ in K]?: never }; +export type Incremental = + | T + | { + [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never; + }; +/** All built-in and custom scalars, mapped to their actual values */ +export type Scalars = { + ID: { input: string; output: string }; + String: { input: string; output: string }; + Boolean: { input: boolean; output: boolean }; + Int: { input: number; output: number }; + Float: { input: number; output: number }; + Country: { input: any; output: any }; + Currency: { input: any; output: any }; + DateTime: { input: any; output: any }; + DateTimeZone: { input: any; output: any }; + Locale: { input: any; output: any }; + Long: { input: any; output: any }; +}; + +export type TCoreAddTeam = { + members?: InputMaybe>; + name: Scalars['String']['input']; + permissions?: InputMaybe; +}; + +export type TCoreAddTeamMembership = { + teamId: Scalars['String']['input']; + user: TCoreReferenceInput; +}; + +export type TCoreAttributeGroupLimits = { + __typename?: 'AttributeGroupLimits'; + maxTotalAttributeGroups?: Maybe; +}; + +/** AWS S3 container config */ +export type TCoreAwsContainer = { + __typename?: 'AwsContainer'; + /** Public bucket url, without the project part */ + bucketUrl: Scalars['String']['output']; + /** Project part of the object path on s3 */ + projectPrefix: Scalars['String']['output']; +}; + +export enum TCoreBusinessRole { + /** Architect role. */ + Architect = 'Architect', + /** Customer Service role. */ + CustomerService = 'CustomerService', + /** Engineer role. */ + Engineer = 'Engineer', + /** Executive Management role. */ + ExecutiveManagement = 'ExecutiveManagement', + /** Marketing role. */ + Marketing = 'Marketing', + /** Other role. */ + Other = 'Other', + /** ProductProjectManagerOrOwner role. */ + ProductProjectManagerOrOwner = 'ProductProjectManagerOrOwner', + /** SalesAndECommerceManager role. */ + SalesAndECommerceManager = 'SalesAndECommerceManager', +} + +export type TCoreCartClassificationType = TCoreShippingRateInputType & { + __typename?: 'CartClassificationType'; + type: Scalars['String']['output']; + values: Array; +}; + +export type TCoreCartDiscountLimits = { + __typename?: 'CartDiscountLimits'; + withoutDiscountCodeLimit?: Maybe; +}; + +export type TCoreCartLimits = { + __typename?: 'CartLimits'; + maxCarts?: Maybe; +}; + +export type TCoreCartScoreType = TCoreShippingRateInputType & { + __typename?: 'CartScoreType'; + type: Scalars['String']['output']; +}; + +export type TCoreCartValueType = TCoreShippingRateInputType & { + __typename?: 'CartValueType'; + type: Scalars['String']['output']; +}; + +export type TCoreCategoryLimits = { + __typename?: 'CategoryLimits'; + maxTotalCategories?: Maybe; +}; + +export type TCoreCdnContainerConfiguration = { + __typename?: 'CdnContainerConfiguration'; + enabled: Scalars['Boolean']['output']; +}; + +export type TCoreChangeName = { + name: Scalars['String']['input']; +}; + +export type TCoreChangeTeamName = { + name: Scalars['String']['input']; + teamId: Scalars['String']['input']; +}; + +export type TCoreClustersConfig = { + __typename?: 'ClustersConfig'; + db?: Maybe; + elasticsearch?: Maybe; +}; + +export type TCoreClustersConfigInput = { + db?: InputMaybe; + elasticsearch?: InputMaybe; +}; + +export type TCoreCreateOrganizationCommand = { + defaultClusters?: InputMaybe; + name: Scalars['String']['input']; + owner: TCoreReferenceInput; +}; + +export type TCoreCreatePermissionCommand = { + actionRightPermissions?: InputMaybe>; + dataFences?: InputMaybe>; + group: Scalars['String']['input']; + hiddenMenuItems?: InputMaybe>; + owner: TCoreReferenceInput; + resourceAccessPermissions?: InputMaybe>; + team: TCoreReferenceInput; +}; + +export type TCoreCustomObjectLimits = { + __typename?: 'CustomObjectLimits'; + maxCustomObjects?: Maybe; +}; + +export type TCoreCustomerGroupLimits = { + __typename?: 'CustomerGroupLimits'; + maxCustomerGroups?: Maybe; +}; + +export type TCoreCustomerLimits = { + __typename?: 'CustomerLimits'; + maxCustomers?: Maybe; +}; + +export type TCoreDbClusterConfig = { + __typename?: 'DBClusterConfig'; + dbClusterKey: TCoreDbClusterKey; + sharded: Scalars['Boolean']['output']; +}; + +export type TCoreDbClusterConfigInput = { + dbClusterKey: TCoreDbClusterKeyInput; + sharded: Scalars['Boolean']['input']; +}; + +export type TCoreDbClusterKey = { + __typename?: 'DBClusterKey'; + name: Scalars['String']['output']; +}; + +export type TCoreDbClusterKeyInput = { + name: Scalars['String']['input']; +}; + +export type TCoreDbClustersConfig = { + __typename?: 'DBClustersConfig'; + carts?: Maybe; + commits?: Maybe; + default: TCoreDbClusterKey; + orders?: Maybe; +}; + +export type TCoreDbClustersConfigInput = { + carts?: InputMaybe; + commits?: InputMaybe; + default: TCoreDbClusterKeyInput; + orders?: InputMaybe; +}; + +export type TCoreDataFence = { + type: Scalars['String']['output']; +}; + +export type TCoreDataFenceDraft = { + store: TCoreDataFenceStoreDraftType; +}; + +export type TCoreDataFenceStoreDraftType = { + storeKeys: Array; +}; + +export type TCoreEsAlternativeComparisonConfig = { + __typename?: 'ESAlternativeComparisonConfig'; + comparisonProbability: Scalars['Float']['output']; + logComparisonResults: Scalars['Boolean']['output']; + versioning?: Maybe; +}; + +export type TCoreEsAlternativeComparisonConfigInput = { + comparisonProbability: Scalars['Float']['input']; + logComparisonResults: Scalars['Boolean']['input']; + versioning?: InputMaybe; +}; + +export type TCoreEsCluster = { + __typename?: 'ESCluster'; + categoriesShardConfig?: Maybe; + categoryComparison?: Maybe; + clusterKey: Scalars['String']['output']; + productComparison?: Maybe; + productsShardConfig?: Maybe; + replicateToClusterKey?: Maybe; +}; + +export type TCoreEsClusterInput = { + categoriesShardConfig?: InputMaybe; + categoryComparison?: InputMaybe; + clusterKey: Scalars['String']['input']; + productComparison?: InputMaybe; + productsShardConfig?: InputMaybe; + replicateToClusterKey?: InputMaybe; +}; + +export type TCoreEsClusterShardConfig = { + __typename?: 'ESClusterShardConfig'; + numberOfReplicas?: Maybe; + numberOfShards?: Maybe; + refreshIntervalSeconds?: Maybe; + versioning?: Maybe; +}; + +export type TCoreEsClusterShardConfigInput = { + numberOfReplicas?: InputMaybe; + numberOfShards?: InputMaybe; + refreshIntervalSeconds?: InputMaybe; + versioning?: InputMaybe; +}; + +export type TCoreExtensionLimits = { + __typename?: 'ExtensionLimits'; + maxTimeoutInMs?: Maybe; +}; + +export type TCoreExternalOAuthInput = { + authorizationHeader: Scalars['String']['input']; + url: Scalars['String']['input']; +}; + +export type TCoreInitiator = { + __typename?: 'Initiator'; + anonymousId?: Maybe; + associateRef?: Maybe; + clientId?: Maybe; + customerRef?: Maybe; + externalUserId?: Maybe; + isPlatformClient?: Maybe; + userRef?: Maybe; +}; + +export type TCoreLocalizedString = { + __typename?: 'LocalizedString'; + locale: Scalars['Locale']['output']; + value: Scalars['String']['output']; +}; + +export type TCoreMediaContainer = TCoreAwsContainer | TCorePublicContainer; + +export type TCoreMessagesConfiguration = { + __typename?: 'MessagesConfiguration'; + deleteDaysAfterCreation?: Maybe; + enabled: Scalars['Boolean']['output']; +}; + +export type TCoreMutation = { + __typename?: 'Mutation'; + createMyOrganization?: Maybe; + createMyPermission?: Maybe; + createMyProject?: Maybe; + createPermission?: Maybe; + deleteMyOrganization?: Maybe; + deleteMyPermission?: Maybe; + deleteMyProject?: Maybe; + deletePermission?: Maybe; + revokeAccessTokensByGroup?: Maybe; + revokeAccessTokensByTeam?: Maybe; + updateMyOrganization?: Maybe; + updateMyPermission?: Maybe; + updatePermission?: Maybe; +}; + +export type TCoreMutation_CreateMyOrganizationArgs = { + draft: TCoreCreateOrganizationCommand; +}; + +export type TCoreMutation_CreateMyPermissionArgs = { + draft: TCoreCreatePermissionCommand; +}; + +export type TCoreMutation_CreateMyProjectArgs = { + draft: TCoreProjectDraftType; +}; + +export type TCoreMutation_CreatePermissionArgs = { + draft: TCoreCreatePermissionCommand; +}; + +export type TCoreMutation_DeleteMyOrganizationArgs = { + id: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreMutation_DeleteMyPermissionArgs = { + id: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreMutation_DeleteMyProjectArgs = { + key: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreMutation_DeletePermissionArgs = { + id: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreMutation_RevokeAccessTokensByGroupArgs = { + owner: TCoreReferenceInput; + permissionGroup: Scalars['String']['input']; +}; + +export type TCoreMutation_RevokeAccessTokensByTeamArgs = { + owner: TCoreReferenceInput; + teamId: Scalars['String']['input']; +}; + +export type TCoreMutation_UpdateMyOrganizationArgs = { + actions: Array; + id: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreMutation_UpdateMyPermissionArgs = { + actions: Array; + id: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreMutation_UpdatePermissionArgs = { + actions: Array; + id: Scalars['String']['input']; + version: Scalars['Long']['input']; +}; + +export type TCoreOrderEditLimits = { + __typename?: 'OrderEditLimits'; + maxOrderEdits?: Maybe; +}; + +export type TCoreOrganization = TCoreVersioned & { + __typename?: 'Organization'; + createdAt: Scalars['DateTime']['output']; + createdBy?: Maybe; + defaultClusters?: Maybe; + id: Scalars['String']['output']; + lastModifiedAt: Scalars['DateTime']['output']; + lastModifiedBy?: Maybe; + name: Scalars['String']['output']; + teams: Array; + version: Scalars['Long']['output']; +}; + +export type TCoreOrganizationQueryResult = { + __typename?: 'OrganizationQueryResult'; + count: Scalars['Int']['output']; + exists: Scalars['Boolean']['output']; + offset: Scalars['Int']['output']; + results: Array; + total: Scalars['Long']['output']; +}; + +export type TCoreOrganizationUpdateAction = { + addTeam?: InputMaybe; + addTeamMembership?: InputMaybe; + changeName?: InputMaybe; + changeTeamName?: InputMaybe; + removeTeam?: InputMaybe; + removeTeamMembership?: InputMaybe; +}; + +export type TCorePermission = TCoreVersioned & { + __typename?: 'Permission'; + actionRightPermissions: Array; + createdAt: Scalars['DateTime']['output']; + createdBy?: Maybe; + dataFences: Array; + group: Scalars['String']['output']; + hiddenMenuItems: Array; + id: Scalars['String']['output']; + lastModifiedAt: Scalars['DateTime']['output']; + lastModifiedBy?: Maybe; + ownerRef: TCoreReference; + resourceAccessPermissions: Array; + teamRef: TCoreReference; + version: Scalars['Long']['output']; +}; + +export type TCorePermissionQueryResult = { + __typename?: 'PermissionQueryResult'; + count: Scalars['Int']['output']; + exists: Scalars['Boolean']['output']; + offset: Scalars['Int']['output']; + results: Array; + total: Scalars['Long']['output']; +}; + +export type TCorePermissionUpdateAction = { + setActionRightPermissions?: InputMaybe; + setDataFences?: InputMaybe; + setHiddenMenuItems?: InputMaybe; + setResourceAccessPermissions?: InputMaybe; +}; + +export type TCoreProductDiscountLimits = { + __typename?: 'ProductDiscountLimits'; + activeLimit?: Maybe; +}; + +export type TCoreProductLimits = { + __typename?: 'ProductLimits'; + pricesLimitPerVariant?: Maybe; + productTailoringLimit?: Maybe; + variantLimit?: Maybe; +}; + +export type TCoreProductTypeLimits = { + __typename?: 'ProductTypeLimits'; + maxTotalProductTypes?: Maybe; +}; + +export type TCoreProject = TCoreVersioned & { + __typename?: 'Project'; + billingInfo?: Maybe; + cdnContainer?: Maybe; + cdnContainerConfiguration: TCoreCdnContainerConfiguration; + countries: Array; + createdAt: Scalars['DateTime']['output']; + createdBy?: Maybe; + currencies: Array; + customLimits?: Maybe; + id: Scalars['String']['output']; + initialized: Scalars['Boolean']['output']; + isProductionProject?: Maybe; + key: Scalars['String']['output']; + languages: Array; + lastModifiedAt: Scalars['DateTime']['output']; + lastModifiedBy?: Maybe; + messages: TCoreMessagesConfiguration; + name: Scalars['String']['output']; + owner?: Maybe; + ownerRef?: Maybe; + participations: Array; + participationsRef: Array; + plan: Scalars['String']['output']; + shippingRateInputType?: Maybe; + suspended?: Maybe; + trialUntil?: Maybe; + version: Scalars['Long']['output']; +}; + +export type TCoreProjectBillingInfo = { + __typename?: 'ProjectBillingInfo'; + accountId?: Maybe; + accountName?: Maybe; + accountNumber?: Maybe; + comment?: Maybe; + contractNumber?: Maybe; +}; + +export type TCoreProjectCustomLimits = { + __typename?: 'ProjectCustomLimits'; + attributeGroupLimits?: Maybe; + cartDiscounts?: Maybe; + carts?: Maybe; + categoryLimits?: Maybe; + customObjects?: Maybe; + customerGroups?: Maybe; + customers?: Maybe; + extensions?: Maybe; + orderEdits?: Maybe; + productDiscounts?: Maybe; + productTypeLimits?: Maybe; + products?: Maybe; + queryLimits?: Maybe; + refreshTokens?: Maybe; + searchLimits?: Maybe; + shippingMethods?: Maybe; + shoppingLists?: Maybe; + stores?: Maybe; + subscriptions?: Maybe; + taxCategories?: Maybe; + termFacetSize?: Maybe; + zones?: Maybe; +}; + +export type TCoreProjectDraftType = { + asyncInitialization?: InputMaybe; + cdnContainerEnabled?: InputMaybe; + countries?: Array; + currencies: Array; + dbClustersConfig?: InputMaybe; + deleteDaysAfterCreation?: InputMaybe; + esCluster?: InputMaybe; + externalOAuth?: InputMaybe; + key: Scalars['String']['input']; + languages: Array; + messagesEnabled?: InputMaybe; + name: Scalars['String']['input']; + owner: TCoreReferenceInput; + plan: TCoreProjectPlan; + searchIndexing?: InputMaybe; + trialUntil?: InputMaybe; +}; + +export enum TCoreProjectPlan { + Standard = 'Standard', + Unlimited = 'Unlimited', +} + +export type TCoreProjectQueryResult = { + __typename?: 'ProjectQueryResult'; + count: Scalars['Int']['output']; + exists: Scalars['Boolean']['output']; + offset: Scalars['Int']['output']; + results: Array; + total: Scalars['Long']['output']; +}; + +export type TCoreProjectSuspendData = { + __typename?: 'ProjectSuspendData'; + description?: Maybe; + reason: TCoreProjectSuspensionReason; +}; + +export enum TCoreProjectSuspensionReason { + /** A database migration is running. */ + DbMigration = 'DbMigration', + /** Other reasons like copy project. */ + Other = 'Other', + /** The usage of the project is not paid. */ + Payment = 'Payment', +} + +/** Rackspace Cloud Files container config */ +export type TCorePublicContainer = { + __typename?: 'PublicContainer'; + httpUri: Scalars['String']['output']; + httpsUri: Scalars['String']['output']; + iosUri: Scalars['String']['output']; + name: Scalars['String']['output']; + streamingUri: Scalars['String']['output']; +}; + +export type TCoreQuery = { + __typename?: 'Query'; + /** + * Fetch projects that `me` can access (but maybe not be able to manage). + * @deprecated beta feature + */ + myAccessibleProjects: TCoreProjectQueryResult; + /** Fetch organizations that `me` can manage. */ + myOrganizations: TCoreOrganizationQueryResult; + /** + * Fetch permissions `me` is allowed to see: + * - if `owner` = `organization`: filter on organizations `me` can manage + * - if `owner` = `project`: filter on projects belonging to organizations `me` can manage + * Currently in beta. + * + */ + myPermissions: TCorePermissionQueryResult; + /** Fetch projects that `me` can manage. */ + myProjects: TCoreProjectQueryResult; + permissions: TCorePermissionQueryResult; + /** All permissions for a given user and a given owner (organization or project). Currently in beta. */ + permissionsForUser: TCorePermissionQueryResult; + projects: TCoreProjectQueryResult; +}; + +export type TCoreQuery_MyAccessibleProjectsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + sort?: InputMaybe>; + where?: InputMaybe; +}; + +export type TCoreQuery_MyOrganizationsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + sort?: InputMaybe>; + where?: InputMaybe; +}; + +export type TCoreQuery_MyPermissionsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + owner: TCoreReferenceInput; + sort?: InputMaybe>; + where?: InputMaybe; +}; + +export type TCoreQuery_MyProjectsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + sort?: InputMaybe>; + where?: InputMaybe; +}; + +export type TCoreQuery_PermissionsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + sort?: InputMaybe>; + where?: InputMaybe; +}; + +export type TCoreQuery_PermissionsForUserArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + owner: TCoreReferenceInput; + sort?: InputMaybe>; + userId: Scalars['String']['input']; + where?: InputMaybe; +}; + +export type TCoreQuery_ProjectsArgs = { + limit?: InputMaybe; + offset?: InputMaybe; + sort?: InputMaybe>; + where?: InputMaybe; +}; + +export type TCoreQueryLimits = { + __typename?: 'QueryLimits'; + maxOffset: Scalars['Int']['output']; +}; + +export type TCoreReference = { + __typename?: 'Reference'; + id: Scalars['String']['output']; + typeId: Scalars['String']['output']; +}; + +export type TCoreReferenceInput = { + id: Scalars['String']['input']; + typeId: Scalars['String']['input']; +}; + +export type TCoreRefreshTokenLimits = { + __typename?: 'RefreshTokenLimits'; + maxRefreshTokens?: Maybe; +}; + +export type TCoreRemoveTeam = { + teamId: Scalars['String']['input']; +}; + +export type TCoreRemoveTeamMembership = { + teamId: Scalars['String']['input']; + user: TCoreReferenceInput; +}; + +export type TCoreRevokedTokens = { + __typename?: 'RevokedTokens'; + owner: TCoreReference; + revoked: Scalars['Long']['output']; + teams: Array; +}; + +export type TCoreSearchIndexingConfigurationInput = { + products?: InputMaybe; +}; + +export type TCoreSearchIndexingConfigurationValuesInput = { + status?: InputMaybe; +}; + +export type TCoreSearchLimits = { + __typename?: 'SearchLimits'; + maxTextSize?: Maybe; +}; + +export type TCoreSetPermissionActionRightPermissions = { + actionRightPermissions: Array; +}; + +export type TCoreSetPermissionDataFences = { + dataFences: Array; +}; + +export type TCoreSetPermissionHiddenMenuItems = { + hiddenMenuItems: Array; +}; + +export type TCoreSetPermissionResourceAccessPermissions = { + resourceAccessPermissions: Array; +}; + +export type TCoreShippingMethodLimit = { + __typename?: 'ShippingMethodLimit'; + maxShippingMethods?: Maybe; +}; + +export type TCoreShippingRateInputLocalizedEnumValue = { + __typename?: 'ShippingRateInputLocalizedEnumValue'; + key: Scalars['String']['output']; + label?: Maybe; + labelAllLocales: Array; +}; + +export type TCoreShippingRateInputLocalizedEnumValue_LabelArgs = { + acceptLanguage?: InputMaybe>; + locale?: InputMaybe; +}; + +export type TCoreShippingRateInputType = { + type: Scalars['String']['output']; +}; + +export type TCoreShoppingListLimits = { + __typename?: 'ShoppingListLimits'; + maxLineItems?: Maybe; + maxShoppingLists?: Maybe; + maxTextLineItems?: Maybe; +}; + +export type TCoreStoreDataFence = TCoreDataFence & { + __typename?: 'StoreDataFence'; + storeKeys: Array; + type: Scalars['String']['output']; +}; + +export type TCoreStoreLimits = { + __typename?: 'StoreLimits'; + maxInventorySupplyChannelsPerStore?: Maybe; + maxProductDistributionChannelsPerStore?: Maybe; + maxProductSelectionsPerStore?: Maybe; + maxStores?: Maybe; +}; + +export type TCoreSubscriptionsLimits = { + __typename?: 'SubscriptionsLimits'; + maxSubscriptions?: Maybe; +}; + +export type TCoreTaxCategoryLimit = { + __typename?: 'TaxCategoryLimit'; + maxTaxCategories?: Maybe; +}; + +export type TCoreTeam = { + __typename?: 'Team'; + id: Scalars['String']['output']; + members: Array; + membersRef: Array; + name: Scalars['String']['output']; +}; + +export type TCoreUser = TCoreVersioned & { + __typename?: 'User'; + businessRole?: Maybe; + createdAt: Scalars['DateTime']['output']; + createdBy?: Maybe; + email: Scalars['String']['output']; + firstName: Scalars['String']['output']; + id: Scalars['String']['output']; + language: Scalars['Locale']['output']; + lastLoginAt?: Maybe; + lastModifiedAt: Scalars['DateTime']['output']; + lastModifiedBy?: Maybe; + lastName: Scalars['String']['output']; + locked: Scalars['Boolean']['output']; + lowercaseEmail: Scalars['String']['output']; + numberFormat: Scalars['Locale']['output']; + timeZone?: Maybe; + version: Scalars['Long']['output']; +}; + +/** Versioned object have an ID and version and modification. Every update of this object changes it's version. */ +export type TCoreVersioned = { + createdAt: Scalars['DateTime']['output']; + createdBy?: Maybe; + id: Scalars['String']['output']; + lastModifiedAt: Scalars['DateTime']['output']; + lastModifiedBy?: Maybe; + version: Scalars['Long']['output']; +}; + +export type TCoreZoneLimits = { + __typename?: 'ZoneLimits'; + maxZones?: Maybe; +}; diff --git a/models/user/README.md b/models/user/README.md index 837393474..182acd644 100644 --- a/models/user/README.md +++ b/models/user/README.md @@ -19,7 +19,7 @@ import { UserDraft, type TUser, type TUserDraft, - type TUserDraftGraphql, + type TUserDraft, // MC McUser, @@ -30,7 +30,7 @@ import { const user = User.random().buildRest(); const userDraft = UserDraft.random().buildRest(); -const userGraphQLDraft = UserDraft.random().buildGraphql(); +const userGraphQLDraft = UserDraft.random().buildGraphql(); const mcUser = McUser.random().buildRest(); const mcUserDraft = McUserDraft.random().buildRest(); diff --git a/models/user/src/user/types.ts b/models/user/src/user/types.ts index b7d7dda40..c626fc32c 100644 --- a/models/user/src/user/types.ts +++ b/models/user/src/user/types.ts @@ -1,4 +1,5 @@ import type { TBuilder } from '@commercetools-test-data/core'; +import { TCoreUser } from '../../../../graphql-types/src/generated/core'; type BusinessRole = | 'ExecutiveManagement' @@ -10,25 +11,9 @@ type BusinessRole = | 'Engineer' | 'Other'; -export type TUser = { - id: string; - version: number; - email: string; - lowercaseEmail: string; - firstName: string; - lastName: string; - password: string; - language: string; - numberFormat: string; - businessRole: BusinessRole; - createdAt: string; - lastModifiedAt: string; - lastLoginAt: string; -}; +export type TUser = Omit; -export type TUserGraphql = TUser & { - __typename: 'User'; -}; +export type TUserGraphql = TCoreUser; export type TUserDraft = { email: string; @@ -40,8 +25,6 @@ export type TUserDraft = { businessRole: BusinessRole; }; -export type TUserDraftGraphql = TUserDraft; - export type TUserBuilder = TBuilder; export type TUserDraftBuilder = TBuilder; export type TCreateUserBuilder = () => TUserBuilder; diff --git a/models/user/src/user/user-draft/builder.spec.ts b/models/user/src/user/user-draft/builder.spec.ts index 0c1c99667..e5af88841 100644 --- a/models/user/src/user/user-draft/builder.spec.ts +++ b/models/user/src/user/user-draft/builder.spec.ts @@ -1,7 +1,7 @@ /* eslint-disable jest/no-disabled-tests */ /* eslint-disable jest/valid-title */ import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; -import { TUserDraft, TUserDraftGraphql } from '../types'; +import type { TUserDraft } from '../types'; import * as UserDraft from './index'; describe('builder', () => { @@ -38,7 +38,7 @@ describe('builder', () => { ); it( - ...createBuilderSpec( + ...createBuilderSpec( 'graphql', UserDraft.random(), expect.objectContaining({ diff --git a/models/user/src/user/user-draft/transformers.ts b/models/user/src/user/user-draft/transformers.ts index 7099f84db..2f8207ef2 100644 --- a/models/user/src/user/user-draft/transformers.ts +++ b/models/user/src/user/user-draft/transformers.ts @@ -1,10 +1,10 @@ import { Transformer } from '@commercetools-test-data/core'; -import type { TUserDraft, TUserDraftGraphql } from '../types'; +import type { TUserDraft } from '../types'; const transformers = { default: Transformer('default', {}), rest: Transformer('rest', {}), - graphql: Transformer('graphql', {}), + graphql: Transformer('graphql', {}), }; export default transformers; diff --git a/package.json b/package.json index fb2db46e7..5d5793801 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,8 @@ "changeset:version-and-format": "changeset version && prettier --write --parser json '**/package.json' && pnpm install --lockfile-only", "generate-types:settings": "graphql-codegen -r dotenv/config --config codegen.settings.yml", "generate-types:mc": "graphql-codegen -r dotenv/config --config codegen.mc.yml", - "generate-types": "pnpm generate-types:settings && generate-types:mc" + "generate-types:core": "graphql-codegen -r dotenv/config --config codegen.core.yml", + "generate-types": "pnpm generate-types:settings && generate-types:mc && generate-types:core" }, "dependencies": { "@babel/core": "^7.21.0", diff --git a/schemas/core.json b/schemas/core.json new file mode 100644 index 000000000..a25988928 --- /dev/null +++ b/schemas/core.json @@ -0,0 +1,7658 @@ +{ + "__schema": { + "queryType": { + "name": "Query" + }, + "mutationType": { + "name": "Mutation" + }, + "subscriptionType": null, + "types": [ + { + "kind": "INPUT_OBJECT", + "name": "AddTeam", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "members", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissions", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": "\"[]\"", + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "AddTeamMembership", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "user", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "AttributeGroupLimits", + "description": null, + "fields": [ + { + "name": "maxTotalAttributeGroups", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "AwsContainer", + "description": "AWS S3 container config", + "fields": [ + { + "name": "bucketUrl", + "description": "Public bucket url, without the project part", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "projectPrefix", + "description": "Project part of the object path on s3", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Boolean", + "description": "The `Boolean` scalar type represents `true` or `false`.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "BusinessRole", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "Architect", + "description": "Architect role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "CustomerService", + "description": "Customer Service role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Engineer", + "description": "Engineer role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ExecutiveManagement", + "description": "Executive Management role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Marketing", + "description": "Marketing role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Other", + "description": "Other role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ProductProjectManagerOrOwner", + "description": "ProductProjectManagerOrOwner role.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SalesAndECommerceManager", + "description": "SalesAndECommerceManager role.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CartClassificationType", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "values", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ShippingRateInputLocalizedEnumValue", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "ShippingRateInputType", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CartDiscountLimits", + "description": null, + "fields": [ + { + "name": "withoutDiscountCodeLimit", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CartLimits", + "description": null, + "fields": [ + { + "name": "maxCarts", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CartScoreType", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "ShippingRateInputType", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CartValueType", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "ShippingRateInputType", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CategoryLimits", + "description": null, + "fields": [ + { + "name": "maxTotalCategories", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CdnContainerConfiguration", + "description": null, + "fields": [ + { + "name": "enabled", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeName", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ChangeTeamName", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ClustersConfig", + "description": null, + "fields": [ + { + "name": "db", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "DBClustersConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "elasticsearch", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ESCluster", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ClustersConfigInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "db", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "DBClustersConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "elasticsearch", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ESClusterInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Country", + "description": "[ISO 3166-1](http://en.wikipedia.org/wiki/ISO_3166-1) country code.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "CreateOrganizationCommand", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "defaultClusters", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ClustersConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "CreatePermissionCommand", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "actionRightPermissions", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": "[]", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "dataFences", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DataFenceDraft", + "ofType": null + } + } + }, + "defaultValue": "[]", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "group", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "hiddenMenuItems", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": "[]", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "resourceAccessPermissions", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": "[]", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Currency", + "description": "Represents a currency. Currencies are identified by their [ISO 4217](http://www.iso.org/iso/home/standards/currency_codes.htm) currency codes.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomObjectLimits", + "description": null, + "fields": [ + { + "name": "maxCustomObjects", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomerGroupLimits", + "description": null, + "fields": [ + { + "name": "maxCustomerGroups", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomerLimits", + "description": null, + "fields": [ + { + "name": "maxCustomers", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DBClusterConfig", + "description": null, + "fields": [ + { + "name": "dbClusterKey", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "DBClusterKey", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sharded", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "DBClusterConfigInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "dbClusterKey", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DBClusterKeyInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sharded", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DBClusterKey", + "description": null, + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "DBClusterKeyInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "DBClustersConfig", + "description": null, + "fields": [ + { + "name": "carts", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "DBClusterConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "commits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "DBClusterConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "default", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "DBClusterKey", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "orders", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "DBClusterConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "DBClustersConfigInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "carts", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "DBClusterConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "commits", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "DBClusterConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "default", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DBClusterKeyInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "orders", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "DBClusterConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "DataFence", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "StoreDataFence", + "ofType": null + } + ] + }, + { + "kind": "INPUT_OBJECT", + "name": "DataFenceDraft", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "store", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DataFenceStoreDraftType", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "DataFenceStoreDraftType", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "storeKeys", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "DateTime", + "description": "DateTime is a scalar value that represents an ISO8601 formatted date and time.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "DateTimeZone", + "description": "DateTimeZone is a scalar value that represents a time zone.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ESAlternativeComparisonConfig", + "description": null, + "fields": [ + { + "name": "comparisonProbability", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "logComparisonResults", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "versioning", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ESAlternativeComparisonConfigInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "comparisonProbability", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "logComparisonResults", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "versioning", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ESCluster", + "description": null, + "fields": [ + { + "name": "categoriesShardConfig", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ESClusterShardConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "categoryComparison", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ESAlternativeComparisonConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "clusterKey", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productComparison", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ESAlternativeComparisonConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productsShardConfig", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ESClusterShardConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "replicateToClusterKey", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ESClusterInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "categoriesShardConfig", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ESClusterShardConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "categoryComparison", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ESAlternativeComparisonConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "clusterKey", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productComparison", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ESAlternativeComparisonConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productsShardConfig", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ESClusterShardConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "replicateToClusterKey", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ESClusterShardConfig", + "description": null, + "fields": [ + { + "name": "numberOfReplicas", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "numberOfShards", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "refreshIntervalSeconds", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "versioning", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ESClusterShardConfigInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "numberOfReplicas", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "numberOfShards", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "refreshIntervalSeconds", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "versioning", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ExtensionLimits", + "description": null, + "fields": [ + { + "name": "maxTimeoutInMs", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ExternalOAuthInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "authorizationHeader", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "url", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Float", + "description": "The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Initiator", + "description": null, + "fields": [ + { + "name": "anonymousId", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "associateRef", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "clientId", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "customerRef", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "externalUserId", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isPlatformClient", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "userRef", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Int", + "description": "The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Locale", + "description": "Locale is a scalar value represented as a string language tag.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "LocalizedString", + "description": null, + "fields": [ + { + "name": "locale", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Long", + "description": "The `Long` scalar type represents non-fractional signed whole numeric values. Long can represent values between -(2^63) and 2^63 - 1.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "MediaContainer", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "AwsContainer", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "PublicContainer", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "MessagesConfiguration", + "description": null, + "fields": [ + { + "name": "deleteDaysAfterCreation", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "enabled", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Mutation", + "description": null, + "fields": [ + { + "name": "createMyOrganization", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CreateOrganizationCommand", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createMyPermission", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CreatePermissionCommand", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createMyProject", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ProjectDraftType", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createPermission", + "description": null, + "args": [ + { + "name": "draft", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CreatePermissionCommand", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteMyOrganization", + "description": null, + "args": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteMyPermission", + "description": null, + "args": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteMyProject", + "description": null, + "args": [ + { + "name": "key", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deletePermission", + "description": null, + "args": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "revokeAccessTokensByGroup", + "description": null, + "args": [ + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissionGroup", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "RevokedTokens", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "revokeAccessTokensByTeam", + "description": null, + "args": [ + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "RevokedTokens", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "updateMyOrganization", + "description": null, + "args": [ + { + "name": "actions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "OrganizationUpdateAction", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "updateMyPermission", + "description": null, + "args": [ + { + "name": "actions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "PermissionUpdateAction", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "updatePermission", + "description": null, + "args": [ + { + "name": "actions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "PermissionUpdateAction", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrderEditLimits", + "description": null, + "fields": [ + { + "name": "maxOrderEdits", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Organization", + "description": null, + "fields": [ + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "defaultClusters", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ClustersConfig", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teams", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Team", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Versioned", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrganizationQueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "exists", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "results", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "OrganizationUpdateAction", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "addTeam", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "AddTeam", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "addTeamMembership", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "AddTeamMembership", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "changeName", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeName", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "changeTeamName", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ChangeTeamName", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "removeTeam", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "RemoveTeam", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "removeTeamMembership", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "RemoveTeamMembership", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Permission", + "description": null, + "fields": [ + { + "name": "actionRightPermissions", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "dataFences", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INTERFACE", + "name": "DataFence", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "group", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "hiddenMenuItems", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ownerRef", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "resourceAccessPermissions", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teamRef", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Versioned", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PermissionQueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "exists", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "results", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "PermissionUpdateAction", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "setActionRightPermissions", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SetPermissionActionRightPermissions", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "setDataFences", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SetPermissionDataFences", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "setHiddenMenuItems", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SetPermissionHiddenMenuItems", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "setResourceAccessPermissions", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SetPermissionResourceAccessPermissions", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProductDiscountLimits", + "description": null, + "fields": [ + { + "name": "activeLimit", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProductLimits", + "description": null, + "fields": [ + { + "name": "pricesLimitPerVariant", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productTailoringLimit", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "variantLimit", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProductTypeLimits", + "description": null, + "fields": [ + { + "name": "maxTotalProductTypes", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Project", + "description": null, + "fields": [ + { + "name": "billingInfo", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ProjectBillingInfo", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "cdnContainer", + "description": null, + "args": [], + "type": { + "kind": "UNION", + "name": "MediaContainer", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "cdnContainerConfiguration", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CdnContainerConfiguration", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "countries", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Country", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "currencies", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Currency", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "customLimits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ProjectCustomLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "initialized", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isProductionProject", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "languages", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "messages", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MessagesConfiguration", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ownerRef", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "participations", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "participationsRef", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "plan", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "shippingRateInputType", + "description": null, + "args": [], + "type": { + "kind": "INTERFACE", + "name": "ShippingRateInputType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "suspended", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ProjectSuspendData", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "trialUntil", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Versioned", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectBillingInfo", + "description": null, + "fields": [ + { + "name": "accountId", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "accountName", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "accountNumber", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "comment", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "contractNumber", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectCustomLimits", + "description": null, + "fields": [ + { + "name": "attributeGroupLimits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "AttributeGroupLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "cartDiscounts", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "CartDiscountLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "carts", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "CartLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "categoryLimits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "CategoryLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "customObjects", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "CustomObjectLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "customerGroups", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "CustomerGroupLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "customers", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "CustomerLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "extensions", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ExtensionLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "orderEdits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "OrderEditLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productDiscounts", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ProductDiscountLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productTypeLimits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ProductTypeLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "products", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ProductLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "queryLimits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "QueryLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "refreshTokens", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "RefreshTokenLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "searchLimits", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "SearchLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "shippingMethods", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShippingMethodLimit", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "shoppingLists", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShoppingListLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "stores", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "StoreLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "subscriptions", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "SubscriptionsLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "taxCategories", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "TaxCategoryLimit", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "termFacetSize", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "zones", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "ZoneLimits", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ProjectDraftType", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "asyncInitialization", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "cdnContainerEnabled", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "true", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "countries", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Country", + "ofType": null + } + } + } + }, + "defaultValue": "[]", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "currencies", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Currency", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "dbClustersConfig", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "DBClustersConfigInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deleteDaysAfterCreation", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "esCluster", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ESClusterInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "externalOAuth", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "ExternalOAuthInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "key", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "languages", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "messagesEnabled", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "plan", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "ProjectPlan", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "searchIndexing", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SearchIndexingConfigurationInput", + "ofType": null + }, + "defaultValue": "{products: {status: \"Deactivated\"}}", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "trialUntil", + "description": null, + "type": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ProjectPlan", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "Standard", + "description": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Unlimited", + "description": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "description": null, + "fields": [ + { + "name": "count", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "exists", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "results", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "total", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProjectSuspendData", + "description": null, + "fields": [ + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "reason", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "ProjectSuspensionReason", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ProjectSuspensionReason", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "DbMigration", + "description": "A database migration is running.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Other", + "description": "Other reasons like copy project.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "Payment", + "description": "The usage of the project is not paid.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PublicContainer", + "description": "Rackspace Cloud Files container config", + "fields": [ + { + "name": "httpUri", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "httpsUri", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "iosUri", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "streamingUri", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Query", + "description": null, + "fields": [ + { + "name": "myAccessibleProjects", + "description": "Fetch projects that `me` can access (but maybe not be able to manage).", + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "ofType": null + } + }, + "isDeprecated": true, + "deprecationReason": "beta feature" + }, + { + "name": "myOrganizations", + "description": "Fetch organizations that `me` can manage.", + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OrganizationQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "myPermissions", + "description": "Fetch permissions `me` is allowed to see:\n - if `owner` = `organization`: filter on organizations `me` can manage\n - if `owner` = `project`: filter on projects belonging to organizations `me` can manage\nCurrently in beta.\n", + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PermissionQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "myProjects", + "description": "Fetch projects that `me` can manage.", + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissions", + "description": null, + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PermissionQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissionsForUser", + "description": "All permissions for a given user and a given owner (organization or project). Currently in beta.", + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "owner", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "userId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PermissionQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "projects", + "description": null, + "args": [ + { + "name": "limit", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "offset", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sort", + "description": null, + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "where", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProjectQueryResult", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "QueryLimits", + "description": null, + "fields": [ + { + "name": "maxOffset", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Reference", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "typeId", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "typeId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "RefreshTokenLimits", + "description": null, + "fields": [ + { + "name": "maxRefreshTokens", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "RemoveTeam", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "RemoveTeamMembership", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "teamId", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "user", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ReferenceInput", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "RevokedTokens", + "description": null, + "fields": [ + { + "name": "owner", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "revoked", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teams", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SearchIndexingConfigurationInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "products", + "description": null, + "type": { + "kind": "INPUT_OBJECT", + "name": "SearchIndexingConfigurationValuesInput", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SearchIndexingConfigurationValuesInput", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "status", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SearchLimits", + "description": null, + "fields": [ + { + "name": "maxTextSize", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SetPermissionActionRightPermissions", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "actionRightPermissions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SetPermissionDataFences", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "dataFences", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "DataFenceDraft", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SetPermissionHiddenMenuItems", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "hiddenMenuItems", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SetPermissionResourceAccessPermissions", + "description": null, + "fields": null, + "inputFields": [ + { + "name": "resourceAccessPermissions", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ShippingMethodLimit", + "description": null, + "fields": [ + { + "name": "maxShippingMethods", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ShippingRateInputLocalizedEnumValue", + "description": null, + "fields": [ + { + "name": "key", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "label", + "description": null, + "args": [ + { + "name": "acceptLanguage", + "description": "List of languages the client is able to understand, and which locale variant is preferred.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + } + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "locale", + "description": "String is defined for different locales. This argument specifies the desired locale.", + "type": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "labelAllLocales", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "LocalizedString", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "ShippingRateInputType", + "description": null, + "fields": [ + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "CartClassificationType", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CartScoreType", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CartValueType", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "ShoppingListLimits", + "description": null, + "fields": [ + { + "name": "maxLineItems", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "maxShoppingLists", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "maxTextLineItems", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "StoreDataFence", + "description": null, + "fields": [ + { + "name": "storeKeys", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "DataFence", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "StoreLimits", + "description": null, + "fields": [ + { + "name": "maxInventorySupplyChannelsPerStore", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "maxProductDistributionChannelsPerStore", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "maxProductSelectionsPerStore", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "maxStores", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "String", + "description": "The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SubscriptionsLimits", + "description": null, + "fields": [ + { + "name": "maxSubscriptions", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "TaxCategoryLimit", + "description": null, + "fields": [ + { + "name": "maxTaxCategories", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Team", + "description": null, + "fields": [ + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "members", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "User", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "membersRef", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Reference", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "User", + "description": null, + "fields": [ + { + "name": "businessRole", + "description": null, + "args": [], + "type": { + "kind": "ENUM", + "name": "BusinessRole", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "email", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "firstName", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "language", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastLoginAt", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastName", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "locked", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lowercaseEmail", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "numberFormat", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Locale", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "timeZone", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "DateTimeZone", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Versioned", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "Versioned", + "description": "Versioned object have an ID and version and modification. Every update of this object changes it's version.", + "fields": [ + { + "name": "createdAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedAt", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastModifiedBy", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "Initiator", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "Organization", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Permission", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "User", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "ZoneLimits", + "description": null, + "fields": [ + { + "name": "maxZones", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Long", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Directive", + "description": "A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isRepeatable", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "locations", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "__DirectiveLocation", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "args", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__InputValue", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "__DirectiveLocation", + "description": "A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "QUERY", + "description": "Location adjacent to a query operation.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "MUTATION", + "description": "Location adjacent to a mutation operation.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SUBSCRIPTION", + "description": "Location adjacent to a subscription operation.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FIELD", + "description": "Location adjacent to a field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FRAGMENT_DEFINITION", + "description": "Location adjacent to a fragment definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FRAGMENT_SPREAD", + "description": "Location adjacent to a fragment spread.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INLINE_FRAGMENT", + "description": "Location adjacent to an inline fragment.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VARIABLE_DEFINITION", + "description": "Location adjacent to a variable definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SCHEMA", + "description": "Location adjacent to a schema definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SCALAR", + "description": "Location adjacent to a scalar definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OBJECT", + "description": "Location adjacent to an object type definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FIELD_DEFINITION", + "description": "Location adjacent to a field definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ARGUMENT_DEFINITION", + "description": "Location adjacent to an argument definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INTERFACE", + "description": "Location adjacent to an interface definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UNION", + "description": "Location adjacent to a union definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ENUM", + "description": "Location adjacent to an enum definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ENUM_VALUE", + "description": "Location adjacent to an enum value definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INPUT_OBJECT", + "description": "Location adjacent to an input object type definition.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INPUT_FIELD_DEFINITION", + "description": "Location adjacent to an input object field definition.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__EnumValue", + "description": "One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isDeprecated", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deprecationReason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Field", + "description": "Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "args", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__InputValue", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isDeprecated", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deprecationReason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__InputValue", + "description": "Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.", + "fields": [ + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "defaultValue", + "description": "A GraphQL-formatted string representing the default value for this input value.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "isDeprecated", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deprecationReason", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Schema", + "description": "A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.", + "fields": [ + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "types", + "description": "A list of all types supported by this server.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "queryType", + "description": "The type that query operations will be rooted at.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "mutationType", + "description": "If this server supports mutation, the type that mutation operations will be rooted at.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "subscriptionType", + "description": "If this server support subscription, the type that subscription operations will be rooted at.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "directives", + "description": "A list of all directives supported by this server.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Directive", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "__Type", + "description": "The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name, description and optional `specifiedByURL`, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.", + "fields": [ + { + "name": "kind", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "__TypeKind", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "specifiedByURL", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "fields", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Field", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "interfaces", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "possibleTypes", + "description": null, + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "enumValues", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__EnumValue", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "inputFields", + "description": null, + "args": [ + { + "name": "includeDeprecated", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false", + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "__InputValue", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ofType", + "description": null, + "args": [], + "type": { + "kind": "OBJECT", + "name": "__Type", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "__TypeKind", + "description": "An enum describing what kind of type a given `__Type` is.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "SCALAR", + "description": "Indicates this type is a scalar.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OBJECT", + "description": "Indicates this type is an object. `fields` and `interfaces` are valid fields.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INTERFACE", + "description": "Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UNION", + "description": "Indicates this type is a union. `possibleTypes` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ENUM", + "description": "Indicates this type is an enum. `enumValues` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INPUT_OBJECT", + "description": "Indicates this type is an input object. `inputFields` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "LIST", + "description": "Indicates this type is a list. `ofType` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "NON_NULL", + "description": "Indicates this type is a non-null. `ofType` is a valid field.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + } + ], + "directives": [ + { + "name": "deprecated", + "description": "Marks an element of a GraphQL schema as no longer supported.", + "isRepeatable": false, + "locations": [ + "ARGUMENT_DEFINITION", + "ENUM_VALUE", + "FIELD_DEFINITION", + "INPUT_FIELD_DEFINITION" + ], + "args": [ + { + "name": "reason", + "description": "Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted in [Markdown](https://daringfireball.net/projects/markdown/).", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": "\"No longer supported\"", + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "include", + "description": "Directs the executor to include this field or fragment only when the `if` argument is true.", + "isRepeatable": false, + "locations": ["FIELD", "FRAGMENT_SPREAD", "INLINE_FRAGMENT"], + "args": [ + { + "name": "if", + "description": "Included when true.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ] + }, + { + "name": "skip", + "description": "Directs the executor to skip this field or fragment when the `if` argument is true.", + "isRepeatable": false, + "locations": ["FIELD", "FRAGMENT_SPREAD", "INLINE_FRAGMENT"], + "args": [ + { + "name": "if", + "description": "Included when true.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ] + } + ] + } +} From a56e2851da366df0cec028c6cecbcf830f2e85f9 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 17:42:42 +0100 Subject: [PATCH 10/18] refactor: update mc-user model --- models/user/src/mc-user/generator.ts | 7 +------ .../user/src/mc-user/id-token-user-info/builder.spec.ts | 6 +++--- models/user/src/mc-user/id-token-user-info/generator.ts | 4 ++-- models/user/src/mc-user/transformers.ts | 8 +++++--- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/models/user/src/mc-user/generator.ts b/models/user/src/mc-user/generator.ts index 928a444e8..2b1ee9df4 100644 --- a/models/user/src/mc-user/generator.ts +++ b/models/user/src/mc-user/generator.ts @@ -27,12 +27,7 @@ const generator = Generator({ launchdarklyTrackingCloudEnvironment: fake((f) => f.lorem.word()), gravatarHash: fake((f) => f.lorem.word()), defaultProjectKey: fake((f) => f.lorem.word()), - projects: fake(() => ({ - count: 1, - offset: 0, - total: 1, - results: [McProject.random().build()], - })), + projects: fake(() => [McProject.random()]), businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), idTokenUserInfo: fake(() => IdTokenUserInfo.random()), verificationStatus: fake(() => 'Verified'), diff --git a/models/user/src/mc-user/id-token-user-info/builder.spec.ts b/models/user/src/mc-user/id-token-user-info/builder.spec.ts index 0ae21072f..05c34f62f 100644 --- a/models/user/src/mc-user/id-token-user-info/builder.spec.ts +++ b/models/user/src/mc-user/id-token-user-info/builder.spec.ts @@ -17,7 +17,7 @@ describe('builder', () => { iat: expect.any(String), email: expect.any(String), name: expect.any(String), - additionalClaims: expect.any(String), + additionalClaims: null, }) ) ); @@ -34,7 +34,7 @@ describe('builder', () => { iat: expect.any(String), email: expect.any(String), name: expect.any(String), - additionalClaims: expect.any(String), + additionalClaims: null, }) ) ); @@ -52,7 +52,7 @@ describe('builder', () => { iat: expect.any(String), email: expect.any(String), name: expect.any(String), - additionalClaims: expect.any(String), + additionalClaims: null, }) ) ); diff --git a/models/user/src/mc-user/id-token-user-info/generator.ts b/models/user/src/mc-user/id-token-user-info/generator.ts index 5dead6b4e..e74b77072 100644 --- a/models/user/src/mc-user/id-token-user-info/generator.ts +++ b/models/user/src/mc-user/id-token-user-info/generator.ts @@ -7,13 +7,13 @@ const [_, getNewerDate] = createRelatedDates(); const generator = Generator({ fields: { iss: fake((f) => f.internet.url()), - sub: fake((f) => f.internet.email()), + sub: fake((f) => f.string.uuid()), aud: fake((f) => f.internet.url()), exp: fake(getNewerDate), iat: fake(getNewerDate), email: fake((f) => f.internet.email()), name: fake((f) => f.person.firstName()), - additionalClaims: fake((f) => f.lorem.words()), + additionalClaims: null, }, }); diff --git a/models/user/src/mc-user/transformers.ts b/models/user/src/mc-user/transformers.ts index 1bccc65aa..fc7c40b96 100644 --- a/models/user/src/mc-user/transformers.ts +++ b/models/user/src/mc-user/transformers.ts @@ -1,15 +1,17 @@ import { Transformer } from '@commercetools-test-data/core'; import type { TMcUser, TMcUserGraphql } from './types'; +const buildFields: (keyof TMcUser)[] = ['idTokenUserInfo', 'projects']; + const transformers = { default: Transformer('default', { - buildFields: ['idTokenUserInfo'], + buildFields, }), rest: Transformer('rest', { - buildFields: ['idTokenUserInfo'], + buildFields, }), graphql: Transformer('graphql', { - buildFields: ['idTokenUserInfo'], + buildFields, addFields: () => ({ __typename: 'User', }), From a83a2c86f34d0c27bae448e677f658359e7dbbc3 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 17:45:07 +0100 Subject: [PATCH 11/18] refactor: update pnpm.lock --- pnpm-lock.yaml | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ae9b580ae..4f6cede16 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1075,12 +1075,6 @@ importers: '@faker-js/faker': specifier: ^8.0.0 version: 8.3.1 - add: - specifier: ^2.0.6 - version: 2.0.6 - pnpm: - specifier: ^8.15.3 - version: 8.15.3 models/zone: dependencies: @@ -5348,10 +5342,6 @@ packages: hasBin: true dev: false - /add@2.0.6: - resolution: {integrity: sha512-j5QzrmsokwWWp6kUcJQySpbG+xfOBqqKnup3OIk1pz+kB/80SLorZ9V8zHFLO92Lcd+hbvq8bT+zOGoPkmBV0Q==} - dev: false - /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -10259,12 +10249,6 @@ packages: irregular-plurals: 3.3.0 dev: false - /pnpm@8.15.3: - resolution: {integrity: sha512-3YXNbspkF8b3PbMroetHZ/+0y6T1vwcnhGciyStrnlaizCGLEThbvCsh8YoWpn2nes6um2Gg9WoWQ7JeH7amBQ==} - engines: {node: '>=16.14'} - hasBin: true - dev: false - /preferred-pm@3.0.3: resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} engines: {node: '>=10'} From 4abbbcbf37e3f13b2bfb2902fc15802b3560c687 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 17:54:36 +0100 Subject: [PATCH 12/18] refactor: remove password field from user builder and generator --- models/user/src/user/builder.spec.ts | 6 +++--- models/user/src/user/generator.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/models/user/src/user/builder.spec.ts b/models/user/src/user/builder.spec.ts index b45710fa7..96a75bd1c 100644 --- a/models/user/src/user/builder.spec.ts +++ b/models/user/src/user/builder.spec.ts @@ -16,13 +16,13 @@ describe('builder', () => { lowercaseEmail: expect.any(String), firstName: expect.any(String), lastName: expect.any(String), - password: expect.any(String), language: ['en'], numberFormat: ['en'], businessRole: expect.any(String), createdAt: expect.any(String), lastModifiedAt: expect.any(String), lastLoginAt: expect.any(String), + locked: false, }) ) ); @@ -38,13 +38,13 @@ describe('builder', () => { lowercaseEmail: expect.any(String), firstName: expect.any(String), lastName: expect.any(String), - password: expect.any(String), language: ['en'], numberFormat: ['en'], businessRole: expect.any(String), createdAt: expect.any(String), lastModifiedAt: expect.any(String), lastLoginAt: expect.any(String), + locked: false, }) ) ); @@ -61,13 +61,13 @@ describe('builder', () => { lowercaseEmail: expect.any(String), firstName: expect.any(String), lastName: expect.any(String), - password: expect.any(String), language: ['en'], numberFormat: ['en'], businessRole: expect.any(String), createdAt: expect.any(String), lastModifiedAt: expect.any(String), lastLoginAt: expect.any(String), + locked: false, }) ) ); diff --git a/models/user/src/user/generator.ts b/models/user/src/user/generator.ts index 45cd01624..9822392a7 100644 --- a/models/user/src/user/generator.ts +++ b/models/user/src/user/generator.ts @@ -13,13 +13,13 @@ const generator = Generator({ lowercaseEmail: fake((f) => f.internet.email()), firstName: fake((f) => f.person.firstName()), lastName: fake((f) => f.person.lastName()), - password: fake((f) => f.internet.password()), language: fake(() => ['en']), numberFormat: fake(() => ['en']), businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), createdAt: fake(getOlderDate), lastModifiedAt: fake(getNewerDate), lastLoginAt: fake(getNewerDate), + locked: fake(() => false), }, }); From 65dde62a38558b6953bbac762e1f114fdcd68cfa Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Thu, 22 Feb 2024 18:36:05 +0100 Subject: [PATCH 13/18] refactor: add changeset for graphql-types updates --- .changeset/smooth-suits-cough.md | 5 +++++ models/user/package.json | 1 + models/user/src/mc-user/types.ts | 2 +- models/user/src/user/types.ts | 2 +- pnpm-lock.yaml | 3 +++ 5 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 .changeset/smooth-suits-cough.md diff --git a/.changeset/smooth-suits-cough.md b/.changeset/smooth-suits-cough.md new file mode 100644 index 000000000..00a379b5d --- /dev/null +++ b/.changeset/smooth-suits-cough.md @@ -0,0 +1,5 @@ +--- +'@commercetools-test-data/graphql-types': minor +--- + +Include Core and MC generated types to the package. diff --git a/models/user/package.json b/models/user/package.json index cf7787b15..5da1796a7 100644 --- a/models/user/package.json +++ b/models/user/package.json @@ -21,6 +21,7 @@ "@babel/runtime-corejs3": "^7.17.9", "@commercetools-test-data/commons": "6.11.0", "@commercetools-test-data/core": "6.11.0", + "@commercetools-test-data/graphql-types": "7.0.0", "@commercetools-test-data/project": "workspace:^", "@commercetools-test-data/utils": "6.11.0", "@commercetools/platform-sdk": "^7.0.0", diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts index 6eecb9fb7..451a4f645 100644 --- a/models/user/src/mc-user/types.ts +++ b/models/user/src/mc-user/types.ts @@ -2,7 +2,7 @@ import type { TBuilder } from '@commercetools-test-data/core'; import type { TMcUser as TMcUserGraphql, TMcIdTokenUserInfo as TMcIdTokenUserInfoGraphql, -} from '../../../../graphql-types/src/generated/mc'; +} from '@commercetools-test-data/graphql-types/src/generated/mc'; export type { TMcUserGraphql, TMcIdTokenUserInfoGraphql }; export type TMcUser = Omit; diff --git a/models/user/src/user/types.ts b/models/user/src/user/types.ts index c626fc32c..132200afe 100644 --- a/models/user/src/user/types.ts +++ b/models/user/src/user/types.ts @@ -1,5 +1,5 @@ import type { TBuilder } from '@commercetools-test-data/core'; -import { TCoreUser } from '../../../../graphql-types/src/generated/core'; +import { TCoreUser } from '@commercetools-test-data/graphql-types/src/generated/core'; type BusinessRole = | 'ExecutiveManagement' diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4f6cede16..fc48c4970 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1063,6 +1063,9 @@ importers: '@commercetools-test-data/core': specifier: 6.11.0 version: 6.11.0 + '@commercetools-test-data/graphql-types': + specifier: 7.0.0 + version: link:../../graphql-types '@commercetools-test-data/project': specifier: workspace:^ version: link:../project From b8a8b0af5a819e3a386d2cd7628aeefb36421e72 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Fri, 23 Feb 2024 11:12:09 +0100 Subject: [PATCH 14/18] refactor: fix failing test --- models/user/src/mc-user/builder.spec.ts | 37 +++++++++++-------------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/models/user/src/mc-user/builder.spec.ts b/models/user/src/mc-user/builder.spec.ts index c693b3339..d375bc416 100644 --- a/models/user/src/mc-user/builder.spec.ts +++ b/models/user/src/mc-user/builder.spec.ts @@ -4,24 +4,19 @@ import { createBuilderSpec } from '@commercetools-test-data/core/test-utils'; import type { TMcUser, TMcUserGraphql } from './types'; import * as McUser from './index'; -const projects = { - count: 1, - offset: 0, - total: 1, - results: [ - expect.objectContaining({ - id: expect.any(String), - key: expect.any(String), - version: expect.any(Number), - name: expect.any(String), - countries: expect.any(Array), - currencies: expect.any(Array), - languages: expect.any(Array), - createdAt: expect.any(String), - lastModifiedAt: expect.any(String), - }), - ], -}; +const projects = [ + expect.objectContaining({ + id: expect.any(String), + key: expect.any(String), + version: expect.any(Number), + name: expect.any(String), + countries: expect.any(Array), + currencies: expect.any(Array), + languages: expect.any(Array), + createdAt: expect.any(String), + lastModifiedAt: expect.any(String), + }), +]; describe('builder', () => { it( @@ -55,7 +50,7 @@ describe('builder', () => { iat: expect.any(String), email: expect.any(String), name: expect.any(String), - additionalClaims: expect.any(String), + additionalClaims: null, }), verificationStatus: 'Verified', }) @@ -93,7 +88,7 @@ describe('builder', () => { iat: expect.any(String), email: expect.any(String), name: expect.any(String), - additionalClaims: expect.any(String), + additionalClaims: null, }), verificationStatus: 'Verified', }) @@ -132,7 +127,7 @@ describe('builder', () => { iat: expect.any(String), email: expect.any(String), name: expect.any(String), - additionalClaims: expect.any(String), + additionalClaims: null, }), verificationStatus: 'Verified', }) From 9ccf72ae826fe18acb5ca64edb3ed06124ad1234 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Fri, 23 Feb 2024 16:43:31 +0100 Subject: [PATCH 15/18] refactor: replace password with email in mc user draft model --- models/user/src/mc-user/mc-user-draft/builder.spec.ts | 11 +++++++---- models/user/src/mc-user/mc-user-draft/generator.ts | 2 +- models/user/src/mc-user/types.ts | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/models/user/src/mc-user/mc-user-draft/builder.spec.ts b/models/user/src/mc-user/mc-user-draft/builder.spec.ts index 432e45b2b..72b9393ee 100644 --- a/models/user/src/mc-user/mc-user-draft/builder.spec.ts +++ b/models/user/src/mc-user/mc-user-draft/builder.spec.ts @@ -8,11 +8,12 @@ describe('builder', () => { it( ...createBuilderSpec( 'default', - McUserDraft.random().email('hello@ct.com'), + McUserDraft.random(), expect.objectContaining({ - email: 'hello@ct.com', firstName: expect.any(String), lastName: expect.any(String), + password: expect.any(String), + businessRole: expect.any(String), }) ) ); @@ -22,9 +23,10 @@ describe('builder', () => { 'rest', McUserDraft.random(), expect.objectContaining({ - email: expect.any(String), + password: expect.any(String), firstName: expect.any(String), lastName: expect.any(String), + businessRole: expect.any(String), }) ) ); @@ -34,9 +36,10 @@ describe('builder', () => { 'graphql', McUserDraft.random(), expect.objectContaining({ - email: expect.any(String), + password: expect.any(String), firstName: expect.any(String), lastName: expect.any(String), + businessRole: expect.any(String), }) ) ); diff --git a/models/user/src/mc-user/mc-user-draft/generator.ts b/models/user/src/mc-user/mc-user-draft/generator.ts index cdba8b8cb..d2c5c7d99 100644 --- a/models/user/src/mc-user/mc-user-draft/generator.ts +++ b/models/user/src/mc-user/mc-user-draft/generator.ts @@ -4,7 +4,7 @@ import type { TMcUserDraft } from '../types'; const generator = Generator({ fields: { - email: fake((f) => f.internet.email()), + password: fake((f) => f.internet.password()), firstName: fake((f) => f.person.firstName()), lastName: fake((f) => f.person.lastName()), businessRole: fake((f) => f.helpers.arrayElement(fakeBusinessRoles)), diff --git a/models/user/src/mc-user/types.ts b/models/user/src/mc-user/types.ts index 451a4f645..d35034011 100644 --- a/models/user/src/mc-user/types.ts +++ b/models/user/src/mc-user/types.ts @@ -9,7 +9,7 @@ export type TMcUser = Omit; export type TMcIdTokenUserInfo = Omit; export type TMcUserDraft = { - email: string; + password: string; firstName: string; lastName: string; businessRole?: string; From 27e9ec7269a4e306599c85730d4bfc63bc281c14 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Mon, 26 Feb 2024 10:12:58 +0100 Subject: [PATCH 16/18] refactor: use business role from generated types --- models/user/src/user/types.ts | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/models/user/src/user/types.ts b/models/user/src/user/types.ts index 132200afe..f2845b94b 100644 --- a/models/user/src/user/types.ts +++ b/models/user/src/user/types.ts @@ -1,15 +1,8 @@ import type { TBuilder } from '@commercetools-test-data/core'; -import { TCoreUser } from '@commercetools-test-data/graphql-types/src/generated/core'; - -type BusinessRole = - | 'ExecutiveManagement' - | 'CustomerService' - | 'Marketing' - | 'SalesAndECommerceManager' - | 'ProductProjectManagerOrOwner' - | 'Architect' - | 'Engineer' - | 'Other'; +import type { + TCoreBusinessRole, + TCoreUser, +} from '@commercetools-test-data/graphql-types/src/generated/core'; export type TUser = Omit; @@ -22,7 +15,7 @@ export type TUserDraft = { lastName: string; language: string; numberFormat?: string; - businessRole: BusinessRole; + businessRole?: TCoreBusinessRole; }; export type TUserBuilder = TBuilder; From 55f234e3732f71c0f61d89497b266876230ccc91 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Mon, 26 Feb 2024 20:01:50 +0100 Subject: [PATCH 17/18] refactor: update pnpm.lock --- pnpm-lock.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fc48c4970..ae31b7fd7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1065,7 +1065,7 @@ importers: version: 6.11.0 '@commercetools-test-data/graphql-types': specifier: 7.0.0 - version: link:../../graphql-types + version: 7.0.0 '@commercetools-test-data/project': specifier: workspace:^ version: link:../project @@ -3263,6 +3263,10 @@ packages: lodash: 4.17.21 dev: false + /@commercetools-test-data/graphql-types@7.0.0: + resolution: {integrity: sha512-z9hBSdDdU5mn+pFu3G5O6iNlIMsk05v+PWaft/OCzdECeNUZz/NmTpEFQi7QoXBwHeblyDj40rIg2XoOvydmBg==} + dev: false + /@commercetools-test-data/product-variant@5.11.2: resolution: {integrity: sha512-7VT0Iez2bi8fhpqJOzVx/WfmLV+mAXlc5SOxZoTeP1JyUyY07GiujI0ctKAh8Q3/0qzVyJ08RFV1BLtYxLWeKA==} dependencies: From 5aba8fc7dfdf84473808133780c8c0b130527c98 Mon Sep 17 00:00:00 2001 From: Yemitan Isaiah Olurotimi Date: Mon, 26 Feb 2024 20:06:47 +0100 Subject: [PATCH 18/18] refactor: update graphql-types version --- models/user/package.json | 2 +- pnpm-lock.yaml | 8 ++------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/models/user/package.json b/models/user/package.json index 5da1796a7..59e6ef05b 100644 --- a/models/user/package.json +++ b/models/user/package.json @@ -21,7 +21,7 @@ "@babel/runtime-corejs3": "^7.17.9", "@commercetools-test-data/commons": "6.11.0", "@commercetools-test-data/core": "6.11.0", - "@commercetools-test-data/graphql-types": "7.0.0", + "@commercetools-test-data/graphql-types": "7.1.1", "@commercetools-test-data/project": "workspace:^", "@commercetools-test-data/utils": "6.11.0", "@commercetools/platform-sdk": "^7.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ae31b7fd7..b66929ec0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1064,8 +1064,8 @@ importers: specifier: 6.11.0 version: 6.11.0 '@commercetools-test-data/graphql-types': - specifier: 7.0.0 - version: 7.0.0 + specifier: 7.1.1 + version: link:../../graphql-types '@commercetools-test-data/project': specifier: workspace:^ version: link:../project @@ -3263,10 +3263,6 @@ packages: lodash: 4.17.21 dev: false - /@commercetools-test-data/graphql-types@7.0.0: - resolution: {integrity: sha512-z9hBSdDdU5mn+pFu3G5O6iNlIMsk05v+PWaft/OCzdECeNUZz/NmTpEFQi7QoXBwHeblyDj40rIg2XoOvydmBg==} - dev: false - /@commercetools-test-data/product-variant@5.11.2: resolution: {integrity: sha512-7VT0Iez2bi8fhpqJOzVx/WfmLV+mAXlc5SOxZoTeP1JyUyY07GiujI0ctKAh8Q3/0qzVyJ08RFV1BLtYxLWeKA==} dependencies: