@memberjunction/server 0.9.93 → 0.9.94

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 (47) hide show
  1. package/build.log.json +3 -0
  2. package/dist/generated/generated.js +18854 -0
  3. package/dist/generated/generated.js.map +1 -0
  4. package/dist/generic/PushStatusResolver.js +59 -0
  5. package/dist/generic/PushStatusResolver.js.map +1 -0
  6. package/dist/generic/ResolverBase.js +208 -0
  7. package/dist/generic/ResolverBase.js.map +1 -0
  8. package/dist/generic/RunViewResolver.js +401 -0
  9. package/dist/generic/RunViewResolver.js.map +1 -0
  10. package/dist/index.js +20 -3
  11. package/dist/index.js.map +1 -1
  12. package/dist/resolvers/AskSkipResolver.js +247 -0
  13. package/dist/resolvers/AskSkipResolver.js.map +1 -0
  14. package/dist/resolvers/ColorResolver.js +94 -0
  15. package/dist/resolvers/ColorResolver.js.map +1 -0
  16. package/dist/resolvers/DatasetResolver.js +168 -0
  17. package/dist/resolvers/DatasetResolver.js.map +1 -0
  18. package/dist/resolvers/EntityRecordNameResolver.js +111 -0
  19. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -0
  20. package/dist/resolvers/EntityResolver.js +60 -0
  21. package/dist/resolvers/EntityResolver.js.map +1 -0
  22. package/dist/resolvers/MergeRecordsResolver.js +256 -0
  23. package/dist/resolvers/MergeRecordsResolver.js.map +1 -0
  24. package/dist/resolvers/ReportResolver.js +74 -0
  25. package/dist/resolvers/ReportResolver.js.map +1 -0
  26. package/dist/resolvers/UserFavoriteResolver.js +185 -0
  27. package/dist/resolvers/UserFavoriteResolver.js.map +1 -0
  28. package/dist/resolvers/UserResolver.js +70 -0
  29. package/dist/resolvers/UserResolver.js.map +1 -0
  30. package/dist/resolvers/UserViewResolver.js +102 -0
  31. package/dist/resolvers/UserViewResolver.js.map +1 -0
  32. package/package.json +3 -3
  33. package/src/generated/generated.ts +13928 -0
  34. package/src/generic/PushStatusResolver.ts +41 -0
  35. package/src/generic/ResolverBase.ts +285 -0
  36. package/src/generic/RunViewResolver.ts +350 -0
  37. package/src/index.ts +31 -3
  38. package/src/resolvers/AskSkipResolver.ts +237 -0
  39. package/src/resolvers/ColorResolver.ts +72 -0
  40. package/src/resolvers/DatasetResolver.ts +114 -0
  41. package/src/resolvers/EntityRecordNameResolver.ts +73 -0
  42. package/src/resolvers/EntityResolver.ts +34 -0
  43. package/src/resolvers/MergeRecordsResolver.ts +178 -0
  44. package/src/resolvers/ReportResolver.ts +56 -0
  45. package/src/resolvers/UserFavoriteResolver.ts +123 -0
  46. package/src/resolvers/UserResolver.ts +29 -0
  47. package/src/resolvers/UserViewResolver.ts +63 -0
