@memberjunction/core-entities 2.128.0 → 2.129.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.
Files changed (60) hide show
  1. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.d.ts.map +1 -1
  2. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.js +14 -4
  3. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.js.map +1 -1
  4. package/dist/engines/EncryptionEngineBase.d.ts +246 -0
  5. package/dist/engines/EncryptionEngineBase.d.ts.map +1 -0
  6. package/dist/engines/EncryptionEngineBase.js +355 -0
  7. package/dist/engines/EncryptionEngineBase.js.map +1 -0
  8. package/dist/engines/TypeTablesCache.d.ts.map +1 -1
  9. package/dist/engines/TypeTablesCache.js +2 -1
  10. package/dist/engines/TypeTablesCache.js.map +1 -1
  11. package/dist/engines/UserInfoEngine.d.ts +228 -0
  12. package/dist/engines/UserInfoEngine.d.ts.map +1 -0
  13. package/dist/engines/UserInfoEngine.js +599 -0
  14. package/dist/engines/UserInfoEngine.js.map +1 -0
  15. package/dist/engines/artifacts.d.ts.map +1 -1
  16. package/dist/engines/artifacts.js +2 -1
  17. package/dist/engines/artifacts.js.map +1 -1
  18. package/dist/engines/component-metadata.d.ts.map +1 -1
  19. package/dist/engines/component-metadata.js +10 -5
  20. package/dist/engines/component-metadata.js.map +1 -1
  21. package/dist/engines/dashboards.d.ts.map +1 -1
  22. package/dist/engines/dashboards.js +19 -6
  23. package/dist/engines/dashboards.js.map +1 -1
  24. package/dist/generated/entity_subclasses.d.ts +1504 -418
  25. package/dist/generated/entity_subclasses.d.ts.map +1 -1
  26. package/dist/generated/entity_subclasses.js +2852 -1188
  27. package/dist/generated/entity_subclasses.js.map +1 -1
  28. package/dist/index.d.ts +2 -7
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +2 -7
  31. package/dist/index.js.map +1 -1
  32. package/package.json +5 -5
  33. package/dist/custom/AIAgentExtended.d.ts +0 -13
  34. package/dist/custom/AIAgentExtended.d.ts.map +0 -1
  35. package/dist/custom/AIAgentExtended.js +0 -37
  36. package/dist/custom/AIAgentExtended.js.map +0 -1
  37. package/dist/custom/AIAgentRunExtended.d.ts +0 -32
  38. package/dist/custom/AIAgentRunExtended.d.ts.map +0 -1
  39. package/dist/custom/AIAgentRunExtended.js +0 -136
  40. package/dist/custom/AIAgentRunExtended.js.map +0 -1
  41. package/dist/custom/AIAgentRunStepExtended.d.ts +0 -48
  42. package/dist/custom/AIAgentRunStepExtended.d.ts.map +0 -1
  43. package/dist/custom/AIAgentRunStepExtended.js +0 -149
  44. package/dist/custom/AIAgentRunStepExtended.js.map +0 -1
  45. package/dist/custom/AIModelExtended.d.ts +0 -14
  46. package/dist/custom/AIModelExtended.d.ts.map +0 -1
  47. package/dist/custom/AIModelExtended.js +0 -36
  48. package/dist/custom/AIModelExtended.js.map +0 -1
  49. package/dist/custom/AIPromptCategoryExtended.d.ts +0 -7
  50. package/dist/custom/AIPromptCategoryExtended.d.ts.map +0 -1
  51. package/dist/custom/AIPromptCategoryExtended.js +0 -26
  52. package/dist/custom/AIPromptCategoryExtended.js.map +0 -1
  53. package/dist/custom/AIPromptExtended.d.ts +0 -51
  54. package/dist/custom/AIPromptExtended.d.ts.map +0 -1
  55. package/dist/custom/AIPromptExtended.js +0 -169
  56. package/dist/custom/AIPromptExtended.js.map +0 -1
  57. package/dist/custom/AIPromptRunEntityExtended.d.ts +0 -47
  58. package/dist/custom/AIPromptRunEntityExtended.d.ts.map +0 -1
  59. package/dist/custom/AIPromptRunEntityExtended.js +0 -156
  60. package/dist/custom/AIPromptRunEntityExtended.js.map +0 -1
