@memberjunction/communication-ms-graph 2.27.1 → 2.28.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.
@@ -28,6 +28,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
28
28
  __setModuleDefault(result, mod);
29
29
  return result;
30
30
  };
31
+ var __metadata = (this && this.__metadata) || function (k, v) {
32
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
+ };
31
34
  Object.defineProperty(exports, "__esModule", { value: true });
32
35
  exports.LoadMSGraphProvider = exports.MSGraphProvider = void 0;
33
36
  const communication_types_1 = require("@memberjunction/communication-types");
@@ -36,9 +39,6 @@ const core_1 = require("@memberjunction/core");
36
39
  const html_to_text_1 = require("html-to-text");
37
40
  const Auth = __importStar(require("./auth"));
38
41
  const Config = __importStar(require("./config"));
39
- /**
40
- * Implementation of the MS Graph provider for sending and receiving messages
41
- */
42
42
  let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCommunicationProvider {
43
43
  constructor() {
44
44
  super();
@@ -98,14 +98,13 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
98
98
  };
99
99
  }
100
100
  }
101
- async ReplyToMessage(message, messageID) {
101
+ async ReplyToMessage(params) {
102
102
  try {
103
103
  const user = await this.GetServiceAccount();
104
104
  if (!user) {
105
105
  return {
106
- Message: message,
107
106
  Success: false,
108
- Error: 'Service account not found'
107
+ ErrorMessage: 'Service account not found'
109
108
  };
110
109
  }
111
110
  const reply = {
@@ -113,27 +112,25 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
113
112
  toRecipients: [
114
113
  {
115
114
  emailAddress: {
116
- address: message.To
115
+ address: params.Message.From
117
116
  }
118
117
  }
119
118
  ]
120
119
  },
121
- comment: message.ProcessedBody || message.ProcessedHTMLBody
120
+ comment: params.Message.ProcessedBody || params.Message.ProcessedHTMLBody
122
121
  };
123
- const sendMessagePath = `${Auth.ApiConfig.uri}/${user.id}/messages/${messageID}/reply`;
124
- await Auth.GraphClient.api(sendMessagePath).post(reply);
122
+ const sendMessagePath = `${Auth.ApiConfig.uri}/${user.id}/messages/${params.MessageID}/reply`;
123
+ const result = await Auth.GraphClient.api(sendMessagePath).post(reply);
125
124
  return {
126
- Message: message,
127
125
  Success: true,
128
- Error: ''
126
+ Result: result
129
127
  };
130
128
  }
131
129
  catch (ex) {
132
130
  (0, core_1.LogError)(ex);
133
131
  return {
134
- Message: message,
135
132
  Success: false,
136
- Error: 'Error sending message'
133
+ ErrorMessage: 'Error sending message'
137
134
  };
138
135
  }
139
136
  }
@@ -142,36 +139,41 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
142
139
  const user = await this.GetServiceAccount(contextData?.Email);
143
140
  if (!user || !user.id) {
144
141
  return {
142
+ Success: false,
145
143
  Messages: []
146
144
  };
147
145
  }
148
- let filter = "(isRead eq false) and (startswith(subject, '[support]') or startswith(subject, 'RE: [support]'))";
149
- let top = 10;
146
+ let filter = "";
147
+ let top = params.NumMessages;
148
+ if (params.UnreadOnly) {
149
+ filter = "(isRead eq false)";
150
+ }
150
151
  if (contextData && contextData.Filter) {
151
152
  filter = contextData.Filter;
152
153
  }
153
- if (contextData && contextData.Top) {
154
- top = contextData.Top;
155
- }
156
154
  const messagesPath = `${Auth.ApiConfig.uri}/${user.id}/messages`;
157
155
  const Client = Auth.GraphClient;
158
156
  const response = await Client.api(messagesPath)
159
157
  .filter(filter).top(top).get();
160
158
  if (!response) {
161
- console.log('Error: could not get messages');
162
159
  return {
160
+ Success: false,
163
161
  Messages: []
164
162
  };
165
163
  }
