feat(nestjs): migrate to NestJS

This commit is contained in:
Ahmed Bouhuolia
2025-04-07 11:51:24 +02:00
parent f068218a16
commit 55fcc908ef
3779 changed files with 631 additions and 195332 deletions

View File

@@ -0,0 +1,9 @@
import { Module } from '@nestjs/common';
import { TemplateInjectable } from './TemplateInjectable.service';
import { TenancyContext } from '../Tenancy/TenancyContext.service';
@Module({
providers: [TemplateInjectable, TenancyContext],
exports: [TemplateInjectable]
})
export class TemplateInjectableModule {}

View File

@@ -0,0 +1,30 @@
import { I18nService } from 'nestjs-i18n';
import { Injectable } from '@nestjs/common';
import { TenancyContext } from '../Tenancy/TenancyContext.service';
import { templateRender } from '@/utils/template-render';
@Injectable()
export class TemplateInjectable {
constructor(
private readonly tenancyContext: TenancyContext,
private readonly i18n: I18nService,
) {}
/**
* Renders the given filename of the template.
* @param {string} filename
* @param {Record<string, any>} options
* @returns {string}
*/
public async render(filename: string, options: Record<string, any>) {
const organization = await this.tenancyContext.getTenant(true);
return templateRender(filename, {
organizationName: organization.metadata.name,
// @todo email
organizationEmail: '',
__: this.i18n.t,
...options,
});
}
}