@spinajs/templates-handlebars 2.0.78 → 2.0.80
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.
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -7
- package/lib/index.js.map +1 -1
- package/package.json +6 -6
package/lib/index.d.ts
CHANGED
|
@@ -7,6 +7,6 @@ export declare class HandlebarsRenderer extends TemplateRenderer {
|
|
|
7
7
|
resolve(): Promise<void>;
|
|
8
8
|
renderToFile(template: string, model: unknown, filePath: string, language?: string): Promise<void>;
|
|
9
9
|
render(templateName: string, model: unknown, language?: string): Promise<string>;
|
|
10
|
-
protected compile(
|
|
10
|
+
protected compile(path: string): Promise<void>;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,qBACa,kBAAmB,SAAQ,gBAAgB;IAEtD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC;IAEvB,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAsD;IAEvH,IAAW,IAAI,WAEd;IAED,IAAW,SAAS,WAEnB;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBxB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlG,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,qBACa,kBAAmB,SAAQ,gBAAgB;IAEtD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC;IAEvB,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAsD;IAEvH,IAAW,IAAI,WAEd;IAED,IAAW,SAAS,WAEnB;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBxB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlG,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;cA8B7E,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAerD"}
|
package/lib/index.js
CHANGED
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
import { IOFail
|
|
10
|
+
import { IOFail } from '@spinajs/exceptions';
|
|
11
11
|
import { __translate, __translateNumber, __translateL, __translateH, guessLanguage, defaultLanguage } from '@spinajs/intl';
|
|
12
12
|
import { InvalidArgument } from '@spinajs/exceptions';
|
|
13
13
|
import * as fs from 'fs';
|
|
@@ -58,10 +58,11 @@ let HandlebarsRenderer = class HandlebarsRenderer extends TemplateRenderer {
|
|
|
58
58
|
if (!templateName) {
|
|
59
59
|
throw new InvalidArgument('template parameter cannot be null or empty');
|
|
60
60
|
}
|
|
61
|
-
|
|
62
|
-
if (!
|
|
63
|
-
|
|
61
|
+
let fTemplate = null;
|
|
62
|
+
if (!this.Templates.has(normalize(templateName))) {
|
|
63
|
+
await this.compile(normalize(templateName));
|
|
64
64
|
}
|
|
65
|
+
fTemplate = this.Templates.get(normalize(templateName));
|
|
65
66
|
const lang = language ? language : guessLanguage();
|
|
66
67
|
const tLang = lang ?? defaultLanguage();
|
|
67
68
|
const content = fTemplate(_.merge(model ?? {}, {
|
|
@@ -71,16 +72,16 @@ let HandlebarsRenderer = class HandlebarsRenderer extends TemplateRenderer {
|
|
|
71
72
|
this.Log.trace(`Rendering template ${templateName} ended, (${time} ms)`);
|
|
72
73
|
return Promise.resolve(content);
|
|
73
74
|
}
|
|
74
|
-
async compile(
|
|
75
|
+
async compile(path) {
|
|
75
76
|
const tContent = fs.readFileSync(path, 'utf-8');
|
|
76
77
|
if (tContent.length === 0) {
|
|
77
78
|
throw new IOFail(`Template file ${path} is empty`);
|
|
78
79
|
}
|
|
79
80
|
const tCompiled = Handlebars.compile(tContent, this.Options);
|
|
80
81
|
if (!tCompiled) {
|
|
81
|
-
throw new IOFail(`Cannot compile handlebars template
|
|
82
|
+
throw new IOFail(`Cannot compile handlebars template from path ${path}`);
|
|
82
83
|
}
|
|
83
|
-
this.Templates.set(
|
|
84
|
+
this.Templates.set(path, tCompiled);
|
|
84
85
|
}
|
|
85
86
|
};
|
|
86
87
|
__decorate([
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spinajs/templates-handlebars",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.80",
|
|
4
4
|
"description": "templates support eg. html file generation",
|
|
5
5
|
"exports": "./lib/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -47,11 +47,11 @@
|
|
|
47
47
|
"@types/pug": "^2.0.6"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@spinajs/configuration": "^2.0.
|
|
51
|
-
"@spinajs/di": "^2.0.
|
|
52
|
-
"@spinajs/exceptions": "^2.0.
|
|
53
|
-
"@spinajs/intl": "^2.0.
|
|
54
|
-
"@spinajs/log": "^2.0.
|
|
50
|
+
"@spinajs/configuration": "^2.0.80",
|
|
51
|
+
"@spinajs/di": "^2.0.80",
|
|
52
|
+
"@spinajs/exceptions": "^2.0.80",
|
|
53
|
+
"@spinajs/intl": "^2.0.80",
|
|
54
|
+
"@spinajs/log": "^2.0.80",
|
|
55
55
|
"handlebars": "^4.7.7",
|
|
56
56
|
"tempfile": "4.0.0"
|
|
57
57
|
},
|