@@ -0,0 +1,247 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ var AskSkipResolver_1;
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.AskSkipResolver = exports.AskSkipResultType = void 0;
20
+ const type_graphql_1 = require("type-graphql");
21
+ const ai_1 = require("@memberjunction/ai");
22
+ const core_1 = require("@memberjunction/core");
23
+ const sqlserver_dataprovider_1 = require("@memberjunction/sqlserver-dataprovider");
24
+ const axios_1 = __importDefault(require("axios"));
25
+ const PushStatusResolver_1 = require("../generic/PushStatusResolver");
26
+ let AskSkipResultType = class AskSkipResultType {
27
+ };
28
+ __decorate([
29
+ (0, type_graphql_1.Field)(() => Boolean),
30
+ __metadata("design:type", Boolean)
31
+ ], AskSkipResultType.prototype, "Success", void 0);
32
+ __decorate([
33
+ (0, type_graphql_1.Field)(() => String),
34
+ __metadata("design:type", String)
35
+ ], AskSkipResultType.prototype, "Status", void 0);
36
+ __decorate([
37
+ (0, type_graphql_1.Field)(() => String),
38
+ __metadata("design:type", String)
39
+ ], AskSkipResultType.prototype, "Result", void 0);
40
+ __decorate([
41
+ (0, type_graphql_1.Field)(() => type_graphql_1.Int),
42
+ __metadata("design:type", Number)
43
+ ], AskSkipResultType.prototype, "ConversationId", void 0);
44
+ __decorate([
45
+ (0, type_graphql_1.Field)(() => type_graphql_1.Int),
46
+ __metadata("design:type", Number)
47
+ ], AskSkipResultType.prototype, "UserMessageConversationDetailId", void 0);
48
+ __decorate([
49
+ (0, type_graphql_1.Field)(() => type_graphql_1.Int),
50
+ __metadata("design:type", Number)
51
+ ], AskSkipResultType.prototype, "AIMessageConversationDetailId", void 0);
52
+ AskSkipResultType = __decorate([
53
+ (0, type_graphql_1.ObjectType)()
54
+ ], AskSkipResultType);
55
+ exports.AskSkipResultType = AskSkipResultType;
56
+ let AskSkipResolver = AskSkipResolver_1 = class AskSkipResolver {
57
+ async ExecuteAskSkipQuery(UserQuestion, ConversationId, { dataSource, userPayload }, pubSub) {
58
+ try {
59
+ const md = new core_1.Metadata();
60
+ const user = sqlserver_dataprovider_1.UserCache.Instance.Users.find((u) => u.Email === userPayload.email);
61
+ if (!user)
62
+ throw new Error(`User ${userPayload.email} not found in UserCache`);
63
+ const convoEntity = await md.GetEntityObject('Conversations', user);
64
+ if (!ConversationId || ConversationId <= 0) {
65
+ convoEntity.NewRecord();
66
+ if (user) {
67
+ convoEntity.UserID = user.ID;
68
+ convoEntity.Name = AskSkipResolver_1._defaultNewChatName;
69
+ if (await convoEntity.Save())
70
+ ConversationId = convoEntity.ID;
71
+ else
72
+ throw new Error(`Creating a new conversation failed`);
73
+ }
74
+ else
75
+ throw new Error(`User ${userPayload.email} not found in UserCache`);
76
+ }
77
+ else {
78
+ await convoEntity.Load(ConversationId);
79
+ }
80
+ const convoDetailEntity = await md.GetEntityObject('Conversation Details', user);
81
+ convoDetailEntity.NewRecord();
82
+ convoDetailEntity.ConversationID = ConversationId;
83
+ convoDetailEntity.Message = UserQuestion;
84
+ convoDetailEntity.Role = 'User';
85
+ convoDetailEntity.Set('Sequence', 1);
86
+ await convoDetailEntity.Save();
87
+ const OrganizationId = process.env.BOT_SCHEMA_ORGANIZATION_ID;
88
+ const input = { userInput: UserQuestion, conversationID: ConversationId, organizationID: OrganizationId };
89
+ const url = process.env.BOT_EXTERNAL_API_URL;
90
+ pubSub.publish(PushStatusResolver_1.PUSH_STATUS_UPDATES_TOPIC, {
91
+ message: JSON.stringify({
92
+ type: 'AskSkip',
93
+ status: 'OK',
94
+ message: 'Sure, I can help with that, just give me a second and I will think about the best way to complete your request.',
95
+ }),
96
+ sessionId: userPayload.sessionId,
97
+ });
98
+ const response = await (0, axios_1.default)({
99
+ method: 'post',
100
+ url: process.env.BOT_EXTERNAL_API_URL,
101
+ data: input,
102
+ });
103
+ if (response.status === 200) {
104
+ pubSub.publish(PushStatusResolver_1.PUSH_STATUS_UPDATES_TOPIC, {
105
+ message: JSON.stringify({
106
+ type: 'AskSkip',
107
+ status: 'OK',
108
+ message: 'I created the report structure, now I will get the data for you and analyze the results... Back to ya soon!',
109
+ }),
110
+ sessionId: userPayload.sessionId,
111
+ });
112
+ const sql = response.data.params.sql;
113
+ const [{ result, analysis }, explanation] = await Promise.all([
114
+ this.getSkipDataAndAnalysis(dataSource, UserQuestion, sql),
115
+ this.getReportExplanation(UserQuestion, sql),
116
+ ]);
117
+ const sTitle = response.data.params.reportTitle || response.data.params.chartTitle;
118
+ const sResult = JSON.stringify({
119
+ SQLResults: {
120
+ results: result,
121
+ sql: sql,
122
+ columns: response.data.params.columns,
123
+ },
124
+ UserMessage: '',
125
+ ReportExplanation: explanation,
126
+ Analysis: analysis,
127
+ ReportTitle: sTitle,
128
+ DisplayType: response.data.type,
129
+ DrillDownView: response.data.params.drillDownView,
130
+ DrillDownBaseViewField: response.data.params.drillDownBaseViewField,
131
+ DrillDownReportValueField: response.data.params.drillDownReportValueField,
132
+ ChartOptions: {
133
+ xAxis: response.data.params.xAxis,
134
+ xLabel: response.data.params.xLabel,
135
+ yAxis: response.data.params.yAxis,
136
+ yLabel: response.data.params.yLabel,
137
+ color: response.data.params.color,
138
+ yFormat: response.data.params.yFormat,
139
+ },
140
+ });
141
+ const convoDetailEntityAI = await md.GetEntityObject('Conversation Details', user);
142
+ convoDetailEntityAI.NewRecord();
143
+ convoDetailEntityAI.ConversationID = ConversationId;
144
+ convoDetailEntityAI.Message = sResult;
145
+ convoDetailEntityAI.Role = 'AI';
146
+ convoDetailEntityAI.Set('Sequence', 2);
147
+ await convoDetailEntityAI.Save();
148
+ if (convoEntity.Name === AskSkipResolver_1._defaultNewChatName) {
149
+ convoEntity.Name = response.data.params.reportTitle || response.data.params.chartTitle || AskSkipResolver_1._defaultNewChatName;
150
+ await convoEntity.Save();
151
+ }
152
+ const userNotification = await md.GetEntityObject('User Notifications', user);
153
+ userNotification.NewRecord();
154
+ userNotification.UserID = user.ID;
155
+ userNotification.Title = 'Report Created: ' + sTitle;
156
+ userNotification.Message = `Good news! Skip finished creating a report for you, click on this notification to jump back into the conversation.`;
157
+ userNotification.Unread = true;
158
+ userNotification.ResourceConfiguration = JSON.stringify({
159
+ type: 'askskip',
160
+ conversationId: ConversationId,
161
+ });
162
+ await userNotification.Save();
163
+ pubSub.publish(PushStatusResolver_1.PUSH_STATUS_UPDATES_TOPIC, {
164
+ message: JSON.stringify({
165
+ type: 'UserNotifications',
166
+ status: 'OK',
167
+ details: {
168
+ action: 'create',
169
+ recordId: userNotification.ID,
170
+ },
171
+ }),
172
+ sessionId: userPayload.sessionId,
173
+ });
174
+ return {
175
+ Success: true,
176
+ Status: 'OK',
177
+ ConversationId: ConversationId,
178
+ UserMessageConversationDetailId: convoDetailEntity.ID,
179
+ AIMessageConversationDetailId: convoDetailEntityAI.ID,
180
+ Result: sResult,
181
+ };
182
+ }
183
+ else
184
+ return { Success: false, Status: 'Error', Result: `User Question ${UserQuestion} didn't work!` };
185
+ }
186
+ catch (error) {
187
+ console.error(`Error occurred: ${error}`);
188
+ if (error.response) {
189
+ console.log(error.response.data);
190
+ console.log(error.response.status);
191
+ console.log(error.response.headers);
192
+ }
193
+ else if (error.request) {
194
+ console.log(error.request);
195
+ }
196
+ else {
197
+ console.log('Error', error.message);
198
+ }
199
+ console.log(error.config);
200
+ return {
201
+ Success: false,
202
+ Status: 'Error',
203
+ Result: `User Question ${UserQuestion} didn't work!`,
204
+ ConversationId: ConversationId,
205
+ UserMessageConversationDetailId: 0,
206
+ AIMessageConversationDetailId: 0,
207
+ };
208
+ }
209
+ }
210
+ async getSkipDataAndAnalysis(dataSource, userQuestion, sql) {
211
+ const result = await dataSource.query(sql);
212
+ const stringResult = JSON.stringify(result);
213
+ const maxStringLength = 2000;
214
+ const avgRowStringLength = stringResult.length / result.length;
215
+ let sampleDataJSON = stringResult;
216
+ if (stringResult.length > maxStringLength) {
217
+ const rowsToUse = result.length / (maxStringLength / avgRowStringLength);
218
+ const subsetResult = result.slice(0, rowsToUse);
219
+ sampleDataJSON = JSON.stringify(subsetResult);
220
+ }
221
+ const analysis = await this.getAnalysis(userQuestion, sql, sampleDataJSON);
222
+ return { result, analysis };
223
+ }
224
+ async getAnalysis(userQuestion, sql, sampleDataJSON) {
225
+ return await (0, ai_1.SkipAnalyzeData)(userQuestion, sql, sampleDataJSON);
226
+ }
227
+ async getReportExplanation(userQuestion, sql) {
228
+ return await (0, ai_1.SkipExplainQuery)(userQuestion, sql);
229
+ }
230
+ };
231
+ AskSkipResolver._defaultNewChatName = 'New Chat';
232
+ __decorate([
233
+ (0, type_graphql_1.Query)(() => AskSkipResultType),
234
+ __param(0, (0, type_graphql_1.Arg)('UserQuestion', () => String)),
235
+ __param(1, (0, type_graphql_1.Arg)('ConversationId', () => type_graphql_1.Int)),
236
+ __param(2, (0, type_graphql_1.Ctx)()),
237
+ __param(3, (0, type_graphql_1.PubSub)()),
238
+ __metadata("design:type", Function),
239
+ __metadata("design:paramtypes", [String, Number, Object, type_graphql_1.PubSubEngine]),
240
+ __metadata("design:returntype", Promise)
241
+ ], AskSkipResolver.prototype, "ExecuteAskSkipQuery", null);
242
+ AskSkipResolver = AskSkipResolver_1 = __decorate([
243
+ (0, type_graphql_1.Resolver)(AskSkipResultType)
244
+ ], AskSkipResolver);
245
+ exports.AskSkipResolver = AskSkipResolver;
246
+ exports.default = AskSkipResolver;
247
+ //# sourceMappingURL=AskSkipResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AskSkipResolver.js","sourceRoot":"","sources":["../../src/resolvers/AskSkipResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ColorResolver = exports.ColorNotification = exports.Color = void 0;
16
+ const server_1 = require("@memberjunction/server");
17
+ let Color = class Color {
18
+ };
19
+ __decorate([
20
+ (0, server_1.Field)(() => server_1.Int),
21
+ (0, server_1.Public)(),
22
+ __metadata("design:type", Number)
23
+ ], Color.prototype, "ID", void 0);
24
+ __decorate([
25
+ (0, server_1.Field)(() => String),
26
+ (0, server_1.Public)(),
27
+ __metadata("design:type", String)
28
+ ], Color.prototype, "name", void 0);
29
+ __decorate([
30
+ (0, server_1.Field)(() => String),
31
+ (0, server_1.Public)(),
32
+ __metadata("design:type", String)
33
+ ], Color.prototype, "createdZ", void 0);
34
+ Color = __decorate([
35
+ (0, server_1.ObjectType)()
36
+ ], Color);
37
+ exports.Color = Color;
38
+ let ColorNotification = class ColorNotification {
39
+ };
40
+ __decorate([
41
+ (0, server_1.Public)(),
42
+ (0, server_1.Field)(() => String, { nullable: true }),
43
+ __metadata("design:type", String)
44
+ ], ColorNotification.prototype, "message", void 0);
45
+ __decorate([
46
+ (0, server_1.Public)(),
47
+ (0, server_1.Field)((_type) => Date),
48
+ __metadata("design:type", Date)
49
+ ], ColorNotification.prototype, "date", void 0);
50
+ ColorNotification = __decorate([
51
+ (0, server_1.ObjectType)()
52
+ ], ColorNotification);
53
+ exports.ColorNotification = ColorNotification;
54
+ let ColorResolver = class ColorResolver {
55
+ colorSubscription({ message }) {
56
+ return { message, date: new Date() };
57
+ }
58
+ async colors(_ctx, pubSub) {
59
+ const createdZ = new Date().toISOString();
60
+ pubSub.publish('COLOR', {
61
+ message: 'Colors were requested!',
62
+ });
63
+ return [
64
+ { ID: 1, name: 'Red', createdZ },
65
+ { ID: 2, name: 'Orange', createdZ },
66
+ { ID: 3, name: 'Yellow', createdZ },
67
+ { ID: 4, name: 'Green', createdZ },
68
+ { ID: 5, name: 'Blue', createdZ },
69
+ { ID: 6, name: 'Purple', createdZ },
70
+ ];
71
+ }
72
+ };
73
+ __decorate([
74
+ (0, server_1.Subscription)(() => ColorNotification, { topics: 'COLOR' }),
75
+ (0, server_1.Public)(),
76
+ __param(0, (0, server_1.Root)()),
77
+ __metadata("design:type", Function),
78
+ __metadata("design:paramtypes", [Object]),
79
+ __metadata("design:returntype", ColorNotification)
80
+ ], ColorResolver.prototype, "colorSubscription", null);
81
+ __decorate([
82
+ (0, server_1.Query)(() => [Color]),
83
+ (0, server_1.Public)(),
84
+ __param(0, (0, server_1.Ctx)()),
85
+ __param(1, (0, server_1.PubSub)()),
86
+ __metadata("design:type", Function),
87
+ __metadata("design:paramtypes", [Object, server_1.PubSubEngine]),
88
+ __metadata("design:returntype", Promise)
89
+ ], ColorResolver.prototype, "colors", null);
90
+ ColorResolver = __decorate([
91
+ (0, server_1.Resolver)(Color)
92
+ ], ColorResolver);
93
+ exports.ColorResolver = ColorResolver;
94
+ //# sourceMappingURL=ColorResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorResolver.js","sourceRoot":"","sources":["../../src/resolvers/ColorResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mDAagC;AAGzB,IAAM,KAAK,GAAX,MAAM,KAAK;CAYjB,CAAA;AAXC;IAAC,IAAA,cAAK,EAAC,GAAG,EAAE,CAAC,YAAG,CAAC;IAChB,IAAA,eAAM,GAAE;;iCACE;AAEX;IAAC,IAAA,cAAK,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IACnB,IAAA,eAAM,GAAE;;mCACI;AAEb;IAAC,IAAA,cAAK,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IACnB,IAAA,eAAM,GAAE;;uCACQ;AAXN,KAAK;IADjB,IAAA,mBAAU,GAAE;GACA,KAAK,CAYjB;AAZY,sBAAK;AAeX,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;CAQ7B,CAAA;AAPC;IAAC,IAAA,eAAM,GAAE;IACR,IAAA,cAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACvB;AAEjB;IAAC,IAAA,eAAM,GAAE;IACR,IAAA,cAAK,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC;8BAChB,IAAI;+CAAC;AAPD,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;GACA,iBAAiB,CAQ7B;AARY,8CAAiB;AAevB,IAAM,aAAa,GAAnB,MAAM,aAAa;IAGxB,iBAAiB,CAAS,EAAE,OAAO,EAA4B;QAC7D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;IACvC,CAAC;IAIK,AAAN,KAAK,CAAC,MAAM,CAAQ,IAAgB,EAAY,MAAoB;QAClE,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE;YACtB,OAAO,EAAE,wBAAwB;SAClC,CAAC,CAAC;QAEH,OAAO;YACL,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;YAChC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACnC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACnC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE;YAClC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE;YACjC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE;SACpC,CAAC;IACJ,CAAC;CACF,CAAA;AAxBC;IAAC,IAAA,qBAAY,EAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC1D,IAAA,eAAM,GAAE;IACU,WAAA,IAAA,aAAI,GAAE,CAAA;;;oCAAyC,iBAAiB;sDAElF;AAIK;IAFL,IAAA,cAAK,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IACpB,IAAA,eAAM,GAAE;IACK,WAAA,IAAA,YAAG,GAAE,CAAA;IAAoB,WAAA,IAAA,eAAM,GAAE,CAAA;;6CAAS,qBAAY;;2CAenE;AAxBU,aAAa;IADzB,IAAA,iBAAQ,EAAC,KAAK,CAAC;GACH,aAAa,CAyBzB;AAzBY,sCAAa"}
@@ -0,0 +1,168 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DatasetStatusResolver = exports.DatasetStatusResultType = exports.DatasetResolver = exports.DatasetItemFilterTypeGQL = exports.DatasetResultType = void 0;
16
+ const type_graphql_1 = require("type-graphql");
17
+ const core_1 = require("@memberjunction/core");
18
+ let DatasetResultType = class DatasetResultType {
19
+ };
20
+ __decorate([
21
+ (0, type_graphql_1.Field)(() => type_graphql_1.Int),
22
+ __metadata("design:type", Number)
23
+ ], DatasetResultType.prototype, "DatasetID", void 0);
24
+ __decorate([
25
+ (0, type_graphql_1.Field)(() => String),
26
+ __metadata("design:type", String)
27
+ ], DatasetResultType.prototype, "DatasetName", void 0);
28
+ __decorate([
29
+ (0, type_graphql_1.Field)(() => Boolean),
30
+ __metadata("design:type", Boolean)
31
+ ], DatasetResultType.prototype, "Success", void 0);
32
+ __decorate([
33
+ (0, type_graphql_1.Field)(() => String),
34
+ __metadata("design:type", String)
35
+ ], DatasetResultType.prototype, "Status", void 0);
36
+ __decorate([
37
+ (0, type_graphql_1.Field)(() => Date),
38
+ __metadata("design:type", Date)
39
+ ], DatasetResultType.prototype, "LatestUpdateDate", void 0);
40
+ __decorate([
41
+ (0, type_graphql_1.Field)(() => String),
42
+ __metadata("design:type", String)
43
+ ], DatasetResultType.prototype, "Results", void 0);
44
+ DatasetResultType = __decorate([
45
+ (0, type_graphql_1.ObjectType)()
46
+ ], DatasetResultType);
47
+ exports.DatasetResultType = DatasetResultType;
48
+ let DatasetItemFilterTypeGQL = class DatasetItemFilterTypeGQL {
49
+ };
50
+ __decorate([
51
+ (0, type_graphql_1.Field)(() => String),
52
+ __metadata("design:type", String)
53
+ ], DatasetItemFilterTypeGQL.prototype, "ItemCode", void 0);
54
+ __decorate([
55
+ (0, type_graphql_1.Field)(() => String),
56
+ __metadata("design:type", String)
57
+ ], DatasetItemFilterTypeGQL.prototype, "Filter", void 0);
58
+ DatasetItemFilterTypeGQL = __decorate([
59
+ (0, type_graphql_1.InputType)()
60
+ ], DatasetItemFilterTypeGQL);
61
+ exports.DatasetItemFilterTypeGQL = DatasetItemFilterTypeGQL;
62
+ let DatasetResolver = class DatasetResolver {
63
+ async GetDatasetByName(DatasetName, {}, ItemFilters) {
64
+ try {
65
+ const md = new core_1.Metadata();
66
+ const result = await md.GetDatasetByName(DatasetName, ItemFilters);
67
+ if (result) {
68
+ return {
69
+ DatasetID: result.DatasetID,
70
+ DatasetName: result.DatasetName,
71
+ Success: result.Success,
72
+ Status: result.Status,
73
+ LatestUpdateDate: result.LatestUpdateDate,
74
+ Results: JSON.stringify(result.Results),
75
+ };
76
+ }
77
+ else {
78
+ throw new Error('Error retrieving Dataset: ' + DatasetName);
79
+ }
80
+ }
81
+ catch (err) {
82
+ (0, core_1.LogError)(err);
83
+ throw new Error('Error retrieving Dataset: ' + DatasetName + '\n\n' + err);
84
+ }
85
+ }
86
+ };
87
+ __decorate([
88
+ (0, type_graphql_1.Query)(() => DatasetResultType),
89
+ __param(0, (0, type_graphql_1.Arg)('DatasetName', () => String)),
90
+ __param(1, (0, type_graphql_1.Ctx)()),
91
+ __param(2, (0, type_graphql_1.Arg)('ItemFilters', () => [DatasetItemFilterTypeGQL], { nullable: 'itemsAndList' })),
92
+ __metadata("design:type", Function),
93
+ __metadata("design:paramtypes", [String, Object, Array]),
94
+ __metadata("design:returntype", Promise)
95
+ ], DatasetResolver.prototype, "GetDatasetByName", null);
96
+ DatasetResolver = __decorate([
97
+ (0, type_graphql_1.Resolver)(DatasetResultType)
98
+ ], DatasetResolver);
99
+ exports.DatasetResolver = DatasetResolver;
100
+ let DatasetStatusResultType = class DatasetStatusResultType {
101
+ };
102
+ __decorate([
103
+ (0, type_graphql_1.Field)(() => type_graphql_1.Int),
104
+ __metadata("design:type", Number)
105
+ ], DatasetStatusResultType.prototype, "DatasetID", void 0);
106
+ __decorate([
107
+ (0, type_graphql_1.Field)(() => String),
108
+ __metadata("design:type", String)
109
+ ], DatasetStatusResultType.prototype, "DatasetName", void 0);
110
+ __decorate([
111
+ (0, type_graphql_1.Field)(() => Boolean),
112
+ __metadata("design:type", Boolean)
113
+ ], DatasetStatusResultType.prototype, "Success", void 0);
114
+ __decorate([
115
+ (0, type_graphql_1.Field)(() => String),
116
+ __metadata("design:type", String)
117
+ ], DatasetStatusResultType.prototype, "Status", void 0);
118
+ __decorate([
119
+ (0, type_graphql_1.Field)(() => Date),
120
+ __metadata("design:type", Date)
121
+ ], DatasetStatusResultType.prototype, "LatestUpdateDate", void 0);
122
+ __decorate([
123
+ (0, type_graphql_1.Field)(() => String),
124
+ __metadata("design:type", String)
125
+ ], DatasetStatusResultType.prototype, "EntityUpdateDates", void 0);
126
+ DatasetStatusResultType = __decorate([
127
+ (0, type_graphql_1.ObjectType)()
128
+ ], DatasetStatusResultType);
129
+ exports.DatasetStatusResultType = DatasetStatusResultType;
130
+ let DatasetStatusResolver = class DatasetStatusResolver {
131
+ async GetDatasetStatusByName(DatasetName, {}, ItemFilters) {
132
+ try {
133
+ const md = new core_1.Metadata();
134
+ const result = await md.GetDatasetStatusByName(DatasetName, ItemFilters);
135
+ if (result) {
136
+ return {
137
+ DatasetID: result.DatasetID,
138
+ DatasetName: result.DatasetName,
139
+ Success: result.Success,
140
+ Status: result.Status,
141
+ LatestUpdateDate: result.LatestUpdateDate,
142
+ EntityUpdateDates: JSON.stringify(result.EntityUpdateDates),
143
+ };
144
+ }
145
+ else {
146
+ throw new Error('Error retrieving Dataset Status: ' + DatasetName);
147
+ }
148
+ }
149
+ catch (err) {
150
+ (0, core_1.LogError)(err);
151
+ throw new Error('Error retrieving Dataset Status: ' + DatasetName + '\n\n' + err);
152
+ }
153
+ }
154
+ };
155
+ __decorate([
156
+ (0, type_graphql_1.Query)(() => DatasetStatusResultType),
157
+ __param(0, (0, type_graphql_1.Arg)('DatasetName', () => String)),
158
+ __param(1, (0, type_graphql_1.Ctx)()),
159
+ __param(2, (0, type_graphql_1.Arg)('ItemFilters', () => [DatasetItemFilterTypeGQL], { nullable: 'itemsAndList' })),
160
+ __metadata("design:type", Function),
161
+ __metadata("design:paramtypes", [String, Object, Array]),
162
+ __metadata("design:returntype", Promise)
163
+ ], DatasetStatusResolver.prototype, "GetDatasetStatusByName", null);
164
+ DatasetStatusResolver = __decorate([
165
+ (0, type_graphql_1.Resolver)(DatasetStatusResultType)
166
+ ], DatasetStatusResolver);
167
+ exports.DatasetStatusResolver = DatasetStatusResolver;
168
+ //# sourceMappingURL=DatasetResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatasetResolver.js","sourceRoot":"","sources":["../../src/resolvers/DatasetResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.EntityRecordNameResolver = exports.EntityRecordNameResult = exports.EntityRecordNameInput = void 0;
16
+ const core_1 = require("@memberjunction/core");
17
+ const type_graphql_1 = require("type-graphql");
18
+ let EntityRecordNameInput = class EntityRecordNameInput {
19
+ };
20
+ __decorate([
21
+ (0, type_graphql_1.Field)(() => String),
22
+ __metadata("design:type", String)
23
+ ], EntityRecordNameInput.prototype, "EntityName", void 0);
24
+ __decorate([
25
+ (0, type_graphql_1.Field)(() => String),
26
+ __metadata("design:type", String)
27
+ ], EntityRecordNameInput.prototype, "RecordID", void 0);
28
+ EntityRecordNameInput = __decorate([
29
+ (0, type_graphql_1.InputType)()
30
+ ], EntityRecordNameInput);
31
+ exports.EntityRecordNameInput = EntityRecordNameInput;
32
+ let EntityRecordNameResult = class EntityRecordNameResult {
33
+ };
34
+ __decorate([
35
+ (0, type_graphql_1.Field)(() => Boolean),
36
+ __metadata("design:type", Boolean)
37
+ ], EntityRecordNameResult.prototype, "Success", void 0);
38
+ __decorate([
39
+ (0, type_graphql_1.Field)(() => String),
40
+ __metadata("design:type", String)
41
+ ], EntityRecordNameResult.prototype, "Status", void 0);
42
+ __decorate([
43
+ (0, type_graphql_1.Field)(() => String),
44
+ __metadata("design:type", String)
45
+ ], EntityRecordNameResult.prototype, "RecordID", void 0);
46
+ __decorate([
47
+ (0, type_graphql_1.Field)(() => String),
48
+ __metadata("design:type", String)
49
+ ], EntityRecordNameResult.prototype, "EntityName", void 0);
50
+ __decorate([
51
+ (0, type_graphql_1.Field)(() => String, { nullable: true }),
52
+ __metadata("design:type", String)
53
+ ], EntityRecordNameResult.prototype, "RecordName", void 0);
54
+ EntityRecordNameResult = __decorate([
55
+ (0, type_graphql_1.ObjectType)()
56
+ ], EntityRecordNameResult);
57
+ exports.EntityRecordNameResult = EntityRecordNameResult;
58
+ let EntityRecordNameResolver = class EntityRecordNameResolver {
59
+ async GetEntityRecordName(EntityName, RecordID, {}) {
60
+ const md = new core_1.Metadata();
61
+ return await this.InnerGetEntityRecordName(md, EntityName, RecordID);
62
+ }
63
+ async GetEntityRecordNames(info, {}) {
64
+ const result = [];
65
+ const md = new core_1.Metadata();
66
+ for (const i of info) {
67
+ result.push(await this.InnerGetEntityRecordName(md, i.EntityName, i.RecordID));
68
+ }
69
+ return result;
70
+ }
71
+ async InnerGetEntityRecordName(md, EntityName, RecordID) {
72
+ const e = md.Entities.find((e) => e.Name === EntityName);
73
+ if (e) {
74
+ const recordName = await md.GetEntityRecordName(e.Name, RecordID);
75
+ if (recordName)
76
+ return { Success: true, Status: 'OK', RecordID: RecordID, RecordName: recordName, EntityName: EntityName };
77
+ else
78
+ return {
79
+ Success: false,
80
+ Status: `Name for record, or record ${RecordID} itself not found, could be an access issue if user doesn't have Row Level Access (RLS) if RLS is enabled for this entity`,
81
+ RecordID: RecordID,
82
+ EntityName: EntityName,
83
+ };
84
+ }
85
+ else
86
+ return { Success: false, Status: `Entity ${EntityName} not found`, RecordID: RecordID, EntityName: EntityName };
87
+ }
88
+ };
89
+ __decorate([
90
+ (0, type_graphql_1.Query)(() => EntityRecordNameResult),
91
+ __param(0, (0, type_graphql_1.Arg)('EntityName', () => String)),
92
+ __param(1, (0, type_graphql_1.Arg)('RecordID', () => String)),
93
+ __param(2, (0, type_graphql_1.Ctx)()),
94
+ __metadata("design:type", Function),
95
+ __metadata("design:paramtypes", [String, String, Object]),
96
+ __metadata("design:returntype", Promise)
97
+ ], EntityRecordNameResolver.prototype, "GetEntityRecordName", null);
98
+ __decorate([
99
+ (0, type_graphql_1.Query)(() => [EntityRecordNameResult]),
100
+ __param(0, (0, type_graphql_1.Arg)('info', () => [EntityRecordNameInput])),
101
+ __param(1, (0, type_graphql_1.Ctx)()),
102
+ __metadata("design:type", Function),
103
+ __metadata("design:paramtypes", [Array, Object]),
104
+ __metadata("design:returntype", Promise)
105
+ ], EntityRecordNameResolver.prototype, "GetEntityRecordNames", null);
106
+ EntityRecordNameResolver = __decorate([
107
+ (0, type_graphql_1.Resolver)(EntityRecordNameResult)
108
+ ], EntityRecordNameResolver);
109
+ exports.EntityRecordNameResolver = EntityRecordNameResolver;
110
+ exports.default = EntityRecordNameResolver;
111
+ //# sourceMappingURL=EntityRecordNameResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityRecordNameResolver.js","sourceRoot":"","sources":["../../src/resolvers/EntityRecordNameResolver.ts"],"names":[],"mappings":"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"}