@ackplus/nest-dynamic-templates 0.1.51 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/README.md +6 -284
  2. package/eslint.config.mjs +22 -0
  3. package/jest.config.ts +10 -0
  4. package/package.json +7 -58
  5. package/project.json +38 -0
  6. package/src/{index.d.ts → index.ts} +14 -1
  7. package/src/lib/constant.ts +2 -0
  8. package/src/lib/dto/create-template-layout.dto.ts +65 -0
  9. package/src/lib/dto/create-template.dto.ts +80 -0
  10. package/src/lib/dto/render-content-template-layout.dto.ts +32 -0
  11. package/src/lib/dto/render-content-template.dto.ts +37 -0
  12. package/src/lib/dto/render-template-layout.dto.ts +55 -0
  13. package/src/lib/dto/render-template.dto.ts +74 -0
  14. package/src/lib/dto/template-filter.dto.ts +52 -0
  15. package/src/lib/dto/template-layout-filter.dto.ts +51 -0
  16. package/src/lib/engines/language/html.engine.ts +49 -0
  17. package/src/lib/engines/language/markdown.engine.ts +37 -0
  18. package/src/lib/engines/language/mjml.engine.ts +44 -0
  19. package/src/lib/engines/language/text.engine.ts +15 -0
  20. package/src/lib/engines/{language-engine.d.ts → language-engine.ts} +7 -1
  21. package/src/lib/engines/template/ejs.engine.ts +33 -0
  22. package/src/lib/engines/template/handlebars.engine.ts +35 -0
  23. package/src/lib/engines/template/nunjucks.engine.ts +70 -0
  24. package/src/lib/engines/template/pug.engine.ts +43 -0
  25. package/src/lib/engines/{template-engine.d.ts → template-engine.ts} +6 -1
  26. package/src/lib/entities/template-layout.entity.ts +99 -0
  27. package/src/lib/entities/template.entity.ts +105 -0
  28. package/src/lib/errors/{template.errors.js → template.errors.ts} +20 -23
  29. package/src/lib/interfaces/{module-config.interface.d.ts → module-config.interface.ts} +16 -1
  30. package/src/lib/interfaces/template.types.ts +25 -0
  31. package/src/lib/nest-dynamic-templates.module.ts +143 -0
  32. package/src/lib/services/template-config.service.ts +112 -0
  33. package/src/lib/services/template-engine.registry.ts +109 -0
  34. package/src/lib/services/template-layout.service.ts +407 -0
  35. package/src/lib/services/template.service.ts +476 -0
  36. package/src/test/{helpers.js → helpers.ts} +5 -8
  37. package/src/test/nunjucks.service.spec.ts +157 -0
  38. package/src/test/pug.service.spec-temp +254 -0
  39. package/src/test/template-layout.service.spec.ts +422 -0
  40. package/src/test/template.service.spec.ts +862 -0
  41. package/src/test/test-database.config.ts +24 -0
  42. package/src/test/test-database.d.ts +6 -0
  43. package/src/test/test.setup.ts +34 -0
  44. package/src/types/ioredis.d.ts +6 -0
  45. package/src/types/mjml.d.ts +5 -0
  46. package/tsconfig.json +17 -0
  47. package/tsconfig.lib.json +14 -0
  48. package/tsconfig.spec.json +15 -0
  49. package/src/index.js +0 -23
  50. package/src/index.js.map +0 -1
  51. package/src/lib/constant.d.ts +0 -2
  52. package/src/lib/constant.js +0 -6
  53. package/src/lib/constant.js.map +0 -1
  54. package/src/lib/dto/create-template-layout.dto.d.ts +0 -15
  55. package/src/lib/dto/create-template-layout.dto.js +0 -87
  56. package/src/lib/dto/create-template-layout.dto.js.map +0 -1
  57. package/src/lib/dto/create-template.dto.d.ts +0 -17
  58. package/src/lib/dto/create-template.dto.js +0 -104
  59. package/src/lib/dto/create-template.dto.js.map +0 -1
  60. package/src/lib/dto/render-content-template-layout.dto.d.ts +0 -7
  61. package/src/lib/dto/render-content-template-layout.dto.js +0 -41
  62. package/src/lib/dto/render-content-template-layout.dto.js.map +0 -1
  63. package/src/lib/dto/render-content-template.dto.d.ts +0 -8
  64. package/src/lib/dto/render-content-template.dto.js +0 -47
  65. package/src/lib/dto/render-content-template.dto.js.map +0 -1
  66. package/src/lib/dto/render-template-layout.dto.d.ts +0 -10
  67. package/src/lib/dto/render-template-layout.dto.js +0 -68
  68. package/src/lib/dto/render-template-layout.dto.js.map +0 -1
  69. package/src/lib/dto/render-template.dto.d.ts +0 -14
  70. package/src/lib/dto/render-template.dto.js +0 -91
  71. package/src/lib/dto/render-template.dto.js.map +0 -1
  72. package/src/lib/dto/template-filter.dto.d.ts +0 -8
  73. package/src/lib/dto/template-filter.dto.js +0 -62
  74. package/src/lib/dto/template-filter.dto.js.map +0 -1
  75. package/src/lib/dto/template-layout-filter.dto.d.ts +0 -7
  76. package/src/lib/dto/template-layout-filter.dto.js +0 -61
  77. package/src/lib/dto/template-layout-filter.dto.js.map +0 -1
  78. package/src/lib/engines/language/html.engine.d.ts +0 -9
  79. package/src/lib/engines/language/html.engine.js +0 -79
  80. package/src/lib/engines/language/html.engine.js.map +0 -1
  81. package/src/lib/engines/language/index.js +0 -12
  82. package/src/lib/engines/language/index.js.map +0 -1
  83. package/src/lib/engines/language/markdown.engine.d.ts +0 -9
  84. package/src/lib/engines/language/markdown.engine.js +0 -26
  85. package/src/lib/engines/language/markdown.engine.js.map +0 -1
  86. package/src/lib/engines/language/mjml.engine.d.ts +0 -9
  87. package/src/lib/engines/language/mjml.engine.js +0 -76
  88. package/src/lib/engines/language/mjml.engine.js.map +0 -1
  89. package/src/lib/engines/language/text.engine.d.ts +0 -7
  90. package/src/lib/engines/language/text.engine.js +0 -16
  91. package/src/lib/engines/language/text.engine.js.map +0 -1
  92. package/src/lib/engines/language-engine.js +0 -7
  93. package/src/lib/engines/language-engine.js.map +0 -1
  94. package/src/lib/engines/template/ejs.engine.d.ts +0 -10
  95. package/src/lib/engines/template/ejs.engine.js +0 -66
  96. package/src/lib/engines/template/ejs.engine.js.map +0 -1
  97. package/src/lib/engines/template/handlebars.engine.d.ts +0 -10
  98. package/src/lib/engines/template/handlebars.engine.js +0 -67
  99. package/src/lib/engines/template/handlebars.engine.js.map +0 -1
  100. package/src/lib/engines/template/index.js +0 -12
  101. package/src/lib/engines/template/index.js.map +0 -1
  102. package/src/lib/engines/template/nunjucks.engine.d.ts +0 -16
  103. package/src/lib/engines/template/nunjucks.engine.js +0 -63
  104. package/src/lib/engines/template/nunjucks.engine.js.map +0 -1
  105. package/src/lib/engines/template/pug.engine.d.ts +0 -12
  106. package/src/lib/engines/template/pug.engine.js +0 -75
  107. package/src/lib/engines/template/pug.engine.js.map +0 -1
  108. package/src/lib/engines/template-engine.js +0 -7
  109. package/src/lib/engines/template-engine.js.map +0 -1
  110. package/src/lib/entities/template-layout.entity.d.ts +0 -20
  111. package/src/lib/entities/template-layout.entity.js +0 -121
  112. package/src/lib/entities/template-layout.entity.js.map +0 -1
  113. package/src/lib/entities/template.entity.d.ts +0 -21
  114. package/src/lib/entities/template.entity.js +0 -128
  115. package/src/lib/entities/template.entity.js.map +0 -1
  116. package/src/lib/errors/template.errors.d.ts +0 -19
  117. package/src/lib/errors/template.errors.js.map +0 -1
  118. package/src/lib/interfaces/module-config.interface.js +0 -3
  119. package/src/lib/interfaces/module-config.interface.js.map +0 -1
  120. package/src/lib/interfaces/template.types.d.ts +0 -22
  121. package/src/lib/interfaces/template.types.js +0 -25
  122. package/src/lib/interfaces/template.types.js.map +0 -1
  123. package/src/lib/nest-dynamic-templates.module.d.ts +0 -10
  124. package/src/lib/nest-dynamic-templates.module.js +0 -131
  125. package/src/lib/nest-dynamic-templates.module.js.map +0 -1
  126. package/src/lib/services/template-config.service.d.ts +0 -18
  127. package/src/lib/services/template-config.service.js +0 -66
  128. package/src/lib/services/template-config.service.js.map +0 -1
  129. package/src/lib/services/template-engine.registry.d.ts +0 -21
  130. package/src/lib/services/template-engine.registry.js +0 -94
  131. package/src/lib/services/template-engine.registry.js.map +0 -1
  132. package/src/lib/services/template-layout.service.d.ts +0 -24
  133. package/src/lib/services/template-layout.service.js +0 -301
  134. package/src/lib/services/template-layout.service.js.map +0 -1
  135. package/src/lib/services/template.service.d.ts +0 -26
  136. package/src/lib/services/template.service.js +0 -366
  137. package/src/lib/services/template.service.js.map +0 -1
  138. package/src/test/helpers.d.ts +0 -4
  139. package/src/test/helpers.js.map +0 -1
  140. package/src/test/test-database.config.d.ts +0 -4
  141. package/src/test/test-database.config.js +0 -24
  142. package/src/test/test-database.config.js.map +0 -1
  143. package/src/test/test.setup.d.ts +0 -3
  144. package/src/test/test.setup.js +0 -29
  145. package/src/test/test.setup.js.map +0 -1
  146. package/tsconfig.tsbuildinfo +0 -1
  147. /package/src/lib/engines/language/{index.d.ts → index.ts} +0 -0
  148. /package/src/lib/engines/template/{index.d.ts → index.ts} +0 -0
