@memberjunction/integration-engine 5.8.0 → 5.9.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.
@@ -1,10 +1,22 @@
1
- import { type UserInfo } from '@memberjunction/core';
1
+ import { IMetadataProvider, type UserInfo } from '@memberjunction/core';
2
+ import { BaseSingleton } from '@memberjunction/global';
3
+ import { IntegrationEngineBase } from '@memberjunction/integration-engine-base';
4
+ import type { MJCompanyIntegrationEntity, MJCompanyIntegrationEntityMapEntity, MJCompanyIntegrationFieldMapEntity, MJCompanyIntegrationSyncWatermarkEntity, MJIntegrationEntity, MJIntegrationSourceTypeEntity, MJIntegrationObjectEntity, MJIntegrationObjectFieldEntity } from '@memberjunction/core-entities';
2
5
  import type { SyncResult, SyncTriggerType, OnProgressCallback, OnNotificationCallback } from './types.js';
3
6
  /**
4
- * Top-level orchestrator that runs an end-to-end integration sync.
5
- * Coordinates connector, field mapping, match resolution, and entity persistence.
7
+ * Server-side Integration Engine.
8
+ *
9
+ * Wraps IntegrationEngineBase (cached metadata) via composition and provides
10
+ * the full sync orchestration pipeline: fetch → map → match → validate → apply.
11
+ *
12
+ * Pattern mirrors AIEngine wrapping AIEngineBase.
13
+ *
14
+ * Usage:
15
+ * await IntegrationEngine.Instance.Config(false, contextUser);
16
+ * const result = await IntegrationEngine.Instance.RunSync(companyIntegrationID, contextUser);
6
17
  */