166
164
  const sourceMessages = response.value;
167
165
  let messageResults = {
166
+ Success: true,
168
167
  SourceData: sourceMessages,
169
168
  Messages: []
170
169
  };
171
170
  const messages = sourceMessages.map((message) => {
171
+ const replyTo = message.replyTo?.map((replyTo) => replyTo.emailAddress?.address || '') || [];
172
+ const primaryToRecipient = replyTo.length > 0 ? replyTo[0] : '';
172
173
  return {
173
174
  From: message.from?.emailAddress?.address || '',
174
- ReplyTo: message.replyTo?.map((replyTo) => replyTo.emailAddress?.address || '') || [],
175
+ To: primaryToRecipient,
176
+ ReplyTo: replyTo,
175
177
  Subject: message.subject || '',
176
178
  Body: contextData?.ReturnAsPlainTex ? this.HTMLConverter(message.body?.content || '') : message.body?.content || '',
177
179
  ExternalSystemRecordID: message.id || '',
@@ -187,17 +189,17 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
187
189
  }
188
190
  async ForwardMessage(params) {
189
191
  try {
190
- if (!params.EmailID) {
192
+ if (!params.MessageID) {
191
193
  return {
192
194
  Success: false,
193
- Message: 'Email ID not set'
195
+ ErrorMessage: 'Message ID not set'
194
196
  };
195
197
  }
196
198
  const user = await this.GetServiceAccount();
197
199
  if (!user) {
198
200
  return {
199
201
  Success: false,
200
- Message: 'Service account not found'
202
+ ErrorMessage: 'Service account not found'
201
203
  };
202
204
  }
203
205
  const forward = {
@@ -211,17 +213,18 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
211
213
  };
212
214
  })
213
215
  };
214
- const sendMessagePath = `${Auth.ApiConfig.uri}/${user.id}/messages/${params.EmailID}/forward`;
215
- await Auth.GraphClient.api(sendMessagePath).post(forward);
216
+ const sendMessagePath = `${Auth.ApiConfig.uri}/${user.id}/messages/${params.MessageID}/forward`;
217
+ const forwardResult = await Auth.GraphClient.api(sendMessagePath).post(forward);
216
218
  return {
217
- Success: true
219
+ Success: true,
220
+ Result: forwardResult
218
221
  };
219
222
  }
220
223
  catch (ex) {
221
224
  (0, core_1.LogError)(ex);
222
225
  return {
223
- Message: 'An Error occurred while forwarding the message',
224
- Success: false,
226
+ ErrorMessage: 'An Error occurred while forwarding the message',
227
+ Success: false
225
228
  };
226
229
  }
227
230
  }
@@ -230,8 +233,8 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
230
233
  return this.ServiceAccount;
231
234
  }
232
235
  let accountEmail = email || Config.AZURE_ACCOUNT_EMAIL;
233
- const path = `${Auth.ApiConfig.uri}/${accountEmail}`;
234
- const user = await Auth.CallGraphApi(path);
236
+ const endpoint = `${Auth.ApiConfig.uri}/${accountEmail}`;
237
+ const user = await Auth.GraphClient.api(endpoint).get();
235
238
  if (!user) {
236
239
  (0, core_1.LogError)('Error: could not get user info');
237
240
  return null;
@@ -263,10 +266,10 @@ let MSGraphProvider = class MSGraphProvider extends communication_types_1.BaseCo
263
266
  };
264
267
  exports.MSGraphProvider = MSGraphProvider;
265
268
  exports.MSGraphProvider = MSGraphProvider = __decorate([
266
- (0, global_1.RegisterClass)(communication_types_1.BaseCommunicationProvider, 'Microsoft Graph')
269
+ (0, global_1.RegisterClass)(communication_types_1.BaseCommunicationProvider, 'Microsoft Graph'),
270
+ __metadata("design:paramtypes", [])
267
271
  ], MSGraphProvider);
268
272
  function LoadMSGraphProvider() {
269
- // do nothing, this prevents tree shaking from removing this class
270
273
  }
271
274
  exports.LoadMSGraphProvider = LoadMSGraphProvider;
