@memberjunction/external-change-detection 2.111.0 → 2.112.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/README.md CHANGED
@@ -35,7 +35,7 @@ This package relies on the following MemberJunction packages:
35
35
 
36
36
  ```typescript
37
37
  import { ExternalChangeDetectorEngine } from '@memberjunction/external-change-detection';
38
- import { Metadata } from '@memberjunction/core';
38
+ import { Metadata } from '@memberjunction/global';
39
39
 
40
40
  async function detectAndReplayChanges() {
41
41
  // Get the engine instance
@@ -252,7 +252,7 @@ if (result.Success && result.Changes.length > 0) {
252
252
 
253
253
  ```typescript
254
254
  import { ExternalChangeDetectorEngine } from '@memberjunction/external-change-detection';
255
- import { UserInfo } from '@memberjunction/core';
255
+ import { UserInfo } from '@memberjunction/global';
256
256
 
257
257
  async function runScheduledChangeDetection(contextUser: UserInfo) {
258
258
  const detector = ExternalChangeDetectorEngine.Instance;
@@ -311,4 +311,4 @@ This package requires the following database objects:
311
311
 
312
312
  ## License
313
313
 
314
- ISC
314
+ ISC
@@ -1,5 +1,5 @@
1
- import { BaseEngine, BaseEntity, CompositeKey, EntityField, EntityInfo, IMetadataProvider, Metadata, UserInfo } from "@memberjunction/core";
2
- import { RecordChangeEntity, RecordChangeReplayRunEntity } from "@memberjunction/core-entities";
1
+ import { BaseEngine, BaseEntity, CompositeKey, EntityField, EntityInfo, IMetadataProvider, Metadata, UserInfo } from '@memberjunction/global';
2
+ import { RecordChangeEntity, RecordChangeReplayRunEntity } from '@memberjunction/core-entities';
3
3
  /**
4
4
  * Represents a change to a single field in a record
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ChangeDetector.d.ts","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChangeDetector.d.ts","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExternalChangeDetectorEngine = exports.ChangeDetectionResult = exports.ChangeDetectionItem = exports.FieldChange = void 0;
4
- const core_1 = require("@memberjunction/core");
4
+ const global_1 = require("@memberjunction/global");
5
5
  /**
6
6
  * Represents a change to a single field in a record
7
7
  */
@@ -43,15 +43,15 @@ exports.ChangeDetectionResult = ChangeDetectionResult;
43
43
  *
44
44
  * This is a server only package
45
45
  */
46
- class ExternalChangeDetectorEngine extends core_1.BaseEngine {
46
+ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
47
47
  async Config(forceRefresh, contextUser, provider) {
48
- const p = (provider || core_1.Metadata.Provider);
48
+ const p = (provider || global_1.Metadata.Provider);
49
49
  const c = [
50
50
  {
51
- EntityName: "Entities",
52
- PropertyName: "_EligibleEntities",
53
- Filter: `ID IN (SELECT ID FROM ${p.MJCoreSchemaName}.vwEntitiesWithExternalChangeTracking)` // limit to entities that are in this view. This view has the logic which basically is TrackRecordChanges=1 and also has an UpdatedAt field
54
- }
51
+ EntityName: 'Entities',
52
+ PropertyName: '_EligibleEntities',
53
+ Filter: `ID IN (SELECT ID FROM ${p.MJCoreSchemaName}.vwEntitiesWithExternalChangeTracking)`, // limit to entities that are in this view. This view has the logic which basically is TrackRecordChanges=1 and also has an UpdatedAt field
54
+ },
55
55
  ];
56
56
  await this.Load(c, provider, forceRefresh, contextUser);
57
57
  }
@@ -83,7 +83,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
83
83
  * * The entity is not in the IneligibleEntities list. See info on the IneligibleEntities property for more information on excluded entities.
84
84
  */
85
85
  get EligibleEntities() {
86
- const netEligible = this._EligibleEntities.filter(e => !this.IneligibleEntities.map(i => i.toLowerCase().trim()).includes(e.Name.toLowerCase().trim()));
86
+ const netEligible = this._EligibleEntities.filter((e) => !this.IneligibleEntities.map((i) => i.toLowerCase().trim()).includes(e.Name.toLowerCase().trim()));
87
87
  return netEligible;
88
88
  }
89
89
  /**
@@ -94,16 +94,16 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
94
94
  try {
95
95
  // check to make sure that the entity is in the eligible list
96
96
  if (!entity) {
97
- throw new Error("entity parameter is required");
97
+ throw new Error('entity parameter is required');
98
98
  }
99
- else if (!this.EligibleEntities.find(e => e.ID === entity.ID)) {
99
+ else if (!this.EligibleEntities.find((e) => e.ID === entity.ID)) {
100
100
  throw new Error(`Entity ${entity.Name} is not eligible for external change detection. Refer to the documentation on the EligibleEntities and IneligibleEntities properties for more information.`);
101
101
  }
102
- const md = new core_1.Metadata();
102
+ const md = new global_1.Metadata();
103
103
  const sqlCreates = this.generateDetectCreationsQuery(entity);
104
104
  const sqlUpdates = this.generateDetectUpdatesQuery(entity);
105
105
  const sqlDeletes = this.generateDetectDeletionsQuery(entity);
106
- const provider = core_1.Metadata.Provider;
106
+ const provider = global_1.Metadata.Provider;
107
107
  const createResult = await provider.ExecuteSQL(sqlCreates);
108
108
  const updateResult = await provider.ExecuteSQL(sqlUpdates);
109
109
  const deleteResult = await provider.ExecuteSQL(sqlDeletes);
@@ -113,15 +113,15 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
113
113
  for (const row of createResult) {
114
114
  const item = new ChangeDetectionItem();
115
115
  item.Entity = entity;
116
- item.PrimaryKey = new core_1.CompositeKey(entity.PrimaryKeys.map(pk => {
116
+ item.PrimaryKey = new global_1.CompositeKey(entity.PrimaryKeys.map((pk) => {
117
117
  return {
118
118
  FieldName: pk.Name,
119
- Value: row[pk.Name]
119
+ Value: row[pk.Name],
120
120
  };
121
121
  }));
122
122
  item.Type = 'Create';
123
123
  item.ChangedAt = row.CreatedAt >= row.UpdatedAt ? row.CreatedAt : row.UpdatedAt;
124
- item.Changes = []; // not relevant because the row is new
124
+ item.Changes = []; // not relevant because the row is new
125
125
  changes.push(item);
126
126
  }
127
127
  }
@@ -129,31 +129,31 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
129
129
  for (const row of updateResult) {
130
130
  const item = new ChangeDetectionItem();
131
131
  item.Entity = entity;
132
- item.PrimaryKey = new core_1.CompositeKey(entity.PrimaryKeys.map(pk => {
132
+ item.PrimaryKey = new global_1.CompositeKey(entity.PrimaryKeys.map((pk) => {
133
133
  return {
134
134
  FieldName: pk.Name,
135
- Value: row[pk.Name]
135
+ Value: row[pk.Name],
136
136
  };
137
137
  }));
138
138
  item.Type = 'Update';
139
139
  item.ChangedAt = row.UpdatedAt;
140
140
  // push the item but first make sure it is NOT already in the changes from the
141
141
  // create detection, if it is, we do not push it into changes
142
- if (!changes.find(c => c.PrimaryKey.Equals(item.PrimaryKey))) {
142
+ if (!changes.find((c) => c.PrimaryKey.Equals(item.PrimaryKey))) {
143
143
  changes.push(item);
144
144
  }
145
145
  }
146
146
  }
147
147
  if (deleteResult && deleteResult.length > 0) {
148
- deleteResult.forEach(row => {
148
+ deleteResult.forEach((row) => {
149
149
  const item = new ChangeDetectionItem();
150
150
  item.Entity = entity;
151
- const ck = new core_1.CompositeKey();
151
+ const ck = new global_1.CompositeKey();
152
152
  // row.RecordID should have a format of Field1|Value1||Field2|Value2, however in some cases there is legacy
153
153
  // data in the RecordChange table that just has a single value in it and in that case assuming that the entity
154
154
  // in question has a single-valued primary key, we can just use that value as the key, so we need to test for that
155
155
  // first and if we find that the RecordID is just a single value, we can use that as the key
156
- if (row.RecordID.indexOf(core_1.CompositeKey.DefaultValueDelimiter) === -1) {
156
+ if (row.RecordID.indexOf(global_1.CompositeKey.DefaultValueDelimiter) === -1) {
157
157
  // there is no field delimiter, so we can assume this is a single value
158
158
  ck.LoadFromSingleKeyValuePair(entity.PrimaryKeys[0].Name, row.RecordID); // this is a string like 'Field1Value' (no quotes
159
159
  item.LegacyKey = true;
@@ -178,15 +178,15 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
178
178
  }
179
179
  return {
180
180
  Success: true,
181
- Changes: changes
181
+ Changes: changes,
182
182
  };
183
183
  }
184
184
  catch (e) {
185
- (0, core_1.LogError)(e);
185
+ (0, global_1.LogError)(e);
186
186
  return {
187
187
  Success: false,
188
188
  ErrorMessage: e.message,
189
- Changes: []
189
+ Changes: [],
190
190
  };
191
191
  }
192
192
  }
@@ -214,7 +214,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
214
214
  changes.push({
215
215
  FieldName: field.Name,
216
216
  NewValue: differResult.castValue1, // use the typecast values so they're the right types
217
- OldValue: differResult.castValue2 // use the typecast values so they're the right types
217
+ OldValue: differResult.castValue2, // use the typecast values so they're the right types
218
218
  });
219
219
  }
220
220
  }
@@ -222,7 +222,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
222
222
  return { changes, latestRecord: record };
223
223
  }
224
224
  else {
225
- (0, core_1.LogStatus)(` WARNING: No record found, or no FullRecordJSON found, in vwRecordChanges for ${change.Entity.Name}: ${change.PrimaryKey.ToConcatenatedString()}`);
225
+ (0, global_1.LogStatus)(` WARNING: No record found, or no FullRecordJSON found, in vwRecordChanges for ${change.Entity.Name}: ${change.PrimaryKey.ToConcatenatedString()}`);
226
226
  return { changes: [], latestRecord: record };
227
227
  }
228
228
  }
@@ -230,31 +230,31 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
230
230
  throw new Error(`Failed to load record: ${change.Entity.Name}: ${change.PrimaryKey}`);
231
231
  }
232
232
  catch (e) {
233
- (0, core_1.LogError)(e);
233
+ (0, global_1.LogError)(e);
234
234
  return { changes: [], latestRecord: null };
235
235
  }
236
236
  }
237
237
  DoValuesDiffer(field, value1, value2) {
238
238
  // type specific comparisons
239
- // for each scenario, make sure both value1 and value 2 are of the type we care about, if they're not, create new variables
239
+ // for each scenario, make sure both value1 and value 2 are of the type we care about, if they're not, create new variables
240
240
  // of those types and then do type specific comparisons for equality
241
241
  switch (field.EntityFieldInfo.TSType) {
242
- case core_1.EntityFieldTSType.Boolean:
242
+ case global_1.EntityFieldTSType.Boolean:
243
243
  // check to see if value1 and value2 are both boolean, if not, convert them to boolean
244
244
  const v1 = typeof value1 === 'boolean' ? value1 : value1 === 'true' ? true : false;
245
245
  const v2 = typeof value2 === 'boolean' ? value2 : value2 === 'true' ? true : false;
246
246
  return { differ: v1 !== v2, castValue1: v1, castValue2: v2 };
247
- case core_1.EntityFieldTSType.Date:
247
+ case global_1.EntityFieldTSType.Date:
248
248
  // check to see if value1 and value2 are both dates, if not, convert them to dates
249
249
  const d1 = value1 instanceof Date ? value1 : new Date(value1);
250
250
  const d2 = value2 instanceof Date ? value2 : new Date(value2);
251
251
  return { differ: d1.getTime() !== d2.getTime(), castValue1: d1, castValue2: d2 };
252
- case core_1.EntityFieldTSType.Number:
252
+ case global_1.EntityFieldTSType.Number:
253
253
  // check to see if value1 and value2 are both numbers, if not, convert them to numbers
254
- const n1 = value1 ? typeof value1 === 'number' ? value1 : parseFloat(value1) : value1;
255
- const n2 = value2 ? typeof value2 === 'number' ? value2 : parseFloat(value2) : value2;
254
+ const n1 = value1 ? (typeof value1 === 'number' ? value1 : parseFloat(value1)) : value1;
255
+ const n2 = value2 ? (typeof value2 === 'number' ? value2 : parseFloat(value2)) : value2;
256
256
  return { differ: n1 !== n2, castValue1: n1, castValue2: n2 };
257
- case core_1.EntityFieldTSType.String:
257
+ case global_1.EntityFieldTSType.String:
258
258
  // check to see if value1 and value2 are both strings, if not, convert them to strings
259
259
  const s1 = typeof value1 === 'string' || !value1 ? value1 : value1.toString();
260
260
  const s2 = typeof value2 === 'string' || !value2 ? value2 : value2.toString();
@@ -267,15 +267,15 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
267
267
  }
268
268
  async GetLatestRecordChangesDataForEntityRecord(change) {
269
269
  const Provider = this.ProviderToUse;
270
- const sql = `SELECT
271
- TOP 1 FullRecordJSON
272
- FROM
273
- ${Provider.MJCoreSchemaName}.vwRecordChanges
274
- WHERE
275
- RecordID = '${change.PrimaryKey.ToConcatenatedString()}'
276
- AND EntityID = '${change.Entity.ID}'
270
+ const sql = `SELECT
271
+ TOP 1 FullRecordJSON
272
+ FROM
273
+ ${Provider.MJCoreSchemaName}.vwRecordChanges
274
+ WHERE
275
+ RecordID = '${change.PrimaryKey.ToConcatenatedString()}'
276
+ AND EntityID = '${change.Entity.ID}'
277
277
  AND Status <> 'Pending'
278
- ORDER BY
278
+ ORDER BY
279
279
  ChangedAt DESC`;
280
280
  const result = await Provider.ExecuteSQL(sql);
281
281
  if (result && result.length > 0)
@@ -305,11 +305,11 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
305
305
  const entities = [];
306
306
  const provider = this.ProviderToUse;
307
307
  for (const c of changes) {
308
- let e = entities.find(e => e.entity.ID === c.Entity.ID);
308
+ let e = entities.find((e) => e.entity.ID === c.Entity.ID);
309
309
  if (!e) {
310
310
  e = {
311
311
  entity: c.Entity,
312
- keys: [c.PrimaryKey]
312
+ keys: [c.PrimaryKey],
313
313
  };
314
314
  entities.push(e);
315
315
  }
@@ -321,23 +321,25 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
321
321
  // select statement for each entity
322
322
  for (const e of entities) {
323
323
  const sql = `SELECT * FROM [${e.entity.SchemaName}].[${e.entity.BaseView}]
324
- WHERE ${e.keys.map(k => `(${k.KeyValuePairs.map(kvp => {
325
- const f = e.entity.Fields.find(f => kvp.FieldName.trim().toLowerCase() === f.Name);
326
- const quotes = f?.NeedsQuotes ? "'" : "";
324
+ WHERE ${e.keys
325
+ .map((k) => `(${k.KeyValuePairs.map((kvp) => {
326
+ const f = e.entity.Fields.find((f) => kvp.FieldName.trim().toLowerCase() === f.Name);
327
+ const quotes = f?.NeedsQuotes ? "'" : '';
327
328
  return `[${kvp.FieldName}]=${quotes}${kvp.Value}${quotes}`;
328
- }).join(' AND ')})`).join(' OR ')} `;
329
+ }).join(' AND ')})`)
330
+ .join(' OR ')} `;
329
331
  const result = await provider.ExecuteSQL(sql);
330
332
  if (result) {
331
333
  // we have the rows from the result, now go back through each of the changes we have in the changes array
332
- // and associate the data with each one
334
+ // and associate the data with each one
333
335
  for (const r of result) {
334
- const kvp = e.entity.PrimaryKeys.map(pk => {
336
+ const kvp = e.entity.PrimaryKeys.map((pk) => {
335
337
  return {
336
338
  FieldName: pk.Name,
337
- Value: r[pk.Name]
339
+ Value: r[pk.Name],
338
340
  };
339
341
  });
340
- const changeItem = changes.find(ci => ci.Entity === e.entity && ci.PrimaryKey.EqualsKey(kvp));
342
+ const changeItem = changes.find((ci) => ci.Entity === e.entity && ci.PrimaryKey.EqualsKey(kvp));
341
343
  if (changeItem) {
342
344
  // found the match, update latest Record
343
345
  const record = await md.GetEntityObject(changeItem.Entity.Name, this.ContextUser);
@@ -350,73 +352,73 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
350
352
  return true;
351
353
  }
352
354
  catch (e) {
353
- (0, core_1.LogError)(e);
355
+ (0, global_1.LogError)(e);
354
356
  return false;
355
357
  }
356
358
  }
357
359
  getPrimaryKeyString(entity, tablePrefix) {
358
- return entity.PrimaryKeys.map(pk => `'${pk.Name}${core_1.CompositeKey.DefaultValueDelimiter}' + CAST(${tablePrefix}.[${pk.Name}] AS NVARCHAR(MAX))`).join(` + '${core_1.CompositeKey.DefaultFieldDelimiter}' + `);
360
+ return entity.PrimaryKeys.map((pk) => `'${pk.Name}${global_1.CompositeKey.DefaultValueDelimiter}' + CAST(${tablePrefix}.[${pk.Name}] AS NVARCHAR(MAX))`).join(` + '${global_1.CompositeKey.DefaultFieldDelimiter}' + `);
359
361
  }
360
362
  generateDetectUpdatesQuery(entity) {
361
363
  const primaryKeyString = this.getPrimaryKeyString(entity, 'ot');
362
364
  return `
363
- SELECT
364
- ${entity.PrimaryKeys.map(pk => `ot.[${pk.Name}]`).join(', ')}, ot.${core_1.EntityInfo.UpdatedAtFieldName} AS UpdatedAt, rc.last_change_time LatestRecordChangeAt
365
- FROM
365
+ SELECT
366
+ ${entity.PrimaryKeys.map((pk) => `ot.[${pk.Name}]`).join(', ')}, ot.${global_1.EntityInfo.UpdatedAtFieldName} AS UpdatedAt, rc.last_change_time LatestRecordChangeAt
367
+ FROM
366
368
  [${entity.SchemaName}].[${entity.BaseView}] ot
367
369
  INNER JOIN (
368
- SELECT
370
+ SELECT
369
371
  RecordID, MAX(ChangedAt) AS last_change_time
370
- FROM
372
+ FROM
371
373
  __mj.vwRecordChanges
372
- WHERE
374
+ WHERE
373
375
  Type IN ('Update', 'Create') AND EntityID = '${entity.ID}'
374
- GROUP BY
376
+ GROUP BY
375
377
  RecordID
376
378
  ) rc ON ${primaryKeyString} = rc.RecordID
377
- WHERE
378
- FORMAT(ot.${core_1.EntityInfo.UpdatedAtFieldName}, 'yyyy-MM-dd HH:mm:ss.fff') > COALESCE(FORMAT(rc.last_change_time, 'yyyy-MM-dd HH:mm:ss.fff'), '1900-01-01 00:00:00.000');`;
379
+ WHERE
380
+ FORMAT(ot.${global_1.EntityInfo.UpdatedAtFieldName}, 'yyyy-MM-dd HH:mm:ss.fff') > COALESCE(FORMAT(rc.last_change_time, 'yyyy-MM-dd HH:mm:ss.fff'), '1900-01-01 00:00:00.000');`;
379
381
  // use up to 3 digits of precision because when we get the values back into JavaScript objects, Date objects only have 3 digits of precision
380
382
  }
381
383
  generateDetectCreationsQuery(entity) {
382
384
  const primaryKeyString = this.getPrimaryKeyString(entity, 'ot');
383
385
  return `
384
- SELECT
385
- ${entity.PrimaryKeys.map(pk => `ot.[${pk.Name}]`).join(', ')}, ot.${core_1.EntityInfo.CreatedAtFieldName} AS CreatedAt, ot.${core_1.EntityInfo.UpdatedAtFieldName} AS UpdatedAt
386
- FROM
386
+ SELECT
387
+ ${entity.PrimaryKeys.map((pk) => `ot.[${pk.Name}]`).join(', ')}, ot.${global_1.EntityInfo.CreatedAtFieldName} AS CreatedAt, ot.${global_1.EntityInfo.UpdatedAtFieldName} AS UpdatedAt
388
+ FROM
387
389
  [${entity.SchemaName}].[${entity.BaseView}] ot
388
- LEFT JOIN
389
- __mj.vwRecordChanges rc
390
- ON
391
- (${primaryKeyString} = rc.RecordID) AND
392
- rc.Type = 'Create' AND
393
- rc.EntityID = '${entity.ID}'
394
- WHERE
390
+ LEFT JOIN
391
+ __mj.vwRecordChanges rc
392
+ ON
393
+ (${primaryKeyString} = rc.RecordID) AND
394
+ rc.Type = 'Create' AND
395
+ rc.EntityID = '${entity.ID}'
396
+ WHERE
395
397
  rc.RecordID IS NULL;
396
398
  `;
397
399
  }
398
400
  generateDetectDeletionsQuery(entity) {
399
401
  const primaryKeyString = this.getPrimaryKeyString(entity, 'ot');
400
402
  return `
401
- SELECT
403
+ SELECT
402
404
  rc.RecordID, MAX(rc.ChangedAt) ChangedAt
403
- FROM
405
+ FROM
404
406
  __mj.vwRecordChanges rc
405
- LEFT JOIN
406
- [${entity.SchemaName}].[${entity.BaseView}] ot
407
- ON
407
+ LEFT JOIN
408
+ [${entity.SchemaName}].[${entity.BaseView}] ot
409
+ ON
408
410
  rc.RecordID = ${primaryKeyString}
409
- WHERE
410
- ${entity.PrimaryKeys.map(pk => `ot.[${pk.Name}] IS NULL`).join(' AND ')}
411
- AND
412
- rc.EntityID = '${entity.ID}'
411
+ WHERE
412
+ ${entity.PrimaryKeys.map((pk) => `ot.[${pk.Name}] IS NULL`).join(' AND ')}
413
413
  AND
414
- NOT EXISTS
414
+ rc.EntityID = '${entity.ID}'
415
+ AND
416
+ NOT EXISTS
415
417
  (
416
- SELECT rc2.ID FROM __mj.vwRecordChanges rc2 WHERE
418
+ SELECT rc2.ID FROM __mj.vwRecordChanges rc2 WHERE
417
419
  rc2.RecordID = rc.RecordID AND rc2.EntityID=rc.EntityID AND rc2.Type='Delete'
418
- )
419
- GROUP BY
420
+ )
421
+ GROUP BY
420
422
  rc.RecordID
421
423
  `; // last part of above query makes sure we don't include records already deleted in Record Changes
422
424
  }
@@ -427,37 +429,37 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
427
429
  async DetectChangesForEntities(entities) {
428
430
  try {
429
431
  if (!entities)
430
- throw new Error("entities parameter is required");
432
+ throw new Error('entities parameter is required');
431
433
  else if (entities.length === 0)
432
- throw new Error("entities parameter must have at least one entity in it");
434
+ throw new Error('entities parameter must have at least one entity in it');
433
435
  const result = new ChangeDetectionResult();
434
436
  result.Success = true;
435
437
  result.Changes = [];
436
438
  const promises = [];
437
439
  // fire them all off in parallel
438
- (0, core_1.LogStatus)(`Detecting changes for ${entities.length} entities`);
440
+ (0, global_1.LogStatus)(`Detecting changes for ${entities.length} entities`);
439
441
  let numFinished = 0;
440
442
  entities.forEach((e) => {
441
- (0, core_1.UpdateCurrentConsoleLine)(` Starting change detection changes for ${e.Name}`, core_1.ConsoleColor.gray);
443
+ (0, global_1.UpdateCurrentConsoleLine)(` Starting change detection changes for ${e.Name}`, global_1.ConsoleColor.gray);
442
444
  const p = this.DetectChangesForEntity(e); // no await
443
445
  promises.push(p);
444
- p.then(entityResult => {
445
- (0, core_1.UpdateCurrentConsoleProgress)(` Finished change detection changes for ${e.Name}`, ++numFinished, entities.length, entityResult.Success ? core_1.ConsoleColor.cyan : core_1.ConsoleColor.crimson);
446
+ p.then((entityResult) => {
447
+ (0, global_1.UpdateCurrentConsoleProgress)(` Finished change detection changes for ${e.Name}`, ++numFinished, entities.length, entityResult.Success ? global_1.ConsoleColor.cyan : global_1.ConsoleColor.crimson);
446
448
  result.Changes = result.Changes.concat(entityResult.Changes);
447
449
  result.Success = result.Success && entityResult.Success;
448
450
  });
449
451
  });
450
452
  // now wait for all of the promises to finish
451
453
  await Promise.all(promises);
452
- (0, core_1.UpdateCurrentConsoleProgress)(` Finished detecting changes for ${entities.length} entities`, entities.length, entities.length, result.Success ? core_1.ConsoleColor.green : core_1.ConsoleColor.red);
454
+ (0, global_1.UpdateCurrentConsoleProgress)(` Finished detecting changes for ${entities.length} entities`, entities.length, entities.length, result.Success ? global_1.ConsoleColor.green : global_1.ConsoleColor.red);
453
455
  return result;
454
456
  }
455
457
  catch (e) {
456
- (0, core_1.LogError)(e);
458
+ (0, global_1.LogError)(e);
457
459
  return {
458
460
  Success: false,
459
461
  ErrorMessage: e.message,
460
- Changes: []
462
+ Changes: [],
461
463
  };
462
464
  }
463
465
  }
@@ -477,16 +479,16 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
477
479
  let run; // delcare outside of try block so we have access to it in the catch block
478
480
  try {
479
481
  if (changes && changes.length > 0) {
480
- const md = new core_1.Metadata();
482
+ const md = new global_1.Metadata();
481
483
  const results = [];
482
484
  run = await this.StartRun();
483
- (0, core_1.LogStatus)(`Replaying ${changes.length} changes`);
485
+ (0, global_1.LogStatus)(`Replaying ${changes.length} changes`);
484
486
  let numProcessed = 0;
485
487
  for (let i = 0; i < changes.length; i += batchSize) {
486
488
  const batch = changes.slice(i, i + batchSize);
487
489
  // Process the current batch
488
490
  const batchPromises = batch.map(async (change) => {
489
- (0, core_1.UpdateCurrentConsoleProgress)(` Replaying ${change.Entity.Name} ${change.Type} ${change.PrimaryKey.ToConcatenatedString()}`, ++numProcessed, changes.length, core_1.ConsoleColor.gray);
491
+ (0, global_1.UpdateCurrentConsoleProgress)(` Replaying ${change.Entity.Name} ${change.Type} ${change.PrimaryKey.ToConcatenatedString()}`, ++numProcessed, changes.length, global_1.ConsoleColor.gray);
490
492
  const result = await this.ReplaySingleChange(md, run, change);
491
493
  return { Success: result, change: change };
492
494
  });
@@ -500,19 +502,19 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
500
502
  // results.push({Success: result, change: change});
501
503
  // }
502
504
  run.EndedAt = new Date();
503
- run.Status = results.every(r => r.Success) ? 'Complete' : 'Error';
505
+ run.Status = results.every((r) => r.Success) ? 'Complete' : 'Error';
504
506
  if (await run.Save()) {
505
- return results.every(r => r.Success);
507
+ return results.every((r) => r.Success);
506
508
  }
507
509
  else {
508
- throw new Error("Failed to save run");
510
+ throw new Error('Failed to save run');
509
511
  }
510
512
  }
511
513
  else
512
514
  return true; // no changes to process
513
515
  }
514
516
  catch (e) {
515
- (0, core_1.LogError)(e);
517
+ (0, global_1.LogError)(e);
516
518
  if (run) {
517
519
  // attempt to mark the run as error
518
520
  try {
@@ -521,8 +523,8 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
521
523
  await run.Save(); // dont' care about return value here, we've already tried to save it and the return value will be false anyway and message is the original root cause of the first exception
522
524
  }
523
525
  catch (innerError) {
524
- (0, core_1.LogError)('Attempted to mark run as error failed, make sure you update the database for future runs to be allowed.');
525
- (0, core_1.LogError)(innerError);
526
+ (0, global_1.LogError)('Attempted to mark run as error failed, make sure you update the database for future runs to be allowed.');
527
+ (0, global_1.LogError)(innerError);
526
528
  return false; // couldn't get it done
527
529
  }
528
530
  }
@@ -534,17 +536,17 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
534
536
  */
535
537
  async StartRun() {
536
538
  // first make sure an existing run isn't in progress
537
- const rv = new core_1.RunView();
539
+ const rv = new global_1.RunView();
538
540
  const existingRun = await rv.RunView({
539
- EntityName: "Record Change Replay Runs",
540
- ExtraFilter: "Status NOT IN('Complete', 'Error')"
541
+ EntityName: 'Record Change Replay Runs',
542
+ ExtraFilter: "Status NOT IN('Complete', 'Error')",
541
543
  }, this.ContextUser);
542
544
  if (existingRun && existingRun.Success) {
543
545
  if (existingRun.Results.length > 0)
544
546
  throw new Error(`Existing Record Change Replay Run ${existingRun.Results[0].ID} is not complete or marked as error, cannot start a new run.`);
545
547
  else {
546
- const md = new core_1.Metadata();
547
- const run = await md.GetEntityObject("Record Change Replay Runs", this.ContextUser);
548
+ const md = new global_1.Metadata();
549
+ const run = await md.GetEntityObject('Record Change Replay Runs', this.ContextUser);
548
550
  run.StartedAt = new Date();
549
551
  run.UserID = this.ContextUser.ID;
550
552
  run.Status = 'In Progress';
@@ -552,12 +554,12 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
552
554
  return run;
553
555
  }
554
556
  else
555
- throw new Error("Failed to start run");
557
+ throw new Error('Failed to start run');
556
558
  }
557
559
  }
558
560
  else {
559
561
  // failed to run the view
560
- throw new Error("Failed to check for existing run: " + existingRun.ErrorMessage);
562
+ throw new Error('Failed to check for existing run: ' + existingRun.ErrorMessage);
561
563
  }
562
564
  }
