UNPKG

@softkit/i18n

Version:

This library is a simple wrapper based on [nestjs-i18n](https://nestjs-i18n.com/)

45 lines 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.HeaderResolver = void 0; const tslib_1 = require("tslib"); const common_1 = require("@nestjs/common"); const decorators_1 = require("../decorators"); let HeaderResolver = class HeaderResolver { constructor(keys = []) { this.keys = keys; this.logger = new common_1.Logger('I18nService'); } resolve(context) { let req; switch (context.getType()) { case 'http': { req = context.switchToHttp().getRequest(); break; } case 'graphql': { [, , { req }] = context.getArgs(); break; } } let lang; if (req) { for (const key of this.keys) { if (key === 'accept-language') { this.logger.warn('HeaderResolver does not support RFC4647 Accept-Language header. Please use AcceptLanguageResolver instead.'); } if (req.headers !== undefined && req.headers[key] !== undefined) { lang = req.headers[key]; break; } } } return lang; } }; exports.HeaderResolver = HeaderResolver; exports.HeaderResolver = HeaderResolver = tslib_1.__decorate([ (0, common_1.Injectable)(), tslib_1.__param(0, (0, decorators_1.I18nResolverOptions)()), tslib_1.__metadata("design:paramtypes", [Array]) ], HeaderResolver); //# sourceMappingURL=header.resolver.js.map