@memberjunction/core-entities-server 5.37.0 → 5.39.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 (38) hide show
  1. package/dist/custom/IntegrationLLMPKCallback.d.ts +30 -0
  2. package/dist/custom/IntegrationLLMPKCallback.d.ts.map +1 -0
  3. package/dist/custom/IntegrationLLMPKCallback.js +123 -0
  4. package/dist/custom/IntegrationLLMPKCallback.js.map +1 -0
  5. package/dist/custom/MJAIPromptRunEntityServer.server.d.ts.map +1 -1
  6. package/dist/custom/MJAIPromptRunEntityServer.server.js +14 -4
  7. package/dist/custom/MJAIPromptRunEntityServer.server.js.map +1 -1
  8. package/dist/custom/MJCompanyIntegrationEntityServer.server.d.ts +94 -0
  9. package/dist/custom/MJCompanyIntegrationEntityServer.server.d.ts.map +1 -0
  10. package/dist/custom/MJCompanyIntegrationEntityServer.server.js +207 -0
  11. package/dist/custom/MJCompanyIntegrationEntityServer.server.js.map +1 -0
  12. package/dist/custom/MJEntityDocumentEntityServer.server.d.ts +69 -0
  13. package/dist/custom/MJEntityDocumentEntityServer.server.d.ts.map +1 -0
  14. package/dist/custom/MJEntityDocumentEntityServer.server.js +245 -0
  15. package/dist/custom/MJEntityDocumentEntityServer.server.js.map +1 -0
  16. package/dist/custom/MJQueryEntityServer.server.d.ts +8 -24
  17. package/dist/custom/MJQueryEntityServer.server.d.ts.map +1 -1
  18. package/dist/custom/MJQueryEntityServer.server.js +22 -109
  19. package/dist/custom/MJQueryEntityServer.server.js.map +1 -1
  20. package/dist/custom/query-extraction/parse.js +1 -1
  21. package/dist/custom/query-extraction/parse.js.map +1 -1
  22. package/dist/custom/query-extraction/pipeline.d.ts.map +1 -1
  23. package/dist/custom/query-extraction/pipeline.js +2 -1
  24. package/dist/custom/query-extraction/pipeline.js.map +1 -1
  25. package/dist/custom/query-extraction/resolve.d.ts +7 -6
  26. package/dist/custom/query-extraction/resolve.d.ts.map +1 -1
  27. package/dist/custom/query-extraction/resolve.js +18 -16
  28. package/dist/custom/query-extraction/resolve.js.map +1 -1
  29. package/dist/custom/query-extraction/sync.d.ts.map +1 -1
  30. package/dist/custom/query-extraction/sync.js +24 -14
  31. package/dist/custom/query-extraction/sync.js.map +1 -1
  32. package/dist/custom/query-extraction/types.d.ts +3 -2
  33. package/dist/custom/query-extraction/types.d.ts.map +1 -1
  34. package/dist/index.d.ts +3 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +3 -0
  37. package/dist/index.js.map +1 -1
  38. package/package.json +24 -22
