@memberjunction/templates-base-types 2.103.0 → 2.105.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.
@@ -1,6 +1,5 @@
1
1
  import { BaseEngine, IMetadataProvider, UserInfo } from "@memberjunction/core";
2
- import { TemplateEntityExtended } from "./TemplateEntityExtended";
3
- import { TemplateCategoryEntity, TemplateContentEntity, TemplateContentTypeEntity, TemplateParamEntity } from "@memberjunction/core-entities";
2
+ import { TemplateCategoryEntity, TemplateContentEntity, TemplateContentTypeEntity, TemplateEntityExtended, TemplateParamEntity } from "@memberjunction/core-entities";
4
3
  /**
5
4
  * TemplateEngine is used for accessing template metadata/caching it, and rendering templates
6
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateEngineBase.d.ts","sourceRoot":"","sources":["../src/TemplateEngineBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA4B,iBAAiB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACzG,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;IAGD,OAAO,CAAC,SAAS,CAMf;IAEW,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,iBAAiB;cAYhF,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxE,IAAW,SAAS,IAAI,sBAAsB,EAAE,CAE/C;IAED,IAAW,oBAAoB,IAAI,yBAAyB,EAAE,CAE7D;IACD,IAAW,kBAAkB,IAAI,sBAAsB,EAAE,CAExD;IACD,IAAW,gBAAgB,IAAI,qBAAqB,EAAE,CAErD;IACD,IAAW,cAAc,IAAI,mBAAmB,EAAE,CAEjD;IAED;;;;OAIG;IACI,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,sBAAsB;CAGpE"}
1
+ {"version":3,"file":"TemplateEngineBase.d.ts","sourceRoot":"","sources":["../src/TemplateEngineBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA4B,iBAAiB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEtK;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU,CAAC,kBAAkB,CAAC;IAClE;;OAEG;IACH,WAAkB,QAAQ,IAAI,kBAAkB,CAE/C;IAGD,OAAO,CAAC,SAAS,CAMf;IAEW,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,iBAAiB;cAYhF,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxE,IAAW,SAAS,IAAI,sBAAsB,EAAE,CAE/C;IAED,IAAW,oBAAoB,IAAI,yBAAyB,EAAE,CAE7D;IACD,IAAW,kBAAkB,IAAI,sBAAsB,EAAE,CAExD;IACD,IAAW,gBAAgB,IAAI,qBAAqB,EAAE,CAErD;IACD,IAAW,cAAc,IAAI,mBAAmB,EAAE,CAEjD;IAED;;;;OAIG;IACI,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,sBAAsB;CAGpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateEngineBase.js","sourceRoot":"","sources":["../src/TemplateEngineBase.ts"],"names":[],"mappings":";;;AAAA,+CAAyG;AAIzG;;GAEG;AACH,MAAa,kBAAmB,SAAQ,iBAA8B;IAClE;;OAEG;IACI,MAAM,KAAK,QAAQ;QACvB,OAAO,KAAK,CAAC,WAAW,EAAsB,CAAC;IAClD,CAAC;IAWM,KAAK,CAAC,MAAM,CAAC,YAAsB,EAAE,WAAsB,EAAE,QAA4B;QAC5F,MAAM,CAAC,GAAwC;YAC3C;gBACI,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,mBAAmB;gBAChC,qBAAqB,EAAE,iBAAiB;gBACxC,YAAY,EAAE,WAAW;aAC5B;SACJ,CAAA;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;IAC5D,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;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,IAAW,oBAAoB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAC/C,CAAC;IACD,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;IAC7C,CAAC;IACD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAC3C,CAAC;IACD,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;IACzC,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;AA9DD,gDA8DC"}
1
+ {"version":3,"file":"TemplateEngineBase.js","sourceRoot":"","sources":["../src/TemplateEngineBase.ts"],"names":[],"mappings":";;;AAAA,+CAAyG;AAGzG;;GAEG;AACH,MAAa,kBAAmB,SAAQ,iBAA8B;IAClE;;OAEG;IACI,MAAM,KAAK,QAAQ;QACvB,OAAO,KAAK,CAAC,WAAW,EAAsB,CAAC;IAClD,CAAC;IAWM,KAAK,CAAC,MAAM,CAAC,YAAsB,EAAE,WAAsB,EAAE,QAA4B;QAC5F,MAAM,CAAC,GAAwC;YAC3C;gBACI,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,mBAAmB;gBAChC,qBAAqB,EAAE,iBAAiB;gBACxC,YAAY,EAAE,WAAW;aAC5B;SACJ,CAAA;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;IAC5D,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;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,IAAW,oBAAoB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAC/C,CAAC;IACD,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;IAC7C,CAAC;IACD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAC3C,CAAC;IACD,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;IACzC,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;AA9DD,gDA8DC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- export * from './TemplateEntityExtended';
2
1
  export * from './TemplateEngineBase';
3
2
  export * from './types';
4
3
  //# 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,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./TemplateEntityExtended"), exports);
18
17
  __exportStar(require("./TemplateEngineBase"), exports);
19
18
  __exportStar(require("./types"), exports);
20
19
  //# 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,uDAAqC;AACrC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,0CAAwB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/templates-base-types",
3
- "version": "2.103.0",
3
+ "version": "2.105.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",
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "dependencies": {
21
21
  "@memberjunction/core": "2.100.3",
22
- "@memberjunction/core-entities": "2.103.0",
22
+ "@memberjunction/core-entities": "2.105.0",
23
23
  "@memberjunction/global": "2.100.3"
24
24
  }
25
25
  }
@@ -1,60 +0,0 @@
1
- import { ValidationResult } from "@memberjunction/core";
2
- import { TemplateContentEntity, TemplateEntity, TemplateParamEntity } from "@memberjunction/core-entities";
3
- export declare class TemplateEntityExtended extends TemplateEntity {
4
- private _Content;
5
- get Content(): TemplateContentEntity[];
6
- set Content(value: TemplateContentEntity[]);
7
- private _Params;
8
- get Params(): TemplateParamEntity[];
9
- set Params(value: TemplateParamEntity[]);
10
- /**
11
- * Returns all content for a given type for the template
12
- * @param type
13
- * @returns
14
- */
15
- GetContentByType(type: string): TemplateContentEntity[];
16
- /**
17
- * Returns the highest priority content for the template
18
- * @param type If provided, returns the highest priority content of the specified type
19
- * @returns
20
- */
21
- GetHighestPriorityContent(type?: string): TemplateContentEntity;
22
- /**
23
- * Returns all parameters that apply to a specific template content.
24
- * This includes both global parameters (where TemplateContentID is NULL)
25
- * and content-specific parameters for the given contentId.
26
- *
27
- * @param contentId - The ID of the template content. If not provided, returns only global parameters.
28
- * @returns Array of TemplateParamEntity objects that apply to the specified content
29
- *
30
- * @example
31
- * // Get all parameters for a specific content
32
- * const params = template.GetParametersForContent('content-uuid');
33
- *
34
- * @example
35
- * // Get only global parameters (that apply to all contents)
36
- * const globalParams = template.GetParametersForContent();
37
- */
38
- GetParametersForContent(contentId?: string): TemplateParamEntity[];
39
- /**
40
- * This method is different from the Validate() method which validates the state of the Template itself.
41
- * This method validates the data object provided meets the requirements for the template's parameter definitions.
42
- *
43
- * @param data - the data object to validate against the template's parameter definitions
44
- * @param contentId - Optional: The ID of the template content to validate against.
45
- * If provided, validates against parameters specific to that content.
46
- * If not provided, validates against all parameters.
47
- * @returns ValidationResult with success status and any validation errors
48
- *
49
- * @example
50
- * // Validate against all parameters
51
- * const result = template.ValidateTemplateInput(inputData);
52
- *
53
- * @example
54
- * // Validate against parameters for a specific content
55
- * const result = template.ValidateTemplateInput(inputData, 'content-uuid');
56
- */
57
- ValidateTemplateInput(data: any, contentId?: string): ValidationResult;
58
- }
59
- export declare function LoadTemplateEntityExtended(): void;
60
- //# sourceMappingURL=TemplateEntityExtended.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateEntityExtended.d.ts","sourceRoot":"","sources":["../src/TemplateEntityExtended.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAG3G,qBACa,sBAAuB,SAAQ,cAAc;IACtD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,IAAW,OAAO,IAAI,qBAAqB,EAAE,CAE5C;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,qBAAqB,EAAE,EAEhD;IAED,OAAO,CAAC,OAAO,CAA6B;IAC5C,IAAW,MAAM,IAAI,mBAAmB,EAAE,CAEzC;IACD,IAAW,MAAM,CAAC,KAAK,EAAE,mBAAmB,EAAE,EAE7C;IAED;;;;OAIG;IACI,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAI9D;;;;OAIG;IACI,yBAAyB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,qBAAqB;IAUtE;;;;;;;;;;;;;;;OAeG;IACI,uBAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,mBAAmB,EAAE;IAazE;;;;;;;;;;;;;;;;;OAiBG;IACI,qBAAqB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,gBAAgB;CA0BhF;AAED,wBAAgB,0BAA0B,SAEzC"}
@@ -1,130 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.LoadTemplateEntityExtended = exports.TemplateEntityExtended = void 0;
10
- const core_1 = require("@memberjunction/core");
11
- const core_entities_1 = require("@memberjunction/core-entities");
12
- const global_1 = require("@memberjunction/global");
13
- let TemplateEntityExtended = class TemplateEntityExtended extends core_entities_1.TemplateEntity {
14
- constructor() {
15
- super(...arguments);
16
- this._Content = [];
17
- this._Params = [];
18
- }
19
- get Content() {
20
- return this._Content;
21
- }
22
- set Content(value) {
23
- this._Content = value;
24
- }
25
- get Params() {
26
- return this._Params;
27
- }
28
- set Params(value) {
29
- this._Params = value;
30
- }
31
- /**
32
- * Returns all content for a given type for the template
33
- * @param type
34
- * @returns
35
- */
36
- GetContentByType(type) {
37
- return this.Content.filter(c => c.Type.trim().toLowerCase() === type.trim().toLowerCase());
38
- }
39
- /**
40
- * Returns the highest priority content for the template
41
- * @param type If provided, returns the highest priority content of the specified type
42
- * @returns
43
- */
44
- GetHighestPriorityContent(type) {
45
- if (type) {
46
- return this.Content.filter(c => c.Type.trim().toLowerCase() === type.trim().toLowerCase())
47
- .sort((a, b) => a.Priority - b.Priority)[0];
48
- }
49
- else {
50
- return this.Content.sort((a, b) => a.Priority - b.Priority)[0];
51
- }
52
- }
53
- /**
54
- * Returns all parameters that apply to a specific template content.
55
- * This includes both global parameters (where TemplateContentID is NULL)
56
- * and content-specific parameters for the given contentId.
57
- *
58
- * @param contentId - The ID of the template content. If not provided, returns only global parameters.
59
- * @returns Array of TemplateParamEntity objects that apply to the specified content
60
- *
61
- * @example
62
- * // Get all parameters for a specific content
63
- * const params = template.GetParametersForContent('content-uuid');
64
- *
65
- * @example
66
- * // Get only global parameters (that apply to all contents)
67
- * const globalParams = template.GetParametersForContent();
68
- */
69
- GetParametersForContent(contentId) {
70
- if (!contentId) {
71
- // Return only global parameters (TemplateContentID is null)
72
- return this.Params.filter(p => !p.TemplateContentID);
73
- }
74
- // Return both global parameters and content-specific parameters
75
- return this.Params.filter(p => !p.TemplateContentID || // Global param (applies to all contents)
76
- p.TemplateContentID === contentId // Content-specific param
77
- );
78
- }
79
- /**
80
- * This method is different from the Validate() method which validates the state of the Template itself.
81
- * This method validates the data object provided meets the requirements for the template's parameter definitions.
82
- *
83
- * @param data - the data object to validate against the template's parameter definitions
84
- * @param contentId - Optional: The ID of the template content to validate against.
85
- * If provided, validates against parameters specific to that content.
86
- * If not provided, validates against all parameters.
87
- * @returns ValidationResult with success status and any validation errors
88
- *
89
- * @example
90
- * // Validate against all parameters
91
- * const result = template.ValidateTemplateInput(inputData);
92
- *
93
- * @example
94
- * // Validate against parameters for a specific content
95
- * const result = template.ValidateTemplateInput(inputData, 'content-uuid');
96
- */
97
- ValidateTemplateInput(data, contentId) {
98
- const result = new core_1.ValidationResult();
99
- // Get the relevant parameters based on contentId
100
- const paramsToValidate = contentId ?
101
- this.GetParametersForContent(contentId) :
102
- this.Params;
103
- paramsToValidate.forEach((p) => {
104
- if (p.IsRequired) {
105
- if (!data ||
106
- data[p.Name] === undefined ||
107
- data[p.Name] === null ||
108
- (typeof data[p.Name] === 'string' && data[p.Name].toString().trim() === ''))
109
- result.Errors.push({
110
- Source: p.Name,
111
- Message: `Parameter ${p.Name} is required.`,
112
- Value: data[p.Name],
113
- Type: 'Failure'
114
- });
115
- }
116
- });
117
- // now set result's top level success flag based on the existence of ANY failure record within the errors collection
118
- result.Success = result.Errors.some(e => e.Type === 'Failure') ? false : true;
119
- return result;
120
- }
121
- };
122
- exports.TemplateEntityExtended = TemplateEntityExtended;
123
- exports.TemplateEntityExtended = TemplateEntityExtended = __decorate([
124
- (0, global_1.RegisterClass)(core_1.BaseEntity, 'Templates')
125
- ], TemplateEntityExtended);
126
- function LoadTemplateEntityExtended() {
127
- // this does nothing but prevents the class from being removed by the tree shaker
128
- }
129
- exports.LoadTemplateEntityExtended = LoadTemplateEntityExtended;
130
- //# sourceMappingURL=TemplateEntityExtended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateEntityExtended.js","sourceRoot":"","sources":["../src/TemplateEntityExtended.ts"],"names":[],"mappings":"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"}