@@ -1,91 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RenderTemplateOutputDTO = exports.RenderTemplateDto = void 0;
4
- const tslib_1 = require("tslib");
5
- const class_validator_1 = require("class-validator");
6
- const template_types_1 = require("../interfaces/template.types");
7
- const swagger_1 = require("@nestjs/swagger");
8
- class RenderTemplateDto {
9
- constructor() {
10
- this.locale = 'en';
11
- this.scope = 'system';
12
- }
13
- }
14
- exports.RenderTemplateDto = RenderTemplateDto;
15
- tslib_1.__decorate([
16
- (0, swagger_1.ApiPropertyOptional)({
17
- type: String,
18
- default: 'en',
19
- description: 'The locale code, i.e en, fr, es, etc.'
20
- }),
21
- (0, class_validator_1.IsString)(),
22
- (0, class_validator_1.IsOptional)(),
23
- tslib_1.__metadata("design:type", String)
24
- ], RenderTemplateDto.prototype, "locale", void 0);
25
- tslib_1.__decorate([
26
- (0, swagger_1.ApiProperty)({ type: String }),
27
- (0, class_validator_1.IsString)(),
28
- (0, class_validator_1.IsNotEmpty)(),
29
- (0, class_validator_1.ValidateIf)((object, value) => !object?.content),
30
- tslib_1.__metadata("design:type", String)
31
- ], RenderTemplateDto.prototype, "name", void 0);
32
- tslib_1.__decorate([
33
- (0, swagger_1.ApiProperty)({ type: String }),
34
- (0, class_validator_1.IsString)(),
35
- (0, class_validator_1.IsNotEmpty)(),
36
- (0, class_validator_1.ValidateIf)((object, value) => !object?.name),
37
- tslib_1.__metadata("design:type", String)
38
- ], RenderTemplateDto.prototype, "content", void 0);
39
- tslib_1.__decorate([
40
- (0, swagger_1.ApiProperty)({ enum: template_types_1.TemplateLanguageEnum, type: String }),
41
- (0, class_validator_1.IsEnum)(template_types_1.TemplateLanguageEnum),
42
- (0, class_validator_1.IsNotEmpty)(),
43
- (0, class_validator_1.ValidateIf)((object, value) => !object?.name),
44
- tslib_1.__metadata("design:type", String)
45
- ], RenderTemplateDto.prototype, "language", void 0);
46
- tslib_1.__decorate([
47
- (0, swagger_1.ApiPropertyOptional)({
48
- type: String,
49
- default: 'system',
50
- description: 'The scope of the template, i.e user, organization, etc.'
51
- }),
52
- (0, class_validator_1.IsString)(),
53
- (0, class_validator_1.IsOptional)(),
54
- tslib_1.__metadata("design:type", String)
55
- ], RenderTemplateDto.prototype, "scope", void 0);
56
- tslib_1.__decorate([
57
- (0, swagger_1.ApiPropertyOptional)({
58
- type: String,
59
- default: null,
60
- description: 'The scope id of the template, i.e user id, organization id, etc.'
61
- }),
62
- (0, class_validator_1.IsString)(),
63
- (0, class_validator_1.IsOptional)(),
64
- tslib_1.__metadata("design:type", String)
65
- ], RenderTemplateDto.prototype, "scopeId", void 0);
66
- tslib_1.__decorate([
67
- (0, swagger_1.ApiPropertyOptional)({
68
- type: String,
69
- nullable: true,
70
- description: 'The context of the template'
71
- }),
72
- (0, class_validator_1.IsObject)(),
73
- (0, class_validator_1.IsOptional)(),
74
- tslib_1.__metadata("design:type", Object)
75
- ], RenderTemplateDto.prototype, "context", void 0);
76
- class RenderTemplateOutputDTO {
77
- }
78
- exports.RenderTemplateOutputDTO = RenderTemplateOutputDTO;
79
- tslib_1.__decorate([
80
- (0, swagger_1.ApiProperty)({ type: String }),
81
- (0, class_validator_1.IsString)(),
82
- (0, class_validator_1.IsNotEmpty)(),
83
- tslib_1.__metadata("design:type", String)
84
- ], RenderTemplateOutputDTO.prototype, "content", void 0);
85
- tslib_1.__decorate([
86
- (0, swagger_1.ApiProperty)({ type: String }),
87
- (0, class_validator_1.IsString)(),
88
- (0, class_validator_1.IsNotEmpty)(),
89
- tslib_1.__metadata("design:type", String)
90
- ], RenderTemplateOutputDTO.prototype, "subject", void 0);
91
- //# sourceMappingURL=render-template.dto.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"render-template.dto.js","sourceRoot":"","sources":["../../../../../../packages/nest-dynamic-templates/src/lib/dto/render-template.dto.ts"],"names":[],"mappings":";;;;AAAA,qDAA0G;AAC1G,iEAAsF;AACtF,6CAAmE;AAGnE,MAAa,iBAAiB;IAA9B;QASI,WAAM,GAAY,IAAI,CAAC;QA2BvB,UAAK,GAAY,QAAQ,CAAC;IAmB9B,CAAC;CAAA;AAvDD,8CAuDC;AA9CG;IAPC,IAAA,6BAAmB,EAAC;QACjB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,uCAAuC;KACvD,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;iDACU;AAMvB;IAJC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC;;+CAClC;AAMd;IAJC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;;kDAC5B;AAMjB;IAJC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,qCAAoB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzD,IAAA,wBAAM,EAAC,qCAAoB,CAAC;IAC5B,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;;mDACb;AAShC;IAPC,IAAA,6BAAmB,EAAC;QACjB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,yDAAyD;KACzE,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;gDACa;AAS1B;IAPC,IAAA,6BAAmB,EAAC;QACjB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,kEAAkE;KAClF,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kDACI;AASjB;IAPC,IAAA,6BAAmB,EAAC;QACjB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,6BAA6B;KAC7C,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kDACiB;AAIlC,MAAa,uBAAuB;CAUnC;AAVD,0DAUC;AANG;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;wDACG;AAKhB;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;wDACG"}
@@ -1,8 +0,0 @@
1
- import { TemplateTypeEnum } from '../interfaces/template.types';
2
- export declare class TemplateFilterDto {
3
- scope?: string;
4
- scopeId?: string;
5
- type?: TemplateTypeEnum;
6
- locale?: string;
7
- excludeNames?: string[];
8
- }
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TemplateFilterDto = void 0;
4
- const tslib_1 = require("tslib");
5
- const class_validator_1 = require("class-validator");
6
- const swagger_1 = require("@nestjs/swagger");
7
- const template_types_1 = require("../interfaces/template.types");
8
- class TemplateFilterDto {
9
- }
10
- exports.TemplateFilterDto = TemplateFilterDto;
11
- tslib_1.__decorate([
12
- (0, swagger_1.ApiProperty)({
13
- type: String,
14
- required: false,
15
- description: 'Filter by scope (e.g., system, tenant, organization)'
16
- }),
17
- (0, class_validator_1.IsString)(),
18
- (0, class_validator_1.IsOptional)(),
19
- tslib_1.__metadata("design:type", String)
20
- ], TemplateFilterDto.prototype, "scope", void 0);
21
- tslib_1.__decorate([
22
- (0, swagger_1.ApiProperty)({
23
- type: String,
24
- required: false,
25
- description: 'Filter by scope ID (e.g., tenant ID, organization ID)'
26
- }),
27
- (0, class_validator_1.IsString)(),
28
- (0, class_validator_1.IsOptional)(),
29
- tslib_1.__metadata("design:type", String)
30
- ], TemplateFilterDto.prototype, "scopeId", void 0);
31
- tslib_1.__decorate([
32
- (0, swagger_1.ApiProperty)({
33
- enum: template_types_1.TemplateTypeEnum,
34
- required: false,
35
- description: 'Filter by template type'
36
- }),
37
- (0, class_validator_1.IsEnum)(template_types_1.TemplateTypeEnum),
38
- (0, class_validator_1.IsOptional)(),
39
- tslib_1.__metadata("design:type", String)
40
- ], TemplateFilterDto.prototype, "type", void 0);
41
- tslib_1.__decorate([
42
- (0, swagger_1.ApiProperty)({
43
- type: String,
44
- required: false,
45
- description: 'Filter by locale (e.g., en, fr, es)'
46
- }),
47
- (0, class_validator_1.IsString)(),
48
- (0, class_validator_1.IsOptional)(),
49
- tslib_1.__metadata("design:type", String)
50
- ], TemplateFilterDto.prototype, "locale", void 0);
51
- tslib_1.__decorate([
52
- (0, swagger_1.ApiProperty)({
53
- type: [String],
54
- required: false,
55
- description: 'Exclude templates with these names'
56
- }),
57
- (0, class_validator_1.IsArray)(),
58
- (0, class_validator_1.IsString)({ each: true }),
59
- (0, class_validator_1.IsOptional)(),
60
- tslib_1.__metadata("design:type", Array)
61
- ], TemplateFilterDto.prototype, "excludeNames", void 0);
62
- //# sourceMappingURL=template-filter.dto.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"template-filter.dto.js","sourceRoot":"","sources":["../../../../../../packages/nest-dynamic-templates/src/lib/dto/template-filter.dto.ts"],"names":[],"mappings":";;;;AAAA,qDAAwE;AACxE,6CAA8C;AAC9C,iEAAgE;AAEhE,MAAa,iBAAiB;CA+C7B;AA/CD,8CA+CC;AAvCG;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,sDAAsD;KACtE,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;gDACE;AASf;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,uDAAuD;KACvE,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kDACI;AASjB;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,iCAAgB;QACtB,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,yBAAyB;KACzC,CAAC;IACD,IAAA,wBAAM,EAAC,iCAAgB,CAAC;IACxB,IAAA,4BAAU,GAAE;;+CACW;AASxB;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,qCAAqC;KACrD,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;iDACG;AAUhB;IARC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,oCAAoC;KACpD,CAAC;IACD,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,4BAAU,GAAE;;uDACW"}
@@ -1,7 +0,0 @@
1
- export declare class TemplateLayoutFilterDto {
2
- scope?: string;
3
- scopeId?: string;
4
- type?: string;
5
- locale?: string;
6
- excludeNames?: string[];
7
- }
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TemplateLayoutFilterDto = void 0;
4
- const tslib_1 = require("tslib");
5
- const class_validator_1 = require("class-validator");
6
- const swagger_1 = require("@nestjs/swagger");
7
- class TemplateLayoutFilterDto {
8
- }
9
- exports.TemplateLayoutFilterDto = TemplateLayoutFilterDto;
10
- tslib_1.__decorate([
11
- (0, swagger_1.ApiProperty)({
12
- type: String,
13
- required: false,
14
- description: 'Filter by scope (e.g., system, tenant, organization)'
15
- }),
16
- (0, class_validator_1.IsString)(),
17
- (0, class_validator_1.IsOptional)(),
18
- tslib_1.__metadata("design:type", String)
19
- ], TemplateLayoutFilterDto.prototype, "scope", void 0);
20
- tslib_1.__decorate([
21
- (0, swagger_1.ApiProperty)({
22
- type: String,
23
- required: false,
24
- description: 'Filter by scope ID (e.g., tenant ID, organization ID)'
25
- }),
26
- (0, class_validator_1.IsString)(),
27
- (0, class_validator_1.IsOptional)(),
28
- tslib_1.__metadata("design:type", String)
29
- ], TemplateLayoutFilterDto.prototype, "scopeId", void 0);
30
- tslib_1.__decorate([
31
- (0, swagger_1.ApiProperty)({
32
- type: String,
33
- required: false,
34
- description: 'Filter by template type'
35
- }),
36
- (0, class_validator_1.IsString)(),
37
- (0, class_validator_1.IsOptional)(),
38
- tslib_1.__metadata("design:type", String)
39
- ], TemplateLayoutFilterDto.prototype, "type", void 0);
40
- tslib_1.__decorate([
41
- (0, swagger_1.ApiProperty)({
42
- type: String,
43
- required: false,
44
- description: 'Filter by locale (e.g., en, fr, es)'
45
- }),
46
- (0, class_validator_1.IsString)(),
47
- (0, class_validator_1.IsOptional)(),
48
- tslib_1.__metadata("design:type", String)
49
- ], TemplateLayoutFilterDto.prototype, "locale", void 0);
50
- tslib_1.__decorate([
51
- (0, swagger_1.ApiProperty)({
52
- type: [String],
53
- required: false,
54
- description: 'Exclude templates with these names'
55
- }),
56
- (0, class_validator_1.IsArray)(),
57
- (0, class_validator_1.IsString)({ each: true }),
58
- (0, class_validator_1.IsOptional)(),
59
- tslib_1.__metadata("design:type", Array)
60
- ], TemplateLayoutFilterDto.prototype, "excludeNames", void 0);
61
- //# sourceMappingURL=template-layout-filter.dto.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"template-layout-filter.dto.js","sourceRoot":"","sources":["../../../../../../packages/nest-dynamic-templates/src/lib/dto/template-layout-filter.dto.ts"],"names":[],"mappings":";;;;AAAA,qDAAgE;AAChE,6CAA8C;AAE9C,MAAa,uBAAuB;CA+CnC;AA/CD,0DA+CC;AAvCG;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,sDAAsD;KACtE,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;sDACE;AASf;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,uDAAuD;KACvE,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;wDACI;AASjB;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,yBAAyB;KACzC,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;qDACC;AASd;IAPC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,qCAAqC;KACrD,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;uDACG;AAUhB;IARC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,oCAAoC;KACpD,CAAC;IACD,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,4BAAU,GAAE;;6DACW"}
@@ -1,9 +0,0 @@
1
- import { TemplateLanguageEnum } from '../../interfaces/template.types';
2
- import { LanguageEngine } from '../language-engine';
3
- export declare class HtmlEngine extends LanguageEngine {
4
- static engineName: TemplateLanguageEnum;
5
- private options;
6
- constructor(options?: any);
7
- render(content: string): Promise<string>;
8
- validate(content: string): Promise<boolean>;
9
- }
@@ -1,79 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.HtmlEngine = void 0;
37
- const template_types_1 = require("../../interfaces/template.types");
38
- const language_engine_1 = require("../language-engine");
39
- class HtmlEngine extends language_engine_1.LanguageEngine {
40
- constructor(options) {
41
- super();
42
- this.options = options;
43
- }
44
- async render(content) {
45
- try {
46
- const isValid = await this.validate(content);
47
- if (!isValid) {
48
- throw new Error('Invalid HTML content');
49
- }
50
- return content;
51
- }
52
- catch (error) {
53
- throw new Error(`Failed to render HTML: ${error?.message || 'Unknown error'}`);
54
- }
55
- }
56
- async validate(content) {
57
- try {
58
- const { Parser } = await Promise.resolve().then(() => __importStar(require('htmlparser2')));
59
- return new Promise((resolve) => {
60
- const parser = new Parser({
61
- onerror: () => {
62
- resolve(false);
63
- },
64
- onend: () => {
65
- resolve(true);
66
- }
67
- }, this.options);
68
- parser.write(content);
69
- parser.end();
70
- });
71
- }
72
- catch (error) {
73
- return false;
74
- }
75
- }
76
- }
77
- exports.HtmlEngine = HtmlEngine;
78
- HtmlEngine.engineName = template_types_1.TemplateLanguageEnum.HTML;
79
- //# sourceMappingURL=html.engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"html.engine.js","sourceRoot":"","sources":["../../../../../../../packages/nest-dynamic-templates/src/lib/engines/language/html.engine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAuE;AACvE,wDAAoD;AAEpD,MAAa,UAAW,SAAQ,gCAAc;IAK1C,YAAY,OAAa;QACrB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QACxB,IAAI,CAAC;YAGD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,OAAO,CAAC;QACnB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;QACnF,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC1B,IAAI,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,wDAAa,aAAa,GAAC,CAAC;YAE/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC3B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;oBACtB,OAAO,EAAE,GAAG,EAAE;wBACV,OAAO,CAAC,KAAK,CAAC,CAAC;oBACnB,CAAC;oBACD,KAAK,EAAE,GAAG,EAAE;wBACR,OAAO,CAAC,IAAI,CAAC,CAAC;oBAClB,CAAC;iBACJ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAEjB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM,CAAC,GAAG,EAAE,CAAC;YACjB,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;;AA5CL,gCA6CC;AA5CmB,qBAAU,GAAG,qCAAoB,CAAC,IAAI,CAAC"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TextEngine = exports.MarkdownEngine = exports.HtmlEngine = exports.MjmlEngine = void 0;
4
- var mjml_engine_1 = require("./mjml.engine");
5
- Object.defineProperty(exports, "MjmlEngine", { enumerable: true, get: function () { return mjml_engine_1.MjmlEngine; } });
6
- var html_engine_1 = require("./html.engine");
7
- Object.defineProperty(exports, "HtmlEngine", { enumerable: true, get: function () { return html_engine_1.HtmlEngine; } });
8
- var markdown_engine_1 = require("./markdown.engine");
9
- Object.defineProperty(exports, "MarkdownEngine", { enumerable: true, get: function () { return markdown_engine_1.MarkdownEngine; } });
10
- var text_engine_1 = require("./text.engine");
11
- Object.defineProperty(exports, "TextEngine", { enumerable: true, get: function () { return text_engine_1.TextEngine; } });
12
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/nest-dynamic-templates/src/lib/engines/language/index.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA"}
@@ -1,9 +0,0 @@
1
- import { TemplateLanguageEnum } from '../../interfaces/template.types';
2
- import { LanguageEngine } from '../language-engine';
3
- export declare class MarkdownEngine extends LanguageEngine {
4
- static engineName: TemplateLanguageEnum;
5
- private options;
6
- constructor(options?: any);
7
- render(content: string): Promise<string>;
8
- validate(content: string): Promise<boolean>;
9
- }
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarkdownEngine = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@nestjs/common");
6
- const template_types_1 = require("../../interfaces/template.types");
7
- const language_engine_1 = require("../language-engine");
8
- let MarkdownEngine = class MarkdownEngine extends language_engine_1.LanguageEngine {
9
- constructor(options) {
10
- super();
11
- this.options = options;
12
- }
13
- async render(content) {
14
- return content;
15
- }
16
- async validate(content) {
17
- return true;
18
- }
19
- };
20
- exports.MarkdownEngine = MarkdownEngine;
21
- MarkdownEngine.engineName = template_types_1.TemplateLanguageEnum.MARKDOWN;
22
- exports.MarkdownEngine = MarkdownEngine = tslib_1.__decorate([
23
- (0, common_1.Injectable)(),
24
- tslib_1.__metadata("design:paramtypes", [Object])
25
- ], MarkdownEngine);
26
- //# sourceMappingURL=markdown.engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown.engine.js","sourceRoot":"","sources":["../../../../../../../packages/nest-dynamic-templates/src/lib/engines/language/markdown.engine.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAC5C,oEAAuE;AACvE,wDAAoD;AAG7C,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,gCAAc;IAK9C,YAAY,OAAa;QACrB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QAOxB,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAe;QAS1B,OAAO,IAAI,CAAC;IAChB,CAAC;;AA9BQ,wCAAc;AACP,yBAAU,GAAG,qCAAoB,CAAC,QAAQ,AAAhC,CAAiC;yBADlD,cAAc;IAD1B,IAAA,mBAAU,GAAE;;GACA,cAAc,CA+B1B"}
@@ -1,9 +0,0 @@
1
- import { TemplateLanguageEnum } from '../../interfaces/template.types';
2
- import { LanguageEngine } from '../language-engine';
3
- export declare class MjmlEngine extends LanguageEngine {
4
- static engineName: TemplateLanguageEnum;
5
- private readonly options;
6
- constructor(options?: any);
7
- render(content: string): Promise<string>;
8
- validate(content: string): Promise<boolean>;
9
- }
@@ -1,76 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.MjmlEngine = void 0;
37
- const template_types_1 = require("../../interfaces/template.types");
38
- const language_engine_1 = require("../language-engine");
39
- class MjmlEngine extends language_engine_1.LanguageEngine {
40
- constructor(options = {}) {
41
- super();
42
- this.options = {};
43
- this.options = options;
44
- }
45
- async render(content) {
46
- try {
47
- const mjml2html = (await Promise.resolve().then(() => __importStar(require('mjml')))).default;
48
- const result = mjml2html(content, {
49
- ...this.options,
50
- validationLevel: 'strict',
51
- });
52
- if (result.errors && result.errors.length > 0) {
53
- throw new Error(`MJML validation errors: ${result.errors.join(', ')}`);
54
- }
55
- return result.html;
56
- }
57
- catch (error) {
58
- throw new Error(`MJML rendering error: ${error?.message || 'Unknown error'}`);
59
- }
60
- }
61
- async validate(content) {
62
- try {
63
- const mjml2html = (await Promise.resolve().then(() => __importStar(require('mjml')))).default;
64
- const result = mjml2html(content, {
65
- validationLevel: 'strict',
66
- });
67
- return result.errors.length === 0;
68
- }
69
- catch (error) {
70
- return false;
71
- }
72
- }
73
- }
74
- exports.MjmlEngine = MjmlEngine;
75
- MjmlEngine.engineName = template_types_1.TemplateLanguageEnum.MJML;
76
- //# sourceMappingURL=mjml.engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mjml.engine.js","sourceRoot":"","sources":["../../../../../../../packages/nest-dynamic-templates/src/lib/engines/language/mjml.engine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAuE;AACvE,wDAAoD;AAEpD,MAAa,UAAW,SAAQ,gCAAc;IAM1C,YAAY,UAAe,EAAE;QACzB,KAAK,EAAE,CAAC;QAHK,YAAO,GAAQ,EAAE,CAAC;QAI/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QACxB,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,CAAC,wDAAa,MAAM,GAAC,CAAC,CAAC,OAAO,CAAC;YACjD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE;gBAC9B,GAAG,IAAI,CAAC,OAAO;gBACf,eAAe,EAAE,QAAQ;aAC5B,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,OAAO,MAAM,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;QAClF,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC1B,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,CAAC,wDAAa,MAAM,GAAC,CAAC,CAAC,OAAO,CAAC;YACjD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE;gBAC9B,eAAe,EAAE,QAAQ;aAC5B,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;;AAvCL,gCAwCC;AAtCmB,qBAAU,GAAG,qCAAoB,CAAC,IAAI,AAA5B,CAA6B"}
@@ -1,7 +0,0 @@
1
- import { TemplateLanguageEnum } from '../../interfaces/template.types';
2
- import { LanguageEngine } from '../language-engine';
3
- export declare class TextEngine extends LanguageEngine {
4
- static engineName: TemplateLanguageEnum;
5
- render(content: string): Promise<string>;
6
- validate(content: string): Promise<boolean>;
7
- }
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TextEngine = void 0;
4
- const template_types_1 = require("../../interfaces/template.types");
5
- const language_engine_1 = require("../language-engine");
6
- class TextEngine extends language_engine_1.LanguageEngine {
7
- async render(content) {
8
- return content;
9
- }
10
- async validate(content) {
11
- return true;
12
- }
13
- }
14
- exports.TextEngine = TextEngine;
15
- TextEngine.engineName = template_types_1.TemplateLanguageEnum.TEXT;
16
- //# sourceMappingURL=text.engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text.engine.js","sourceRoot":"","sources":["../../../../../../../packages/nest-dynamic-templates/src/lib/engines/language/text.engine.ts"],"names":[],"mappings":";;;AAAA,oEAAuE;AACvE,wDAAoD;AAEpD,MAAa,UAAW,SAAQ,gCAAc;IAI1C,KAAK,CAAC,MAAM,CAAC,OAAe;QACxB,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;;AAVL,gCAWC;AATmB,qBAAU,GAAG,qCAAoB,CAAC,IAAI,CAAC"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LanguageEngine = void 0;
4
- class LanguageEngine {
5
- }
6
- exports.LanguageEngine = LanguageEngine;
7
- //# sourceMappingURL=language-engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"language-engine.js","sourceRoot":"","sources":["../../../../../../packages/nest-dynamic-templates/src/lib/engines/language-engine.ts"],"names":[],"mappings":";;;AACA,MAAsB,cAAc;CASnC;AATD,wCASC"}
@@ -1,10 +0,0 @@
1
- import { TemplateEngine } from '../template-engine';
2
- import { TemplateEngineEnum } from '../../interfaces/template.types';
3
- import { EngineOptions } from '../../interfaces/module-config.interface';
4
- export declare class EjsEngine extends TemplateEngine {
5
- static engineName: TemplateEngineEnum;
6
- private options;
7
- constructor(options?: EngineOptions<ejs.Options>);
8
- render(content: string, data?: Record<string, any>): Promise<string>;
9
- validate(content: string): Promise<boolean>;
10
- }
@@ -1,66 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.EjsEngine = void 0;
37
- const template_engine_1 = require("../template-engine");
38
- const template_types_1 = require("../../interfaces/template.types");
39
- class EjsEngine extends template_engine_1.TemplateEngine {
40
- constructor(options) {
41
- super();
42
- this.options = options;
43
- }
44
- async render(content, data) {
45
- try {
46
- const ejs = await Promise.resolve().then(() => __importStar(require('ejs')));
47
- return ejs.render(content, data, this.options);
48
- }
49
- catch (error) {
50
- throw new Error(`Failed to render EJS template: ${error?.message || 'Unknown error'}`);
51
- }
52
- }
53
- async validate(content) {
54
- try {
55
- const ejs = await Promise.resolve().then(() => __importStar(require('ejs')));
56
- ejs.compile(content, this.options);
57
- return true;
58
- }
59
- catch (error) {
60
- return false;
61
- }
62
- }
63
- }
64
- exports.EjsEngine = EjsEngine;
65
- EjsEngine.engineName = template_types_1.TemplateEngineEnum.EJS;
66
- //# sourceMappingURL=ejs.engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ejs.engine.js","sourceRoot":"","sources":["../../../../../../../packages/nest-dynamic-templates/src/lib/engines/template/ejs.engine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAoD;AACpD,oEAAqE;AAErE,MAAa,SAAU,SAAQ,gCAAc;IAMzC,YAAY,OAAoC;QAC5C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,IAA0B;QACpD,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,wDAAa,KAAK,GAAC,CAAC;YAChC,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;QAC3F,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC1B,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,wDAAa,KAAK,GAAC,CAAC;YAChC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;;AA5BL,8BA6BC;AA3BmB,oBAAU,GAAG,mCAAkB,CAAC,GAAG,CAAC"}
@@ -1,10 +0,0 @@
1
- import { TemplateEngineEnum } from '../../interfaces/template.types';
2
- import { TemplateEngine } from '../template-engine';
3
- import { EngineOptions } from '../../interfaces/module-config.interface';
4
- export declare class HandlebarsEngine extends TemplateEngine {
5
- static engineName: TemplateEngineEnum;
6
- private options;
7
- constructor(options?: EngineOptions<Handlebars.ParseOptions>);
8
- render(content: string, data?: Record<string, any>): Promise<string>;
9
- validate(content: string): Promise<boolean>;
10
- }