272
275
  //# sourceMappingURL=MSGraphProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MSGraphProvider.js","sourceRoot":"","sources":["../src/MSGraphProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MSGraphProvider.js","sourceRoot":"","sources":["../src/MSGraphProvider.ts"],"names":[],"mappings":"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"}
package/dist/auth.js CHANGED
@@ -22,78 +22,18 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.CallGraphApi = exports.GetToken = exports.ApiConfig = exports.TokenRequest = exports.GraphClient = void 0;
26
+ exports.ApiConfig = exports.GraphClient = void 0;
30
27
  const identity_1 = require("@azure/identity");
31
28
  const Config = __importStar(require("./config"));
32
- const msal_node_1 = __importDefault(require("@azure/msal-node"));
33
29
  const microsoft_graph_client_1 = require("@microsoft/microsoft-graph-client");
34
30
  const azureTokenCredentials_1 = require("@microsoft/microsoft-graph-client/authProviders/azureTokenCredentials");
35
- const core_1 = require("@memberjunction/core");
36
- /**
37
- * Configuration object to be passed to MSAL instance on creation.
38
- * For a full list of MSAL Node configuration parameters, visit:
39
- * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-node/docs/configuration.md
40
- */
41
- const msalConfig = {
42
- auth: {
43
- clientId: Config.AZURE_CLIENT_ID,
44
- authority: Config.AZURE_AAD_ENDPOINT + '/' + Config.AZURE_TENANT_ID,
45
- clientSecret: Config.AZURE_CLIENT_SECRET,
46
- }
47
- };
48
- /**
49
- * Initialize a confidential client application. For more info, visit:
50
- * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-node/docs/initialize-confidential-client-application.md
51
- */
52
- const cca = new msal_node_1.default.ConfidentialClientApplication(msalConfig);
53
31
  const credential = new identity_1.ClientSecretCredential(Config.AZURE_TENANT_ID, Config.AZURE_CLIENT_ID, Config.AZURE_CLIENT_SECRET);
54
- // @microsoft/microsoft-graph-client/authProviders/azureTokenCredentials
55
32
  const authProvider = new azureTokenCredentials_1.TokenCredentialAuthenticationProvider(credential, {
56
- // The client credentials flow requires that you request the
57
- // /.default scope, and pre-configure your permissions on the
58
- // app registration in Azure. An administrator must grant consent
59
- // to those permissions beforehand.
60
33
  scopes: ['https://graph.microsoft.com/.default'],
61
34
  });
62
35
  exports.GraphClient = microsoft_graph_client_1.Client.initWithMiddleware({ authProvider: authProvider });
63
- /**
64
- * With client credentials flows permissions need to be granted in the portal by a tenant administrator.
65
- * The scope is always in the format '<resource>/.default'. For more, visit:
66
- * https://learn.microsoft.com/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow
67
- */
68
- exports.TokenRequest = {
69
- scopes: [Config.AZURE_GRAPH_ENDPOINT + '/.default'],
70
- };
71
36
  exports.ApiConfig = {
72
37
  uri: Config.AZURE_GRAPH_ENDPOINT + '/v1.0/users',
73
38
  };