@@ -0,0 +1,245 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var MJEntityDocumentEntityServer_1;
8
+ import { BaseEntity, BaseEntityResult, LogErrorEx } from "@memberjunction/core";
9
+ import { RegisterClass, uuidv4 } from "@memberjunction/global";
10
+ import { MJEntityDocumentEntityExtended } from "@memberjunction/ai-core-plus";
11
+ /**
12
+ * Server-side subclass for `MJ: Entity Documents` that mirrors the
13
+ * `MJAIPromptEntityServer` template-write pattern: when `TemplateText` (the
14
+ * virtual property on {@link MJEntityDocumentEntityExtended}) is set and the
15
+ * entity is saved, this class creates or updates the linked Template + primary
16
+ * TemplateContent records, then stamps the new `TemplateID` onto the
17
+ * EntityDocument before delegating to `super.Save()`.
18
+ *
19
+ * **Why this exists.** Per `mj-sync`, the `Template` virtual field on the
20
+ * `EntityDocument` view is read-only (a denormalized name from the FK), so a
21
+ * sync push can't write template body via the view. Surfacing a writable
22
+ * `TemplateText` virtual property plus this Save() hook is the same trick the
23
+ * AI Prompt entity uses, and it lets entity-document metadata files reference
24
+ * `@file:templates/foo.njk` exactly like prompts do.
25
+ */
26
+ let MJEntityDocumentEntityServer = class MJEntityDocumentEntityServer extends MJEntityDocumentEntityExtended {
27
+ static { MJEntityDocumentEntityServer_1 = this; }
28
+ static { this._templateContentTypeID = null; }
29
+ /**
30
+ * The TemplateContent.TypeID used for newly-created TemplateContents linked
31
+ * to an EntityDocument. Resolved once per process from the "Text" content
32
+ * type and cached. Settable up front if a host wants to force a different
33
+ * content type.
34
+ */
35
+ static get TemplateContentTypeID() {
36
+ return this._templateContentTypeID;
37
+ }
38
+ static set TemplateContentTypeID(value) {
39
+ this._templateContentTypeID = value;
40
+ }
41
+ static { this._rootTemplateCategoryID = null; }
42
+ /**
43
+ * Root template-category ID used to host auto-created Templates for
44
+ * EntityDocuments. Resolved once per process by name lookup
45
+ * ("MJ: Entity Documents") and created on demand if missing.
46
+ */
47
+ static get RootTemplateCategoryID() {
48
+ return this._rootTemplateCategoryID;
49
+ }
50
+ static set RootTemplateCategoryID(value) {
51
+ this._rootTemplateCategoryID = value;
52
+ }
53
+ /**
54
+ * Resolve the root category for auto-created EntityDocument templates.
55
+ * Checks the in-memory cache first; falls back to a Name lookup; finally
56
+ * creates the category if it doesn't exist yet. Mirrors the AI Prompt
57
+ * pattern so existing operators recognize it.
58
+ */
59
+ async getOrCreateRootTemplateCategoryID() {
60
+ if (MJEntityDocumentEntityServer_1.RootTemplateCategoryID) {
61
+ return MJEntityDocumentEntityServer_1.RootTemplateCategoryID;
62
+ }
63
+ const e = this.EntityInfo;
64
+ const catName = e.Settings.find(s => s.Name.trim().toLowerCase() ===
65
+ "Root Template Category Name")?.Value || "MJ: Entity Documents";
66
+ const rv = this.RunViewProviderToUse;
67
+ const result = await rv.RunView({
68
+ EntityName: "MJ: Template Categories",
69
+ ExtraFilter: `Name='${catName}' AND ParentID IS NULL`,
70
+ OrderBy: "__mj_CreatedAt ASC",
71
+ }, this.ContextCurrentUser);
72
+ if (result && result.Success && result.Results.length > 0) {
73
+ MJEntityDocumentEntityServer_1.RootTemplateCategoryID = result.Results[0].ID;
74
+ return MJEntityDocumentEntityServer_1.RootTemplateCategoryID;
75
+ }
76
+ else {
77
+ return await this.createRootTemplateCategory(catName);
78
+ }
79
+ }
80
+ /** Create the root template category when one doesn't exist yet. */
81
+ async createRootTemplateCategory(name) {
82
+ const md = this.ProviderToUse;
83
+ const rootCategory = await md.GetEntityObject("MJ: Template Categories", this.ContextCurrentUser);
84
+ rootCategory.NewRecord();
85
+ rootCategory.Name = name;
86
+ rootCategory.Description = "Root category for Entity Documents (Auto-Created by Entity Documents Entity)";
87
+ rootCategory.UserID = this.ContextCurrentUser.ID;
88
+ if (await rootCategory.Save()) {
89
+ MJEntityDocumentEntityServer_1.RootTemplateCategoryID = rootCategory.ID;
90
+ return MJEntityDocumentEntityServer_1.RootTemplateCategoryID;
91
+ }
92
+ else {
93
+ throw new Error(`Failed to create root template category with name '${name}'. Latest result: ${rootCategory.LatestResult?.CompleteMessage}`);
94
+ }
95
+ }
96
+ /**
97
+ * Save() override — same shape as `MJAIPromptEntityServer.Save()`:
98
+ *
99
+ * 1. If `TemplateID` is null and `TemplateText` is non-empty, create
100
+ * a new Template + TemplateContent and stamp the EntityDocument's
101
+ * `TemplateID`.
102
+ * 2. If `TemplateID` is set and `TemplateText` has changed, update the
103
+ * linked TemplateContent in place.
104
+ * 3. Then call `super.Save()` and, on success, sync
105
+ * `_originalTemplateText` so subsequent dirty-checks are accurate.
106
+ *
107
+ * Any failure in the template-write path short-circuits the save with a
108
+ * recorded `BaseEntityResult` so callers see the same failure shape they
109
+ * get from a base-entity validation error.
110
+ */
111
+ async Save(options) {
112
+ const md = this.ProviderToUse;
113
+ let success = true;
114
+ if (this.TemplateID === null && this.TemplateText?.trim().length > 0) {
115
+ const template = await this.CreateLinkedTemplateAndTemplateContents(md);
116
+ if (template) {
117
+ this.TemplateID = template.ID;
118
+ }
119
+ else {
120
+ success = false;
121
+ const result = new BaseEntityResult();
122
+ result.Success = false;
123
+ result.Message = "Failed to create linked Template for the Entity Document. Please check the logs for more details.";
124
+ this.RegisterResultHistoryEntry(result);
125
+ }
126
+ }
127
+ else if (this.TemplateID && this.TemplateText?.trim().length > 0 && this.TemplateTextDirty) {
128
+ if (!await this.UpdateLinkedTemplateContents(md)) {
129
+ success = false;
130
+ const result = new BaseEntityResult();
131
+ result.Success = false;
132
+ result.Message = "Failed to update linked Template Contents for the Entity Document. Please check the logs for more details.";
133
+ this.RegisterResultHistoryEntry(result);
134
+ }
135
+ }
136
+ if (!success)
137
+ return false;
138
+ if (await super.Save(options)) {
139
+ // Sync the snapshot so a subsequent save without additional text
140
+ // changes doesn't re-trigger the template-write path.
141
+ this._originalTemplateText = this.TemplateText;
142
+ return true;
143
+ }
144
+ return false;
145
+ }
146
+ /** Update the linked Template's primary TemplateContent in place. */
147
+ async UpdateLinkedTemplateContents(md, tg) {
148
+ try {
149
+ if (!this.TemplateID) {
150
+ throw new Error("Cannot update linked Template Contents because TemplateID is null.");
151
+ }
152
+ const rv = this.RunViewProviderToUse;
153
+ const result = await rv.RunView({
154
+ EntityName: "MJ: Template Contents",
155
+ ExtraFilter: `TemplateID='${this.TemplateID}'`,
156
+ OrderBy: "__mj_CreatedAt ASC",
157
+ ResultType: 'entity_object',
158
+ MaxRows: 1,
159
+ }, this.ContextCurrentUser);
160
+ let tc;
161
+ if (result && result.Success && result.Results.length > 0) {
162
+ tc = result.Results[0];
163
+ }
164
+ else {
165
+ // No content row yet (Template exists but is empty) — create one.
166
+ tc = await md.GetEntityObject("MJ: Template Contents", this.ContextCurrentUser);
167
+ tc.NewRecord();
168
+ tc.TemplateID = this.TemplateID;
169
+ tc.TypeID = await this.getTemplateContentTypeID();
170
+ tc.Priority = 1;
171
+ tc.IsActive = true;
172
+ }
173
+ tc.TemplateText = this.TemplateText;
174
+ if (tg)
175
+ tc.TransactionGroup = tg;
176
+ if (await tc.Save()) {
177
+ return true;
178
+ }
179
+ else {
180
+ throw new Error("Failed to update linked Template Contents for the Entity Document: " + tc.LatestResult?.CompleteMessage);
181
+ }
182
+ }
183
+ catch (e) {
184
+ LogErrorEx({ message: e.message, includeStack: true, additionalArgs: e });
185
+ return false;
186
+ }
187
+ }
188
+ /** Create a new Template + primary TemplateContent linked to this EntityDocument. */
189
+ async CreateLinkedTemplateAndTemplateContents(md) {
190
+ try {
191
+ const t = await md.GetEntityObject("MJ: Templates", this.ContextCurrentUser);
192
+ t.NewRecord();
193
+ // Explicit ID so callers writing migrations can reproduce the value.
194
+ t.ID = uuidv4();
195
+ t.Name = this.Name;
196
+ t.Description = "Template for Entity Document: " + this.Name;
197
+ t.UserID = this.ContextCurrentUser.ID;
198
+ t.CategoryID = await this.getOrCreateRootTemplateCategoryID();
199
+ t.IsActive = true;
200
+ if (!await t.Save()) {
201
+ throw new Error("Failed to save new Template for the Entity Document: " + t.LatestResult?.CompleteMessage);
202
+ }
203
+ const tc = await md.GetEntityObject("MJ: Template Contents", this.ContextCurrentUser);
204
+ tc.NewRecord();
205
+ tc.ID = uuidv4();
206
+ tc.TemplateID = t.ID;
207
+ tc.TypeID = await this.getTemplateContentTypeID();
208
+ tc.TemplateText = this.TemplateText;
209
+ tc.Priority = 1;
210
+ tc.IsActive = true;
211
+ if (await tc.Save()) {
212
+ return t;
213
+ }
214
+ else {
215
+ throw new Error("Failed to save Template Contents for the new Template: " + tc.LatestResult?.CompleteMessage);
216
+ }
217
+ }
218
+ catch (e) {
219
+ LogErrorEx({ message: e.message, includeStack: true, additionalArgs: e });
220
+ return null;
221
+ }
222
+ }
223
+ /** Resolve the "Text" TemplateContentType ID once per process and cache it. */
224
+ async getTemplateContentTypeID() {
225
+ if (MJEntityDocumentEntityServer_1.TemplateContentTypeID) {
226
+ return MJEntityDocumentEntityServer_1.TemplateContentTypeID;
227
+ }
228
+ const rv = this.ProviderToUse;
229
+ const result = await rv.RunView({
230
+ EntityName: "MJ: Template Content Types",
231
+ ExtraFilter: "Name='Text'",
232
+ OrderBy: "__mj_CreatedAt ASC",
233
+ }, this.ContextCurrentUser);
234
+ if (result && result.Success && result.Results.length > 0) {
235
+ MJEntityDocumentEntityServer_1.TemplateContentTypeID = result.Results[0].ID;
236
+ return result.Results[0].ID;
237
+ }
238
+ throw new Error("Failed to find Template Content Type ID (Text) for Entity Documents.");
239
+ }
240
+ };
241
+ MJEntityDocumentEntityServer = MJEntityDocumentEntityServer_1 = __decorate([
242
+ RegisterClass(BaseEntity, "MJ: Entity Documents")
243
+ ], MJEntityDocumentEntityServer);
244
+ export { MJEntityDocumentEntityServer };
245
+ //# sourceMappingURL=MJEntityDocumentEntityServer.server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MJEntityDocumentEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJEntityDocumentEntityServer.server.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,16 @@
1
- import { CompositeKey, EntitySaveOptions, QueryEntityInfo, QueryFieldInfo, QueryParameterInfo, QueryPermissionInfo, SimpleEmbeddingResult } from "@memberjunction/core";
2
- import { MJQueryEntity } from "@memberjunction/core-entities";
3
- export declare class MJQueryEntityServer extends MJQueryEntity {
4
- private _queryEntities;
5
- private _queryFields;
6
- private _queryParameters;
7
- private _queryPermissions;
1
+ import { EntitySaveOptions, SimpleEmbeddingResult } from "@memberjunction/core";
2
+ import { MJQueryEntityExtended } from "@memberjunction/core-entities";
3
+ /**
4
+ * Server-side query entity with embedding generation, SQL extraction pipeline,
5
+ * and dialect auto-conversion. Extends `MJQueryEntityExtended` which provides
6
+ * child-relationship getters and business logic available on both client and server.
7
+ */
8
+ export declare class MJQueryEntityServer extends MJQueryEntityExtended {
8
9
  /** Optional caller-provided parameter sample values. When set, these override
9
10
  * LLM-generated sampleValues during the extraction pipeline. Use this to pass
10
11
  * tested/validated values from the calling system.
11
12
  * Keys are parameter names, values are the tested sample values. */
12
13
  ParameterHints?: Map<string, string>;
13
- get QueryEntities(): QueryEntityInfo[];
14
- get QueryFields(): QueryFieldInfo[];
15
- get QueryParameters(): QueryParameterInfo[];
16
- get QueryPermissions(): QueryPermissionInfo[];
17
14
  /**
18
15
  * Simple proxy to local helper method for embeddings. Needed for BaseEntity sub-classes that want to use embeddings built into BaseEntity
19
16
  */
@@ -25,11 +22,6 @@ export declare class MJQueryEntityServer extends MJQueryEntity {
25
22
  protected GenerateCompositeEmbedding(): Promise<void>;
26
23
  Save(options?: EntitySaveOptions): Promise<boolean>;
27
24
  Delete(options?: EntitySaveOptions): Promise<boolean>;
28
- /**
29
- * Builds a category path string from a CategoryID by walking up the category hierarchy.
30
- * Returns a slash-delimited path like "Ground-Truth-Queries/Sales" or "Ground-Truth-Queries".
31
- */
32
- BuildCategoryPathFromID(categoryID: string): string;
33
25
  /**
34
26
  * Builds the QuerySyncContext from this entity instance for use by the extraction pipeline.
35
27
  */
@@ -60,13 +52,5 @@ export declare class MJQueryEntityServer extends MJQueryEntity {
60
52
  * Removes all QuerySQL records for this query. Called during cleanup operations.
61
53
  */
62
54
  private removeAllQuerySQLRecordsAsync;
63
- Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
64
- InnerLoad(CompositeKey: CompositeKey, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
65
- LoadFromData(data: any, _replaceOldValues?: boolean): Promise<boolean>;
66
- /**
67
- * Refreshes this record's related metadata from the provider, refreshing
68
- * all the way up from the database if refreshFromDB is true, otherwise from cache.
69
- */
70
- RefreshRelatedMetadata(refreshFromDB: boolean): Promise<void>;
71
55
  }
72
56
  //# sourceMappingURL=MJQueryEntityServer.server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MJQueryEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJQueryEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,YAAY,EACZ,iBAAiB,EAIjB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EAExB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAoB,MAAM,+BAA+B,CAAC;AAUhF,qBACa,mBAAoB,SAAQ,aAAa;IAClD,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,iBAAiB,CAA6B;IAEtD;;;yEAGqE;IAC9D,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE5C,IAAW,aAAa,IAAI,eAAe,EAAE,CAE5C;IAED,IAAW,WAAW,IAAI,cAAc,EAAE,CAEzC;IAED,IAAW,eAAe,IAAI,kBAAkB,EAAE,CAEjD;IAED,IAAW,gBAAgB,IAAI,mBAAmB,EAAE,CAEnD;IAID;;OAEG;cACsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI5F;;;OAGG;cACa,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB5C,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IA0CnD,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBpE;;;OAGG;IACI,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAe1D;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;OAGG;YACW,uBAAuB;IAsBrC;;OAEG;YACW,sBAAsB;IAmBpC;;;OAGG;YACW,wBAAwB;IAiCtC;;OAEG;YACW,sBAAsB;IA6BpC;;OAEG;YACW,oBAAoB;IAmClC;;OAEG;YACW,6BAA6B;IA2B5B,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,yBAAyB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAMxE,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,yBAAyB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAO7F,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,iBAAiB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAQrF;;;OAGG;IACU,sBAAsB,CAAC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAc7E"}
1
+ {"version":3,"file":"MJQueryEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJQueryEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,iBAAiB,EAGjB,qBAAqB,EACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAoB,qBAAqB,EAAmC,MAAM,+BAA+B,CAAC;AAUzH;;;;GAIG;AACH,qBACa,mBAAoB,SAAQ,qBAAqB;IAC1D;;;yEAGqE;IAC9D,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAI5C;;OAEG;cACsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI5F;;;OAGG;cACa,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB5C,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAwCnD,MAAM,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBpE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;OAGG;YACW,uBAAuB;IAsBrC;;OAEG;YACW,sBAAsB;IAmBpC;;;OAGG;YACW,wBAAwB;IAiCtC;;OAEG;YACW,sBAAsB;IA4BpC;;OAEG;YACW,oBAAoB;IA4BlC;;OAEG;YACW,6BAA6B;CAgB9C"}
@@ -4,31 +4,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  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;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { BaseEntity, LogError, Metadata, } from "@memberjunction/core";
8
- import { MJQueryEntity } from "@memberjunction/core-entities";
7
+ import { BaseEntity, LogError, } from "@memberjunction/core";
8
+ import { MJQueryEntityExtended, QueryEngine } from "@memberjunction/core-entities";
9
9
  import { RegisterClass, MJGlobal, UUIDsEqual } from "@memberjunction/global";
10
10
  import { EmbedTextLocalHelper } from "./util.js";
11
11
  import { RunExtractionPipeline, CleanupQueryData, ConvertTSQLToPostgreSQL, } from "./query-extraction/index.js";
12
- let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
13
- constructor() {
14
- super(...arguments);
15
- this._queryEntities = [];
16
- this._queryFields = [];
17
- this._queryParameters = [];
18
- this._queryPermissions = [];
19
- }
20
- get QueryEntities() {
21
- return this._queryEntities;
22
- }
23
- get QueryFields() {
24
- return this._queryFields;
25
- }
26
- get QueryParameters() {
27
- return this._queryParameters;
28
- }
29
- get QueryPermissions() {
30
- return this._queryPermissions;
31
- }
12
+ /**
13
+ * Server-side query entity with embedding generation, SQL extraction pipeline,
14
+ * and dialect auto-conversion. Extends `MJQueryEntityExtended` which provides
15
+ * child-relationship getters and business logic available on both client and server.
16
+ */
17
+ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntityExtended {
32
18
  // ─── Embedding Methods ───────────────────────────────────────────────────────
33
19
  /**
34
20
  * Simple proxy to local helper method for embeddings. Needed for BaseEntity sub-classes that want to use embeddings built into BaseEntity
@@ -84,12 +70,10 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
84
70
  if (shouldExtractData && this.SQL && this.SQL.trim().length > 0) {
85
71
  await this.extractAndSyncDataAsync();
86
72
  await this.autoConvertDialectsAsync();
87
- await this.RefreshRelatedMetadata(true);
88
73
  }
89
74
  else if (!this.SQL || this.SQL.trim().length === 0) {
90
75
  this.UsesTemplate = false;
91
76
  await this.cleanupEmptyQueryAsync();
92
- await this.RefreshRelatedMetadata(true);
93
77
  }
94
78
  return true;
95
79
  }
@@ -105,9 +89,7 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
105
89
  if (!deleteResult) {
106
90
  return false;
107
91
  }
108
- // Refresh metadata cache after deletion to prevent stale query references
109
- await this.RefreshRelatedMetadata(true);
110
- return true;
92
+ return deleteResult;
111
93
  }
112
94
  catch (e) {
113
95
  LogError('Failed to delete query:', e);
@@ -116,23 +98,6 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
116
98
  }
117
99
  }
118
100
  // ─── Pipeline Delegation ─────────────────────────────────────────────────────
119
- /**
120
- * Builds a category path string from a CategoryID by walking up the category hierarchy.
121
- * Returns a slash-delimited path like "Ground-Truth-Queries/Sales" or "Ground-Truth-Queries".
122
- */
123
- BuildCategoryPathFromID(categoryID) {
124
- const categories = this.ProviderToUse.QueryCategories;
125
- const segments = [];
126
- let currentID = categoryID;
127
- while (currentID) {
128
- const cat = categories.find(c => c.ID.toLowerCase() === currentID.toLowerCase());
129
- if (!cat)
130
- break;
131
- segments.unshift(cat.Name);
132
- currentID = cat.ParentID;
133
- }
134
- return segments.join('/');
135
- }
136
101
  /**
137
102
  * Builds the QuerySyncContext from this entity instance for use by the extraction pipeline.
138
103
  */
@@ -206,8 +171,8 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
206
171
  if (!this.SQL || this.SQL.trim().length === 0) {
207
172
  return;
208
173
  }
209
- const md = this.ProviderToUse;
210
- const dialects = md.SQLDialects;
174
+ const qe = QueryEngine.Instance;
175
+ const dialects = qe.SQLDialects;
211
176
  const sourceDialect = this.SQLDialectID
212
177
  ? dialects.find(d => UUIDsEqual(d.ID, this.SQLDialectID))
213
178
  : dialects.find(d => d.PlatformKey === 'sqlserver');
@@ -216,7 +181,7 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
216
181
  return;
217
182
  }
218
183
  for (const targetPlatformKey of config.targetPlatforms) {
219
- await this.convertToTargetDialect(sourceDialect, targetPlatformKey, md, dialects);
184
+ await this.convertToTargetDialect(sourceDialect, targetPlatformKey, dialects);
220
185
  }
221
186
  }
222
187
  catch (e) {
@@ -226,7 +191,7 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
226
191
  /**
227
192
  * Converts and persists SQL for a single target dialect. Logs warnings on skip/failure.
228
193
  */
229
- async convertToTargetDialect(sourceDialect, targetPlatformKey, md, dialects) {
194
+ async convertToTargetDialect(sourceDialect, targetPlatformKey, dialects) {
230
195
  try {
231
196
  if (targetPlatformKey === sourceDialect.PlatformKey) {
232
197
  return;
@@ -241,7 +206,7 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
241
206
  return;
242
207
  }
243
208
  const convertedSQL = ConvertTSQLToPostgreSQL(this.SQL);
244
- await this.upsertQuerySQLRecord(targetDialect, convertedSQL, md);
209
+ await this.upsertQuerySQLRecord(targetDialect, convertedSQL);
245
210
  }
246
211
  catch (platformError) {
247
212
  console.warn(`Query "${this.Name}" - Auto-convert to "${targetPlatformKey}" failed:`, platformError);
@@ -250,20 +215,13 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
250
215
  /**
251
216
  * Creates or updates a QuerySQL record for the given dialect.
252
217
  */
253
- async upsertQuerySQLRecord(targetDialect, convertedSQL, md) {
254
- const rv = this.RunViewProviderToUse;
255
- const existingResult = await rv.RunView({
256
- EntityName: 'MJ: Query SQLs',
257
- ExtraFilter: `QueryID='${this.ID}' AND SQLDialectID='${targetDialect.ID}'`,
258
- ResultType: 'entity_object'
259
- }, this.ContextCurrentUser);
260
- if (!existingResult.Success) {
261
- console.warn(`Query "${this.Name}" - Failed to look up existing QuerySQL record: ${existingResult.ErrorMessage}`);
262
- return;
263
- }
218
+ async upsertQuerySQLRecord(targetDialect, convertedSQL) {
219
+ const md = this.ProviderToUse;
220
+ // Look up existing record from QueryEngine cache instead of a RunView call
221
+ const existing = QueryEngine.Instance.QuerySQLs.find(qs => UUIDsEqual(qs.QueryID, this.ID) && UUIDsEqual(qs.SQLDialectID, targetDialect.ID));
264
222
  let record;
265
- if (existingResult.Results?.length > 0) {
266
- record = existingResult.Results[0];
223
+ if (existing) {
224
+ record = existing;
267
225
  }
268
226
  else {
269
227
  record = await md.GetEntityObject('MJ: Query SQLs', this.ContextCurrentUser);
@@ -283,17 +241,8 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
283
241
  try {
284
242
  if (!this.IsSaved)
285
243
  return;
286
- const rv = this.RunViewProviderToUse;
287
- const result = await rv.RunView({
288
- EntityName: 'MJ: Query SQLs',
289
- ExtraFilter: `QueryID='${this.ID}'`,
290
- ResultType: 'entity_object'
291
- }, this.ContextCurrentUser);
292
- if (!result.Success) {
293
- console.warn(`Query "${this.Name}" - Failed to load QuerySQL records for cleanup: ${result.ErrorMessage}`);
294
- return;
295
- }
296
- const deletePromises = (result.Results || []).map(r => r.Delete());
244
+ const records = QueryEngine.Instance.QuerySQLs.filter(qs => UUIDsEqual(qs.QueryID, this.ID));
245
+ const deletePromises = records.map(r => r.Delete());
297
246
  if (deletePromises.length > 0) {
298
247
  await Promise.all(deletePromises);
299
248
  }
@@ -302,42 +251,6 @@ let MJQueryEntityServer = class MJQueryEntityServer extends MJQueryEntity {
302
251
  console.warn(`Query "${this.Name}" - Failed to remove QuerySQL records:`, e);
303
252
  }
304
253
  }
305
- // ─── Load Overrides ──────────────────────────────────────────────────────────
306
- async Load(ID, EntityRelationshipsToLoad) {
307
- const result = await super.Load(ID, EntityRelationshipsToLoad);
308
- await this.RefreshRelatedMetadata(false);
309
- return result;
310
- }
311
- async InnerLoad(CompositeKey, EntityRelationshipsToLoad) {
312
- const result = await super.InnerLoad(CompositeKey, EntityRelationshipsToLoad);
313
- await this.RefreshRelatedMetadata(false);
314
- return result;
315
- }
316
- // eslint-disable-next-line @typescript-eslint/no-explicit-any -- BaseEntity.LoadFromData uses `any` for the data parameter
317
- async LoadFromData(data, _replaceOldValues) {
318
- const result = await super.LoadFromData(data, _replaceOldValues);
319
- await this.RefreshRelatedMetadata(false);
320
- return result;
321
- }
322
- // ─── Metadata Refresh ────────────────────────────────────────────────────────
323
- /**
324
- * Refreshes this record's related metadata from the provider, refreshing
325
- * all the way up from the database if refreshFromDB is true, otherwise from cache.
326
- */
327
- async RefreshRelatedMetadata(refreshFromDB) {
328
- const md = this.ProviderToUse;
329
- if (refreshFromDB) {
330
- const globalMetadataProvider = Metadata.Provider; // global-provider-ok: explicit refresh from canonical global metadata
331
- await globalMetadataProvider.Refresh(md);
332
- if (globalMetadataProvider !== md) {
333
- await md.Refresh();
334
- }
335
- }
336
- this._queryPermissions = md.QueryPermissions.filter(p => UUIDsEqual(p.QueryID, this.ID));
337
- this._queryEntities = md.QueryEntities.filter(e => UUIDsEqual(e.QueryID, this.ID));
338
- this._queryFields = md.QueryFields.filter(f => UUIDsEqual(f.QueryID, this.ID));
339
- this._queryParameters = md.QueryParameters.filter(p => UUIDsEqual(p.QueryID, this.ID));
340
- }
341
254
  };
342
255
  MJQueryEntityServer = __decorate([
343
256
  RegisterClass(BaseEntity, 'MJ: Queries')
@@ -1 +1 @@
1
- {"version":3,"file":"MJQueryEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJQueryEntityServer.server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MJQueryEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJQueryEntityServer.server.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ const defaultDialect = new SQLServerDialect();
12
12
  export function parseQuerySQL(sql, dialect = defaultDialect) {
13
13
  const analysis = SQLParser.Analyze(sql);
14
14
  const deterministicParams = SQLParser.ExtractParameterInfo(sql);
15
- const tableRefs = SQLParser.ExtractTableRefs(sql);
15
+ const tableRefs = SQLParser.ExtractTableRefs(sql, dialect);
16
16
  const selectColumns = SQLParser.ExtractSelectColumns(sql, dialect);
17
17
  return { analysis, deterministicParams, tableRefs, selectColumns };
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/custom/query-extraction/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,yEAAyE;AACzE,MAAM,cAAc,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,UAA4B,cAAc;IACjF,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,mBAAmB,GAAG,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAEnE,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/custom/query-extraction/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,yEAAyE;AACzE,MAAM,cAAc,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,UAA4B,cAAc;IACjF,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,mBAAmB,GAAG,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAEnE,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;AACvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/custom/query-extraction/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAiC,MAAM,SAAS,CAAC;AAe/E;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC3B,YAAY,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAwB1F;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3E"}
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/custom/query-extraction/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAiC,MAAM,SAAS,CAAC;AAgB/E;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC3B,YAAY,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAwB1F;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3E"}
@@ -2,6 +2,7 @@ import { parseQuerySQL } from "./parse.js";
2
2
  import { ResolveCompositionReferences, BuildPassthroughParams, MergePassthroughParams, ExtractEntityMetadataFromSQL, BuildFieldsForSelectStar, BuildFieldsFromSelectColumns, EnrichFieldTypesFromCompositions, EnrichFieldTypesFromEntityMetadata, } from "./resolve.js";
3
3
  import { RunLLMEnrichment, MergeParametersWithLLM } from "./enrich.js";
4
4
  import { SyncParameters, SyncFields, SyncEntities, SyncDependencies, RemoveAllRecords } from "./sync.js";
5
+ import { QueryEngine } from "@memberjunction/core-entities";
5
6
  /**
6
7
  * Runs the full query extraction pipeline:
7
8
  * 1. PARSE — single-pass SQL analysis
@@ -42,7 +43,7 @@ export async function CleanupQueryData(ctx) {
42
43
  // ─── Internal stage helpers ──────────────────────────────────────────────────
43
44
  function resolve(ctx, parseResult) {
44
45
  const md = ctx.metadataProvider;
45
- const allQueries = md.Queries;
46
+ const allQueries = QueryEngine.Instance.Queries;
46
47
  // Composition references
47
48
  const resolvedCompositionRefs = ResolveCompositionReferences(ctx.sql, ctx.queryName, allQueries);
48
49
  // Passthrough parameters