diff --git a/app/generation/generated.ts b/app/generation/generated.ts index 6ebb8d8b..1f15e5b1 100644 --- a/app/generation/generated.ts +++ b/app/generation/generated.ts @@ -62,23 +62,11 @@ export type AddEmployeeSuccess = { }; export type AddPersonInput = { - person: AddPersonPersonInput; + person: PersonInput; }; export type AddPersonOutput = AddPersonSuccess | UniqueConstraintViolationFailure; -export type AddPersonPersonInput = { - birthday: Scalars['Date']; - email: Scalars['EmailAddress']; - firstName: Scalars['String']; - gender: Gender; - /** Last name has to be minimum of 1 chracters and maximum of 50 */ - lastName: Scalars['String']; - nationality: Scalars['CountryCode']; - personalIdentityCode: Scalars['PersonalIdentityCode']; - phone: Scalars['PhoneNumber']; -}; - export type AddPersonSuccess = { __typename?: 'AddPersonSuccess'; person: Person; @@ -93,9 +81,11 @@ export type Adult = Person & { firstName: Scalars['String']; gender: Gender; id: Scalars['UUID']; + /** Requires authentication and ADMIN privileges */ + internalId: Scalars['ID']; lastName: Scalars['String']; nationality: Scalars['CountryCode']; - /** Requires authentication and ADMIN privileges */ + /** Requires authentication and USER privileges */ personalIdentityCode: Scalars['PersonalIdentityCode']; phone?: Maybe; timestamp: Timestamp; @@ -184,7 +174,7 @@ export type EditCompanySuccess = { export type EditPersonInput = { id: Scalars['UUID']; - person: AddPersonPersonInput; + person: PersonInput; }; export type EditPersonOutput = EditPersonSuccess | NotFoundFailure | UniqueConstraintViolationFailure; @@ -359,9 +349,11 @@ export type Person = { firstName: Scalars['String']; gender: Gender; id: Scalars['UUID']; + /** Requires authentication and ADMIN privileges */ + internalId: Scalars['ID']; lastName: Scalars['String']; nationality: Scalars['CountryCode']; - /** Requires authentication and ADMIN privileges */ + /** Requires authentication and USER privileges */ personalIdentityCode: Scalars['PersonalIdentityCode']; phone?: Maybe; timestamp: Timestamp; @@ -379,7 +371,16 @@ export type PersonFilterOperationInput = { }; export type PersonInput = { + birthday: Scalars['Date']; + email: Scalars['EmailAddress']; + firstName: Scalars['String']; + gender: Gender; id: Scalars['UUID']; + /** Last name has to be minimum of 1 chracters and maximum of 50 */ + lastName: Scalars['String']; + nationality: Scalars['CountryCode']; + personalIdentityCode: Scalars['PersonalIdentityCode']; + phone: Scalars['PhoneNumber']; }; export enum PersonSortField { @@ -537,9 +538,11 @@ export type Underage = Person & { firstName: Scalars['String']; gender: Gender; id: Scalars['UUID']; + /** Requires authentication and ADMIN privileges */ + internalId: Scalars['ID']; lastName: Scalars['String']; nationality: Scalars['CountryCode']; - /** Requires authentication and ADMIN privileges */ + /** Requires authentication and USER privileges */ personalIdentityCode: Scalars['PersonalIdentityCode']; phone?: Maybe; timestamp: Timestamp; @@ -637,7 +640,6 @@ export type ResolversTypes = ResolversObject<{ AddEmployeeSuccess: ResolverTypeWrapper & { company: ResolversTypes['Company'] }>; AddPersonInput: AddPersonInput; AddPersonOutput: ResolversTypes['AddPersonSuccess'] | ResolversTypes['UniqueConstraintViolationFailure']; - AddPersonPersonInput: AddPersonPersonInput; AddPersonSuccess: ResolverTypeWrapper & { person: ResolversTypes['Person'] }>; Adult: ResolverTypeWrapper; AuthenticatedUserFailure: ResolverTypeWrapper; @@ -673,6 +675,7 @@ export type ResolversTypes = ResolversObject<{ FileMetadataSuccess: ResolverTypeWrapper; FilterOperator: FilterOperator; Gender: Gender; + ID: ResolverTypeWrapper; Int: ResolverTypeWrapper; InvalidCursorFailure: ResolverTypeWrapper; LoginUserFailure: ResolverTypeWrapper; @@ -731,7 +734,6 @@ export type ResolversParentTypes = ResolversObject<{ AddEmployeeSuccess: Omit & { company: ResolversParentTypes['Company'] }; AddPersonInput: AddPersonInput; AddPersonOutput: ResolversParentTypes['AddPersonSuccess'] | ResolversParentTypes['UniqueConstraintViolationFailure']; - AddPersonPersonInput: AddPersonPersonInput; AddPersonSuccess: Omit & { person: ResolversParentTypes['Person'] }; Adult: AdultModel; AuthenticatedUserFailure: AuthenticatedUserFailure; @@ -764,6 +766,7 @@ export type ResolversParentTypes = ResolversObject<{ FileMetadataInvalidFile: FileMetadataInvalidFile; FileMetadataResponse: ResolversParentTypes['FileMetadataInvalidFile'] | ResolversParentTypes['FileMetadataSuccess']; FileMetadataSuccess: FileMetadataSuccess; + ID: Scalars['ID']; Int: Scalars['Int']; InvalidCursorFailure: InvalidCursorFailure; LoginUserFailure: LoginUserFailure; @@ -865,6 +868,7 @@ export type AdultResolvers; gender?: Resolver; id?: Resolver; + internalId?: Resolver; lastName?: Resolver; nationality?: Resolver; personalIdentityCode?: Resolver; @@ -1052,6 +1056,7 @@ export type PersonResolvers; gender?: Resolver; id?: Resolver; + internalId?: Resolver; lastName?: Resolver; nationality?: Resolver; personalIdentityCode?: Resolver; @@ -1142,6 +1147,7 @@ export type UnderageResolvers; gender?: Resolver; id?: Resolver; + internalId?: Resolver; lastName?: Resolver; nationality?: Resolver; personalIdentityCode?: Resolver; diff --git a/app/graphql/schema/Person.graphql b/app/graphql/schema/Person.graphql index 601fea68..f4fd9995 100644 --- a/app/graphql/schema/Person.graphql +++ b/app/graphql/schema/Person.graphql @@ -5,6 +5,8 @@ enum Gender { } interface Person { + "Requires authentication and ADMIN privileges" + internalId: ID! @auth(requires:ADMIN) id: UUID! firstName: String! lastName: String! @@ -14,14 +16,16 @@ interface Person { birthday: Date! timestamp: Timestamp! gender: Gender! - "Requires authentication and ADMIN privileges" - personalIdentityCode: PersonalIdentityCode! @auth(requires:ADMIN) + "Requires authentication and USER privileges" + personalIdentityCode: PersonalIdentityCode! @auth(requires:USER) } """ Adult is over 16 years old Person """ type Adult implements Person { + "Requires authentication and ADMIN privileges" + internalId: ID! @auth(requires:ADMIN) id: UUID! firstName: String! lastName: String! @@ -32,14 +36,16 @@ type Adult implements Person { timestamp: Timestamp! gender: Gender! employers: [Company!]! - "Requires authentication and ADMIN privileges" - personalIdentityCode: PersonalIdentityCode! @auth(requires:ADMIN) + "Requires authentication and USER privileges" + personalIdentityCode: PersonalIdentityCode! @auth(requires:USER) } """ Underage is under 16 years old Person """ type Underage implements Person { + "Requires authentication and ADMIN privileges" + internalId: ID! @auth(requires:ADMIN) id: UUID! firstName: String! lastName: String! @@ -49,8 +55,8 @@ type Underage implements Person { birthday: Date! timestamp: Timestamp! gender: Gender! - "Requires authentication and ADMIN privileges" - personalIdentityCode: PersonalIdentityCode! @auth(requires:ADMIN) + "Requires authentication and USER privileges" + personalIdentityCode: PersonalIdentityCode! @auth(requires:USER) } type PersonsPaginationEdge { @@ -113,7 +119,7 @@ type Mutation { editPerson(input: EditPersonInput!): EditPersonOutput! } -input AddPersonPersonInput { +input MutatePersonInput { firstName: String! "Last name has to be minimum of 1 chracters and maximum of 50" lastName: String! @length(max:50 min:1) @@ -126,7 +132,7 @@ input AddPersonPersonInput { } input AddPersonInput { - person: AddPersonPersonInput! + person: MutatePersonInput! } union AddPersonOutput = AddPersonSuccess | UniqueConstraintViolationFailure @@ -137,7 +143,7 @@ type AddPersonSuccess { input EditPersonInput { id: UUID! - person: AddPersonPersonInput! + person: MutatePersonInput! } union EditPersonOutput = EditPersonSuccess | UniqueConstraintViolationFailure | NotFoundFailure diff --git a/cloudbuild-demo.yaml b/cloudbuild-demo.yaml index 89189e67..be18ba9b 100644 --- a/cloudbuild-demo.yaml +++ b/cloudbuild-demo.yaml @@ -114,6 +114,11 @@ steps: '--update-secrets', 'TOKEN_SECRET=TOKEN_SECRET:latest', '--update-secrets', 'DATABASE_PASSWORD=DATABASE_PASSWORD:latest', + + '--update-secrets', 'APOLLO_KEY=APOLLO_KEY:latest', + '--update-env-vars', 'APOLLO_GRAPH_ID=Boiler-test', + '--update-env-vars', 'APOLLO_GRAPH_VARIANT=current', + '--update-env-vars', 'APOLLO_SCHEMA_REPORTING=true', ] tags: ['$PROJECT_ID-$_IMAGE']