Skip to content

7.24.0

Compare
Choose a tag to compare
@github-actions github-actions released this 27 Jun 08:19
· 961 commits to main since this release
d151420

@comet/[email protected]

Patch Changes

  • fc900f2: Support the disabled prop in the FinalFormRangeInput

@comet/[email protected]

Patch Changes

  • fa61138: Don't show the ClearInputAdornment if the TimePicker is disabled
  • fa61138: Support the disabled prop in the DateTimePicker

@comet/[email protected]

Patch Changes

  • 24e046f: Data Grid: Fix styling of filter input fields

@comet/[email protected]

Patch Changes

  • 7516163: Fix sticky behavior of RteToolbar

@comet/[email protected]

Patch Changes

  • 6d293de: Consider required permission of ancestors in MasterMenuRoutes

@comet/[email protected]

Minor Changes

  • efeff64: API Generator: Allow easier extension of generated resolvers and services

    Even though we don't encourage to extend generated resolvers and services, it should still be possible. Our recommendation is to generate a new resolver but there are cases where it makes sense to extend the existing one (e.g. modifying certain functions or reusing existing code).

    Until now, this was hard to do, because every resolver and service declared it's services as private. If you need to use a service from the base resolver, you had to redeclare all services with a different name.

        constructor(
            entityManager: EntityManager,
            @InjectRepository(Product) private readonly repository2: EntityRepository<Product>,
            @InjectRepository(ProductCategory) private readonly productCategoryRepository2: EntityRepository<ProductCategory>,
            @InjectRepository(Manufacturer) private readonly manufacturerRepository2: EntityRepository<Manufacturer>,
            @InjectRepository(FileUpload) private readonly fileUploadRepository2: EntityRepository<FileUpload>,
            @InjectRepository(ProductStatistics) private readonly productStatisticsRepository2: EntityRepository<ProductStatistics>,
            @InjectRepository(ProductColor) private readonly productColorRepository2: EntityRepository<ProductColor>,
            @InjectRepository(ProductToTag) private readonly productToTagRepository2: EntityRepository<ProductToTag>,
            @InjectRepository(ProductTag) private readonly productTagRepository2: EntityRepository<ProductTag>,
            private readonly blocksTransformer2: BlocksTransformerService,
        ) {
            super(
                entityManager,
                repository2,
                productCategoryRepository2,
                manufacturerRepository2,
                fileUploadRepository2,
                productStatisticsRepository2,
                productColorRepository2,
                productToTagRepository2,
                productTagRepository2,
                blocksTransformer2,
            );
        }

    If you tried to use the same name you got the following error:

    Class 'CustomProductResolver' incorrectly extends base class 'ProductResolver'.
      Types have separate declarations of a private property 'repository'.ts(2415)
    

    Now, the constructor can be omitted and the custom resolver can be simplified to:

    @Resolver(() => Product)
    @RequiredPermission(["products"], { skipScopeCheck: true })
    export class CustomProductResolver extends ProductResolver {
        @Mutation(() => Boolean)
        async publishAllProducts(): Promise<boolean> {
            await this.repository.nativeUpdate({ status: { $ne: ProductStatus.Published } }, { status: ProductStatus.Published });
            return true;
        }
    }

Patch Changes

  • b6e3f7e: Don't replace a file if the new file is identical to the existing one in the DAM

    This previously led to a bug where a file was deleted if it was replaced with the same file.

  • 3607c7c: Extend the browser cache duration for public DAM assets from 1 day to 1 year to reduce the data load for returning users.

  • 2310f85: Prevent socket exhaustion when streaming files and prevent the API from crashing due to stream errors in the FileUploadsDownloadController

    We already added this fix to the DAM in the past.

  • 2af3d81: Ignore UUID columns in searchToMikroOrmQuery when inferring fields from entity metadata

  • 34df51d: Set cache-control headers for file uploads