@@ -1,26 +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.AIPromptCategoryEntityExtended = void 0;
10
- const core_1 = require("@memberjunction/core");
11
- const entity_subclasses_1 = require("../generated/entity_subclasses");
12
- const global_1 = require("@memberjunction/global");
13
- let AIPromptCategoryEntityExtended = class AIPromptCategoryEntityExtended extends entity_subclasses_1.AIPromptCategoryEntity {
14
- constructor() {
15
- super(...arguments);
16
- this._prompts = [];
17
- }
18
- get Prompts() {
19
- return this._prompts;
20
- }
21
- };
22
- exports.AIPromptCategoryEntityExtended = AIPromptCategoryEntityExtended;
23
- exports.AIPromptCategoryEntityExtended = AIPromptCategoryEntityExtended = __decorate([
24
- (0, global_1.RegisterClass)(core_1.BaseEntity, "AI Prompt Categories")
25
- ], AIPromptCategoryEntityExtended);
26
- //# sourceMappingURL=AIPromptCategoryExtended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AIPromptCategoryExtended.js","sourceRoot":"","sources":["../../src/custom/AIPromptCategoryExtended.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+CAAkD;AAClD,sEAAwE;AAExE,mDAAuD;AAGhD,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,0CAAsB;IAAnE;;QACK,aAAQ,GAA6B,EAAE,CAAC;IAIpD,CAAC;IAHG,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ,CAAA;AALY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,sBAAa,EAAC,iBAAU,EAAE,sBAAsB,CAAC;GACrC,8BAA8B,CAK1C"}
@@ -1,51 +0,0 @@
1
- import { CompositeKey, ValidationResult } from "@memberjunction/core";
2
- import { AIPromptEntity, TemplateParamEntity } from "../generated/entity_subclasses";
3
- export declare class AIPromptEntityExtended extends AIPromptEntity {
4
- /**
5
- * private property to hold the template text.
6
- */
7
- protected _originalTemplateText: string;
8
- private _templateText;
9
- /**
10
- * Virtual property to hold the template text.
11
- * This property is used to create or update the Template and Template Contents entity records automatically
12
- * whenever the AIPrompt is saved.
13
- */
14
- get TemplateText(): string;
15
- set TemplateText(value: string);
16
- get TemplateTextDirty(): boolean;
17
- Set(FieldName: string, Value: any): void;
18
- get Dirty(): boolean;
19
- /**
20
- * private property to cache template parameters.
21
- */
22
- private _templateParams;
23
- /**
24
- * Virtual property to get the template parameters for this AI Prompt.
25
- * Returns the cached parameters if available, or an empty array if not loaded yet.
26
- * Call LoadTemplateParams() to ensure params are loaded.
27
- */
28
- get TemplateParams(): TemplateParamEntity[];
29
- /**
30
- * Async getter for template parameters that ensures they are loaded.
31
- * Use this when you need to guarantee the parameters are loaded from the database.
32
- */
33
- GetTemplateParams(): Promise<TemplateParamEntity[]>;
34
- LoadFromData(data: any, replaceOldValues?: boolean): Promise<boolean>;
35
- protected LoadTemplateText(): Promise<boolean>;
36
- /**
37
- * Loads the template parameters for this AI Prompt if it has a TemplateID.
38
- * This method populates the _templateParams array.
39
- */
40
- protected LoadTemplateParams(): Promise<boolean>;
41
- protected LoadRelatedEntities(): Promise<void>;
42
- InnerLoad(CompositeKey: CompositeKey, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
43
- /**
44
- * Fix bug in generated code where new records have a null ID and that matches
45
- * the ResultSelectorPromptID, which causes a validation error. When that code
46
- * gets regenerated we can remove this override.
47
- * @param result
48
- */
49
- ValidateResultSelectorPromptIDNotEqualID(result: ValidationResult): void;
50
- }
51
- //# sourceMappingURL=AIPromptExtended.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AIPromptExtended.d.ts","sourceRoot":"","sources":["../../src/custom/AIPromptExtended.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAuE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACvJ,OAAO,EAAE,cAAc,EAAyB,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAG5G,qBACa,sBAAuB,SAAQ,cAAc;IACtD;;OAEG;IACH,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAM;IAC7C,OAAO,CAAC,aAAa,CAAc;IACnC;;;;OAIG;IACH,IAAW,YAAY,IAAI,MAAM,CAEhC;IACD,IAAW,YAAY,CAAC,KAAK,EAAE,MAAM,EAEpC;IACD,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAEQ,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IASjD,IAAa,KAAK,IAAI,OAAO,CAa5B;IAID;;OAEG;IACH,OAAO,CAAC,eAAe,CAAsC;IAE7D;;;;OAIG;IACH,IAAW,cAAc,IAAI,mBAAmB,EAAE,CAEjD;IAED;;;OAGG;IACU,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAQjD,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;cASpE,gBAAgB;IA2BhC;;;OAGG;cACa,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;cA0BtC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrC,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,yBAAyB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ5G;;;;;OAKG;IACM,wCAAwC,CAAC,MAAM,EAAE,gBAAgB;CAK7E"}
@@ -1,169 +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.AIPromptEntityExtended = void 0;
10
- const core_1 = require("@memberjunction/core");
11
- const entity_subclasses_1 = require("../generated/entity_subclasses");
12
- const global_1 = require("@memberjunction/global");
13
- let AIPromptEntityExtended = class AIPromptEntityExtended extends entity_subclasses_1.AIPromptEntity {
14
- constructor() {
15
- super(...arguments);
16
- /**
17
- * private property to hold the template text.
18
- */
19
- this._originalTemplateText = "";
20
- this._templateText = "";
21
- /**
22
- * private property to cache template parameters.
23
- */
24
- this._templateParams = null;
25
- }
26
- /**
27
- * Virtual property to hold the template text.
28
- * This property is used to create or update the Template and Template Contents entity records automatically
29
- * whenever the AIPrompt is saved.
30
- */
31
- get TemplateText() {
32
- return this._templateText;
33
- }
34
- set TemplateText(value) {
35
- this._templateText = value;
36
- }
37
- get TemplateTextDirty() {
38
- return this._templateText !== this._originalTemplateText;
39
- }
40
- Set(FieldName, Value) {
41
- if (FieldName?.trim().toLowerCase() === "templatetext") {
42
- this.TemplateText = Value;
43
- }
44
- else {
45
- super.Set(FieldName, Value);
46
- }
47
- }
48
- get Dirty() {
49
- const dirty = super.Dirty;
50
- if (dirty) {
51
- // if the base entity is dirty, we don't need to check TemplateTextDirty
52
- return true;
53
- }
54
- else if (this.TemplateTextDirty) {
55
- // if TemplateText is dirty, we consider the entity dirty
56
- return true;
57
- }
58
- return false;
59
- // otherwise, return false
60
- // return super.Dirty || this.TemplateTextDirty;
61
- }
62
- /**
63
- * Virtual property to get the template parameters for this AI Prompt.
64
- * Returns the cached parameters if available, or an empty array if not loaded yet.
65
- * Call LoadTemplateParams() to ensure params are loaded.
66
- */
67
- get TemplateParams() {
68
- return this._templateParams || [];
69
- }
70
- /**
71
- * Async getter for template parameters that ensures they are loaded.
72
- * Use this when you need to guarantee the parameters are loaded from the database.
73
- */
74
- async GetTemplateParams() {
75
- if (this._templateParams === null) {
76
- await this.LoadTemplateParams();
77
- }
78
- return this._templateParams || [];
79
- }
80
- async LoadFromData(data, replaceOldValues) {
81
- // call the base class method to load the data
82
- const result = await super.LoadFromData(data, replaceOldValues);
83
- await this.LoadRelatedEntities();
84
- return result;
85
- }
86
- async LoadTemplateText() {
87
- if (this.TemplateID && !this.TemplateText) {
88
- // need to get the Template Contents for this AI Prompt
89
- const rv = this.RunViewProviderToUse;
90
- const templateContentResult = await rv.RunView({
91
- EntityName: "Template Contents",
92
- ExtraFilter: `TemplateID='${this.TemplateID}'`,
93
- OrderBy: "__mj_CreatedAt ASC", // first one
94
- MaxRows: 1 // should only be one row
95
- }, this.ContextCurrentUser);
96
- if (templateContentResult && templateContentResult.Success) {
97
- if (templateContentResult.Results.length > 0) {
98
- // we found the Template Contents, set the TemplateText property
99
- this.TemplateText = templateContentResult.Results[0].TemplateText || "";
100
- }
101
- this._originalTemplateText = this.TemplateText; // store the original text for comparison later
102
- return true; // we successfully loaded the Template Contents
103
- }
104
- else {
105
- // if we did not find any Template Contents, we can set the TemplateText to an empty string
106
- this.TemplateText = "";
107
- this._originalTemplateText = ""; // reset original text
108
- return false; // should be able to load Template Contents even if not found
109
- }
110
- }
111
- }
112
- /**
113
- * Loads the template parameters for this AI Prompt if it has a TemplateID.
114
- * This method populates the _templateParams array.
115
- */
116
- async LoadTemplateParams() {
117
- if (this.TemplateID) {
118
- const rv = this.RunViewProviderToUse;
119
- const templateParamsResult = await rv.RunView({
120
- EntityName: "Template Params",
121
- ExtraFilter: `TemplateID='${this.TemplateID}'`,
122
- OrderBy: "Name ASC",
123
- ResultType: 'entity_object'
124
- }, this.ContextCurrentUser);
125
- if (templateParamsResult && templateParamsResult.Success) {
126
- this._templateParams = templateParamsResult.Results || [];
127
- return true;
128
- }
129
- else {
130
- // If we failed to load, set to empty array
131
- this._templateParams = [];
132
- return false;
133
- }
134
- }
135
- else {
136
- // No TemplateID, so no params
137
- this._templateParams = [];
138
- return true;
139
- }
140
- }
141
- async LoadRelatedEntities() {
142
- await Promise.all([
143
- this.LoadTemplateText(),
144
- this.LoadTemplateParams()
145
- ]);
146
- }
147
- async InnerLoad(CompositeKey, EntityRelationshipsToLoad) {
148
- const result = await super.InnerLoad(CompositeKey, EntityRelationshipsToLoad);
149
- // Load both template text and params in parallel for better performance
150
- await this.LoadRelatedEntities();
151
- return result;
152
- }
153
- /**
154
- * Fix bug in generated code where new records have a null ID and that matches
155
- * the ResultSelectorPromptID, which causes a validation error. When that code
156
- * gets regenerated we can remove this override.
157
- * @param result
158
- */
159
- ValidateResultSelectorPromptIDNotEqualID(result) {
160
- if (this.ResultSelectorPromptID === this.ID && this.ID /*make sure ID !== null*/) {
161
- result.Errors.push(new core_1.ValidationErrorInfo("ResultSelectorPromptID", "The ResultSelectorPromptID cannot be the same as the ID. A result selector prompt cannot reference itself.", this.ResultSelectorPromptID, core_1.ValidationErrorType.Failure));
162
- }
163
- }
164
- };
165
- exports.AIPromptEntityExtended = AIPromptEntityExtended;
166
- exports.AIPromptEntityExtended = AIPromptEntityExtended = __decorate([
167
- (0, global_1.RegisterClass)(core_1.BaseEntity, "AI Prompts")
168
- ], AIPromptEntityExtended);
169
- //# sourceMappingURL=AIPromptExtended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AIPromptExtended.js","sourceRoot":"","sources":["../../src/custom/AIPromptExtended.ts"],"names":[],"mappings":"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"}
@@ -1,47 +0,0 @@
1
- import { AIPromptRunEntity } from '../generated/entity_subclasses';
2
- import { ChatMessage } from '@memberjunction/ai';
3
- /**
4
- * Extended AIPromptRunEntity class with helper methods for extracting
5
- * conversation messages and data from the stored JSON.
6
- */
7
- export declare class AIPromptRunEntityExtended extends AIPromptRunEntity {
8
- /**
9
- * Parses and extracts all message data from the Messages field.
10
- * This uses the exact logic from the AI Prompt Run form component.
11
- * @returns Object containing chatMessages, inputData, and formattedMessages
12
- */
13
- ParseMessagesData(): {
14
- chatMessages: ChatMessage[];
15
- inputData: any | null;
16
- formattedMessages: string;
17
- formattedData: string;
18
- };
19
- /**
20
- * Extracts just the chat messages from the stored Messages JSON field.
21
- * @returns Array of ChatMessage objects, or empty array if no messages found
22
- */
23
- GetChatMessages(): ChatMessage[];
24
- /**
25
- * Extracts the data context from the stored Messages JSON field.
26
- * @returns The data object if found, or null
27
- */
28
- GetDataContext(): any | null;
29
- /**
30
- * Formats the Messages field for display with proper JSON formatting.
31
- * @returns Formatted JSON string
32
- */
33
- GetFormattedMessages(): string;
34
- /**
35
- * Formats the Result field for display with proper JSON formatting.
36
- * Uses exact logic from AI Prompt Run form.
37
- * @returns Formatted JSON string
38
- */
39
- GetFormattedResult(): string;
40
- /**
41
- * Extracts the system prompt from the chat messages.
42
- * This is useful for re-running prompts with the exact same system prompt.
43
- * @returns The system prompt content if found, or null
44
- */
45
- GetSystemPrompt(): string | null;
46
- }
47
- //# sourceMappingURL=AIPromptRunEntityExtended.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AIPromptRunEntityExtended.d.ts","sourceRoot":"","sources":["../../src/custom/AIPromptRunEntityExtended.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;GAGG;AACH,qBACa,yBAA0B,SAAQ,iBAAiB;IAE5D;;;;OAIG;IACI,iBAAiB,IAAI;QACxB,YAAY,EAAE,WAAW,EAAE,CAAC;QAC5B,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;KACzB;IA0DD;;;OAGG;IACI,eAAe,IAAI,WAAW,EAAE;IAKvC;;;OAGG;IACI,cAAc,IAAI,GAAG,GAAG,IAAI;IAKnC;;;OAGG;IACI,oBAAoB,IAAI,MAAM;IAKrC;;;;OAIG;IACI,kBAAkB,IAAI,MAAM;IAoBnC;;;;OAIG;IACI,eAAe,IAAI,MAAM,GAAG,IAAI;CAuB1C"}
@@ -1,156 +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.AIPromptRunEntityExtended = void 0;
10
- const global_1 = require("@memberjunction/global");
11
- const core_1 = require("@memberjunction/core");
12
- const entity_subclasses_1 = require("../generated/entity_subclasses");
13
- /**
14
- * Extended AIPromptRunEntity class with helper methods for extracting
15
- * conversation messages and data from the stored JSON.
16
- */
17
- let AIPromptRunEntityExtended = class AIPromptRunEntityExtended extends entity_subclasses_1.AIPromptRunEntity {
18
- /**
19
- * Parses and extracts all message data from the Messages field.
20
- * This uses the exact logic from the AI Prompt Run form component.
21
- * @returns Object containing chatMessages, inputData, and formattedMessages
22
- */
23
- ParseMessagesData() {
24
- const parseOptions = {
25
- extractInlineJson: true,
26
- maxDepth: 100,
27
- debug: false
28
- };
29
- let chatMessages = [];
30
- let inputData = null;
31
- let formattedMessages = '';
32
- let formattedData = '';
33
- // Format messages with recursive JSON parsing
34
- if (this.Messages) {
35
- try {
36
- const parsed = JSON.parse(this.Messages);
37
- const recursivelyParsed = (0, global_1.ParseJSONRecursive)(parsed, parseOptions);
38
- formattedMessages = JSON.stringify(recursivelyParsed, null, 2);
39
- // Extract messages array and data
40
- if (recursivelyParsed && typeof recursivelyParsed === 'object') {
41
- // Extract chat messages if they exist
42
- if (recursivelyParsed.messages && Array.isArray(recursivelyParsed.messages)) {
43
- chatMessages = recursivelyParsed.messages;
44
- }
45
- else {
46
- chatMessages = [];
47
- }
48
- // Extract data object if it exists
49
- if (recursivelyParsed.data) {
50
- inputData = recursivelyParsed.data;
51
- formattedData = JSON.stringify(recursivelyParsed.data, null, 2);
52
- }
53
- else {
54
- inputData = null;
55
- formattedData = '';
56
- }
57
- }
58
- }
59
- catch {
60
- formattedMessages = this.Messages;
61
- chatMessages = [];
62
- inputData = null;
63
- formattedData = '';
64
- }
65
- }
66
- else {
67
- formattedMessages = '';
68
- chatMessages = [];
69
- inputData = null;
70
- formattedData = '';
71
- }
72
- return {
73
- chatMessages,
74
- inputData,
75
- formattedMessages,
76
- formattedData
77
- };
78
- }
79
- /**
80
- * Extracts just the chat messages from the stored Messages JSON field.
81
- * @returns Array of ChatMessage objects, or empty array if no messages found
82
- */
83
- GetChatMessages() {
84
- const { chatMessages } = this.ParseMessagesData();
85
- return chatMessages;
86
- }
87
- /**
88
- * Extracts the data context from the stored Messages JSON field.
89
- * @returns The data object if found, or null
90
- */
91
- GetDataContext() {
92
- const { inputData } = this.ParseMessagesData();
93
- return inputData;
94
- }
95
- /**
96
- * Formats the Messages field for display with proper JSON formatting.
97
- * @returns Formatted JSON string
98
- */
99
- GetFormattedMessages() {
100
- const { formattedMessages } = this.ParseMessagesData();
101
- return formattedMessages;
102
- }
103
- /**
104
- * Formats the Result field for display with proper JSON formatting.
105
- * Uses exact logic from AI Prompt Run form.
106
- * @returns Formatted JSON string
107
- */
108
- GetFormattedResult() {
109
- if (!this.Result) {
110
- return '';
111
- }
112
- const parseOptions = {
113
- extractInlineJson: true,
114
- maxDepth: 100,
115
- debug: false
116
- };
117
- try {
118
- const parsed = JSON.parse(this.Result);
119
- const recursivelyParsed = (0, global_1.ParseJSONRecursive)(parsed, parseOptions);
120
- return JSON.stringify(recursivelyParsed, null, 2);
121
- }
122
- catch {
123
- return this.Result;
124
- }
125
- }
126
- /**
127
- * Extracts the system prompt from the chat messages.
128
- * This is useful for re-running prompts with the exact same system prompt.
129
- * @returns The system prompt content if found, or null
130
- */
131
- GetSystemPrompt() {
132
- const messages = this.GetChatMessages();
133
- // Find the first system message
134
- const systemMessage = messages.find(msg => msg.role === 'system');
135
- if (!systemMessage) {
136
- return null;
137
- }
138
- // Handle different content types
139
- if (typeof systemMessage.content === 'string') {
140
- return systemMessage.content;
141
- }
142
- else if (Array.isArray(systemMessage.content)) {
143
- // If content is an array of content blocks, extract text content
144
- const textBlocks = systemMessage.content.filter(block => block.type === 'text');
145
- if (textBlocks.length > 0) {
146
- return textBlocks.map(block => block.content).join('\n');
147
- }
148
- }
149
- return null;
150
- }
151
- };
152
- exports.AIPromptRunEntityExtended = AIPromptRunEntityExtended;
153
- exports.AIPromptRunEntityExtended = AIPromptRunEntityExtended = __decorate([
154
- (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Prompt Runs')
155
- ], AIPromptRunEntityExtended);
156
- //# sourceMappingURL=AIPromptRunEntityExtended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AIPromptRunEntityExtended.js","sourceRoot":"","sources":["../../src/custom/AIPromptRunEntityExtended.ts"],"names":[],"mappings":"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"}