7
- export declare class IntegrationOrchestrator {
18
+ export declare class IntegrationEngine extends BaseSingleton<IntegrationEngine> {
19
+ constructor();
8
20
  private readonly fieldMappingEngine;
9
21
  private readonly matchEngine;
10
22
  private readonly watermarkService;
@@ -79,13 +91,19 @@ export declare class IntegrationOrchestrator {
79
91
  */
80
92
  private DeleteRecord;
81
93
  /**
82
- * Builds a CompositeKey for a single ID field.
94
+ * Builds a CompositeKey for a record lookup.
95
+ * Integration tables use the natural PK field from the source system.
83
96
  */
84
97
  private BuildCompositeKey;
85
98
  /**
86
99
  * Sets fields on a BaseEntity instance from a field value map.
87
100
  */
88
101
  private SetEntityFields;
102
+ /**
103
+ * Sets standard integration columns (__mj_integration_*) on target entities.
104
+ * Silently skips if the entity doesn't have these columns (e.g., __mj targets).
105
+ */
106
+ private SetStandardIntegrationFields;
89
107
  /**
90
108
  * Creates or updates a CompanyIntegrationRecordMap entry to track the external↔MJ mapping.
91
109
  */
@@ -122,5 +140,34 @@ export declare class IntegrationOrchestrator {
122
140
  * Invokes the notification callback without propagating exceptions.
123
141
  */
124
142
  private safeNotify;
143
+ protected get Base(): IntegrationEngineBase;
144
+ /**
145
+ * Configures the engine by loading all integration metadata.
146
+ * Delegates to IntegrationEngineBase.Config().
147
+ */
148
+ Config(forceRefresh?: boolean, contextUser?: UserInfo, provider?: IMetadataProvider): Promise<void>;
149
+ get Integrations(): MJIntegrationEntity[];
150
+ get SourceTypes(): MJIntegrationSourceTypeEntity[];
151
+ get CompanyIntegrations(): MJCompanyIntegrationEntity[];
152
+ get EntityMaps(): MJCompanyIntegrationEntityMapEntity[];
153
+ get FieldMaps(): MJCompanyIntegrationFieldMapEntity[];
154
+ get Watermarks(): MJCompanyIntegrationSyncWatermarkEntity[];
155
+ GetIntegrationByID(id: string): MJIntegrationEntity | undefined;
156
+ GetIntegrationByName(name: string): MJIntegrationEntity | undefined;
157
+ GetCompanyIntegrationByID(id: string): MJCompanyIntegrationEntity | undefined;
158
+ GetCompanyIntegrationsByIntegrationID(integrationID: string): MJCompanyIntegrationEntity[];
159
+ GetEntityMapsForCompanyIntegration(companyIntegrationID: string): MJCompanyIntegrationEntityMapEntity[];
160
+ GetFieldMapsForEntityMap(entityMapID: string): MJCompanyIntegrationFieldMapEntity[];
161
+ GetEnabledEntityMaps(companyIntegrationID: string): MJCompanyIntegrationEntityMapEntity[];
162
+ GetIntegrationForCompanyIntegration(companyIntegrationID: string): MJIntegrationEntity | undefined;
163
+ get IntegrationObjects(): MJIntegrationObjectEntity[];
164
+ get IntegrationObjectFields(): MJIntegrationObjectFieldEntity[];
165
+ GetIntegrationObjectsByIntegrationID(integrationID: string): MJIntegrationObjectEntity[];
166
+ GetIntegrationObject(integrationID: string, objectName: string): MJIntegrationObjectEntity | undefined;
167
+ GetIntegrationObjectByID(objectID: string): MJIntegrationObjectEntity | undefined;
168
+ GetIntegrationObjectFields(objectID: string): MJIntegrationObjectFieldEntity[];
169
+ GetActiveIntegrationObjects(integrationID: string): MJIntegrationObjectEntity[];
170
+ GetObjectsInDependencyOrder(integrationID: string): MJIntegrationObjectEntity[];
171
+ static get Instance(): IntegrationEngine;
125
172
  }
126
- //# sourceMappingURL=IntegrationOrchestrator.d.ts.map
173
+ //# sourceMappingURL=IntegrationEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntegrationEngine.d.ts","sourceRoot":"","sources":["../src/IntegrationEngine.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { CompositeKey, Metadata, RunView } from '@memberjunction/core';
2
+ import { BaseSingleton } from '@memberjunction/global';
3
+ import { IntegrationEngineBase } from '@memberjunction/integration-engine-base';
2
4
  import { ClassifyError } from './types.js';
3
5
  import { ConnectorFactory } from './ConnectorFactory.js';
4
6
  import { FieldMappingEngine } from './FieldMappingEngine.js';
@@ -7,11 +9,20 @@ import { WatermarkService } from './WatermarkService.js';
7
9
  /** Default batch size for fetching records from external systems */
8
10
  const DEFAULT_BATCH_SIZE = 200;
9
11
  /**
10
- * Top-level orchestrator that runs an end-to-end integration sync.
11
- * Coordinates connector, field mapping, match resolution, and entity persistence.
12
+ * Server-side Integration Engine.
13
+ *
14
+ * Wraps IntegrationEngineBase (cached metadata) via composition and provides
15
+ * the full sync orchestration pipeline: fetch → map → match → validate → apply.
16
+ *
17
+ * Pattern mirrors AIEngine wrapping AIEngineBase.
18
+ *
19
+ * Usage:
20
+ * await IntegrationEngine.Instance.Config(false, contextUser);
21
+ * const result = await IntegrationEngine.Instance.RunSync(companyIntegrationID, contextUser);
12
22
  */
13
- export class IntegrationOrchestrator {
23
+ export class IntegrationEngine extends BaseSingleton {
14
24
  constructor() {
25
+ super();
15
26
  this.fieldMappingEngine = new FieldMappingEngine();
16
27
  this.matchEngine = new MatchEngine();
17
28
  this.watermarkService = new WatermarkService();
@@ -34,18 +45,18 @@ export class IntegrationOrchestrator {
34
45
  */
35
46
  async RunSync(companyIntegrationID, contextUser, triggerType = 'Manual', onProgress, onNotification) {
36
47
  const lockKey = companyIntegrationID.toLowerCase();
37
- const existing = IntegrationOrchestrator.activeSyncs.get(lockKey);
48
+ const existing = IntegrationEngine.activeSyncs.get(lockKey);
38
49
  if (existing) {
39
- console.warn(`[IntegrationOrchestrator] Sync already running for ${lockKey}, waiting...`);
50
+ console.warn(`[IntegrationEngine] Sync already running for ${lockKey}, waiting...`);
40
51
  return existing;
41
52
  }
42
53
  const syncPromise = this.executeSyncInternal(companyIntegrationID, contextUser, triggerType, onProgress, onNotification);
43
- IntegrationOrchestrator.activeSyncs.set(lockKey, syncPromise);
54
+ IntegrationEngine.activeSyncs.set(lockKey, syncPromise);
44
55
  try {
45
56
  return await syncPromise;
46
57
  }
47
58
  finally {
48
- IntegrationOrchestrator.activeSyncs.delete(lockKey);
59
+ IntegrationEngine.activeSyncs.delete(lockKey);
49
60
  }
50
61
  }
51
62
  /**
@@ -69,7 +80,7 @@ export class IntegrationOrchestrator {
69
80
  */
70
81
  async LoadRunConfiguration(companyIntegrationID, contextUser) {
71
82
  const rv = new RunView();
72
- const [ciResult, entityMapsResult, integrationsResult, sourceTypesResult] = await rv.RunViews([
83
+ const [ciResult, entityMapsResult, integrationsResult] = await rv.RunViews([
73
84
  {
74
85
  EntityName: 'MJ: Company Integrations',
75
86
  ExtraFilter: `ID='${companyIntegrationID}'`,
@@ -87,11 +98,6 @@ export class IntegrationOrchestrator {
87
98
  ExtraFilter: '',
88
99
  ResultType: 'entity_object',
89
100
  },
90
- {
91
- EntityName: 'MJ: Integration Source Types',
92
- ExtraFilter: `Status='Active'`,
93
- ResultType: 'entity_object',
94
- },
95
101
  ], contextUser);
96
102
  const companyIntegration = ciResult.Results[0];
97
103
  if (!companyIntegration) {
@@ -102,7 +108,7 @@ export class IntegrationOrchestrator {
102
108
  if (!integration) {
103
109
  throw new Error(`Integration not found for CompanyIntegration: ${companyIntegrationID}`);
104
110
  }
105
- const connector = ConnectorFactory.Resolve(integration, sourceTypesResult.Results);
111
+ const connector = ConnectorFactory.Resolve(integration);
106
112
  return {
107
113
  companyIntegration,
108
114
  entityMaps: entityMapsResult.Results,
@@ -146,8 +152,24 @@ export class IntegrationOrchestrator {
146
152
  const totalMaps = config.entityMaps.length;
147
153
  for (let i = 0; i < totalMaps; i++) {
148
154
  const entityMap = config.entityMaps[i];
149
- const mapResult = await this.ProcessSingleEntityMap(config, entityMap, run, contextUser, i, totalMaps, onProgress);
150
- this.MergeResult(aggregate, mapResult);
155
+ try {
156
+ const mapResult = await this.ProcessSingleEntityMap(config, entityMap, run, contextUser, i, totalMaps, onProgress);
157
+ this.MergeResult(aggregate, mapResult);
158
+ }
159
+ catch (err) {
160
+ const objName = entityMap.ExternalObjectName ?? String(entityMap.Get('ID'));
161
+ const errMsg = err instanceof Error ? err.message : String(err);
162
+ console.error(`[IntegrationEngine] Entity map '${objName}' failed: ${errMsg}`);
163
+ aggregate.RecordsErrored++;
164
+ aggregate.Errors.push({
165
+ ExternalID: objName,
166
+ ChangeType: 'Skip',
167
+ ErrorMessage: errMsg,
168
+ ErrorCode: 'CONNECTOR_ERROR',
169
+ Severity: 'Critical',
170
+ ExternalRecord: { ExternalID: objName, ObjectType: objName, Fields: {} },
171
+ });
172
+ }
151
173
  }
152
174
  return aggregate;
153
175
  }
@@ -163,7 +185,7 @@ export class IntegrationOrchestrator {
163
185
  if (initialWatermark && watermark) {
164
186
  const watermarkType = (watermark.WatermarkType ?? 'Timestamp');
165
187
  if (!this.watermarkService.ValidateWatermark(initialWatermark, watermarkType)) {
166
- console.warn(`[IntegrationOrchestrator] Invalid watermark '${initialWatermark}' for EntityMap ${entityMap.Get('ID')}, resetting to full fetch`);
188
+ console.warn(`[IntegrationEngine] Invalid watermark '${initialWatermark}' for EntityMap ${entityMap.Get('ID')}, resetting to full fetch`);
167
189
  initialWatermark = null;
168
190
  }
169
191
  }
@@ -192,7 +214,7 @@ export class IntegrationOrchestrator {
192
214
  // A7: Batch size enforcement — truncate if connector returns more than MaxBatchSize
193
215
  let batchRecords = batch.Records;
194
216
  if (batchRecords.length > this.MaxBatchSize) {
195
- console.warn(`[IntegrationOrchestrator] Connector returned ${batchRecords.length} records, exceeding MaxBatchSize of ${this.MaxBatchSize}. Truncating.`);
217
+ console.warn(`[IntegrationEngine] Connector returned ${batchRecords.length} records, exceeding MaxBatchSize of ${this.MaxBatchSize}. Truncating.`);
196
218
  batchRecords = batchRecords.slice(0, this.MaxBatchSize);
197
219
  }
198
220
  const mapped = this.fieldMappingEngine.Apply(batchRecords, fieldMaps, entityMap.Entity);
@@ -297,13 +319,15 @@ export class IntegrationOrchestrator {
297
319
  const entity = await md.GetEntityObject(record.MJEntityName, contextUser);
298
320
  entity.NewRecord();
299
321
  this.SetEntityFields(entity, record.MappedFields);
322
+ this.SetStandardIntegrationFields(entity, record);
300
323
  // A5: Pre-write validation
301
324
  this.validateEntity(entity, record.MJEntityName);
302
325
  const saved = await entity.Save();
303
326
  if (!saved) {
304
327
  throw new Error(`Failed to create ${record.MJEntityName} record`);
305
328
  }
306
- await this.SaveRecordMap(companyIntegration.Get('ID'), record.ExternalRecord.ExternalID, entityMap.EntityID, entity.Get('ID'), contextUser);
329
+ // Use the external ID as the entity record identifier in the record map
330
+ await this.SaveRecordMap(companyIntegration.Get('ID'), record.ExternalRecord.ExternalID, entityMap.EntityID, record.ExternalRecord.ExternalID, contextUser);
307
331
  }
308
332
  /**
309
333
  * Updates an existing MJ record with pre-write validation.
@@ -314,11 +338,15 @@ export class IntegrationOrchestrator {
314
338
  }
315
339
  const md = new Metadata();
316
340
  const entity = await md.GetEntityObject(record.MJEntityName, contextUser);
317
- const loaded = await entity.InnerLoad(this.BuildCompositeKey(record.MatchedMJRecordID));
341
+ // Use the entity's actual PK field (SourceRecordID for integration tables, ID for __mj targets)
342
+ const entityInfo = md.Entities.find(e => e.Name === record.MJEntityName);
343
+ const pkFieldName = entityInfo?.FirstPrimaryKey?.Name ?? 'ID';
344
+ const loaded = await entity.InnerLoad(this.BuildCompositeKey(record.MatchedMJRecordID, pkFieldName));
318
345
  if (!loaded) {
319
346
  throw new Error(`Failed to load ${record.MJEntityName} record ${record.MatchedMJRecordID}`);
320
347
  }
321
348
  this.SetEntityFields(entity, record.MappedFields);
349
+ this.SetStandardIntegrationFields(entity, record);
322
350
  // A5: Pre-write validation
323
351
  this.validateEntity(entity, record.MJEntityName);
324
352
  const saved = await entity.Save();
@@ -350,7 +378,9 @@ export class IntegrationOrchestrator {
350
378
  return;
351
379
  const md = new Metadata();
352
380
  const entity = await md.GetEntityObject(record.MJEntityName, contextUser);
353
- const loaded = await entity.InnerLoad(this.BuildCompositeKey(record.MatchedMJRecordID));
381
+ const entityInfo = md.Entities.find(e => e.Name === record.MJEntityName);
382
+ const pkFieldName = entityInfo?.FirstPrimaryKey?.Name ?? 'ID';
383
+ const loaded = await entity.InnerLoad(this.BuildCompositeKey(record.MatchedMJRecordID, pkFieldName));
354
384
  if (!loaded) {
355
385
  throw new Error(`Failed to load ${record.MJEntityName} for deletion: ${record.MatchedMJRecordID}`);
356
386
  }
@@ -360,11 +390,12 @@ export class IntegrationOrchestrator {
360
390
  }
361
391
  }
362
392
  /**
363
- * Builds a CompositeKey for a single ID field.
393
+ * Builds a CompositeKey for a record lookup.
394
+ * Integration tables use the natural PK field from the source system.
364
395
  */
365
- BuildCompositeKey(id) {
396
+ BuildCompositeKey(id, fieldName = 'ID') {
366
397
  const key = new CompositeKey();
367
- key.KeyValuePairs.push({ FieldName: 'ID', Value: id });
398
+ key.KeyValuePairs.push({ FieldName: fieldName, Value: id });
368
399
  return key;
369
400
  }
370
401
  /**
@@ -375,6 +406,20 @@ export class IntegrationOrchestrator {
375
406
  entity.Set(fieldName, value);
376
407
  }
377
408
  }
409
+ /**
410
+ * Sets standard integration columns (__mj_integration_*) on target entities.
411
+ * Silently skips if the entity doesn't have these columns (e.g., __mj targets).
412
+ */
413
+ SetStandardIntegrationFields(entity, _record) {
414
+ const fieldNames = entity.Fields?.map(f => f.Name) ?? [];
415
+ const hasField = (name) => fieldNames.includes(name);
416
+ if (hasField('__mj_integration_LastSyncedAt')) {
417
+ entity.Set('__mj_integration_LastSyncedAt', new Date().toISOString());
418
+ }
419
+ if (hasField('__mj_integration_SyncStatus')) {
420
+ entity.Set('__mj_integration_SyncStatus', 'Active');
421
+ }
422
+ }
378
423
  /**
379
424
  * Creates or updates a CompanyIntegrationRecordMap entry to track the external↔MJ mapping.
380
425
  */
@@ -541,8 +586,92 @@ export class IntegrationOrchestrator {
541
586
  callback(notification);
542
587
  }
543
588
  catch (notifyErr) {
544
- console.warn('[IntegrationOrchestrator] Notification callback threw:', notifyErr);
589
+ console.warn('[IntegrationEngine] Notification callback threw:', notifyErr);
545
590
  }
546
591
  }
592
+ // ── Composition: delegate metadata to IntegrationEngineBase ───────
593
+ get Base() {
594
+ return IntegrationEngineBase.Instance;
595
+ }
596
+ /**
597
+ * Configures the engine by loading all integration metadata.
598
+ * Delegates to IntegrationEngineBase.Config().
599
+ */
600
+ async Config(forceRefresh, contextUser, provider) {
601
+ await IntegrationEngineBase.Instance.Config(forceRefresh ?? false, contextUser, provider);
602
+ }
603
+ // ── Metadata Accessors (delegated to Base) ────────────────────────
604
+ get Integrations() {
605
+ return this.Base.Integrations;
606
+ }
607
+ get SourceTypes() {
608
+ return this.Base.SourceTypes;
609
+ }
610
+ get CompanyIntegrations() {
611
+ return this.Base.CompanyIntegrations;
612
+ }
613
+ get EntityMaps() {
614
+ return this.Base.EntityMaps;
615
+ }
616
+ get FieldMaps() {
617
+ return this.Base.FieldMaps;
618
+ }
619
+ get Watermarks() {
620
+ return this.Base.Watermarks;
621
+ }
622
+ // ── Convenience Lookups (delegated to Base) ───────────────────────
623
+ GetIntegrationByID(id) {
624
+ return this.Base.GetIntegrationByID(id);
625
+ }
626
+ GetIntegrationByName(name) {
627
+ return this.Base.GetIntegrationByName(name);
628
+ }
629
+ GetCompanyIntegrationByID(id) {
630
+ return this.Base.GetCompanyIntegrationByID(id);
631
+ }
632
+ GetCompanyIntegrationsByIntegrationID(integrationID) {
633
+ return this.Base.GetCompanyIntegrationsByIntegrationID(integrationID);
634
+ }
635
+ GetEntityMapsForCompanyIntegration(companyIntegrationID) {
636
+ return this.Base.GetEntityMapsForCompanyIntegration(companyIntegrationID);
637
+ }
638
+ GetFieldMapsForEntityMap(entityMapID) {
639
+ return this.Base.GetFieldMapsForEntityMap(entityMapID);
640
+ }
641
+ GetEnabledEntityMaps(companyIntegrationID) {
642
+ return this.Base.GetEnabledEntityMaps(companyIntegrationID);
643
+ }
644
+ GetIntegrationForCompanyIntegration(companyIntegrationID) {
645
+ return this.Base.GetIntegrationForCompanyIntegration(companyIntegrationID);
646
+ }
647
+ // ── Integration Object Metadata (delegated to Base) ──────────────
648
+ get IntegrationObjects() {
649
+ return this.Base.IntegrationObjects;
650
+ }
651
+ get IntegrationObjectFields() {
652
+ return this.Base.IntegrationObjectFields;
653
+ }
654
+ GetIntegrationObjectsByIntegrationID(integrationID) {
655
+ return this.Base.GetIntegrationObjectsByIntegrationID(integrationID);
656
+ }
657
+ GetIntegrationObject(integrationID, objectName) {
658
+ return this.Base.GetIntegrationObject(integrationID, objectName);
659
+ }
660
+ GetIntegrationObjectByID(objectID) {
661
+ return this.Base.GetIntegrationObjectByID(objectID);
662
+ }
663
+ GetIntegrationObjectFields(objectID) {
664
+ return this.Base.GetIntegrationObjectFields(objectID);
665
+ }
666
+ GetActiveIntegrationObjects(integrationID) {
667
+ return this.Base.GetActiveIntegrationObjects(integrationID);
668
+ }
669
+ GetObjectsInDependencyOrder(integrationID) {
670
+ return this.Base.GetObjectsInDependencyOrder(integrationID);
671
+ }
672
+ // ── Singleton ─────────────────────────────────────────────────────
673
+ static get Instance() {
674
+ return IntegrationEngine.getInstance();
675
+ }
547
676
  }
548
- //# sourceMappingURL=IntegrationOrchestrator.js.map
677
+ //# sourceMappingURL=IntegrationEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntegrationEngine.js","sourceRoot":"","sources":["../src/IntegrationEngine.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,7 @@ export declare class MatchEngine {
36
36
  private FindExistingRecord;
37
37
  /**
38
38
  * Searches for an existing MJ record using key field values.
39
+ * Returns the value of the entity's primary key field (natural PK from source system).
39
40
  */
40
41
  private FindByKeyFields;
41
42
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MatchEngine.d.ts","sourceRoot":"","sources":["../src/MatchEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACnG,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,YAAY,CAAC;AAEnE;;;GAGG;AACH,qBAAa,WAAW;IACpB;;;;;;;;;OASG;IACU,OAAO,CAChB,OAAO,EAAE,YAAY,EAAE,EACvB,SAAS,EAAE,4BAA4B,EACvC,SAAS,EAAE,2BAA2B,EAAE,EACxC,WAAW,EAAE,QAAQ,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC;IAkB1B;;OAEG;YACW,mBAAmB;IAsBjC;;OAEG;YACW,oBAAoB;IAmBlC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;OAGG;YACW,kBAAkB;IAmBhC;;OAEG;YACW,eAAe;IAqB7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;YACW,kBAAkB;CAsBnC"}
1
+ {"version":3,"file":"MatchEngine.d.ts","sourceRoot":"","sources":["../src/MatchEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACnG,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,YAAY,CAAC;AAEnE;;;GAGG;AACH,qBAAa,WAAW;IACpB;;;;;;;;;OASG;IACU,OAAO,CAChB,OAAO,EAAE,YAAY,EAAE,EACvB,SAAS,EAAE,4BAA4B,EACvC,SAAS,EAAE,2BAA2B,EAAE,EACxC,WAAW,EAAE,QAAQ,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC;IAkB1B;;OAEG;YACW,mBAAmB;IAsBjC;;OAEG;YACW,oBAAoB;IAmBlC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;OAGG;YACW,kBAAkB;IAmBhC;;;OAGG;YACW,eAAe;IA0B7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;YACW,kBAAkB;CAsBnC"}
@@ -1,4 +1,4 @@
1
- import { RunView } from '@memberjunction/core';
1
+ import { Metadata, RunView } from '@memberjunction/core';
2
2
  /**
3
3
  * Resolves mapped records against existing MJ data to determine
4
4
  * whether each record should be Created, Updated, Skipped, or Deleted.
@@ -70,22 +70,27 @@ export class MatchEngine {
70
70
  }
71
71
  /**
72
72
  * Searches for an existing MJ record using key field values.
73
+ * Returns the value of the entity's primary key field (natural PK from source system).
73
74
  */
74
75
  async FindByKeyFields(record, keyFields, contextUser) {
75
76
  const filterClauses = this.BuildKeyFieldFilter(record, keyFields);
76
77
  if (filterClauses.length === 0)
77
78
  return null;
79
+ // Look up the entity's PK field name from metadata
80
+ const md = new Metadata();
81
+ const entityInfo = md.Entities.find(e => e.Name === record.MJEntityName);
82
+ const pkFieldName = entityInfo?.FirstPrimaryKey?.Name ?? 'ID';
78
83
  const rv = new RunView();
79
84
  const result = await rv.RunView({
80
85
  EntityName: record.MJEntityName,
81
86
  ExtraFilter: filterClauses.join(' AND '),
82
- Fields: ['ID'],
87
+ Fields: [pkFieldName],
83
88
  MaxRows: 1,
84
89
  ResultType: 'simple',
85
90
  }, contextUser);
86
91
  if (!result.Success || result.Results.length === 0)
87
92
  return null;
88
- return result.Results[0].ID;
93
+ return result.Results[0][pkFieldName];
89
94
  }
90
95
  /**
91
96
  * Builds a SQL filter clause from key field values on a mapped record.
@@ -1 +1 @@
1
- {"version":3,"file":"MatchEngine.js","sourceRoot":"","sources":["../src/MatchEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,MAAM,sBAAsB,CAAC;AAI9D;;;GAGG;AACH,MAAM,OAAO,WAAW;IACpB;;;;;;;;;OASG;IACI,KAAK,CAAC,OAAO,CAChB,OAAuB,EACvB,SAAuC,EACvC,SAAwC,EACxC,WAAqB;QAErB,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QAClF,MAAM,kBAAkB,GAAG,SAAS,CAAC,kBAAwC,CAAC;QAE9E,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC3C,MAAM,EACN,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,WAAW,CACd,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC7B,MAAoB,EACpB,SAAuC,EACvC,SAAwC,EACxC,kBAAsC,EACtC,WAAqB;QAErB,IAAI,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAC5C,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAC5C,CAAC;QAEF,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QAED,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB,CAC9B,MAAoB,EACpB,SAAuC,EACvC,WAAqB;QAErB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAC5C,SAAS,CAAC,oBAAoB,EAC9B,MAAM,CAAC,cAAc,CAAC,UAAU,EAChC,SAAS,CAAC,QAAQ,EAClB,WAAW,CACd,CAAC;QAEF,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;QAC9E,CAAC;QAED,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,qBAAqB,CACzB,MAAoB,EACpB,UAAkB,EAClB,kBAAsC;QAEtC,IAAI,kBAAkB,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;QAC5E,CAAC;QACD,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,kBAAkB,CAC5B,MAAoB,EACpB,SAAuC,EACvC,SAAwC,EACxC,WAAqB;QAErB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;YAC5E,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAC1B,SAAS,CAAC,oBAAoB,EAC9B,MAAM,CAAC,cAAc,CAAC,UAAU,EAChC,SAAS,CAAC,QAAQ,EAClB,WAAW,CACd,CAAC;IACN,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CACzB,MAAoB,EACpB,SAAwC,EACxC,WAAqB;QAErB,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAE5C,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAiB;YAC5C,UAAU,EAAE,MAAM,CAAC,YAAY;YAC/B,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YACxC,MAAM,EAAE,CAAC,IAAI,CAAC;YACd,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,QAAQ;SACvB,EAAE,WAAW,CAAC,CAAC;QAEhB,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAChE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,mBAAmB,CACvB,MAAoB,EACpB,SAAwC;QAExC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;YAC3D,IAAI,KAAK,IAAI,IAAI;gBAAE,SAAS;YAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,oBAAoB,QAAQ,OAAO,GAAG,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAC5B,oBAA4B,EAC5B,UAAkB,EAClB,QAAgB,EAChB,WAAqB;QAErB,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAA6B;YACxD,UAAU,EAAE,qCAAqC;YACjD,WAAW,EACP,yBAAyB,oBAAoB,IAAI;gBACjD,+BAA+B,iBAAiB,IAAI;gBACpD,iBAAiB,QAAQ,GAAG;YAChC,MAAM,EAAE,CAAC,gBAAgB,CAAC;YAC1B,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,QAAQ;SACvB,EAAE,WAAW,CAAC,CAAC;QAEhB,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAChE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;IAC5C,CAAC;CACJ"}
1
+ {"version":3,"file":"MatchEngine.js","sourceRoot":"","sources":["../src/MatchEngine.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,12 +3,14 @@ export type { SyncDirection, SyncTriggerType, WatermarkType, ConflictResolution,
3
3
  export { IsRetryableError, ClassifyError } from './types.js';
4
4
  export type { TransformType, TransformOnError, TransformStep, TransformConfig, DirectConfig, RegexConfig, SplitConfig, CombineConfig, LookupConfig, FormatConfig, CoerceConfig, SubstringConfig, CustomConfig, } from './transforms.js';
5
5
  export { BaseIntegrationConnector, WithTimeout, DEFAULT_OPERATION_TIMEOUTS, } from './BaseIntegrationConnector.js';
6
- export type { ConnectionTestResult, ExternalObjectSchema, ExternalFieldSchema, FetchContext, FetchBatchResult, OperationTimeouts, } from './BaseIntegrationConnector.js';
6
+ export type { ConnectionTestResult, ExternalObjectSchema, ExternalFieldSchema, FetchContext, FetchBatchResult, OperationTimeouts, DefaultIntegrationConfig, DefaultObjectConfig, } from './BaseIntegrationConnector.js';
7
+ export { BaseRESTIntegrationConnector } from './BaseRESTIntegrationConnector.js';
8
+ export type { RESTAuthContext, RESTResponse, PaginationState, PaginationType, } from './BaseRESTIntegrationConnector.js';
7
9
  export { ConnectorFactory } from './ConnectorFactory.js';
8
10
  export { FieldMappingEngine } from './FieldMappingEngine.js';
9
11
  export { MatchEngine } from './MatchEngine.js';
10
12
  export { WatermarkService } from './WatermarkService.js';
11
13
  export { WithRetry, DEFAULT_RETRY_CONFIG } from './RetryRunner.js';
12
14
  export type { RetryConfig } from './RetryRunner.js';
13
- export { IntegrationOrchestrator } from './IntegrationOrchestrator.js';
15
+ export { IntegrationEngine } from './IntegrationEngine.js';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,sBAAsB,EACtB,4BAA4B,EAC5B,2BAA2B,EAC3B,gCAAgC,GACnC,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACR,aAAa,EACb,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,GACzB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG7D,YAAY,EACR,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,YAAY,GACf,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACH,wBAAwB,EACxB,WAAW,EACX,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACR,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GACpB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,sBAAsB,EACtB,4BAA4B,EAC5B,2BAA2B,EAC3B,gCAAgC,GACnC,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACR,aAAa,EACb,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,GACzB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG7D,YAAY,EACR,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,YAAY,GACf,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACH,wBAAwB,EACxB,WAAW,EACX,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACR,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,wBAAwB,EACxB,mBAAmB,GACtB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,YAAY,EACR,eAAe,EACf,YAAY,EACZ,eAAe,EACf,cAAc,GACjB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -2,6 +2,8 @@
2
2
  export { IsRetryableError, ClassifyError } from './types.js';
3
3
  // Connector
4
4
  export { BaseIntegrationConnector, WithTimeout, DEFAULT_OPERATION_TIMEOUTS, } from './BaseIntegrationConnector.js';
5
+ // REST Connector Base
6
+ export { BaseRESTIntegrationConnector } from './BaseRESTIntegrationConnector.js';
5
7
  // Factory
6
8
  export { ConnectorFactory } from './ConnectorFactory.js';
7
9
  // Engines
@@ -11,6 +13,7 @@ export { MatchEngine } from './MatchEngine.js';
11
13
  export { WatermarkService } from './WatermarkService.js';
12
14
  // Retry
13
15
  export { WithRetry, DEFAULT_RETRY_CONFIG } from './RetryRunner.js';
14
- // Orchestrator
15
- export { IntegrationOrchestrator } from './IntegrationOrchestrator.js';
16
+ // Integration Engine (server-side, wraps IntegrationEngineBase via composition)
17
+ // NOTE: For IntegrationEngineBase (client-safe metadata), import from @memberjunction/integration-engine-base
18
+ export { IntegrationEngine } from './IntegrationEngine.js';
16
19
  //# 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":"AAoCA,+BAA+B;AAC/B,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAmB7D,YAAY;AACZ,OAAO,EACH,wBAAwB,EACxB,WAAW,EACX,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AAUvC,UAAU;AACV,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,UAAU;AACV,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,WAAW;AACX,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,QAAQ;AACR,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGnE,eAAe;AACf,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoCA,+BAA+B;AAC/B,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAmB7D,YAAY;AACZ,OAAO,EACH,wBAAwB,EACxB,WAAW,EACX,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AAYvC,sBAAsB;AACtB,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAQjF,UAAU;AACV,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,UAAU;AACV,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,WAAW;AACX,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,QAAQ;AACR,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGnE,gFAAgF;AAChF,8GAA8G;AAC9G,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -137,6 +137,8 @@ export interface SourceObjectInfo {
137
137
  ExternalName: string;
138
138
  /** Human-readable label (e.g., "Deals", "Members"). */
139
139
  ExternalLabel: string;
140
+ /** Human-readable description of the object's purpose (used for sp_addextendedproperty on the table). */
141
+ Description?: string;
140
142
  /** Fields/columns in the source object. */
141
143
  Fields: SourceFieldInfo[];
142
144
  /** Primary key field name(s). */
@@ -150,6 +152,8 @@ export interface SourceFieldInfo {
150
152
  Name: string;
151
153
  /** Human-readable label. */
152
154
  Label: string;
155
+ /** Human-readable description of the field's purpose (used for sp_addextendedproperty on the column). */
156
+ Description?: string;
153
157
  /** Generic source type (e.g., "string", "integer", "datetime", "boolean"). */
154
158
  SourceType: string;
155
159
  /** Whether the field is required/non-nullable. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}