74
- /**
75
- * Acquires token with client credentials.
76
- * @param {object} tokenRequest
77
- */
78
- async function GetToken(tokenRequest) {
79
- const authResult = await cca.acquireTokenByClientCredential(tokenRequest);
80
- return authResult;
81
- }
82
- exports.GetToken = GetToken;
83
- /**
84
- * Calls the endpoint with authorization bearer token.
85
- * @param {string} endpoint
86
- */
87
- async function CallGraphApi(endpoint) {
88
- try {
89
- const response = await exports.GraphClient.api(endpoint).get();
90
- return response;
91
- }
92
- catch (error) {
93
- (0, core_1.LogError)(`Error calling api:`, undefined, error);
94
- return null;
95
- }
96
- }
97
- exports.CallGraphApi = CallGraphApi;
98
- ;
99
39
  //# sourceMappingURL=auth.js.map
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAyD;AACzD,iDAAmC;AACnC,iEAAoC;AACpC,8EAA2D;AAC3D,iHAA8H;AAC9H,+CAAgD;AAEhD;;;;GAIG;AACH,MAAM,UAAU,GAAG;IACf,IAAI,EAAE;QACF,QAAQ,EAAE,MAAM,CAAC,eAAe;QAChC,SAAS,EAAE,MAAM,CAAC,kBAAkB,GAAG,GAAG,GAAG,MAAM,CAAC,eAAe;QACnE,YAAY,EAAE,MAAM,CAAC,mBAAmB;KAC3C;CACJ,CAAC;AAEF;;;GAGG;AACH,MAAM,GAAG,GAAuC,IAAI,mBAAI,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC;AAEnG,MAAM,UAAU,GAA2B,IAAI,iCAAsB,CACjE,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,mBAAmB,CAC7B,CAAC;AAEF,wEAAwE;AACxE,MAAM,YAAY,GAA0C,IAAI,6DAAqC,CAAC,UAAU,EAAE;IAC9G,4DAA4D;IAC5D,6DAA6D;IAC7D,iEAAiE;IACjE,mCAAmC;IACnC,MAAM,EAAE,CAAC,sCAAsC,CAAC;CACjD,CAAC,CAAC;AAEQ,QAAA,WAAW,GAAW,+BAAM,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC;AAE7F;;;;GAIG;AACU,QAAA,YAAY,GAAG;IACxB,MAAM,EAAE,CAAC,MAAM,CAAC,oBAAoB,GAAG,WAAW,CAAC;CACtD,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC,oBAAoB,GAAG,aAAa;CACnD,CAAC;AAEF;;;GAGG;AACI,KAAK,UAAU,QAAQ,CAAC,YAA0C;IACrE,MAAM,UAAU,GAAqC,MAAM,GAAG,CAAC,8BAA8B,CAAC,YAAY,CAAC,CAAC;IAC5G,OAAO,UAAU,CAAC;AACtB,CAAC;AAHD,4BAGC;AAED;;;GAGG;AACI,KAAK,UAAU,YAAY,CAAI,QAAgB;IAClD,IAAI,CAAC;QACD,MAAM,QAAQ,GAAM,MAAM,mBAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;QAC1D,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,EAAE,CAAC;QACX,IAAA,eAAQ,EAAC,oBAAoB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AATD,oCASC;AAAA,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAyD;AACzD,iDAAmC;AACnC,8EAA2D;AAC3D,iHAA8H;AAG9H,MAAM,UAAU,GAA2B,IAAI,iCAAsB,CACjE,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,mBAAmB,CAC7B,CAAC;AAGF,MAAM,YAAY,GAA0C,IAAI,6DAAqC,CAAC,UAAU,EAAE;IAK9G,MAAM,EAAE,CAAC,sCAAsC,CAAC;CACjD,CAAC,CAAC;AAEQ,QAAA,WAAW,GAAW,+BAAM,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC;AAEhF,QAAA,SAAS,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC,oBAAoB,GAAG,aAAa;CACnD,CAAC"}
package/dist/config.js CHANGED
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.AZURE_ACCOUNT_ID = exports.AZURE_ACCOUNT_EMAIL = exports.AZURE_GRAPH_ENDPOINT = exports.AZURE_CLIENT_SECRET = exports.AZURE_TENANT_ID = exports.AZURE_AAD_ENDPOINT = exports.AZURE_CLIENT_ID = void 0;
7
7
  const env_var_1 = __importDefault(require("env-var"));
8
- //Azure Related
9
8
  exports.AZURE_CLIENT_ID = env_var_1.default.get('AZURE_CLIENT_ID').required().asString();
10
9
  exports.AZURE_AAD_ENDPOINT = env_var_1.default.get('AZURE_AAD_ENDPOINT').required().asString();
