Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Questions:

  •  Possibles questions about this feature

Technical Refinement

Description

  • intl-user-service

    • We will add the new attribute on class UserDetailsBaseDto:

      • path: intl-user-service/src/users/dtos/users.dtos.ts

        Code Block
        languagetypescript
        @ApiProperty({
            required: false,
            description: 'Required acceptance agreement info',
            type: [RequiredAcceptanceAgreementInfoDto],
            nullable: true,
          })
          @Type(() => RequiredAcceptanceAgreementInfoDto)
          @IsArray()
          @IsOptional()
          public requiredAcceptanceAgreementInfo?: RequiredAcceptanceAgreementInfoDto[] | null;
      • On class UserDetailsDto on constructor, we will add a mapper:

        Code Block
        languagetypescript
        const requiredAcceptanceAgreementInfo = userDetails.requiredAcceptanceAgreementInfo?.map(
          (ra: IRequiredAcceptanceAgreementInfo) => ra as RequiredAcceptanceAgreementInfoDto,
        );
        Code Block
        languagetypescript
        this.requiredAcceptanceAgreementInfo = requiredAcceptanceAgreementInfo;
  • intl-packages | ctg-packages

    • We will add the attribute requiredAcceptanceAgreementInfo on TUserDetails:

      • path: intl-packages/packages/users/src/schemata.ts

        Code Block
        languagetypescript
        requiredAcceptanceAgreementInfo: t.union([t.array(TRequiredAcceptanceAgreementInfo), t.null]),
        Code Block
        languagetypescript
        export const TRequiredAcceptanceAgreementInfo = t.interface({
          id: t.string,
          updatedAt: t.string,
        });
  • intl-whitelabel-graphql

    • We will add the attribute requiredAcceptanceAgreementInfo on UpdateUserDetailsInput

      • path: intl-whitelabel-graphql/src/functions/graphql/schemas/users.gql

        Code Block
        languagetypescript
        input UpdateUserDetailsInput {
          ...
          requiredAcceptanceAgreementInfo: [RequiredAcceptanceAgreementInfoInput]
        }
    • We will run the command:

      Code Block
      yarn run graphql:types
      • After that, will be created an automatic code on file: intl-whitelabel-graphql/src/functions/graphql/generated/graphql.ts, probably, will be many changes, but we can to discard all, except of change related about requiredAcceptanceAgreementInfo

  • intl-whitelabel-app

Screenshots

  • TODO

POC

  • TODO

Impact Analysis

...