Fix get time on non date var (#14361)

This commit is contained in:
Paul Rastoin
2025-09-09 09:59:55 +02:00
committed by GitHub
parent f7cde28dd6
commit 7bcbaee0c8
3 changed files with 13 additions and 2 deletions
@@ -25,6 +25,7 @@ import { type IndexMetadataDTO } from 'src/engine/metadata-modules/index-metadat
import { type ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
import { type ObjectMetadataItemWithFieldMaps } from 'src/engine/metadata-modules/types/object-metadata-item-with-field-maps';
import { WorkspaceMetadataCacheService } from 'src/engine/metadata-modules/workspace-metadata-cache/services/workspace-metadata-cache.service';
import { transpileToDateIfNot } from 'src/utils/transpile-to-date-if-not.util';
export type RelationMetadataLoaderPayload = {
workspaceId: string;
@@ -137,7 +138,11 @@ export class DataloaderService {
flatFieldMetadata:
sourceFlatFieldMetadata.flatRelationTargetFieldMetadata,
flatObjectMetadataMaps: existingFlatObjectMetadataMaps,
}).sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime());
}).sort(
(a, b) =>
transpileToDateIfNot(a.createdAt).getTime() -
transpileToDateIfNot(b.createdAt).getTime(),
);
relationDtos.push(
fromMorphOrRelationFlatFieldMetadataToRelationDto({
@@ -1,3 +1,5 @@
import { transpileToDateIfNot } from 'src/utils/transpile-to-date-if-not.util';
export const filterMorphRelationDuplicateFields = <
T extends { createdAt: Date; morphId: string | null },
>(
@@ -7,7 +9,8 @@ export const filterMorphRelationDuplicateFields = <
return !fields.some(
(otherField) =>
otherField.morphId === currentField.morphId &&
otherField.createdAt.getTime() > currentField.createdAt.getTime(),
transpileToDateIfNot(otherField.createdAt).getTime() >
transpileToDateIfNot(currentField.createdAt).getTime(),
);
});
};
@@ -0,0 +1,3 @@
// Temporary quick workaround until we eject from nestjs-query that seems to convert date to string and vice-versa
export const transpileToDateIfNot = (dateToVerify: string | Date): Date =>
dateToVerify instanceof Date ? dateToVerify : new Date(dateToVerify);