@memberjunction/core 5.30.0 → 5.31.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.
Files changed (69) hide show
  1. package/dist/generic/InMemoryLocalStorageProvider.d.ts +12 -6
  2. package/dist/generic/InMemoryLocalStorageProvider.d.ts.map +1 -1
  3. package/dist/generic/InMemoryLocalStorageProvider.js +25 -5
  4. package/dist/generic/InMemoryLocalStorageProvider.js.map +1 -1
  5. package/dist/generic/QueryCacheManager.js +2 -1
  6. package/dist/generic/QueryCacheManager.js.map +1 -1
  7. package/dist/generic/RegisterForStartup.d.ts +26 -0
  8. package/dist/generic/RegisterForStartup.d.ts.map +1 -1
  9. package/dist/generic/RegisterForStartup.js +47 -7
  10. package/dist/generic/RegisterForStartup.js.map +1 -1
  11. package/dist/generic/authEvaluator.d.ts +115 -11
  12. package/dist/generic/authEvaluator.d.ts.map +1 -1
  13. package/dist/generic/authEvaluator.js +151 -24
  14. package/dist/generic/authEvaluator.js.map +1 -1
  15. package/dist/generic/baseEngine.d.ts +22 -0
  16. package/dist/generic/baseEngine.d.ts.map +1 -1
  17. package/dist/generic/baseEngine.js +30 -2
  18. package/dist/generic/baseEngine.js.map +1 -1
  19. package/dist/generic/baseEntity.d.ts +61 -4
  20. package/dist/generic/baseEntity.d.ts.map +1 -1
  21. package/dist/generic/baseEntity.js +205 -34
  22. package/dist/generic/baseEntity.js.map +1 -1
  23. package/dist/generic/databaseProviderBase.d.ts +8 -0
  24. package/dist/generic/databaseProviderBase.d.ts.map +1 -1
  25. package/dist/generic/databaseProviderBase.js +10 -0
  26. package/dist/generic/databaseProviderBase.js.map +1 -1
  27. package/dist/generic/entityInfo.d.ts +24 -0
  28. package/dist/generic/entityInfo.d.ts.map +1 -1
  29. package/dist/generic/entityInfo.js +29 -3
  30. package/dist/generic/entityInfo.js.map +1 -1
  31. package/dist/generic/interfaces.d.ts +59 -5
  32. package/dist/generic/interfaces.d.ts.map +1 -1
  33. package/dist/generic/interfaces.js +6 -0
  34. package/dist/generic/interfaces.js.map +1 -1
  35. package/dist/generic/localCacheManager.d.ts +38 -3
  36. package/dist/generic/localCacheManager.d.ts.map +1 -1
  37. package/dist/generic/localCacheManager.js +156 -46
  38. package/dist/generic/localCacheManager.js.map +1 -1
  39. package/dist/generic/metadata.d.ts +2 -1
  40. package/dist/generic/metadata.d.ts.map +1 -1
  41. package/dist/generic/metadata.js +45 -42
  42. package/dist/generic/metadata.js.map +1 -1
  43. package/dist/generic/metadataUtil.js +1 -1
  44. package/dist/generic/metadataUtil.js.map +1 -1
  45. package/dist/generic/permissionInterfaces.d.ts +19 -14
  46. package/dist/generic/permissionInterfaces.d.ts.map +1 -1
  47. package/dist/generic/permissionInterfaces.js +3 -3
  48. package/dist/generic/permissionInterfaces.js.map +1 -1
  49. package/dist/generic/providerBase.d.ts +26 -39
  50. package/dist/generic/providerBase.d.ts.map +1 -1
  51. package/dist/generic/providerBase.js +202 -201
  52. package/dist/generic/providerBase.js.map +1 -1
  53. package/dist/generic/queryInfo.js +20 -20
  54. package/dist/generic/queryInfo.js.map +1 -1
  55. package/dist/generic/runQuerySQLFilterImplementations.d.ts.map +1 -1
  56. package/dist/generic/runQuerySQLFilterImplementations.js +30 -9
  57. package/dist/generic/runQuerySQLFilterImplementations.js.map +1 -1
  58. package/dist/generic/securityInfo.d.ts +14 -7
  59. package/dist/generic/securityInfo.d.ts.map +1 -1
  60. package/dist/generic/securityInfo.js +26 -25
  61. package/dist/generic/securityInfo.js.map +1 -1
  62. package/dist/generic/util.d.ts +35 -0
  63. package/dist/generic/util.d.ts.map +1 -1
  64. package/dist/generic/util.js +99 -10
  65. package/dist/generic/util.js.map +1 -1
  66. package/dist/index.js +1 -1
  67. package/dist/index.js.map +1 -1
  68. package/package.json +2 -2
  69. package/readme.md +50 -6
