From 45edfdadd133fd9f0cb52b7bae2e0f8623884fdd Mon Sep 17 00:00:00 2001 From: Chau Tran Date: Sun, 15 Aug 2021 21:59:47 -0500 Subject: [PATCH] refactor(classes): clean up typings --- packages/classes/src/lib/classes.ts | 17 +++-------------- .../src/lib/utils/explore-metadata.util.ts | 16 +++++++++++----- .../utils/is-destination-path-on-source.util.ts | 2 +- 3 files changed, 15 insertions(+), 20 deletions(-) diff --git a/packages/classes/src/lib/classes.ts b/packages/classes/src/lib/classes.ts index e2467b890..2a8961a5e 100644 --- a/packages/classes/src/lib/classes.ts +++ b/packages/classes/src/lib/classes.ts @@ -1,5 +1,5 @@ import { createInitialMapping } from '@automapper/core'; -import type { Dictionary, MapPluginInitializer } from '@automapper/types'; +import type { MapPluginInitializer } from '@automapper/types'; import { MappingClassId } from '@automapper/types'; import 'reflect-metadata'; import { @@ -29,10 +29,7 @@ export const classes: MapPluginInitializer = (errorHandler) => { const instanceStorage = new ClassInstanceStorage(); return { - instantiate = any>( - model: Constructible, - obj?: TModel - ) { + instantiate(model, obj?) { return instantiate(instanceStorage, metadataStorage, model, obj); }, initializeMapping(source, destination, options?) { @@ -121,15 +118,7 @@ export const classes: MapPluginInitializer = (errorHandler) => { // return the mapping return mapping; }, - preMap< - TSource extends Dictionary = any, - TDestination extends Dictionary = any - >( - source: Constructible, - destination: Constructible, - sourceObj?: TSource, - destinationObj?: TDestination - ) { + preMap(source, destination, sourceObj?, destinationObj?) { // Prepare the sourceInstance/destinationInstance with plain object sourceObj and destinationObj const [sourceInstance] = this.instantiate(source, sourceObj); const [destinationInstance] = this.instantiate( diff --git a/packages/classes/src/lib/utils/explore-metadata.util.ts b/packages/classes/src/lib/utils/explore-metadata.util.ts index ba6b2be83..161546d52 100644 --- a/packages/classes/src/lib/utils/explore-metadata.util.ts +++ b/packages/classes/src/lib/utils/explore-metadata.util.ts @@ -5,6 +5,7 @@ import { } from '../constants'; import type { ClassInstanceStorage, ClassMetadataStorage } from '../storages'; import type { Constructible } from '../types'; +import type { PrimitiveWithDate } from '@automapper/types'; export function exploreMetadata( metadataStorage: ClassMetadataStorage, @@ -38,15 +39,20 @@ export function exploreMetadata( } } -export function getMetadataList( - model: Constructible -): [string, { typeFn: any; depth?: number; isGetterOnly?: boolean }][] { +export function getMetadataList(model: Constructible): [ + string, + { + typeFn: () => Constructible | PrimitiveWithDate; + depth?: number; + isGetterOnly?: boolean; + } +][] { let metadataList = Reflect.getMetadata(AUTOMAP_PROPERTIES_METADATA_KEY, model) || []; - if ((model as any)[AUTOMAPPER_METADATA_FACTORY_KEY]) { + if (model[AUTOMAPPER_METADATA_FACTORY_KEY]) { metadataList = metadataList.concat( - (model as any)[AUTOMAPPER_METADATA_FACTORY_KEY]() || [] + model[AUTOMAPPER_METADATA_FACTORY_KEY]() || [] ); } diff --git a/packages/classes/src/lib/utils/is-destination-path-on-source.util.ts b/packages/classes/src/lib/utils/is-destination-path-on-source.util.ts index a3a697472..bb445f524 100644 --- a/packages/classes/src/lib/utils/is-destination-path-on-source.util.ts +++ b/packages/classes/src/lib/utils/is-destination-path-on-source.util.ts @@ -1,7 +1,7 @@ export function isDerivedSourcePathOnSourceClasses( sourceProto: Record ) { - return (sourceObj: any, sourcePath: string[]) => { + return (sourceObj: unknown, sourcePath: string[]) => { return ( sourcePath.length === 1 && !(