563
565
  /**
@@ -589,7 +591,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
589
591
  // if we get here, entityObject is now all set to go for replay!
590
592
  if (change.Type === 'Delete') {
591
593
  const result = await entityObject.Delete({
592
- ReplayOnly: true
594
+ ReplayOnly: true,
593
595
  });
594
596
  return this.FinishRecordChangeRecord(rc, result ? 'success' : 'error', entityObject.LatestResult?.Error);
595
597
  }
@@ -597,17 +599,17 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
597
599
  // for updates and creates we just call Save() with the ReplayOnly option
598
600
  const result = await entityObject.Save({
599
601
  ReplayOnly: true,
600
- IgnoreDirtyState: false //not relevant for replay
602
+ IgnoreDirtyState: false, //not relevant for replay
601
603
  });
602
604
  return this.FinishRecordChangeRecord(rc, result ? 'success' : 'error', entityObject.LatestResult?.Error);
603
605
  }
604
606
  }
605
607
  else {
606
- throw new Error("Failed to create Record Change record");
608
+ throw new Error('Failed to create Record Change record');
607
609
  }
608
610
  }
609
611
  catch (e) {
610
- (0, core_1.LogError)(e);
612
+ (0, global_1.LogError)(e);
611
613
  return false;
612
614
  }
613
615
  }
@@ -624,7 +626,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
624
626
  return false;
625
627
  }
626
628
  catch (e) {
627
- (0, core_1.LogError)(e);
629
+ (0, global_1.LogError)(e);
628
630
  return false;
629
631
  }
630
632
  }
@@ -634,7 +636,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
634
636
  */
