@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.
- package/dist/custom/IntegrationLLMPKCallback.d.ts +30 -0
- package/dist/custom/IntegrationLLMPKCallback.d.ts.map +1 -0
- package/dist/custom/IntegrationLLMPKCallback.js +123 -0
- package/dist/custom/IntegrationLLMPKCallback.js.map +1 -0
- package/dist/custom/MJAIPromptRunEntityServer.server.d.ts.map +1 -1
- package/dist/custom/MJAIPromptRunEntityServer.server.js +14 -4
- package/dist/custom/MJAIPromptRunEntityServer.server.js.map +1 -1
- package/dist/custom/MJCompanyIntegrationEntityServer.server.d.ts +94 -0
- package/dist/custom/MJCompanyIntegrationEntityServer.server.d.ts.map +1 -0
- package/dist/custom/MJCompanyIntegrationEntityServer.server.js +207 -0
- package/dist/custom/MJCompanyIntegrationEntityServer.server.js.map +1 -0
- package/dist/custom/MJEntityDocumentEntityServer.server.d.ts +69 -0
- package/dist/custom/MJEntityDocumentEntityServer.server.d.ts.map +1 -0
- package/dist/custom/MJEntityDocumentEntityServer.server.js +245 -0
- package/dist/custom/MJEntityDocumentEntityServer.server.js.map +1 -0
- package/dist/custom/MJQueryEntityServer.server.d.ts +8 -24
- package/dist/custom/MJQueryEntityServer.server.d.ts.map +1 -1
- package/dist/custom/MJQueryEntityServer.server.js +22 -109
- package/dist/custom/MJQueryEntityServer.server.js.map +1 -1
- package/dist/custom/query-extraction/parse.js +1 -1
- package/dist/custom/query-extraction/parse.js.map +1 -1
- package/dist/custom/query-extraction/pipeline.d.ts.map +1 -1
- package/dist/custom/query-extraction/pipeline.js +2 -1
- package/dist/custom/query-extraction/pipeline.js.map +1 -1
- package/dist/custom/query-extraction/resolve.d.ts +7 -6
- package/dist/custom/query-extraction/resolve.d.ts.map +1 -1
- package/dist/custom/query-extraction/resolve.js +18 -16
- package/dist/custom/query-extraction/resolve.js.map +1 -1
- package/dist/custom/query-extraction/sync.d.ts.map +1 -1
- package/dist/custom/query-extraction/sync.js +24 -14
- package/dist/custom/query-extraction/sync.js.map +1 -1
- package/dist/custom/query-extraction/types.d.ts +3 -2
- package/dist/custom/query-extraction/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- 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":";;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAA0D,UAAU,EAAwB,MAAM,sBAAsB,CAAC;AAC9J,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAG9E;;;;;;;;;;;;;;GAcG;AAEI,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,8BAA8B;;aAC7D,2BAAsB,GAAkB,IAAI,AAAtB,CAAuB;IAC5D;;;;;OAKG;IACI,MAAM,KAAK,qBAAqB;QACnC,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IACM,MAAM,KAAK,qBAAqB,CAAC,KAAoB;QACxD,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;IACxC,CAAC;aAEc,4BAAuB,GAAkB,IAAI,AAAtB,CAAuB;IAC7D;;;;OAIG;IACI,MAAM,KAAK,sBAAsB;QACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACxC,CAAC;IACM,MAAM,KAAK,sBAAsB,CAAC,KAAoB;QACzD,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,iCAAiC;QAC7C,IAAI,8BAA4B,CAAC,sBAAsB,EAAE,CAAC;YACtD,OAAO,8BAA4B,CAAC,sBAAsB,CAAC;QAC/D,CAAC;QAED,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC1B,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;YAC3B,6BAA6B,CAAC,EAAE,KAAK,IAAI,sBAAsB,CAAC;QACrG,MAAM,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAA2B;YACtD,UAAU,EAAE,yBAAyB;YACrC,WAAW,EAAE,SAAS,OAAO,wBAAwB;YACrD,OAAO,EAAE,oBAAoB;SAChC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE5B,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,8BAA4B,CAAC,sBAAsB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,OAAO,8BAA4B,CAAC,sBAAsB,CAAC;QAC/D,CAAC;aAAM,CAAC;YACJ,OAAO,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC;IAED,oEAAoE;IAC1D,KAAK,CAAC,0BAA0B,CAAC,IAAY;QACnD,MAAM,EAAE,GAAG,IAAI,CAAC,aAAyC,CAAC;QAC1D,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,eAAe,CAA2B,yBAAyB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5H,YAAY,CAAC,SAAS,EAAE,CAAC;QACzB,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;QACzB,YAAY,CAAC,WAAW,GAAG,8EAA8E,CAAC;QAC1G,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAEjD,IAAI,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5B,8BAA4B,CAAC,sBAAsB,GAAG,YAAY,CAAC,EAAE,CAAC;YACtE,OAAO,8BAA4B,CAAC,sBAAsB,CAAC;QAC/D,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,sDAAsD,IAAI,qBAAqB,YAAY,CAAC,YAAY,EAAE,eAAe,EAAE,CAAC,CAAC;QACjJ,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACM,KAAK,CAAC,IAAI,CAAC,OAA2B;QAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,aAAyC,CAAC;QAE1D,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uCAAuC,CAAC,EAAE,CAAC,CAAC;YACxE,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACJ,OAAO,GAAG,KAAK,CAAC;gBAChB,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACtC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,OAAO,GAAG,mGAAmG,CAAC;gBACrH,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3F,IAAI,CAAC,MAAM,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/C,OAAO,GAAG,KAAK,CAAC;gBAChB,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACtC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,OAAO,GAAG,4GAA4G,CAAC;gBAC9H,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;QAED,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAE3B,IAAI,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,iEAAiE;YACjE,sDAAsD;YACtD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,YAAY,CAAC;YAC/C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,qEAAqE;IAC3D,KAAK,CAAC,4BAA4B,CAAC,EAAqB,EAAE,EAAyB;QACzF,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;YAC1F,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAA0B;gBACrD,UAAU,EAAE,uBAAuB;gBACnC,WAAW,EAAE,eAAe,IAAI,CAAC,UAAU,GAAG;gBAC9C,OAAO,EAAE,oBAAoB;gBAC7B,UAAU,EAAE,eAAe;gBAC3B,OAAO,EAAE,CAAC;aACb,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAE5B,IAAI,EAAuC,CAAC;YAC5C,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACJ,kEAAkE;gBAClE,EAAE,GAAG,MAAM,EAAE,CAAC,eAAe,CAA0B,uBAAuB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACzG,EAAE,CAAC,SAAS,EAAE,CAAC;gBACf,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBAChC,EAAE,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAClD,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAChB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACpC,IAAI,EAAE;gBAAE,EAAE,CAAC,gBAAgB,GAAG,EAAE,CAAC;YAEjC,IAAI,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,qEAAqE,GAAG,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YAC9H,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1E,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,qFAAqF;IAC3E,KAAK,CAAC,uCAAuC,CAAC,EAAqB;QACzE,IAAI,CAAC;YACD,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,eAAe,CAAmB,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC/F,CAAC,CAAC,SAAS,EAAE,CAAC;YACd,qEAAqE;YACrE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC;YAChB,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACnB,CAAC,CAAC,WAAW,GAAG,gCAAgC,GAAG,IAAI,CAAC,IAAI,CAAC;YAC7D,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACtC,CAAC,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,iCAAiC,EAAE,CAAC;YAC9D,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;YAElB,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,uDAAuD,GAAG,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YAC/G,CAAC;YAED,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,eAAe,CAA0B,uBAAuB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC/G,EAAE,CAAC,SAAS,EAAE,CAAC;YACf,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC;YACjB,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;YACrB,EAAE,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAClD,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACpC,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC;YAChB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YAEnB,IAAI,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClB,OAAO,CAAC,CAAC;YACb,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,yDAAyD,GAAG,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YAClH,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,+EAA+E;IACrE,KAAK,CAAC,wBAAwB;QACpC,IAAI,8BAA4B,CAAC,qBAAqB,EAAE,CAAC;YACrD,OAAO,8BAA4B,CAAC,qBAAqB,CAAC;QAC9D,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,aAAwC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAA8B;YACzD,UAAU,EAAE,4BAA4B;YACxC,WAAW,EAAE,aAAa;YAC1B,OAAO,EAAE,oBAAoB;SAChC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5B,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,8BAA4B,CAAC,qBAAqB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC5F,CAAC;;AA3NQ,4BAA4B;IADxC,aAAa,CAAC,UAAU,EAAE,sBAAsB,CAAC;GACrC,4BAA4B,CA4NxC"}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
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,
|
|
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,
|
|
8
|
-
import {
|
|
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
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
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
|
-
|
|
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
|
|
210
|
-
const dialects =
|
|
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,
|
|
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,
|
|
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
|
|
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
|
|
254
|
-
const
|
|
255
|
-
|
|
256
|
-
|
|
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 (
|
|
266
|
-
record =
|
|
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
|
|
287
|
-
const
|
|
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;
|
|
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;
|
|
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 =
|
|
46
|
+
const allQueries = QueryEngine.Instance.Queries;
|
|
46
47
|
// Composition references
|
|
47
48
|
const resolvedCompositionRefs = ResolveCompositionReferences(ctx.sql, ctx.queryName, allQueries);
|
|
48
49
|
// Passthrough parameters
|