11
10
  exports.AZURE_TENANT_ID = env_var_1.default.get('AZURE_TENANT_ID').required().asString();
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA0B;AAE1B,eAAe;AACF,QAAA,eAAe,GAAW,iBAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC3E,QAAA,kBAAkB,GAAW,iBAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACjF,QAAA,eAAe,GAAW,iBAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC3E,QAAA,mBAAmB,GAAW,iBAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnF,QAAA,oBAAoB,GAAW,iBAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACrF,QAAA,mBAAmB,GAAW,iBAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnF,QAAA,gBAAgB,GAAW,iBAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA0B;AAGb,QAAA,eAAe,GAAW,iBAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC3E,QAAA,kBAAkB,GAAW,iBAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACjF,QAAA,eAAe,GAAW,iBAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC3E,QAAA,mBAAmB,GAAW,iBAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnF,QAAA,oBAAoB,GAAW,iBAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACrF,QAAA,mBAAmB,GAAW,iBAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnF,QAAA,gBAAgB,GAAW,iBAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -17,5 +17,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./MSGraphProvider"), exports);
18
18
  __exportStar(require("./auth"), exports);
19
19
  __exportStar(require("./generic/models"), exports);
20
- __exportStar(require("./fetch"), exports);
21
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,yCAAuB;AACvB,mDAAiC;AACjC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,yCAAuB;AACvB,mDAAiC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/communication-ms-graph",
3
- "version": "2.27.1",
3
+ "version": "2.28.0",
4
4
  "description": "MemberJunction: Microsoft Graph Provider for the MJ Communication Framework",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -17,24 +17,26 @@
17
17
  "devDependencies": {
18
18
  "ts-node-dev": "^2.0.0",
19
19
  "typescript": "^5.4.5",
20
- "@types/html-to-text": "^9.0.4",
21
- "@microsoft/microsoft-graph-types": "^2.40.0"
20
+ "@types/node": "^20.14.10"
22
21
  },
23
22
  "dependencies": {
24
23
  "@azure/identity": "^4.4.1",
25
- "@azure/msal-node": "^2.13.1",
26
- "@memberjunction/communication-types": "2.27.1",
27
- "@memberjunction/ai": "2.27.1",
28
- "@memberjunction/ai-openai": "2.27.1",
29
- "@memberjunction/aiengine": "2.27.1",
30
- "@memberjunction/core": "2.27.1",
31
- "@memberjunction/core-entities": "2.27.1",
32
- "@memberjunction/global": "2.27.1",
33
- "@memberjunction/sqlserver-dataprovider": "2.27.1",
24
+ "@memberjunction/communication-types": "2.28.0",
25
+ "@memberjunction/ai": "2.28.0",
26
+ "@memberjunction/ai-openai": "2.28.0",
27
+ "@memberjunction/aiengine": "2.28.0",
28
+ "@memberjunction/core": "2.28.0",
29
+ "@memberjunction/core-entities": "2.28.0",
30
+ "@memberjunction/global": "2.28.0",
31
+ "@memberjunction/sqlserver-dataprovider": "2.28.0",
34
32
  "@microsoft/microsoft-graph-client": "^3.0.7",
33
+ "@azure/msal-node": "^2.14.0",
35
34
  "html-to-text": "^9.0.5",
36
35
  "axios": "^1.7.7",
37
36
  "dotenv": "^16.4.5",
38
- "env-var": "^7.5.0"
37
+ "env-var": "^7.5.0",
38
+ "isomorphic-fetch": "^3.0.0",
39
+ "@types/html-to-text": "^9.0.4",
40
+ "@microsoft/microsoft-graph-types": "^2.40.0"
39
41
  }
40
42
  }