635
637
  async CreateRecordChangeRecord(md, run, change) {
636
638
  try {
637
- const rc = await md.GetEntityObject("Record Changes", this.ContextUser);
639
+ const rc = await md.GetEntityObject('Record Changes', this.ContextUser);
638
640
  rc.EntityID = change.Entity.ID;
639
641
  if (change.LegacyKey)
640
642
  rc.RecordID = change.LegacyKeyValue; // need to match legacy key otherwise the other RC records will keep coming back up in detect changes runs in the future
@@ -657,7 +659,7 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
657
659
  changesObject[field.FieldName] = {
658
660
  field: field.FieldName,
659
661
  oldValue: field.OldValue,
660
- newValue: field.NewValue
662
+ newValue: field.NewValue,
661
663
  };
662
664
  }
663
665
  if (change.Type === 'Update')
@@ -686,11 +688,11 @@ class ExternalChangeDetectorEngine extends core_1.BaseEngine {
686
688
  return rc;
687
689
  }
688
690
  else {
689
- throw new Error("Failed to save Record Change record: " + rc.LatestResult?.Message);
691
+ throw new Error('Failed to save Record Change record: ' + rc.LatestResult?.Message);
690
692
  }
691
693
  }
692
694
  catch (e) {
693
- (0, core_1.LogError)(e);
695
+ (0, global_1.LogError)(e);
694
696
  return null;
695
697
  }
696
698
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChangeDetector.js","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChangeDetector.js","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/external-change-detection",
3
- "version": "2.111.0",
3
+ "version": "2.112.0",
4
4
  "description": "Library used by server side applications to determine if changes have been made to entities by external systems/integrations",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,10 +19,9 @@
19
19
  "typescript": "^5.4.5"
20
20
  },
21
21
  "dependencies": {
22
- "@memberjunction/core": "2.111.0",
23
- "@memberjunction/core-entities": "2.111.0",
24
- "@memberjunction/global": "2.111.0",
25
- "@memberjunction/sqlserver-dataprovider": "2.111.0"
22
+ "@memberjunction/core-entities": "2.112.0",
23
+ "@memberjunction/global": "2.112.0",
24
+ "@memberjunction/sqlserver-dataprovider": "2.112.0"
26
25
  },
27
26
  "repository": {
28
27
  "type": "git",