@memberjunction/core 4.0.0 → 4.1.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/dist/generic/baseEntity.d.ts +166 -0
- package/dist/generic/baseEntity.d.ts.map +1 -1
- package/dist/generic/baseEntity.js +549 -9
- package/dist/generic/baseEntity.js.map +1 -1
- package/dist/generic/entityInfo.d.ts +79 -0
- package/dist/generic/entityInfo.d.ts.map +1 -1
- package/dist/generic/entityInfo.js +149 -2
- package/dist/generic/entityInfo.js.map +1 -1
- package/dist/generic/interfaces.d.ts +53 -2
- package/dist/generic/interfaces.d.ts.map +1 -1
- package/dist/generic/interfaces.js +13 -0
- package/dist/generic/interfaces.js.map +1 -1
- package/dist/generic/metadata.d.ts +2 -2
- package/dist/generic/metadata.d.ts.map +1 -1
- package/dist/generic/metadata.js +4 -4
- package/dist/generic/metadata.js.map +1 -1
- package/dist/generic/providerBase.d.ts +45 -4
- package/dist/generic/providerBase.d.ts.map +1 -1
- package/dist/generic/providerBase.js +125 -2
- package/dist/generic/providerBase.js.map +1 -1
- package/package.json +2 -2
- package/readme.md +871 -1271
- package/dist/__tests__/mocks/TestMetadataProvider.d.ts +0 -45
- package/dist/__tests__/mocks/TestMetadataProvider.d.ts.map +0 -1
- package/dist/__tests__/mocks/TestMetadataProvider.js +0 -217
- package/dist/__tests__/mocks/TestMetadataProvider.js.map +0 -1
- package/dist/__tests__/providerBase.concurrency.test.d.ts +0 -10
- package/dist/__tests__/providerBase.concurrency.test.d.ts.map +0 -1
- package/dist/__tests__/providerBase.concurrency.test.js +0 -253
- package/dist/__tests__/providerBase.concurrency.test.js.map +0 -1
- package/dist/__tests__/providerBase.refresh.test.d.ts +0 -10
- package/dist/__tests__/providerBase.refresh.test.d.ts.map +0 -1
- package/dist/__tests__/providerBase.refresh.test.js +0 -161
- package/dist/__tests__/providerBase.refresh.test.js.map +0 -1
- package/dist/__tests__/setup.d.ts +0 -5
- package/dist/__tests__/setup.d.ts.map +0 -1
- package/dist/__tests__/setup.js +0 -17
- package/dist/__tests__/setup.js.map +0 -1
|
@@ -258,7 +258,87 @@ export declare abstract class BaseEntity<T = unknown> {
|
|
|
258
258
|
private _everSaved;
|
|
259
259
|
private _isLoading;
|
|
260
260
|
private _pendingDelete$;
|
|
261
|
+
/**************************************************************************
|
|
262
|
+
* IS-A Type Relationship — Parent Entity Composition
|
|
263
|
+
*
|
|
264
|
+
* For IS-A child entities, _parentEntity holds a persistent live reference
|
|
265
|
+
* to the parent entity instance. All data routing (Set/Get), dirty tracking,
|
|
266
|
+
* validation, and save/delete orchestration flow through this composition chain.
|
|
267
|
+
**************************************************************************/
|
|
268
|
+
/**
|
|
269
|
+
* Persistent reference to the parent entity in the IS-A chain.
|
|
270
|
+
* For example, if MeetingEntity IS-A ProductEntity, the MeetingEntity instance
|
|
271
|
+
* holds a reference to a ProductEntity instance here. This is null for entities
|
|
272
|
+
* that are not IS-A child types.
|
|
273
|
+
*/
|
|
274
|
+
private _parentEntity;
|
|
275
|
+
/**
|
|
276
|
+
* Cached set of field names that belong to parent entities — used for
|
|
277
|
+
* efficient O(1) lookup during Set/Get routing to determine if a field
|
|
278
|
+
* should be forwarded to _parentEntity.
|
|
279
|
+
*/
|
|
280
|
+
private _parentEntityFieldNames;
|
|
281
|
+
/**
|
|
282
|
+
* Opaque provider-level transaction handle. Used by IS-A save/delete orchestration
|
|
283
|
+
* to share a single SQL transaction across the parent chain.
|
|
284
|
+
* On client (GraphQLDataProvider), this remains null.
|
|
285
|
+
* On server (SQLServerDataProvider), this holds a sql.Transaction.
|
|
286
|
+
*/
|
|
287
|
+
private _providerTransaction;
|
|
288
|
+
/**
|
|
289
|
+
* Gets the provider transaction handle for IS-A chain orchestration.
|
|
290
|
+
*/
|
|
291
|
+
get ProviderTransaction(): unknown;
|
|
292
|
+
/**
|
|
293
|
+
* Sets the provider transaction handle. Used during IS-A save/delete to share
|
|
294
|
+
* a single database transaction across the entire parent chain.
|
|
295
|
+
*/
|
|
296
|
+
set ProviderTransaction(value: unknown);
|
|
297
|
+
/**
|
|
298
|
+
* Returns the parent entity in the IS-A composition chain, or null if this
|
|
299
|
+
* entity is not an IS-A child type. Read-only public access for inspection.
|
|
300
|
+
* Named ISAParentEntity to avoid collision with generated Entity.ParentEntity
|
|
301
|
+
* string column (which contains the parent entity's name from the view).
|
|
302
|
+
*/
|
|
303
|
+
get ISAParentEntity(): BaseEntity | null;
|
|
261
304
|
constructor(Entity: EntityInfo, Provider?: IEntityDataProvider | null);
|
|
305
|
+
/**
|
|
306
|
+
* Initializes the IS-A parent entity composition chain. For child type entities,
|
|
307
|
+
* this creates the parent entity instance (and recursively its parent, etc.) and
|
|
308
|
+
* caches the parent field name set for routing.
|
|
309
|
+
*
|
|
310
|
+
* Must be called AFTER EntityInfo is available but BEFORE any Load/NewRecord/Set/Get.
|
|
311
|
+
* This is called by Metadata.GetEntityObject() after constructing the entity.
|
|
312
|
+
*/
|
|
313
|
+
InitializeParentEntity(): Promise<void>;
|
|
314
|
+
/**
|
|
315
|
+
* Resets this entity to a pristine state and populates it from the provided data object.
|
|
316
|
+
*
|
|
317
|
+
* Unlike {@link SetMany}, which incrementally updates existing field values, `Hydrate()`
|
|
318
|
+
* first resets ALL internal state — fields, composite key cache, loaded/saved flags —
|
|
319
|
+
* then populates from the provided data as if loading a fresh record from the database.
|
|
320
|
+
*
|
|
321
|
+
* This is critical for IS-A (table-per-type) inheritance: when a child entity loads
|
|
322
|
+
* its record, parent entities in the chain must be fully reset and re-populated from
|
|
323
|
+
* the child's view data, including the shared primary key. After `init()`, each
|
|
324
|
+
* EntityField's `_NeverSet` flag is `true`, allowing even ReadOnly PK fields to be
|
|
325
|
+
* set exactly once via `SetMany`.
|
|
326
|
+
*
|
|
327
|
+
* After population, entities are automatically marked as saved/loaded when all PK
|
|
328
|
+
* values are present (via {@link UpdateSavedStateFromPrimaryKeys}).
|
|
329
|
+
*
|
|
330
|
+
* The parent chain is handled recursively: if this entity has an IS-A parent, the
|
|
331
|
+
* parent is hydrated first (deepest ancestor first) via SetMany's built-in routing.
|
|
332
|
+
*
|
|
333
|
+
* @param data - A plain object whose properties map to field names on this entity
|
|
334
|
+
* (and potentially parent entities in the IS-A chain).
|
|
335
|
+
*/
|
|
336
|
+
Hydrate(data: Record<string, unknown>): void;
|
|
337
|
+
/**
|
|
338
|
+
* Propagates the ProviderTransaction handle down the IS-A parent chain so all
|
|
339
|
+
* entities in the chain execute on the same database transaction.
|
|
340
|
+
*/
|
|
341
|
+
protected PropagateTransactionToParents(): void;
|
|
262
342
|
/**
|
|
263
343
|
* Returns this provider to be used for a given instance of a BaseEntity derived subclass. If the provider is not set, the BaseEntity.Provider is returned.
|
|
264
344
|
*/
|
|
@@ -432,12 +512,27 @@ export declare abstract class BaseEntity<T = unknown> {
|
|
|
432
512
|
/**
|
|
433
513
|
* Sets the value of a given field. If the field doesn't exist, nothing happens.
|
|
434
514
|
* The field's type is used to convert the value to the appropriate type.
|
|
515
|
+
*
|
|
516
|
+
* For IS-A child entities, parent fields are routed to `_parentEntity.Set()` (recursive
|
|
517
|
+
* for N-level chains). The value is also mirrored on the child's own virtual EntityField
|
|
518
|
+
* so that code iterating `entity.Fields` still sees it. The authoritative state for parent
|
|
519
|
+
* fields lives on `_parentEntity`.
|
|
520
|
+
*
|
|
435
521
|
* @param FieldName
|
|
436
522
|
* @param Value
|
|
437
523
|
*/
|
|
438
524
|
Set(FieldName: string, Value: any): void;
|
|
525
|
+
/**
|
|
526
|
+
* Internal helper that sets a field value directly on THIS entity's own Fields array
|
|
527
|
+
* without IS-A routing. Used by Set() for own-fields and for mirroring parent field values.
|
|
528
|
+
*/
|
|
529
|
+
private SetLocal;
|
|
439
530
|
/**
|
|
440
531
|
* Returns the value of the field with the given name. If the field is a date, and the value is a string, it will be converted to a date object.
|
|
532
|
+
*
|
|
533
|
+
* For IS-A child entities, parent fields return the authoritative value from `_parentEntity.Get()`
|
|
534
|
+
* (recursive for N-level chains), NOT the mirrored value on the child's own Fields array.
|
|
535
|
+
*
|
|
441
536
|
* @param FieldName
|
|
442
537
|
* @returns
|
|
443
538
|
*/
|
|
@@ -446,12 +541,23 @@ export declare abstract class BaseEntity<T = unknown> {
|
|
|
446
541
|
* NOTE: Do not call this method directly. Use the {@link From} method instead
|
|
447
542
|
*
|
|
448
543
|
* Sets any number of values on the entity object from the object passed in. The properties of the object being passed in must either match the field name (in most cases) or the CodeName (which is only different from field name if field name has spaces in it)
|
|
544
|
+
*
|
|
545
|
+
* For IS-A child entities, all fields are first set on self (including parent fields as mirrors),
|
|
546
|
+
* then parent fields are extracted and forwarded to `_parentEntity.SetMany()` for authoritative
|
|
547
|
+
* state, including proper OldValue tracking via the replaceOldValues parameter.
|
|
548
|
+
*
|
|
449
549
|
* @param object
|
|
450
550
|
* @param ignoreNonExistentFields - if set to true, fields that don't exist on the entity object will be ignored, if false, an error will be thrown if a field doesn't exist
|
|
451
551
|
* @param replaceOldValues - if set to true, the old values of the fields will be reset to the values provided in the object parameter, if false, they will be left alone
|
|
452
552
|
* @param ignoreActiveStatusAssertions - if set to true, the active status assertions for the fields will be ignored, if false, an error will be thrown if a field is not active. Defaults to false.
|
|
453
553
|
*/
|
|
454
554
|
SetMany(object: any, ignoreNonExistentFields?: boolean, replaceOldValues?: boolean, ignoreActiveStatusAssertions?: boolean): void;
|
|
555
|
+
/**
|
|
556
|
+
* Checks if all primary key fields have values set, and if so, marks the entity as
|
|
557
|
+
* a saved/loaded record. This enables entities populated via SetMany (e.g., IS-A parent
|
|
558
|
+
* entities) to correctly recognize themselves as existing records.
|
|
559
|
+
*/
|
|
560
|
+
private UpdateSavedStateFromPrimaryKeys;
|
|
455
561
|
/**
|
|
456
562
|
* NOTE: Do not call this method directly. Use the {@link To} method instead
|
|
457
563
|
*
|
|
@@ -529,11 +635,21 @@ export declare abstract class BaseEntity<T = unknown> {
|
|
|
529
635
|
* @returns
|
|
530
636
|
*/
|
|
531
637
|
private _InnerSave;
|
|
638
|
+
/**
|
|
639
|
+
* Helper to rollback an IS-A provider transaction if one is active.
|
|
640
|
+
* Only called by the IS-A initiator (the leaf entity that started the chain).
|
|
641
|
+
*/
|
|
642
|
+
private RollbackISATransaction;
|
|
532
643
|
private finalizeSave;
|
|
533
644
|
/**
|
|
534
645
|
* 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.
|
|
535
646
|
*/
|
|
536
647
|
protected get ActiveUser(): UserInfo;
|
|
648
|
+
/**
|
|
649
|
+
* Caches the entity record name in the provider's EntityRecordNameCache for faster lookups.
|
|
650
|
+
* Called automatically after successful Load(), LoadFromData(), and Save() operations.
|
|
651
|
+
*/
|
|
652
|
+
private CacheRecordName;
|
|
537
653
|
/**
|
|
538
654
|
* Utility method that returns true if the given permission being checked is enabled for the current user, and false if not.
|
|
539
655
|
* @param type
|
|
@@ -660,6 +776,56 @@ export declare abstract class BaseEntity<T = unknown> {
|
|
|
660
776
|
* @returns
|
|
661
777
|
*/
|
|
662
778
|
private _InnerDelete;
|
|
779
|
+
/**
|
|
780
|
+
* Checks if this entity has any child records in IS-A child entity tables.
|
|
781
|
+
* Used for parent delete protection — a parent record cannot be deleted
|
|
782
|
+
* while child type records referencing it still exist.
|
|
783
|
+
* @returns Object with HasChildren flag and the name of the child entity found
|
|
784
|
+
*/
|
|
785
|
+
protected CheckForChildRecords(): Promise<{
|
|
786
|
+
HasChildren: boolean;
|
|
787
|
+
ChildEntityName: string;
|
|
788
|
+
}>;
|
|
789
|
+
/**
|
|
790
|
+
* Cascade-deletes an IS-A child record when the parent entity has CascadeDeletes enabled.
|
|
791
|
+
* Loads the child entity, then deletes it through the normal IS-A chain. The child's
|
|
792
|
+
* delete will cascade further down if it also has children and CascadeDeletes.
|
|
793
|
+
*/
|
|
794
|
+
protected CascadeDeleteChildRecord(childCheck: {
|
|
795
|
+
HasChildren: boolean;
|
|
796
|
+
ChildEntityName: string;
|
|
797
|
+
}, parentOptions: EntityDeleteOptions): Promise<boolean>;
|
|
798
|
+
/**
|
|
799
|
+
* Resolves the leaf (most-derived) entity type for a given parent entity record.
|
|
800
|
+
* Walks down the IS-A child hierarchy to find which child type a record belongs to.
|
|
801
|
+
* Returns the child entity name, or the parent's own name if no children exist.
|
|
802
|
+
* Useful for polymorphic operations where you have a parent record and need
|
|
803
|
+
* to know its actual leaf type.
|
|
804
|
+
*
|
|
805
|
+
* @param entityName The parent entity name
|
|
806
|
+
* @param primaryKey The primary key to look up
|
|
807
|
+
* @param contextUser Optional context user for server-side operations
|
|
808
|
+
* @returns The leaf entity name and whether it was resolved to a child type
|
|
809
|
+
*/
|
|
810
|
+
static ResolveLeafEntity(entityName: string, primaryKey: CompositeKey, contextUser?: UserInfo): Promise<{
|
|
811
|
+
LeafEntityName: string;
|
|
812
|
+
IsLeaf: boolean;
|
|
813
|
+
}>;
|
|
814
|
+
/**
|
|
815
|
+
* Internal recursive helper for leaf entity resolution.
|
|
816
|
+
* Walks down the child hierarchy until no more children are found.
|
|
817
|
+
*/
|
|
818
|
+
private static ResolveLeafEntityRecursive;
|
|
819
|
+
/**
|
|
820
|
+
* Enforces disjoint subtype constraint during IS-A child entity creation.
|
|
821
|
+
* A parent record can only be ONE child type at a time. Checks all sibling
|
|
822
|
+
* child types (excluding self) for records with the same PK value.
|
|
823
|
+
* Throws if a sibling child record is found.
|
|
824
|
+
*
|
|
825
|
+
* Only runs on Database providers — client-side (Network/GraphQL) skips this
|
|
826
|
+
* because the server-side save will perform the check authoritatively.
|
|
827
|
+
*/
|
|
828
|
+
protected EnforceDisjointSubtype(): Promise<void>;
|
|
663
829
|
/**
|
|
664
830
|
* Called before an Action is executed by the AI Engine
|
|
665
831
|
* This is intended to be overriden by subclass as needed, these methods called at the right time by the execution context
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseEntity.d.ts","sourceRoot":"","sources":["../../src/generic/baseEntity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,YAAY,EAAuB,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACjL,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"baseEntity.d.ts","sourceRoot":"","sources":["../../src/generic/baseEntity.ts"],"names":[],"mappings":"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"}
|