@automapper/nestjs
Advanced tools
Comparing version 8.0.0-beta.12 to 8.0.0-beta.13
120
index.cjs.js
@@ -6,4 +6,4 @@ 'use strict'; | ||
var tslib = require('tslib'); | ||
var core = require('@automapper/core'); | ||
var common = require('@nestjs/common'); | ||
var core = require('@automapper/core'); | ||
var rxjs = require('rxjs'); | ||
@@ -16,38 +16,2 @@ | ||
function createProviders(mapperOptions, logger, globalOptions) { | ||
if (mapperOptions.length === 1) { | ||
const { | ||
strategyInitializer, | ||
errorHandler, | ||
namingConventions | ||
} = mapperOptions[0]; | ||
const mapper = core.createMapper({ | ||
strategyInitializer, | ||
errorHandler: errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler), | ||
namingConventions: namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions) | ||
}); | ||
return [{ | ||
provide: getMapperToken(), | ||
useValue: mapper | ||
}]; | ||
} | ||
return mapperOptions.map(({ | ||
name, | ||
namingConventions, | ||
strategyInitializer, | ||
errorHandler | ||
}) => { | ||
const mapper = core.createMapper({ | ||
strategyInitializer, | ||
namingConventions: namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions), | ||
errorHandler: errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler) | ||
}); | ||
return { | ||
provide: getMapperToken(name), | ||
useValue: mapper | ||
}; | ||
}); | ||
} | ||
var AutomapperModule_1; | ||
@@ -59,3 +23,3 @@ exports.AutomapperModule = AutomapperModule_1 = class AutomapperModule { | ||
})]; | ||
const providers = createProviders(mappers, this.logger, globalOptions); | ||
const providers = this.createProviders(mappers, globalOptions); | ||
return { | ||
@@ -69,4 +33,82 @@ module: AutomapperModule_1, | ||
static forRootAsync(asyncMapperOptions, globalOptions) { | ||
if (!Array.isArray(asyncMapperOptions)) { | ||
asyncMapperOptions = [Object.assign(Object.assign({}, asyncMapperOptions), { | ||
name: 'default' | ||
})]; | ||
} | ||
const providers = asyncMapperOptions.flatMap(option => this.createProvider(option, globalOptions)); | ||
return { | ||
module: AutomapperModule_1, | ||
global: true, | ||
providers, | ||
exports: providers, | ||
imports: asyncMapperOptions.flatMap(option => option.imports || []) || [] | ||
}; | ||
} | ||
static createProviders(mapperOptions, globalOptions) { | ||
return mapperOptions.map(({ | ||
name, | ||
namingConventions, | ||
strategyInitializer, | ||
errorHandler | ||
}) => { | ||
const mapper = core.createMapper({ | ||
strategyInitializer, | ||
namingConventions: namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions), | ||
errorHandler: errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler) | ||
}); | ||
return { | ||
provide: name === 'default' ? getMapperToken() : getMapperToken(name), | ||
useValue: mapper | ||
}; | ||
}); | ||
} | ||
static createProvider(asyncMapperOptions, globalOptions) { | ||
if (asyncMapperOptions.useExisting || asyncMapperOptions.useFactory) { | ||
return [this.createMapperProvider(asyncMapperOptions, globalOptions)]; | ||
} | ||
return [this.createMapperProvider(asyncMapperOptions, globalOptions), { | ||
provide: asyncMapperOptions.useClass, | ||
useClass: asyncMapperOptions.useClass | ||
}]; | ||
} | ||
static createMapperProvider(asyncMapperOptions, globalOptions) { | ||
const mapperToken = asyncMapperOptions.name === 'default' ? getMapperToken() : getMapperToken(asyncMapperOptions.name); | ||
if (asyncMapperOptions.useFactory) { | ||
return { | ||
provide: mapperToken, | ||
useFactory: (...args) => tslib.__awaiter(this, void 0, void 0, function* () { | ||
const mapperOptions = yield asyncMapperOptions.useFactory(...args); | ||
return this.createMapper(mapperOptions, globalOptions); | ||
}), | ||
inject: asyncMapperOptions.inject || [] | ||
}; | ||
} | ||
return { | ||
provide: mapperToken, | ||
useFactory: factory => tslib.__awaiter(this, void 0, void 0, function* () { | ||
const mapperOptions = yield factory.createAutomapperOptions(); | ||
return this.createMapper(mapperOptions, globalOptions); | ||
}), | ||
inject: [asyncMapperOptions.useExisting || asyncMapperOptions.useClass] | ||
}; | ||
} | ||
static createMapper(mapperOptions, globalOptions) { | ||
return core.createMapper({ | ||
strategyInitializer: mapperOptions.strategyInitializer, | ||
errorHandler: mapperOptions.errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler), | ||
namingConventions: mapperOptions.namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions) | ||
}); | ||
} | ||
}; | ||
exports.AutomapperModule.logger = new common.Logger('AutomapperModule'); | ||
exports.AutomapperModule = AutomapperModule_1 = tslib.__decorate([common.Module({})], exports.AutomapperModule); | ||
@@ -73,0 +115,0 @@ |
export * from './lib/automapper-nestjs.module'; | ||
export * from './lib/options'; | ||
export * from './lib/automapper-profile'; | ||
@@ -3,0 +4,0 @@ export * from './lib/map.pipe'; |
122
index.esm.js
@@ -1,4 +0,4 @@ | ||
import { __decorate, __rest, __param, __metadata, __awaiter } from 'tslib'; | ||
import { Logger, Module, Inject, Optional, mixin } from '@nestjs/common'; | ||
import { __decorate, __awaiter, __rest, __param, __metadata } from 'tslib'; | ||
import { createMapper, addProfile, isEmpty } from '@automapper/core'; | ||
import { Module, Inject, Optional, mixin } from '@nestjs/common'; | ||
import { map } from 'rxjs'; | ||
@@ -11,38 +11,2 @@ | ||
function createProviders(mapperOptions, logger, globalOptions) { | ||
if (mapperOptions.length === 1) { | ||
const { | ||
strategyInitializer, | ||
errorHandler, | ||
namingConventions | ||
} = mapperOptions[0]; | ||
const mapper = createMapper({ | ||
strategyInitializer, | ||
errorHandler: errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler), | ||
namingConventions: namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions) | ||
}); | ||
return [{ | ||
provide: getMapperToken(), | ||
useValue: mapper | ||
}]; | ||
} | ||
return mapperOptions.map(({ | ||
name, | ||
namingConventions, | ||
strategyInitializer, | ||
errorHandler | ||
}) => { | ||
const mapper = createMapper({ | ||
strategyInitializer, | ||
namingConventions: namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions), | ||
errorHandler: errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler) | ||
}); | ||
return { | ||
provide: getMapperToken(name), | ||
useValue: mapper | ||
}; | ||
}); | ||
} | ||
var AutomapperModule_1; | ||
@@ -54,3 +18,3 @@ let AutomapperModule = AutomapperModule_1 = class AutomapperModule { | ||
})]; | ||
const providers = createProviders(mappers, this.logger, globalOptions); | ||
const providers = this.createProviders(mappers, globalOptions); | ||
return { | ||
@@ -64,4 +28,82 @@ module: AutomapperModule_1, | ||
static forRootAsync(asyncMapperOptions, globalOptions) { | ||
if (!Array.isArray(asyncMapperOptions)) { | ||
asyncMapperOptions = [Object.assign(Object.assign({}, asyncMapperOptions), { | ||
name: 'default' | ||
})]; | ||
} | ||
const providers = asyncMapperOptions.flatMap(option => this.createProvider(option, globalOptions)); | ||
return { | ||
module: AutomapperModule_1, | ||
global: true, | ||
providers, | ||
exports: providers, | ||
imports: asyncMapperOptions.flatMap(option => option.imports || []) || [] | ||
}; | ||
} | ||
static createProviders(mapperOptions, globalOptions) { | ||
return mapperOptions.map(({ | ||
name, | ||
namingConventions, | ||
strategyInitializer, | ||
errorHandler | ||
}) => { | ||
const mapper = createMapper({ | ||
strategyInitializer, | ||
namingConventions: namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions), | ||
errorHandler: errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler) | ||
}); | ||
return { | ||
provide: name === 'default' ? getMapperToken() : getMapperToken(name), | ||
useValue: mapper | ||
}; | ||
}); | ||
} | ||
static createProvider(asyncMapperOptions, globalOptions) { | ||
if (asyncMapperOptions.useExisting || asyncMapperOptions.useFactory) { | ||
return [this.createMapperProvider(asyncMapperOptions, globalOptions)]; | ||
} | ||
return [this.createMapperProvider(asyncMapperOptions, globalOptions), { | ||
provide: asyncMapperOptions.useClass, | ||
useClass: asyncMapperOptions.useClass | ||
}]; | ||
} | ||
static createMapperProvider(asyncMapperOptions, globalOptions) { | ||
const mapperToken = asyncMapperOptions.name === 'default' ? getMapperToken() : getMapperToken(asyncMapperOptions.name); | ||
if (asyncMapperOptions.useFactory) { | ||
return { | ||
provide: mapperToken, | ||
useFactory: (...args) => __awaiter(this, void 0, void 0, function* () { | ||
const mapperOptions = yield asyncMapperOptions.useFactory(...args); | ||
return this.createMapper(mapperOptions, globalOptions); | ||
}), | ||
inject: asyncMapperOptions.inject || [] | ||
}; | ||
} | ||
return { | ||
provide: mapperToken, | ||
useFactory: factory => __awaiter(this, void 0, void 0, function* () { | ||
const mapperOptions = yield factory.createAutomapperOptions(); | ||
return this.createMapper(mapperOptions, globalOptions); | ||
}), | ||
inject: [asyncMapperOptions.useExisting || asyncMapperOptions.useClass] | ||
}; | ||
} | ||
static createMapper(mapperOptions, globalOptions) { | ||
return createMapper({ | ||
strategyInitializer: mapperOptions.strategyInitializer, | ||
errorHandler: mapperOptions.errorHandler || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalErrorHandler), | ||
namingConventions: mapperOptions.namingConventions || (globalOptions === null || globalOptions === void 0 ? void 0 : globalOptions.globalNamingConventions) | ||
}); | ||
} | ||
}; | ||
AutomapperModule.logger = new Logger('AutomapperModule'); | ||
AutomapperModule = AutomapperModule_1 = __decorate([Module({})], AutomapperModule); | ||
@@ -68,0 +110,0 @@ |
@@ -1,15 +0,17 @@ | ||
import type { CreateMapperOptions, ErrorHandler, NamingConvention } from '@automapper/core'; | ||
import { DynamicModule } from '@nestjs/common'; | ||
import type { CreateMapperOptions } from '@automapper/core'; | ||
import type { DynamicModule } from '@nestjs/common'; | ||
import type { AutomapperAsyncOptions, AutomapperGlobalOptions } from './options'; | ||
export declare class AutomapperModule { | ||
private static readonly logger; | ||
static forRoot(mapperOptions: CreateMapperOptions): DynamicModule; | ||
static forRoot(mapperOptions: Array<CreateMapperOptions & { | ||
name: string; | ||
}>, globalOptions?: { | ||
globalErrorHandler?: ErrorHandler; | ||
globalNamingConventions?: NamingConvention | { | ||
source: NamingConvention; | ||
destination: NamingConvention; | ||
}; | ||
}): DynamicModule; | ||
}>, globalOptions?: AutomapperGlobalOptions): DynamicModule; | ||
static forRootAsync(asyncMapperOptions: AutomapperAsyncOptions): DynamicModule; | ||
static forRootAsync(asyncMapperOptions: Array<AutomapperAsyncOptions & { | ||
name: string; | ||
}>, globalOptions?: AutomapperGlobalOptions): DynamicModule; | ||
private static createProviders; | ||
private static createProvider; | ||
private static createMapperProvider; | ||
private static createMapper; | ||
} |
{ | ||
"name": "@automapper/nestjs", | ||
"version": "8.0.0-beta.12", | ||
"version": "8.0.0-beta.13", | ||
"peerDependencies": { | ||
"@nestjs/common": "^7.0.0 || ^8.0.0", | ||
"@nestjs/core": "^7.0.0 || ^8.0.0", | ||
"@automapper/core": "8.0.0-beta.12" | ||
"@automapper/core": "8.0.0-beta.13" | ||
}, | ||
@@ -9,0 +9,0 @@ "exports": { |
22727
499