@@ -1,20 +0,0 @@
1
- import { BaseCommunicationProvider, GetMessagesParams, GetMessagesResult, MessageResult, ProcessedMessage } from "@memberjunction/communication-types";
2
- import { User, Message } from "@microsoft/microsoft-graph-types";
3
- import { compiledFunction } from 'html-to-text';
4
- import { ForwardMessageParams, ForwardMessageResult } from "./generic/models";
5
- /**
6
- * Implementation of the MS Graph provider for sending and receiving messages
7
- */
8
- export declare class MSGraphProvider extends BaseCommunicationProvider {
9
- ServiceAccount: User | null;
10
- HTMLConverter: compiledFunction;
11
- constructor();
12
- SendSingleMessage(message: ProcessedMessage): Promise<MessageResult>;
13
- ReplyToMessage(message: ProcessedMessage, messageID: string): Promise<MessageResult>;
14
- GetMessages(params: GetMessagesParams<Record<string, any>>): Promise<GetMessagesResult<Message>>;
15
- ForwardMessage(params: ForwardMessageParams): Promise<ForwardMessageResult>;
16
- protected GetServiceAccount(email?: string): Promise<User | null>;
17
- protected MarkMessageAsRead(userID: string, messageID: string): Promise<boolean>;
18
- }
19
- export declare function LoadMSGraphProvider(): void;
20
- //# sourceMappingURL=MSGraphProvider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MSGraphProvider.d.ts","sourceRoot":"","sources":["../src/MSGraphProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAEvJ,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAGjE,OAAO,EAAW,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGzD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE9E;;GAEG;AACH,qBACa,eAAgB,SAAQ,yBAAyB;IAE1D,cAAc,EAAE,IAAI,GAAG,IAAI,CAAQ;IACnC,aAAa,EAAE,gBAAgB,CAAC;;IAUnB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAwDpE,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA2CpF,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IA4DhG,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;cA6CxE,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;cAwBvD,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAiBzF;AAED,wBAAgB,mBAAmB,SAElC"}
package/dist/auth.d.ts DELETED
@@ -1,25 +0,0 @@
1
- import msal from '@azure/msal-node';
2
- import { Client } from '@microsoft/microsoft-graph-client';
3
- export declare const GraphClient: Client;
4
- /**
5
- * With client credentials flows permissions need to be granted in the portal by a tenant administrator.
6
- * The scope is always in the format '<resource>/.default'. For more, visit:
7
- * https://learn.microsoft.com/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow
8
- */
9
- export declare const TokenRequest: {
10
- scopes: string[];
11
- };
12
- export declare const ApiConfig: {
13
- uri: string;
14
- };
15
- /**
16
- * Acquires token with client credentials.
17
- * @param {object} tokenRequest
18
- */
19
- export declare function GetToken(tokenRequest: msal.ClientCredentialRequest): Promise<msal.AuthenticationResult | null>;
20
- /**
21
- * Calls the endpoint with authorization bearer token.
22
- * @param {string} endpoint
23
- */
24
- export declare function CallGraphApi<T>(endpoint: string): Promise<T | null>;
25
- //# sourceMappingURL=auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAsC3D,eAAO,MAAM,WAAW,EAAE,MAAkE,CAAC;AAE7F;;;;GAIG;AACH,eAAO,MAAM,YAAY;;CAExB,CAAC;AAEF,eAAO,MAAM,SAAS;;CAErB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAGpH;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CASzE"}
package/dist/config.d.ts DELETED
@@ -1,8 +0,0 @@
1
- export declare const AZURE_CLIENT_ID: string;
2
- export declare const AZURE_AAD_ENDPOINT: string;
3
- export declare const AZURE_TENANT_ID: string;
4
- export declare const AZURE_CLIENT_SECRET: string;
5
- export declare const AZURE_GRAPH_ENDPOINT: string;
6
- export declare const AZURE_ACCOUNT_EMAIL: string;
7
- export declare const AZURE_ACCOUNT_ID: string;
8
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe,EAAE,MAAyD,CAAC;AACxF,eAAO,MAAM,kBAAkB,EAAE,MAA4D,CAAC;AAC9F,eAAO,MAAM,eAAe,EAAE,MAAyD,CAAC;AACxF,eAAO,MAAM,mBAAmB,EAAE,MAA6D,CAAC;AAChG,eAAO,MAAM,oBAAoB,EAAE,MAA8D,CAAC;AAClG,eAAO,MAAM,mBAAmB,EAAE,MAA6D,CAAC;AAChG,eAAO,MAAM,gBAAgB,EAAE,MAA2D,CAAC"}
package/dist/fetch.d.ts DELETED
@@ -1,7 +0,0 @@
1
- /**
2
- * Calls the endpoint with authorization bearer token.
3
- * @param {string} endpoint
4
- * @param {string} accessToken
5
- */
6
- export declare function CallApi<T>(endpoint: string, accessToken: string): Promise<T | null>;
7
- //# sourceMappingURL=fetch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CA4BzF"}
package/dist/fetch.js DELETED
@@ -1,41 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.CallApi = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
- /**
9
- * Calls the endpoint with authorization bearer token.
10
- * @param {string} endpoint
11
- * @param {string} accessToken
12
- */
13
- async function CallApi(endpoint, accessToken) {
14
- const options = {
15
- headers: {
16
- Authorization: `Bearer ${accessToken}`
17
- }
18
- };
19
- try {
20
- const response = await axios_1.default.get(endpoint, options);
21
- return response.data;
22
- }
23
- catch (error) {
24
- if (axios_1.default.isAxiosError(error)) {
25
- const axiosError = error;
26
- if (axiosError.response) {
27
- console.log(`Error calling api: ${axiosError.response.status} - ${axiosError.response.statusText}`);
28
- }
29
- else {
30
- console.log(`Error calling api: ${axiosError.message}`);
31
- }
32
- }
33
- else {
34
- console.log(`Error calling api`);
35
- }
36
- return null;
37
- }
38
- }
39
- exports.CallApi = CallApi;
40
- ;
41
- //# sourceMappingURL=fetch.js.map
package/dist/fetch.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0C;AAE1C;;;;GAIG;AACI,KAAK,UAAU,OAAO,CAAI,QAAgB,EAAE,WAAmB;IAElE,MAAM,OAAO,GAAG;QACZ,OAAO,EAAE;YACL,aAAa,EAAE,UAAU,WAAW,EAAE;SACzC;KACJ,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAI,QAAQ,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO,QAAQ,CAAC,IAAI,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,EAAE,CAAC;QACX,IAAG,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAC,CAAC;YAC1B,MAAM,UAAU,GAAG,KAAmB,CAAC;YACvC,IAAG,UAAU,CAAC,QAAQ,EAAC,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,sBAAsB,UAAU,CAAC,QAAQ,CAAC,MAAM,MAAM,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YACxG,CAAC;iBACG,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,sBAAsB,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;QACL,CAAC;aACG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AA5BD,0BA4BC;AAAA,CAAC"}
@@ -1,40 +0,0 @@
1
- export type MSGraphGetResponse<T> = {
2
- "@odata.context": string;
3
- value: T;
4
- };
5
- export type GetMessagesContextDataParams = {
6
- /**
7
- * The email address of the service account to use. If not provide,
8
- * defaults to the AZURE_ACCOUNT_EMAIL config variable
9
- */
10
- Email?: string;
11
- /**
12
- * If true, messages will be returned with the body stripped of HTLM tags
13
- */
14
- ReturnAsPlainText?: boolean;
15
- /**
16
- * If true, messages will be marked as read after being processed
17
- */
18
- MarkAsRead?: boolean;
19
- /**
20
- * Filter to use in the MS Graph request to fetch messages. Defaults to fetching messages not marked as read.
21
- */
22
- Filter?: string;
23
- /**
24
- * Number of messages to return, defaults to 10.
25
- */
26
- Top?: number;
27
- };
28
- export type ForwardMessageParams = {
29
- EmailID: string;
30
- Message: string;
31
- ToRecipients: {
32
- Name: string;
33
- Address: string;
34
- }[];
35
- };
36
- export type ForwardMessageResult = {
37
- Success: boolean;
38
- Message?: string;
39
- };
40
- //# sourceMappingURL=models.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/generic/models.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,CAAC,CAAA;CACX,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACvC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;CACP,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA"}
package/dist/index.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export * from './MSGraphProvider';
2
- export * from './auth';
3
- export * from './generic/models';
4
- export * from './fetch';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC"}