@@ -1 +1 @@
1
- {"version":3,"file":"baseEntity.d.ts","sourceRoot":"","sources":["../../src/generic/baseEntity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseEntity.d.ts","sourceRoot":"","sources":["../../src/generic/baseEntity.ts"],"names":[],"mappings":"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"}
@@ -520,10 +520,34 @@ export class BaseEntity {
520
520
  constructor(Entity, Provider = null) {
521
521
  /**
522
522
  * Runtime field instances for this record — one `EntityField` per column in `_EntityInfo.Fields`.
523
- * Each holds the current value, old value, dirty state, and per-field validation. Populated
524
- * in `init()` and used as the primary data store for Get/Set/Save/validate.
523
+ * Each holds the current value, old value, dirty state, and per-field validation.
524
+ *
525
+ * **Lazy hydration**: Fields are NOT built up-front in the constructor / `init()`. Instead they
526
+ * are constructed on first need by `hydrateFieldsIfNeeded()`. Until then, this array is empty
527
+ * and reads come from `_raw`. This makes constructing entities from cache data near-instant —
528
+ * the per-row Field allocation cost (the dominant overhead for engine warm-loads) only happens
529
+ * if a consumer actually mutates the record or invokes a Field-walking operation (Save, Validate,
530
+ * Dirty, .Fields accessor, etc.).
531
+ *
532
+ * Always read via the `Fields` getter — it auto-hydrates. Direct `_Fields` reads from inside
533
+ * `BaseEntity` are reserved for paths that have already triggered hydration or paths that
534
+ * deliberately want to inspect hydration state (e.g., `Dirty` getter).
525
535
  */
526
536
  this._Fields = [];
537
+ /**
538
+ * Tracks whether `_Fields` has been populated. `false` while in "raw mode" (data accessible
539
+ * via `_raw` but no EntityField instances built yet); flips to `true` after the first call to
540
+ * `hydrateFieldsIfNeeded()`. One-way transition.
541
+ */
542
+ this._fieldsHydrated = false;
543
+ /**
544
+ * Raw data populated by `LoadFromData()` BEFORE field hydration. When non-null and
545
+ * `_fieldsHydrated === false`, `Get()` reads from this map instead of walking `_Fields`.
546
+ * Cleared/superseded by the hydration step which copies values into actual EntityField
547
+ * instances. Keeping it after hydration would not be useful — `_Fields` becomes the
548
+ * authoritative source.
549
+ */
550
+ this._raw = null;
527
551
  /**
528
552
  * Whether a database record has been loaded into this instance (via `Load`, `NewRecord`,
529
553
  * `LoadFromData`, etc.). Used to gate operations that require loaded state and to distinguish
@@ -703,6 +727,13 @@ export class BaseEntity {
703
727
  * that embed multiple fields if desired.
704
728
  */
705
729
  this._vectors = new Map();
730
+ /**
731
+ * When true, GenerateEmbedding() returns immediately without computing vectors.
732
+ * Set this before calling Save() in batch/sync contexts where embedding computation
733
+ * should be deferred (e.g., CLI sync operations where loading the embedding model
734
+ * per-process is expensive and vectors can be computed later by the API server).
735
+ */
736
+ this._skipEmbeddings = false;
706
737
  this._eventSubject = new Subject();
707
738
  this._EntityInfo = Entity;
708
739
  EntityInfo.AssertEntityActiveStatus(Entity, 'BaseEntity::constructor');
@@ -723,9 +754,10 @@ export class BaseEntity {
723
754
  const parentEntityInfo = this.EntityInfo.ParentEntityInfo;
724
755
  if (!parentEntityInfo)
725
756
  return;
726
- // Create the parent entity via Metadata.Provider for proper class factory
727
- // resolution and provider routing
728
- this._parentEntity = await Metadata.Provider.GetEntityObject(parentEntityInfo.Name, this._contextCurrentUser);
757
+ // Create the parent entity via this entity's provider so multi-provider scenarios
758
+ // route the parent through the same connection — not the global default.
759
+ const parentProvider = this.ProviderToUse;
760
+ this._parentEntity = await parentProvider.GetEntityObject(parentEntityInfo.Name, this._contextCurrentUser);
729
761
  // Recursive: the parent's InitializeParentEntity() was called by GetEntityObject()
730
762
  // Cache the parent field names for O(1) routing lookups
731
763
  this._parentEntityFieldNames = this.EntityInfo.ParentEntityFieldNames;
@@ -795,8 +827,10 @@ export class BaseEntity {
795
827
  * child's data, and recursively discovers further children.
796
828
  */
797
829
  async createAndLinkChildEntity(childEntityName) {
798
- // Create child via Metadata.Provider for proper class factory resolution
799
- const childEntity = await Metadata.Provider.GetEntityObject(childEntityName, this._contextCurrentUser);
830
+ // Create child via this entity's provider so the child shares the same connection
831
+ // (correct in multi-provider scenarios — never the global default).
832
+ const childProvider = this.ProviderToUse;
833
+ const childEntity = await childProvider.GetEntityObject(childEntityName, this._contextCurrentUser);
800
834
  // Wire up the shared instance chain: child's parent IS this entity (same object)
801
835
  // We need to replace the child's auto-initialized parent with our existing instance
802
836
  this.replaceChildParentChain(childEntity);
@@ -992,9 +1026,17 @@ export class BaseEntity {
992
1026
  * Used for raising events within the BaseEntity and can be used by sub-classes to raise events that are specific to the entity.
993
1027
  */
994
1028
  RaiseEvent(type, payload, saveSubType = undefined) {
1029
+ // Resolve the entity's bound provider once so every consumer (local subscribers
1030
+ // AND MJGlobal listeners) receives consistent provider context. This matters in
1031
+ // multi-provider scenarios — listeners like LocalCacheManager / BaseEngine need to
1032
+ // know which provider produced the event to scope cache invalidation, metadata
1033
+ // lookups, and engine state correctly. Cast through unknown because BaseEntity
1034
+ // exposes ProviderToUse as IEntityDataProvider; the event consumers want the
1035
+ // metadata-side view of the same instance.
1036
+ const provider = this.ProviderToUse;
995
1037
  // this is the local event handler that is specific to THIS instance of the entity object
996
1038
  LogDebug(`BaseEntity.RaiseEvent() - ${type === 'save' ? 'save:' + saveSubType : type} event raised for ${this.EntityInfo.Name}, about to call this._eventSubject.next()`);
997
- this._eventSubject.next({ type: type, payload: payload, saveSubType: saveSubType, baseEntity: this });
1039
+ this._eventSubject.next({ type: type, payload: payload, saveSubType: saveSubType, baseEntity: this, provider });
998
1040
  // this next call is to MJGlobal to let everyone who cares knows that we had an event on an entity object
999
1041
  // we broadcast save/delete/load events and their _started counterparts
1000
1042
  const globalEventTypes = ['save', 'delete', 'load_complete', 'save_started', 'delete_started', 'load_started'];
@@ -1004,6 +1046,7 @@ export class BaseEntity {
1004
1046
  event.payload = payload;
1005
1047
  event.type = type;
1006
1048
  event.saveSubType = saveSubType;
1049
+ event.provider = provider;
1007
1050
  LogDebug(`BaseEntity.RaiseEvent() - ${type === 'save' ? 'save:' + saveSubType : type} event raised for ${this.EntityInfo.Name}, about to call MJGlobal.RaiseEvent()`);
1008
1051
  MJGlobal.Instance.RaiseEvent({
1009
1052
  component: this,
@@ -1169,6 +1212,8 @@ export class BaseEntity {
1169
1212
  return this._EntityInfo;
1170
1213
  }
1171
1214
  get Fields() {
1215
+ // Caller wants to walk Fields — promote raw data into real EntityField instances now.
1216
+ this.hydrateFieldsIfNeeded();
1172
1217
  return this._Fields;
1173
1218
  }
1174
1219
  /**
@@ -1180,10 +1225,12 @@ export class BaseEntity {
1180
1225
  if (!fieldName) {
1181
1226
  return null;
1182
1227
  }
1228
+ // Lookup needs an EntityField instance to return — hydrate.
1229
+ this.hydrateFieldsIfNeeded();
1183
1230
  const lcase = fieldName.trim().toLowerCase(); // do this once as we will use it multiple times
1184
1231
  if (this._fieldCache === null) {
1185
1232
  this._fieldCache = new Map();
1186
- for (const f of this.Fields) {
1233
+ for (const f of this._Fields) {
1187
1234
  if (!this._fieldCache.has(f.Name.trim().toLowerCase())) {
1188
1235
  this._fieldCache.set(f.Name.trim().toLowerCase(), f);
1189
1236
  }
@@ -1200,11 +1247,13 @@ export class BaseEntity {
1200
1247
  if (!codeName) {
1201
1248
  return null;
1202
1249
  }
1250
+ // Lookup needs an EntityField instance to return — hydrate.
1251
+ this.hydrateFieldsIfNeeded();
1203
1252
  const lcase = codeName.trim().toLowerCase();
1204
1253
  if (this._codeNameCache === null) {
1205
1254
  this._codeNameCache = new Map();
1206
1255
  // First-write-wins on duplicate code names — matches prior Array.find() behavior
1207
- for (const f of this.Fields) {
1256
+ for (const f of this._Fields) {
1208
1257
  const codeKey = f.CodeName.trim().toLowerCase();
1209
1258
  if (!this._codeNameCache.has(codeKey)) {
1210
1259
  this._codeNameCache.set(codeKey, f);
@@ -1217,8 +1266,13 @@ export class BaseEntity {
1217
1266
  * Returns true if the object is Dirty, meaning something has changed since it was last saved to the database, and false otherwise. For new records, this will always return true.
1218
1267
  */
1219
1268
  get Dirty() {
1220
- return !this.IsSaved ||
1221
- this.Fields.some(f => f.Dirty) ||
1269
+ if (!this.IsSaved)
1270
+ return true;
1271
+ // Raw mode means LoadFromData populated us but no mutation has happened — nothing can be
1272
+ // dirty. Avoid hydrating just to check.
1273
+ if (!this._fieldsHydrated)
1274
+ return this._parentEntity?.Dirty ?? false;
1275
+ return this._Fields.some(f => f.Dirty) ||
1222
1276
  (this._parentEntity?.Dirty ?? false);
1223
1277
  }
1224
1278
  /**
@@ -1331,15 +1385,32 @@ export class BaseEntity {
1331
1385
  if (this._parentEntity && this._parentEntityFieldNames?.has(FieldName)) {
1332
1386
  return this._parentEntity.Get(FieldName); // recursive for N-level chains
1333
1387
  }
1334
- else {
1335
- const field = this.GetFieldByName(FieldName);
1336
- if (field != null) {
1337
- // if the field is a date and the value is a string, convert it to a date
1338
- if (field.EntityFieldInfo.TSType === EntityFieldTSType.Date && (typeof field.Value === 'string' || typeof field.Value === 'number')) {
1339
- field.Value = new Date(field.Value);
1340
- }
1341
- return field.Value;
1388
+ // Raw mode fast path: read directly from the cached data without building EntityField
1389
+ // instances. This is the dominant cost in engine warm-loads — generated typed getters
1390
+ // (e.g. `get Name() { return this.Get('Name'); }`) flow through here, so a consumer that
1391
+ // only iterates and reads (`engine.Models.find(m => m.ID === x).Name`) never triggers
1392
+ // hydration. Cache data uses exact SQL column names so no case-insensitive scan needed.
1393
+ if (!this._fieldsHydrated && this._raw) {
1394
+ const value = this._raw[FieldName];
1395
+ if (value === undefined)
1396
+ return null;
1397
+ // Date conversion mirrors the hydrated path. Mutating _raw to cache the converted
1398
+ // Date avoids reparsing on every read.
1399
+ const fi = this._EntityInfo?.Fields.find(f => f.Name === FieldName);
1400
+ if (fi?.TSType === EntityFieldTSType.Date && (typeof value === 'string' || typeof value === 'number')) {
1401
+ const d = new Date(value);
1402
+ this._raw[FieldName] = d;
1403
+ return d;
1404
+ }
1405
+ return value;
1406
+ }
1407
+ const field = this.GetFieldByName(FieldName);
1408
+ if (field != null) {
1409
+ // if the field is a date and the value is a string, convert it to a date
1410
+ if (field.EntityFieldInfo.TSType === EntityFieldTSType.Date && (typeof field.Value === 'string' || typeof field.Value === 'number')) {
1411
+ field.Value = new Date(field.Value);
1342
1412
  }
1413
+ return field.Value;
1343
1414
  }
1344
1415
  // if we get here, didn't find it
1345
1416
  return null;
@@ -1583,15 +1654,62 @@ export class BaseEntity {
1583
1654
  this._resultHistory = [];
1584
1655
  this._recordLoaded = false;
1585
1656
  this._Fields = [];
1657
+ this._fieldsHydrated = false;
1658
+ this._raw = null;
1586
1659
  this._fieldCache = null;
1587
1660
  this._codeNameCache = null;
1588
- if (this.EntityInfo) {
1589
- for (const rawField of this.EntityInfo.Fields) {
1590
- const key = this.EntityInfo.Name + '.' + rawField.Name;
1591
- // support for sub-classes of the EntityField class
1592
- const newField = MJGlobal.Instance.ClassFactory.CreateInstance(EntityField, key, rawField);
1593
- this.Fields.push(newField);
1661
+ // Field construction is deferred to hydrateFieldsIfNeeded(). Constructor / init() stays
1662
+ // O(1). The work happens on first call to a Field-walking method (Save, Validate, .Fields,
1663
+ // .Set, etc.) — for read-only consumers (e.g. engine cache iteration via typed getters)
1664
+ // it never runs.
1665
+ }
1666
+ /**
1667
+ * Lazily builds `_Fields` from `EntityInfo.Fields` and populates them from `_raw` if present.
1668
+ * Idempotent: subsequent calls are O(1). One-way: once hydrated, the entity stays hydrated for
1669
+ * the rest of its lifetime.
1670
+ *
1671
+ * Called automatically by:
1672
+ * - `Set()` / `SetMany()` (mutation requires Field instances for dirty tracking)
1673
+ * - `Fields` getter (consumer wants the array)
1674
+ * - `GetFieldByName()` / `GetFieldByCodeName()` (lookups)
1675
+ * - `Save()` / `Delete()` / `Validate()` / `ValidateAsync()` (need full Field state)
1676
+ *
1677
+ * Pure readers via the generated `get FieldName()` → `Get('FieldName')` path stay in raw mode
1678
+ * and never trigger hydration.
1679
+ */
1680
+ hydrateFieldsIfNeeded() {
1681
+ if (this._fieldsHydrated)
1682
+ return;
1683
+ this._fieldsHydrated = true;
1684
+ if (!this.EntityInfo)
1685
+ return;
1686
+ // 1. Allocate one EntityField per column. Same construction the old `init()` used to do
1687
+ // up-front — we just deferred it.
1688
+ for (const rawField of this.EntityInfo.Fields) {
1689
+ const key = this.EntityInfo.Name + '.' + rawField.Name;
1690
+ const newField = MJGlobal.Instance.ClassFactory.CreateInstance(EntityField, key, rawField);
1691
+ this._Fields.push(newField);
1692
+ }
1693
+ // 2. If we have raw data from LoadFromData, populate Fields. The first set of each Field
1694
+ // runs through the EntityField setter with `_NeverSet=true`, which simultaneously sets
1695
+ // Value AND OldValue (so the field is not marked dirty). This matches the old
1696
+ // SetMany(replaceOldValues=true) semantics on initial load.
1697
+ if (this._raw) {
1698
+ for (const field of this._Fields) {
1699
+ const value = this._raw[field.Name];
1700
+ if (value !== undefined) {
1701
+ // Date conversion mirrors what SetLocal / Get does for raw string/number dates.
1702
+ if (field.EntityFieldInfo.TSType === EntityFieldTSType.Date && (typeof value === 'string' || typeof value === 'number')) {
1703
+ field.Value = new Date(value);
1704
+ }
1705
+ else {
1706
+ field.Value = value;
1707
+ }
1708
+ }
1594
1709
  }
1710
+ // Raw data has been promoted into Fields — release the reference so we don't carry
1711
+ // duplicate state.
1712
+ this._raw = null;
1595
1713
  }
1596
1714
  }
1597
1715
  /**
@@ -1996,7 +2114,9 @@ export class BaseEntity {
1996
2114
  * Internal helper method for the class and sub-classes - used to easily get the Active User which is either the ContextCurrentUser, if defined, or the Metadata.Provider.CurrentUser if not.
1997
2115
  */
1998
2116
  get ActiveUser() {
1999
- return this.ContextCurrentUser || Metadata.Provider.CurrentUser; // use the context user ahead of the Provider.Current User - this is for SERVER side ops where the user changes per request
2117
+ // Use the entity's bound provider (per-instance) before falling back to the global
2118
+ // default — multi-provider correctness for server requests with per-request users.
2119
+ return this.ContextCurrentUser || this.ProviderToUse?.CurrentUser || Metadata.Provider.CurrentUser; // global-provider-ok: final fallback when no provider is bound
2000
2120
  }
2001
2121
  /**
2002
2122
  * Caches the entity record name in the provider's EntityRecordNameCache for faster lookups.
@@ -2012,8 +2132,9 @@ export class BaseEntity {
2012
2132
  if (!recordName) {
2013
2133
  return;
2014
2134
  }
2015
- // Cache it via the provider's public API
2016
- Metadata.Provider.SetCachedRecordName(this.EntityInfo.Name, this.PrimaryKey, recordName);
2135
+ // Cache it via this entity's provider so the cache lives on the right connection.
2136
+ const md = this.ProviderToUse;
2137
+ md.SetCachedRecordName(this.EntityInfo.Name, this.PrimaryKey, recordName);
2017
2138
  }
2018
2139
  /**
2019
2140
  * Utility method that returns true if the given permission being checked is enabled for the current user, and false if not.
@@ -2024,7 +2145,7 @@ export class BaseEntity {
2024
2145
  CheckPermissions(type, throwError) {
2025
2146
  const u = this.ActiveUser;
2026
2147
  if (!u)
2027
- throw new Error('No user set - either the context user for the entity object must be set, or the Metadata.Provider.CurrentUser must be set');
2148
+ throw new Error('No user set - either the context user for the entity object must be set, or the Metadata.Provider.CurrentUser must be set'); // global-provider-ok: error message text
2028
2149
  // Virtual entities are read-only — block Create, Update, Delete at the ORM level
2029
2150
  // This catches server-side code calling .Save()/.Delete() directly, which bypasses the API layer flags
2030
2151
  if (this.EntityInfo.VirtualEntity &&
@@ -2264,6 +2385,49 @@ export class BaseEntity {
2264
2385
  if (this._parentEntity) {
2265
2386
  this._parentEntity.Hydrate(data);
2266
2387
  }
2388
+ // ── Fast path: raw-mode load ────────────────────────────────────────────
2389
+ // First load of a fresh instance, plain object input, non-IS-A entity, no per-field
2390
+ // active-status assertions or other side effects needed up front. Store the raw data
2391
+ // and defer building EntityField instances until something actually needs them.
2392
+ // This is the dominant warm-load case (cache restore in TransformSimpleObjectToEntityObject
2393
+ // populating engine arrays of read-only data) and was previously the per-row bottleneck.
2394
+ const isPlainObject = data && typeof data === 'object' && !Array.isArray(data) && !(data instanceof Date);
2395
+ const canTakeFastPath = isPlainObject &&
2396
+ !this._fieldsHydrated &&
2397
+ this._Fields.length === 0 &&
2398
+ !this._parentEntity &&
2399
+ !this.EntityInfo?.IsParentType;
2400
+ if (canTakeFastPath) {
2401
+ this._raw = data;
2402
+ // Mirror the "are PKs present?" check that the hydrated path does, but read straight
2403
+ // from the raw data so we don't trigger hydration.
2404
+ const pks = this.EntityInfo?.PrimaryKeys ?? [];
2405
+ let allPksPresent = pks.length > 0;
2406
+ for (const pkInfo of pks) {
2407
+ const v = this._raw[pkInfo.Name];
2408
+ if (v === null || v === undefined) {
2409
+ allPksPresent = false;
2410
+ break;
2411
+ }
2412
+ }
2413
+ if (pks.length === 0) {
2414
+ LogError(`BaseEntity.LoadFromData() called on ${this.EntityInfo?.Name} with no primary keys defined. This is an error state and should not happen.`);
2415
+ this._recordLoaded = false;
2416
+ this._everSaved = false;
2417
+ }
2418
+ else {
2419
+ this._recordLoaded = allPksPresent;
2420
+ this._everSaved = allPksPresent;
2421
+ // Note: CacheRecordName() walks Fields, which would hydrate. Defer it — name caching
2422
+ // is an optional optimization, not a correctness requirement, and the next path that
2423
+ // actually needs Fields will trigger hydration anyway. For non-parent entities the
2424
+ // child-entity discovery is a sync no-op so we skip the await as well.
2425
+ }
2426
+ return true;
2427
+ }
2428
+ // ── Slow / correct path ────────────────────────────────────────────────
2429
+ // Hits when: subsequent LoadFromData call on an already-loaded instance, IS-A entity
2430
+ // (parent or child), or non-plain-object input. Preserves original semantics exactly.
2267
2431
  this.SetMany(data, true, _replaceOldValues, true); // ignore non-existent fields, but DO replace old values based on the provided param
2268
2432
  // now, check to see if we have the primary key set, if so, we should consider ourselves
2269
2433
  // loaded from the database and set the _recordLoaded flag to true along with the _everSaved flag
@@ -2566,7 +2730,8 @@ export class BaseEntity {
2566
2730
  * delete will cascade further down if it also has children and CascadeDeletes.
2567
2731
  */
2568
2732
  async CascadeDeleteChildRecord(childCheck, parentOptions) {
2569
- const childEntity = await Metadata.Provider.GetEntityObject(childCheck.ChildEntityName, this._contextCurrentUser);
2733
+ const cascadeProvider = this.ProviderToUse;
2734
+ const childEntity = await cascadeProvider.GetEntityObject(childCheck.ChildEntityName, this._contextCurrentUser);
2570
2735
  if (!childEntity)
2571
2736
  return false;
2572
2737
  // Load the child record using the same PK as this parent
@@ -2594,9 +2759,11 @@ export class BaseEntity {
2594
2759
  * @param contextUser Optional context user for server-side operations
2595
2760
  * @returns The leaf entity name and whether it was resolved to a child type
2596
2761
  */
2597
- static async ResolveLeafEntity(entityName, primaryKey, contextUser) {
2598
- const md = new Metadata();
2599
- const entityInfo = md.EntityByName(entityName);
2762
+ static async ResolveLeafEntity(entityName, primaryKey, contextUser, provider) {
2763
+ // Resolve metadata via the caller-supplied provider so multi-provider client setups
2764
+ // walk the entity hierarchy of the right server. Fall back to the global default.
2765
+ const md = provider ?? Metadata.Provider;
2766
+ const entityInfo = md?.EntityByName(entityName);
2600
2767
  if (!entityInfo) {
2601
2768
  return { LeafEntityName: entityName, IsLeaf: true };
2602
2769
  }
@@ -2861,6 +3028,8 @@ export class BaseEntity {
2861
3028
  */
2862
3029
  async GenerateEmbedding(field, vectorField, modelField) {
2863
3030
  try {
3031
+ if (this._skipEmbeddings)
3032
+ return true;
2864
3033
  if (!this.IsSaved || field.Dirty) {
2865
3034
  if (field.Value?.trim().length > 0) {
2866
3035
  // recalc vector
@@ -2903,6 +3072,8 @@ export class BaseEntity {
2903
3072
  SupportsEmbedTextLocal() {
2904
3073
  return false;
2905
3074
  }
3075
+ get SkipEmbeddings() { return this._skipEmbeddings; }
3076
+ set SkipEmbeddings(value) { this._skipEmbeddings = value; }
2906
3077
  /**
2907
3078
  * Utility storage for vector embeddings that represent the active record. Each string in the Map can be any unique key relative to the object so you can
2908
3079
  * use this to track vectors associated with