@memberjunction/templates-base-types 1.5.3 → 1.6.0

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.
@@ -0,0 +1,31 @@
1
+ import { BaseEngine, UserInfo } from "@memberjunction/core";
2
+ import { TemplateEntityExtended } from "./TemplateEntityExtended";
3
+ import { TemplateCategoryEntity, TemplateContentEntity, TemplateContentTypeEntity, TemplateParamEntity } from "@memberjunction/core-entities";
4
+ /**
5
+ * TemplateEngine is used for accessing template metadata/caching it, and rendering templates
6
+ */
7
+ export declare class TemplateEngineBase extends BaseEngine<TemplateEngineBase> {
8
+ /**
9
+ * Returns the global instance of the class. This is a singleton class, so there is only one instance of it in the application. Do not directly create new instances of it, always use this method to get the instance.
10
+ */
11
+ static get Instance(): TemplateEngineBase;
12
+ Config(forceRefresh?: boolean, contextUser?: UserInfo): Promise<void>;
13
+ protected AdditionalLoading(contextUser?: UserInfo): Promise<void>;
14
+ private _Templates;
15
+ get Templates(): TemplateEntityExtended[];
16
+ private _TemplateContentTypes;
17
+ get TemplateContentTypes(): TemplateContentTypeEntity[];
18
+ private _TemplateCategories;
19
+ get TemplateCategories(): TemplateCategoryEntity[];
20
+ private _TemplateContents;
21
+ get TemplateContents(): TemplateContentEntity[];
22
+ private _TemplateParams;
23
+ get TemplateParams(): TemplateParamEntity[];
24
+ /**
25
+ * Convenience method to find a template by name, case-insensitive
26
+ * @param templateName
27
+ * @returns
28
+ */
29
+ FindTemplate(templateName: string): TemplateEntityExtended;
30
+ }
31
+ //# sourceMappingURL=TemplateEngineBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateEngineBase.d.ts","sourceRoot":"","sources":["../src/TemplateEngineBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA4B,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAE9I;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU,CAAC,kBAAkB,CAAC;IAClE;;OAEG;IACH,WAAkB,QAAQ,IAAI,kBAAkB,CAE/C;IAEY,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ;cA2BlD,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxE,OAAO,CAAC,UAAU,CAA2B;IAC7C,IAAW,SAAS,IAAI,sBAAsB,EAAE,CAE/C;IAED,OAAO,CAAC,qBAAqB,CAA8B;IAC3D,IAAW,oBAAoB,IAAI,yBAAyB,EAAE,CAE7D;IAED,OAAO,CAAC,mBAAmB,CAA2B;IACtD,IAAW,kBAAkB,IAAI,sBAAsB,EAAE,CAExD;IACD,OAAO,CAAC,iBAAiB,CAA0B;IACnD,IAAW,gBAAgB,IAAI,qBAAqB,EAAE,CAErD;IAED,OAAO,CAAC,eAAe,CAAwB;IAC/C,IAAW,cAAc,IAAI,mBAAmB,EAAE,CAEjD;IAED;;;;OAIG;IACI,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,sBAAsB;CAGpE"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TemplateEngineBase = void 0;
4
+ const core_1 = require("@memberjunction/core");
5
+ /**
6
+ * TemplateEngine is used for accessing template metadata/caching it, and rendering templates
7
+ */
8
+ class TemplateEngineBase extends core_1.BaseEngine {
9
+ /**
10
+ * Returns the global instance of the class. This is a singleton class, so there is only one instance of it in the application. Do not directly create new instances of it, always use this method to get the instance.
11
+ */
12
+ static get Instance() {
13
+ return super.getInstance();
14
+ }
15
+ async Config(forceRefresh, contextUser) {
16
+ const c = [
17
+ {
18
+ EntityName: 'Template Content Types',
19
+ PropertyName: '_TemplateContentTypes',
20
+ },
21
+ {
22
+ EntityName: 'Template Categories',
23
+ PropertyName: '_TemplateCategories'
24
+ },
25
+ {
26
+ EntityName: 'Templates',
27
+ PropertyName: '_Templates',
28
+ },
29
+ {
30
+ EntityName: 'Template Contents',
31
+ PropertyName: '_TemplateContents',
32
+ },
33
+ {
34
+ EntityName: 'Template Params',
35
+ PropertyName: '_TemplateParams',
36
+ },
37
+ ];
38
+ await this.Load(c, forceRefresh, contextUser);
39
+ }
40
+ async AdditionalLoading(contextUser) {
41
+ // post-process the template content and params to associate them with a template
42
+ this.Templates.forEach((t) => {
43
+ t.Content = this.TemplateContents.filter((tc) => tc.TemplateID === t.ID);
44
+ t.Params = this.TemplateParams.filter((tp) => tp.TemplateID === t.ID);
45
+ });
46
+ }
47
+ get Templates() {
48
+ return this._Templates;
49
+ }
50
+ get TemplateContentTypes() {
51
+ return this._TemplateContentTypes;
52
+ }
53
+ get TemplateCategories() {
54
+ return this._TemplateCategories;
55
+ }
56
+ get TemplateContents() {
57
+ return this._TemplateContents;
58
+ }
59
+ get TemplateParams() {
60
+ return this._TemplateParams;
61
+ }
62
+ /**
63
+ * Convenience method to find a template by name, case-insensitive
64
+ * @param templateName
65
+ * @returns
66
+ */
67
+ FindTemplate(templateName) {
68
+ return this.Templates.find((t) => t.Name.trim().toLowerCase() === templateName.trim().toLowerCase());
69
+ }
70
+ }
71
+ exports.TemplateEngineBase = TemplateEngineBase;
72
+ //# sourceMappingURL=TemplateEngineBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateEngineBase.js","sourceRoot":"","sources":["../src/TemplateEngineBase.ts"],"names":[],"mappings":";;;AAAA,+CAAsF;AAItF;;GAEG;AACH,MAAa,kBAAmB,SAAQ,iBAA8B;IAClE;;OAEG;IACI,MAAM,KAAK,QAAQ;QACvB,OAAO,KAAK,CAAC,WAAW,EAAsB,CAAC;IAClD,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,YAAsB,EAAE,WAAsB;QAC9D,MAAM,CAAC,GAA+B;YAClC;gBACI,UAAU,EAAE,wBAAwB;gBACpC,YAAY,EAAE,uBAAuB;aACxC;YACD;gBACI,UAAU,EAAE,qBAAqB;gBACjC,YAAY,EAAE,qBAAqB;aACtC;YACD;gBACI,UAAU,EAAE,WAAW;gBACvB,YAAY,EAAE,YAAY;aAC7B;YACD;gBACI,UAAU,EAAE,mBAAmB;gBAC/B,YAAY,EAAE,mBAAmB;aACpC;YACD;gBACI,UAAU,EAAE,iBAAiB;gBAC7B,YAAY,EAAE,iBAAiB;aAClC;SAEJ,CAAA;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;IAClD,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,WAAsB;QACpD,iFAAiF;QACjF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACP,CAAC;IAGD,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAGD,IAAW,oBAAoB;QAC3B,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IAGD,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAGD,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACI,YAAY,CAAC,YAAoB;QACpC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;IACxG,CAAC;CACJ;AA3ED,gDA2EC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './TemplateEntityExtended';
2
+ export * from './TemplateEngineBase';
2
3
  export * from './types';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -15,5 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./TemplateEntityExtended"), exports);
18
+ __exportStar(require("./TemplateEngineBase"), exports);
18
19
  __exportStar(require("./types"), exports);
19
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,uDAAqC;AACrC,0CAAwB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/templates-base-types",
3
- "version": "1.5.3",
3
+ "version": "1.6.0",
4
4
  "description": "MemberJunction Templating Base Types for Client/Server Use",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,8 +18,8 @@
18
18
  "typescript": "^5.4.5"
19
19
  },
20
20
  "dependencies": {
21
- "@memberjunction/core": "1.5.3",
22
- "@memberjunction/core-entities": "1.5.3",
23
- "@memberjunction/global": "1.5.3"
21
+ "@memberjunction/core": "1.6.0",
22
+ "@memberjunction/core-entities": "1.6.0",
23
+ "@memberjunction/global": "1.6.0"
24
24
  }
25
25
  }